3.5 KiB
3.5 KiB
Для того чтобы раскидать задачи между тремя людьми, я распределю их по сложности и приоритету.
Человек 1 (Основной фокус на поиске):
search/main.py
- P0: Переключить основной query на
question.search_textс fallback наquestion.text - P0: Подключить
question.variantsкак дополнительные query-варианты - P0: Подключить
question.hydeкак дополнительные dense-запросы - P0: Подключить
question.keywordsкак основу для sparse-запросов - P0: Перестать терять retrieval-кандидатов после rerank
- P0: Дедуплицировать
message_idsперед ответом - P0: Ограничить финальную выдачу до
top-50 - P0: Агрегировать score по
message_id - P2: Использовать
entities.peopleиentities.emailsдля boost или фильтрации - P2: Использовать
entities.documents,entities.names,entities.linksдля lexical boost - P2: Использовать
date_rangeдля фильтрации поmetadata.startиmetadata.end - P2: Использовать
contains_quoteиcontains_forwardкак сигналы ранжирования - P2: Добавить multi-query fusion в
Qdrant - P2: Подобрать
prefetch,retrieve_k,rerank_limit - P3: Добавить retry и timeout политику для dense/rerank HTTP вызовов
Человек 2 (Основной фокус на индексации и разметке):
index/main.py
- P1: Перейти с символьного chunking на chunking по сообщениям
- P1: Учитывать time gap при сборке чанков
- P1: Маркировать в тексте
quote,forward, автора сообщения и автора цитаты - P1: Развести
page_content,dense_content,sparse_content - P1: Материализовать
sender_idиmentionsв индексируемый текст - P1: Разбирать
file_snippetsи вытаскивать имя файла, mime и url - P1: Разбирать
member_eventи превращать его в индексируемый текст
index/requirements.txt и/или search/requirements.txt
- P4: Добавить
razdel - P4: Добавить
pymorphy3 - P4: Добавить
rapidfuzz
Человек 3 (Основной фокус на Docker и зависимостях):
docker-compose.yml
- P3: Привести локальный
docker-compose.ymlк схеме сAPI_KEY - P3: Добавить
--platform linux/amd64в сборку образов
doc/ (новый файл с регрессионными вопросами)
- P3: Зафиксировать набор локальных тестовых вопросов для проверки регрессий
search/requirements.txt
- P4: Добавить
python-dateutilилиdateparser - P4: Добавить
tenacity
Таким образом, задачи равномерно распределены по 3 участникам с учётом сложности и области фокуса.