POST Поиск Алисы
Поиск Алисы — отдельный метод. Это не чат и не инструмент `web_search` у YandexGPT. Модель `yandex/alice-search` принимает вопрос, ищет в Яндексе и возвращает г
Отдельный метод, не chat/completions и не инструмент web_search.
Модель yandex/alice-search. Списание — один запрос, в том числе если Яндекс отказал в ответе.
Поле folderId клиент не передаёт: шлюз подставляет каталог сам и чужое значение отбрасывает.
Авторизация
bearerAuth Ключ вывода sk-router-…. Ключ кабинета sk-mgmt-… здесь не подходит.
Где: header
Тело запроса
application/json
Нужен query или хотя бы одно сообщение. Поле folderId игнорируется. Если model передан, это только yandex/alice-search.
Тело ответа
application/json
application/json
application/json
curl -X POST "https://example.com/yandex/gen/search" \ -H "Content-Type: application/json" \ -d '{ "model": "yandex/alice-search", "query": "кто сейчас мэр Москвы" }'[
{
"message": {
"role": "string",
"content": "string"
},
"sources": [
{
"url": "string",
"title": "string",
"used": true
}
],
"searchQueries": [
{
"text": "string",
"reqId": "string"
}
],
"fixedMisspellQuery": "string",
"isAnswerRejected": true,
"isBulletAnswer": true
}
]{
"error": {
"message": "string",
"type": "invalid_request_error",
"code": "model_not_found"
}
}{
"error": {
"message": "string",
"type": "invalid_request_error",
"code": "model_not_found"
}
}Запрос
Адрес: POST https://www.llmmart.ru/api/v1/yandex/gen/search.
Нужен query или хотя бы одно сообщение. Поле model необязательно. Если оно передано, это только yandex/alice-search.
Каталог Яндекса подставляет шлюз. Свой folderId передавать не нужно: такое поле отбрасывается.
Необязательные поля, все из контракта Яндекса:
fixMisspell— исправлять опечатки. По умолчаниюtrue.enableNrfmDocs— брать страницы, на которые нет ссылки с главной. По умолчанию выключено.site,hostилиurl— сузить поиск. Можно только одно из трёх. Вид:{"site":["example.com"]},{"host":["example.com"]}или{"url":["https://example.com/a"]}.searchFilters— список. В каждом элементе одно поле:date,lang(код языка из двух букв) илиformat(DOC_FORMAT_PDFи соседние форматы).
Тип поиска, страница и семейный фильтр к этому методу не относятся: они есть у обычного веб-поиска Яндекса, не у генеративного ответа.
{
"model": "yandex/alice-search",
"query": "кто сейчас мэр Москвы"
}Тот же вопрос сообщениями:
{
"messages": [
{"role": "user", "content": "кто сейчас мэр Москвы"}
]
}Роли: user и assistant. Текст сообщения — строка.
Пример curl
curl -sS https://www.llmmart.ru/api/v1/yandex/gen/search \
-H "Authorization: Bearer sk-…" \
-H "Content-Type: application/json" \
-d '{
"query": "кто сейчас мэр Москвы"
}'Не chat/completions
POST /chat/completions с моделью yandex/alice-search не выполняет поиск. Используйте только POST /yandex/gen/search.
Ответ
Успех — HTTP 200 и список кусков ответа. В элементе текст, источники, уточнённые запросы, исправленная опечатка и два флага: отказ по этике (isAnswerRejected) и ответ списком тезисов (isBulletAnswer).
[
{
"message": {
"role": "ROLE_ASSISTANT",
"content": "Сергей Собянин — действующий мэр Москвы."
},
"sources": [
{"url": "https://example.com", "title": "Страница", "used": true}
],
"searchQueries": [{"text": "мэр Москвы", "reqId": "…"}],
"fixedMisspellQuery": "",
"isAnswerRejected": false,
"isBulletAnswer": false
}
]Отказ Яндекса тоже приходит с кодом 200. В теле может быть пометка, что ответ отклонён. Такой вызов списывается: единица тарифа — сам запрос.
Списание
Один успешный ответ — одна единица измерения requests. Токенов в ответе нет. Ставка видна в карточке модели. К ней применяется та же наценка, что и к остальным ценам.
Тело запроса — до 1 МиБ JSON.