rag_agent / core /rag_agent.py
Cheh Kit Hong
fixing gradio
aa018e3
raw
history blame
1.11 kB
import uuid
from langchain_google_genai import ChatGoogleGenerativeAI
from config import configs
from agent.tools import *
from agent.graph import create_agent_graph
from dotenv import load_dotenv
load_dotenv()
class RAGAgent:
def __init__(self):
self.thread_id = str(uuid.uuid4())
self.llm = ChatGoogleGenerativeAI(
model=configs["LLM_MODEL_NAME"],
temperature=configs["TEMPERATURE"],
max_tokens=configs["MAX_TOKENS"]
)
vectordb = intialize_chroma_vectorstore()
search_tools = [web_search_tavily, arxiv_search, wikipedia_search]
self.agent_graph = create_agent_graph(self.llm, vectordb, search_tools)
def get_config(self):
return {"configurable": {"thread_id": self.thread_id}}
def reset_thread(self):
try:
self.agent_graph.checkpointer.delete_thread(self.thread_id)
except Exception as e:
print(f"Warning: Could not delete thread {self.thread_id}: {e}")
self.thread_id = str(uuid.uuid4())
if __name__ == "__main__":
pass