Answer Search
Полный RAG-цикл: поиск источников, семантическое ранжирование через BGE-reranker-v2-m3, чтение релевантных страниц и синтез финального ответа с указанием релевантности каждого источника.
https://srezai.ru/api/v1/answerПример запроса
curl -X POST https://srezai.ru/api/v1/answer \
-H "Content-Type: application/json" \
-H "Authorization: Bearer srz_live_ВАШ_КЛЮЧ" \
-d '{
"query": "как работает BGE-reranker-v2-m3",
"depth": "balanced"
}'Параметры тела
querystringобязательныйВопрос или поисковый запрос. Обрезается до 2000 символов. Пустой запрос вернёт 400.
depthstringнеобязательныйГлубина поиска: fast (2 страницы), balanced (5 страниц, по умолчанию), deep (10 страниц). Больше страниц - выше качество ответа, но дольше время выполнения.
languagestringнеобязательныйЯзык поиска: auto (по умолчанию), ru,en. Определяет язык источников и ответа.
Конвейер обработки
Answer Search выполняет пять этапов:
- Переформулировка запроса - расширение ключевых слов и синонимов для лучшего покрытия поиска
- Параллельный поиск - несколько вариантов запроса идут одновременно, результаты дедуплицируются
- Семантическое ранжирование - BGE-reranker-v2-m3 оценивает релевантность каждого результата к исходному запросу и сортирует по убыванию
- Чтение страниц - топ N страниц читаются параллельно, извлекается текст
- Синтез ответа - LLM собирает финальный ответ на основе прочитанного контента
Ответ
{
"answer": "BGE-reranker-v2-m3 - это семантическая модель от BAAI для ранжирования...",
"sources": [
{
"url": "https://huggingface.co/BAAI/bge-reranker-v2-m3",
"title": "BAAI/bge-reranker-v2-m3 · Hugging Face",
"relevance": 0.804,
"chars_read": 2847,
"read_success": true
},
{
"url": "https://github.com/FlagOpen/FlagEmbedding",
"title": "FlagOpen/FlagEmbedding: Retrieval and Reranking",
"relevance": 0.742,
"chars_read": 1956,
"read_success": true
}
],
"confidence": 0.85,
"tookMs": 19342
}Поля ответа
answerstringнеобязательныйГотовый ответ в виде текста. Синтезирован из прочитанных источников.
sourcesarrayнеобязательныйМассив использованных источников. Каждый источник содержит:
url- адрес страницыtitle- заголовок страницыrelevance- оценка релевантности от BGE-reranker (0-1)chars_read- количество прочитанных символовread_success- успешно ли прочитана страницаrejection_reason- причина отказа (если read_success=false)
confidencenumberнеобязательныйУверенность в ответе от 0 до 1. Основана на качестве источников и их релевантности.
tookMsnumberнеобязательныйВремя выполнения всего конвейера в миллисекундах.
Интерпретация relevance
Поле relevance показывает семантическую близость источника к запросу:
- 0.7-1.0 - высокая релевантность, источник точно по теме
- 0.4-0.7 - средняя релевантность, частично затрагивает тему
- 0.0-0.4 - низкая релевантность, косвенное отношение к запросу
Источники всегда отсортированы по убыванию relevance - первые самые релевантные.
О BGE-reranker-v2-m3
BGE-reranker-v2-m3 - multilingual семантическая модель от BAAI (Beijing Academy of AI) для точного ранжирования пар (запрос, документ). Поддерживает русский, английский и ещё 100+ языков.
В отличие от лексического поиска (BM25), BGE-reranker понимает смысл текста: запрос «как установить Python» найдёт релевантную статью даже если в ней нет слова «установить», но есть «инсталляция» или «setup».
Стоимость
Стоимость зависит от depth - фиксированная цена за запрос, независимо от объёма полученного ответа:
fast(2 страницы) - 3 кредитаbalanced(5 страниц, по умолчанию) - 5 кредитовdeep(10 страниц) - 10 кредитов
Коды ошибок (401, 400, 429, 503) описаны в разделе Ошибки.