Haystack
Подключение Hubris к Haystack от deepset — фреймворку для RAG-пайплайнов и агентов на Python.
Haystack — фреймворк deepset для RAG-пайплайнов, поиска и агентов на Python. Hubris подключается штатным компонентом OpenAIChatGenerator с адресом нашего API: отдельный пакет не нужен.
Требования
Установка
pip install -U haystack-ai
export HUBRIS_API_KEY="sk-gw-ваш-ключ"Подключение
from haystack.components.generators.chat import OpenAIChatGenerator
from haystack.dataclasses import ChatMessage
from haystack.utils import Secret
generator = OpenAIChatGenerator(
model="anthropic/claude-sonnet-5",
api_base_url="https://api.hubris.pw/v1",
api_key=Secret.from_env_var("HUBRIS_API_KEY"),
)
reply = generator.run(messages=[ChatMessage.from_user("Какая столица у Франции?")])
print(reply["replies"][0].text)ID модели — из каталога, целиком, с вендором перед косой чертой.
В пайплайне
Компонент встаёт в любой пайплайн Haystack как обычный генератор:
from haystack import Pipeline
from haystack.components.builders import ChatPromptBuilder
builder = ChatPromptBuilder(
template=[ChatMessage.from_user("Ответь одним словом: {{ question }}")],
required_variables=["question"],
)
pipeline = Pipeline()
pipeline.add_component("prompt", builder)
pipeline.add_component("llm", generator)
pipeline.connect("prompt.prompt", "llm.messages")
result = pipeline.run({"prompt": {"question": "Столица Германии?"}})
print(result["llm"]["replies"][0].text)Стриминг включается параметром streaming_callback, инструменты — параметром tools, как у обычного OpenAIChatGenerator.
Рекомендуемые модели
| ID | Когда подходит |
|---|---|
anthropic/claude-sonnet-5 | генерация ответов в RAG, агенты |
anthropic/claude-haiku-4.5 | дешёвые шаги пайплайна: переформулировка, классификация |
google/gemini-3.7-flash | длинные документы в контексте |
Решение проблем
ValueError: None of the following authentication environment variables are set: ('HUBRIS_API_KEY',)
Секрет не читается: переменная HUBRIS_API_KEY не задана в окружении процесса. Экспортируйте её до запуска или передайте ключ явно — Secret.from_token(...).
AuthenticationError / 401
code: invalid_api_key — ключ отозван или скопирован с ошибкой. Он начинается с sk-gw-, без пробелов по краям; новый — в разделе «Ключи».
Модель не найдена
404, code: model_not_found. ID должен совпадать с каталогом символ в символ, включая вендора перед косой чертой.
Что дальше
- Каталог моделей — ID для подключения
- Эмбеддинги — модели для векторного поиска в том же пайплайне
- Управление ключами
Обновлено: