Spaces:
Sleeping
Sleeping
Recussion_limit
Browse files
app.py
CHANGED
|
@@ -36,7 +36,7 @@ class BasicAgent:
|
|
| 36 |
|
| 37 |
# IMPORTANT: invoke() returns a **new** state instance (or an AddableValuesDict),
|
| 38 |
# not the object we pass in. Use the returned value to fetch final_answer.
|
| 39 |
-
out_state = self.graph.invoke(init_state)
|
| 40 |
print("out_state: ", out_state,'\n\n\n\n')
|
| 41 |
|
| 42 |
# Extract the final answer from the last message
|
|
|
|
| 36 |
|
| 37 |
# IMPORTANT: invoke() returns a **new** state instance (or an AddableValuesDict),
|
| 38 |
# not the object we pass in. Use the returned value to fetch final_answer.
|
| 39 |
+
out_state = self.graph.invoke(init_state, {"recursion_limit": 5})
|
| 40 |
print("out_state: ", out_state,'\n\n\n\n')
|
| 41 |
|
| 42 |
# Extract the final answer from the last message
|
tools.py
CHANGED
|
@@ -209,13 +209,17 @@ def wikipedia_search_tool(wiki_query: str) -> str:
|
|
| 209 |
"""
|
| 210 |
print("reached wikipedia search tool")
|
| 211 |
query = wiki_query
|
| 212 |
-
|
| 213 |
-
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 219 |
|
| 220 |
@tool
|
| 221 |
def arxiv_search_tool(arxiv_query: str) -> str:
|
|
@@ -225,13 +229,17 @@ def arxiv_search_tool(arxiv_query: str) -> str:
|
|
| 225 |
Returns: text summary of first matching page or an error message>"
|
| 226 |
"""
|
| 227 |
print("reached arxiv_search_tool")
|
| 228 |
-
|
| 229 |
-
|
| 230 |
-
|
| 231 |
-
|
| 232 |
-
|
| 233 |
-
|
| 234 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
|
| 236 |
|
| 237 |
from langchain_openai import ChatOpenAI
|
|
|
|
| 209 |
"""
|
| 210 |
print("reached wikipedia search tool")
|
| 211 |
query = wiki_query
|
| 212 |
+
try:
|
| 213 |
+
docs = WikipediaLoader(query=query, load_max_docs=5).load()
|
| 214 |
+
result = ""
|
| 215 |
+
counter = 1
|
| 216 |
+
for doc in docs:
|
| 217 |
+
result += f"\n\nDocument{counter}: {doc.metadata['title']}\n. {doc.page_content}"
|
| 218 |
+
counter += 1
|
| 219 |
+
return result
|
| 220 |
+
except Exception as e:
|
| 221 |
+
print(f"Error during Wikipedia search: {e}")
|
| 222 |
+
return "Wikipedia search failed, try another tool or query"
|
| 223 |
|
| 224 |
@tool
|
| 225 |
def arxiv_search_tool(arxiv_query: str) -> str:
|
|
|
|
| 229 |
Returns: text summary of first matching page or an error message>"
|
| 230 |
"""
|
| 231 |
print("reached arxiv_search_tool")
|
| 232 |
+
try:
|
| 233 |
+
docs = ArxivLoader(query=arxiv_query, load_max_docs=5).load()
|
| 234 |
+
result = ""
|
| 235 |
+
counter = 1
|
| 236 |
+
for doc in docs:
|
| 237 |
+
result += f"\n\nDocument{counter}: {doc.metadata['title']}\n. {doc.page_content}"
|
| 238 |
+
counter += 1
|
| 239 |
+
return result
|
| 240 |
+
except Exception as e:
|
| 241 |
+
print(f"Error during Arxiv search: {e}")
|
| 242 |
+
return "Arxiv search failed, try another tool or query"
|
| 243 |
|
| 244 |
|
| 245 |
from langchain_openai import ChatOpenAI
|