Kev: компактные модели принятия решений для разработчиков
Kev — это набор компактных моделей принятия решений, построенных на Qwen3.5, которые ты можешь тренировать и запускать сам. Основная задача проекта — предоставить инструменты для обучения небольших и эффективных решений, аналогичных Jev, что позволяет разработчикам внедрять их в свои приложения.
Отличие от более громоздких альтернатив в том, что Kev ориентирован на простоту использования и предоставление гибкости при работе с различными типами вопросов: да/нет, множественный выбор и шкала оценок. Модели могут работать на CUDA, ROCm и Apple Silicon, что расширяет их доступность для разработчиков на разных платформах.
Проект включает в себя предобученные веса для моделей размером 0.8B, 4B и 9B, а также код для их тренировки и оценочные наборы. Однако стоит учесть, что для полноценной работы потребуется использовать Python SDK от TypeSafe, который необходимо настраивать локально. Лицензия Apache-2.0 позволяет использовать проект в коммерческих целях.
Информация о проекте
Проект Kev представляет собой набор небольших моделей решений, основанных на архитектуре Qwen3.5. Он позволяет пользователям обучать и запускать собственные модели, аналогичные Jev. Kev поддерживает предобученные веса и совместимость с API TypeSafe, что упрощает интеграцию с Python SDK.
Краткие особенности
- Модели на 0.8B, 4B и 9B, включая код для обучения и данные для оценки.
- Поддержка вопросов на да/нет, множественный выбор и оценка в одном запросе.
- Запускается на CUDA, ROCm и Apple Silicon с различной производительностью.
- Интерфейс для веб-игровой площадки, где можно протестировать вводимые данные и увидеть влияние порядка вариантов на ответы.
Установка и запуск
Чтобы установить Kev, потребуются Python версии 3.12+ и библиотека uv.
git clone https://github.com/jaredpalmer/kev.git && cd kev
uv sync --extra serve
KEV_DTYPE=bf16 uv run --extra serve python -m kev.serve --run jaredpalmer/kev-4b --port 8009
Эти команды запустят модель Kev-4B локально. При первом запуске будет загружен адаптер и базовая модель. Также можно указать локальную директорию с контрольной точкой или версию из Hub.
Использование API
Для взаимодействия с моделью через API используй следующий пример запроса к локальному серверу:
curl -s localhost:8009/v1/systemone -H 'content-type: application/json' -d '{
"state": "Shoes arrived two weeks late and in the wrong size. Also I see two charges on my card.",
"model": "kev-latest",
"questions": {
"department": {"type": "choice", "instructions": "Which team should handle this?",
"criteria": {"returns": "Exchanges, refunds, wrong or damaged items",
"shipping": "Delivery status, delays, lost packages",
"billing": "Charges, invoices, payment problems"}},
"escalate": {"type": "noul", "instructions": "Does this need urgent human attention?"},
"frustration": {"type": "score", "instructions": "How frustrated is the customer?",
"criteria": ["Calm", "Frustrated", "Very angry"]}
}}'
Ответ будет содержать вероятности для каждого вопроса и дает возможность использовать более одного варианта ответа в одном запросе, что удобно для автоматизации обработки заявок.
Ограничения
- Модели могут иметь медленную производительность на Apple Silicon.
- Изменение порядка вариантов может повлиять на ответы.
- Обучение может ограничивать способности базовой модели в определенных задачах.
- Сервер обрабатывает только один запрос одновременно.
Рекомендуется заранее протестировать модели на своей базе данных, прежде чем привязываться к определённым порогам вероятности для автоматизации решений.
Открыть на GitHub: jaredpalmer/kev →
RepoRadar