Hubris
Фреймворки

LangChain (Python)

Подключить Hubris к LangChain через ChatOpenAI.

LangChain (Python)

LangChain работает с Hubris через стандартный класс ChatOpenAI из пакета langchain-openai — задаёте base_url на наш endpoint.

Установка

pip install langchain langchain-openai

Подключение

from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    model="anthropic/claude-haiku-4.5",
    base_url="https://api.hubris.pw/v1",
    api_key="sk-gw-...",
)

Базовый вызов

from langchain_core.messages import HumanMessage

response = llm.invoke([HumanMessage(content="Привет")])
print(response.content)

С системным промптом и chain

from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser

prompt = ChatPromptTemplate.from_messages([
    ("system", "Вы — лаконичный ассистент."),
    ("user", "{question}"),
])

chain = prompt | llm | StrOutputParser()

result = chain.invoke({"question": "Что такое pi с точностью до 5 знаков?"})
print(result)

Стриминг

for chunk in llm.stream([HumanMessage(content="Расскажи историю")]):
    print(chunk.content, end="", flush=True)

С tool calling

from langchain_core.tools import tool

@tool
def get_weather(city: str) -> dict:
    """Текущая погода в городе."""
    return {"city": city, "temp": 5, "condition": "sunny"}

llm_with_tools = llm.bind_tools([get_weather])
response = llm_with_tools.invoke([HumanMessage(content="Какая погода в Москве?")])
print(response.tool_calls)

С агентами (LangGraph)

ChatOpenAI напрямую совместим с langgraph агентами — указываете тот же клиент в create_react_agent:

from langgraph.prebuilt import create_react_agent

agent = create_react_agent(llm, tools=[get_weather])
result = agent.invoke({"messages": [HumanMessage(content="Какая погода в Москве?")]})

Что дальше