Ihor Kozar commited on
Commit
387c120
·
1 Parent(s): 1aa9547
Files changed (4) hide show
  1. agent.py +2 -4
  2. agent_tools.py +2 -1
  3. requirements.txt +1 -0
  4. test.py +1 -2
agent.py CHANGED
@@ -1,6 +1,6 @@
1
  import time
2
  from langchain.chains import RetrievalQA
3
- from langchain.vectorstores import Chroma
4
  from langchain_core.messages import SystemMessage, HumanMessage
5
  from langchain_openai import ChatOpenAI, OpenAIEmbeddings
6
  from langgraph.graph import StateGraph, START
@@ -34,8 +34,6 @@ sys_msg = SystemMessage(
34
  """
35
  )
36
 
37
- print("agent.py loaded")
38
-
39
  class CUSTOM_AGENT:
40
  """
41
  A simple deterministic agent that leverages our tools directly and avoids
@@ -76,7 +74,7 @@ class CUSTOM_AGENT:
76
  def _retriever_node(self, state: MessagesState):
77
  """Retriever node"""
78
  question = state["messages"][ -1 ].content
79
- docs = self.retriever.get_relevant_documents(question)
80
 
81
  if docs:
82
  context = "\n\n".join([d.page_content for d in docs])
 
1
  import time
2
  from langchain.chains import RetrievalQA
3
+ from langchain_chroma import Chroma
4
  from langchain_core.messages import SystemMessage, HumanMessage
5
  from langchain_openai import ChatOpenAI, OpenAIEmbeddings
6
  from langgraph.graph import StateGraph, START
 
34
  """
35
  )
36
 
 
 
37
  class CUSTOM_AGENT:
38
  """
39
  A simple deterministic agent that leverages our tools directly and avoids
 
74
  def _retriever_node(self, state: MessagesState):
75
  """Retriever node"""
76
  question = state["messages"][ -1 ].content
77
+ docs = self.retriever.invoke(question)
78
 
79
  if docs:
80
  context = "\n\n".join([d.page_content for d in docs])
agent_tools.py CHANGED
@@ -99,7 +99,8 @@ def visit_webpage(url: str) -> str:
99
  """)
100
  def duckduck_websearch(query: str) -> str:
101
  search_engine = DuckDuckGoSearchResults(output_format="list", num_results=2)
102
- page_urls = [url["link"] for url in search_engine(query)]
 
103
 
104
  loader = WebBaseLoader(web_paths=page_urls)
105
  docs = loader.load()
 
99
  """)
100
  def duckduck_websearch(query: str) -> str:
101
  search_engine = DuckDuckGoSearchResults(output_format="list", num_results=2)
102
+ results = search_engine.invoke({"query": query})
103
+ page_urls = [url["link"] for url in results]
104
 
105
  loader = WebBaseLoader(web_paths=page_urls)
106
  docs = loader.load()
requirements.txt CHANGED
@@ -31,3 +31,4 @@ langchain-google-genai
31
  pytesseract
32
  matplotlib
33
  sentence_transformers
 
 
31
  pytesseract
32
  matplotlib
33
  sentence_transformers
34
+ langchain_chroma
test.py CHANGED
@@ -107,7 +107,6 @@ questions = [
107
  # Test
108
  if __name__ == "__main__":
109
  agent = CUSTOM_AGENT()
110
- q = questions[9]
111
- print("Question:", q["question"])
112
  answer = agent.run(q)
113
  print("Answer:", answer)
 
107
  # Test
108
  if __name__ == "__main__":
109
  agent = CUSTOM_AGENT()
110
+ q = questions[0]
 
111
  answer = agent.run(q)
112
  print("Answer:", answer)