Умный подбор подрядчиков (#79-lite)
CLI на Python, который подбирает до трёх event-подрядчиков из каталога и объясняет выбор; LLM-объяснения опциональны.
О проекте
Команда: CBI
Кейс HackAlem.ai: Креативные индустрии — Firebird
Стадия: Рабочий MVP
Задача кейса: «#79-lite»: подобрать до 3 подрядчиков для мероприятия и объяснить выбор
Суть
CLI на Python, который подбирает до трёх event-подрядчиков из каталога и объясняет выбор; LLM-объяснения опциональны.
Как устроено
hard_filter() проверяет город, категорию, дату, цену, формат, язык и длительность без LLM → rank() считает лексическое пересечение токенов и баллы за язык/длительность, сортировка score desc, price asc, id asc → explain() строит объяснение через gpt-4o-mini (Responses API, тайм-аут 2 с, кеш SHA-256) либо fallback: фрагмент описания + цена. Три исхода: matched/no_category/no_match с численными причинами отказа.
Ключевые решения
- hard filtering
- lexical token overlap
- OpenAI Responses API
- SHA-256 cache
- deterministic fallback
Особенности
README честно перечисляет ограничения (нет embeddings, UI и деплоя) и приводит воспроизводимые сценарии с ID карточек и проверкой стабильности порядка. Код лежит в подпапке «Creative I», корневой README шаблонный.
Стек
Python · OpenAI SDK · pytest
Модели
gpt-4o-mini
Проект создан за 5 часов на финале хакатона HackAlem.ai (23 сентября 2026, Астана). Код — BAITC-Hacks/hack-56cf3a8a-cbi.
README
README.mdhack-56cf3a8a-cbi
Hackathon team repository for CBI
Авторы коммитов
История коммитов
- 2026-09-23 16:14Add files via uploadRoma-gtp
- 2026-09-23 14:55Add files via uploadRoma-gtp
Структура репозитория (10 файлов)
Creative I/README.md Creative I/data/contractors.csv Creative I/reports/demo-output.txt Creative I/requirements.txt Creative I/src/__init__.py Creative I/src/__main__.py Creative I/src/contractor_matcher.py Creative I/src/demo.py Creative I/tests/test_matcher.py README.md
Обсуждение 0 комментариев
Войдите, чтобы комментироватьПока нет комментариев — будьте первым.