chatsbt/chatgraph.py
2025-07-31 22:50:03 -04:00

18 lines
585 B
Python

from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage, AIMessage
from os import getenv
from dotenv import load_dotenv
from pydantic import SecretStr
load_dotenv()
def get_llm(provider: str):
"""Return a LangChain chat model for the requested provider."""
return ChatOpenAI(
api_key=SecretStr(getenv("OPENROUTER_API_KEY","")),
base_url=getenv("OPENROUTER_BASE_URL"),
model=provider,
)
def get_messages(chats, chat_id):
return [HumanMessage(**m) if m["role"] == "human" else AIMessage(**m) for m in chats[chat_id]]