| from langchain_openai import ChatOpenAI |
| from dotenv import load_dotenv |
| from os import getenv |
| import os |
| |
| from langchain_groq import ChatGroq |
| load_dotenv() |
| groq_api_key = os.environ['GROQ_API_KEY'] |
| llm = ChatGroq(groq_api_key=groq_api_key, model_name="openai/gpt-oss-20b") |
|
|
|
|
| from typing import TypedDict, Annotated |
| from langgraph.graph import StateGraph, END, add_messages |
| class BasicChatState(TypedDict): |
| messages: Annotated[list, add_messages] |
| def chatbot(state: BasicChatState): |
| return { |
| "messages": [llm.invoke(state["messages"])] |
| } |
| |
| graph = StateGraph(BasicChatState) |
| graph.add_node("chatbot", chatbot) |
| graph.add_edge("chatbot", END) |
|
|
| |
| graph.set_entry_point("chatbot") |
|
|
| |
| chat_agent = graph.compile() |