Улучшение RAG с Rerank API
Двухэтапный поиск для RAG: embeddings + rerank = максимальная точность
Классический RAG часто выдаёт нерелевантные результаты из векторного поиска. Добавление rerank-этапа резко повышает точность без дообучения LLM.
Проблема обычного RAG
Векторный поиск (cosine similarity) находит похожие векторы, но не понимает семантику запроса глубоко. В результате в контекст LLM попадают нерелевантные фрагменты, что ухудшает ответ.
Решение: двухэтапный поиск
Запрос → Embeddings (top-50) → Rerank → top-5 → LLM- Retrieval: embeddings-поиск извлекает 20–100 кандидатов
- Rerank: Cohere переранжирует, оставляя только релевантные
- Generation: LLM получает чистый, точный контекст
Полный пример на Python
import requests
from openai import OpenAI
# Клиент AITUNNEL
client = OpenAI(
api_key="sk-aitunnel-xxx",
base_url="https://api.aitunnel.ru/v1/"
)
def embed(texts: list[str]) -> list[list[float]]:
"""Векторизация через AITUNNEL Embeddings"""
resp = client.embeddings.create(
model="text-embedding-3-small",
input=texts
)
return [item.embedding for item in resp.data]
def rerank(query: str, documents: list[str], top_n: int = 5) -> list[str]:
"""Переранжирование через Cohere Rerank"""
resp = requests.post(
"https://api.aitunnel.ru/v1/rerank",
headers={"Authorization": "Bearer sk-aitunnel-xxx"},
json={
"model": "rerank-4-pro",
"query": query,
"documents": documents,
"top_n": top_n
}
)
results = resp.json()["results"]
return [r["document"]["text"] for r in results]
def rag_answer(query: str, knowledge_base: list[str]) -> str:
"""Полный RAG-пайплайн с rerank"""
# Шаг 1: быстрый retrieval (в реальном проекте — vector DB)
candidates = knowledge_base[:20] # упрощённо
# Шаг 2: rerank — оставляем только релевантные
top_docs = rerank(query, candidates, top_n=3)
# Шаг 3: генерация с чистым контекстом
context = "\n\n".join(top_docs)
response = client.chat.completions.create(
model="gpt-5.2",
messages=[
{"role": "system", "content": f"Используй контекст для ответа:\n\n{context}"},
{"role": "user", "content": query}
]
)
return response.choices[0].message.content
# Использование
answer = rag_answer(
"Как настроить кеширование в Redis?",
knowledge_base=[...]
)
print(answer)Сравнение подходов
| Метод | Точность | Скорость | Стоимость |
|---|---|---|---|
| Только embeddings | Средняя | Быстро | Дёшево |
| Embeddings + Rerank | Высокая | Средняя | Умеренно |
| Fine-tuned модель | Очень высокая | Зависит | Дорого |
Интеграция с LangChain
from langchain.retrievers import ContextualCompressionRetriever
from langchain_community.document_compressors import CohereRerank
compressor = CohereRerank(
cohere_api_key="...", # или через AITUNNEL прокси
top_n=3,
model="rerank-4-pro"
)
compression_retriever = ContextualCompressionRetriever(
base_compressor=compressor,
base_retriever=vectorstore.as_retriever(search_kwargs={"k": 20})
)Когда Rerank даёт максимальный эффект
- Длинные документы — embeddings хуже работают с большими чанками
- Многозначные запросы — rerank понимает контекст глубже
- Высокие требования к точности — медицина, юриспруденция, финансы
- Мультиязычный поиск — Rerank 4 поддерживает 100+ языков
Ключевые возможности
- Двухэтапный поиск: embeddings + rerank
- Совместимость с LangChain, LlamaIndex
- Cohere Rerank 4 Pro — лучшая точность
- Поддержка 100+ языков
- Оплата в рублях, без VPN
Решайте задачи быстрее с AI
Подключите AI-модели через AITUNNEL и автоматизируйте выполнение задач. Единый API для GPT-5, Claude, Gemini и других моделей.
Часто задаваемые вопросы
AITUNNEL — это сервис, предоставляющий доступ к AI API (OpenAI, Claude, Gemini и другим) в России без VPN. Мы работаем как прокси между вами и провайдерами AI, обеспечивая стабильное соединение и оплату в рублях.
Нет, VPN не нужен. AITUNNEL работает напрямую из России. Все запросы идут на российский сервер api.aitunnel.ru, который затем передаёт их провайдерам AI.
Мы принимаем оплату российскими банковскими картами, через СБП, а также по счёту для юридических лиц. Минимальная сумма пополнения — 399 рублей.
Да, AITUNNEL на 100% совместим с официальным OpenAI SDK. Вам нужно только изменить base_url на https://api.aitunnel.ru/v1/ и использовать ваш API ключ AITUNNEL.
Через AITUNNEL доступны все популярные AI модели: GPT-5.2, GPT-4.1, Claude Sonnet 4.5, Gemini 2.5, DeepSeek V3, Llama 4, FLUX 2 для изображений и многие другие.