17 lines
559 B
Python
17 lines
559 B
Python
from langchain_openai import ChatOpenAI
|
|
from langchain_core.messages import HumanMessage, AIMessage
|
|
from os import getenv
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
def get_llm(provider: str):
|
|
"""Return a LangChain chat model for the requested provider."""
|
|
return ChatOpenAI(
|
|
openai_api_key=getenv("OPENROUTER_API_KEY"),
|
|
openai_api_base=getenv("OPENROUTER_BASE_URL"),
|
|
model_name=provider,
|
|
)
|
|
|
|
def get_messages(chats, chat_id):
|
|
return [HumanMessage(**m) if m["role"] == "human" else AIMessage(**m) for m in chats[chat_id]]
|