Быстрый старт

Reranking

Переупорядочивание документов по релевантности запросу через /v1/rerank.

Используйте reranking, чтобы отсортировать документы по релевантности — это базовый строительный блок для поиска, retrieval и подготовки контекста для LLM.

Примеры моделей у провайдеров

  • Cohere: cohere/rerank-v3.5
  • vLLM: vllm/BAAI/bge-reranker-v2-m3
  • Bedrock: bedrock/<rerank-model-or-arn>
  • Vertex AI: vertex/<ranking-model>

Базовый запрос

curl --location 'http://localhost:8080/v1/rerank' \
--header 'Content-Type: application/json' \
--data '{
  "model": "cohere/rerank-v3.5",
  "query": "What is Meridian?",
  "documents": [
    {"text": "Meridian is an AI gateway that unifies many LLM providers."},
    {"text": "Paris is the capital of France."},
    {"text": "Meridian exposes an OpenAI-compatible API."}
  ]
}'

Параметры запроса

ПараметрТипОбязательностьОписание
modelstringдаМодель в формате provider/model.
querystringдаЗапрос, относительно которого ранжируются документы.
documentsarrayдаМассив документов с полем text (опционально id, meta).
top_nintegerнетМаксимальное число возвращаемых результатов.
max_tokens_per_docintegerнетЛимит токенов на документ; поддержка зависит от провайдера.
prioritystringнетПодсказка приоритета; поддержка зависит от провайдера.
return_documentsbooleanнетВозвращать ли исходный текст документа в каждом результате.
fallbacksarrayнетРезервные модели в формате provider/model.

Пример с дополнительными параметрами

curl --location 'http://localhost:8080/v1/rerank' \
--header 'Content-Type: application/json' \
--data '{
  "model": "cohere/rerank-v3.5",
  "query": "gateway observability",
  "top_n": 2,
  "return_documents": true,
  "documents": [
    {"id": "a", "text": "Meridian supports observability plugins like OTEL and Neria.Cloud."},
    {"id": "b", "text": "Meridian can run in Kubernetes and ECS."},
    {"id": "c", "text": "Token counting is available at /v1/responses/input_tokens."}
  ]
}'

Совместимость с эндпоинтами vLLM

Для модели вида vllm/... Meridian сначала отправляет rerank-запрос на /v1/rerank и при ответах апстрима 404, 405 или 501 автоматически повторяет запрос на /rerank.


Формат ответа

{
  "results": [
    {
      "index": 0,
      "relevance_score": 0.98,
      "document": {
        "id": "a",
        "text": "Meridian supports observability plugins like OTEL and Neria.Cloud."
      }
    },
    {
      "index": 2,
      "relevance_score": 0.63,
      "document": {
        "id": "c",
        "text": "Token counting is available at /v1/responses/input_tokens."
      }
    }
  ],
  "model": "rerank-v3.5",
  "usage": {
    "prompt_tokens": 52,
    "completion_tokens": 0,
    "total_tokens": 52
  },
  "extra_fields": {
    "request_type": "rerank",
    "provider": "cohere",
    "latency": 245,
    "chunk_index": 0
  }
}

Типичные ошибки валидации

  • Пропущен queryquery is required for rerank
  • Пустой documentsdocuments are required for rerank
  • Пустой text у документа → document text is required for rerank at index N
  • top_n < 1top_n must be at least 1

Содержание