SemIf: создание семантических условий на основе открытых моделей
SemIf — это проект для создания семантических условий на основе открытых моделей, который можно запускать на своем GPU, например, на GeForce 3090. Он предлагает альтернативу закрытым решениям, вроде Jev от TypeSafe, предоставляя возможность работать с типизированными вероятностями решений без лишнего текста.
Проект будет полезен разработчикам, которым необходимы простые и быстрые инструменты для принятия решений на основе AI. Вместо генерации текста, как делает Jev, SemIf напрямую считывает вероятности и предоставляет интерфейс для работы с ними. Хотя проект активно развивается, для запуска потребуется Python 3.10+, CUDA и GPU, способный обрабатывать 4B модели, что делает его недоступным для обладателей слабого железа.
Прямо сейчас можно попробовать демо в браузере, что позволяет избежать долгих процедур установки. Обрати внимание, что это независимый проект и не имеет никаких отношений с Jev или TypeSafe, поэтому на него могут влиять ограничения, связанные с открытостью используемых моделей и их производительностью.
**SemIf** (прежнее название — OpenJev) — это независимый исследовательский проект для создания семантических условных операторов на основе открытых моделей. Проект не связан с Jev или TypeSafe.
С помощью SemIf ты можешь запускать семантические решения прямо в браузере без какой-либо очереди. Это важно, потому что многие агентские решения требуют небольших и точных решений, и эта библиотека позволяет получить их быстро и эффективно.
Как это работает
SemIf строится на использовании 4B модели, которая принимает данные о критериях и опциях, создаёт вероятности для заданных условий и возвращает результаты без сложного текстового вывода. Это упрощает процесс и делает его более эффективным для программных решений.
В отличие от закрытых сервисов, таких как Jev, этот проект использует только открытые модели и ориентирован на предоставление интерфейса для семантических решений.
Как установить и запустить
Чтобы начать работать с SemIf, тебе потребуется следующие компоненты:
- Python 3.10+
- CUDA
- Графический процессор (GPU), способный обрабатывать модель размером 4B BF16.
Следующие команды помогут создать и активировать виртуальное окружение, а также установить необходимые зависимости:
python -m venv .venv
. .venv/bin/activate
export HF_HOME=/path/to/large-drive/huggingface
pip install -e '.[test]'
После этого можно запустить примеры с помощью следующей команды:
CUDA_VISIBLE_DEVICES=0 semif-score \
--mode direct \
--model Qwen/Qwen3.5-4B \
--revision 851bf6e806efd8d0a36b00ddf55e13ccb7b8cd0a \
--input examples/decisions.jsonl \
--output results.jsonl
Каждый результат будет содержать вероятности опций, время выполнения, информацию о модели и хэш запроса.
Ограничения и качество
Несмотря на эффективность, у проекта есть некоторые ограничения. Например, качество вероятностей зависит от входных данных и требований к задачам. Рекомендуется калибровать и проверять результаты на конкретных наборах данных, на которых будут приниматься решения.
Тесты показывают, что SemIf показывает высокую скорость и качество при работе с прямыми логитами, но в определённых условиях более сложные модели могут обеспечивать лучшее качество выводов.
Дополнительная информация
Кроме основной функциональности, проект предлагает ряд инструментов для оценки и анализа результатов:
- Интерактивное воспроизведение результатов.
- Документация с подробными описаниями методов и результатов.
- Инструменты для бенчмаркинга и проверки данных.
Код проекта открыт и выпущен под лицензией MIT, однако модельные веса и данные внешних источников не включены в репозиторий.
Открыть на GitHub: TheoLeeCJ/SemIf →
RepoRadar