Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -65,8 +65,14 @@ class AdvancedAgent:
|
|
| 65 |
builder = StateGraph(MessagesState)
|
| 66 |
builder.add_node("assistant", assistant)
|
| 67 |
builder.add_node("tools", tools_node)
|
|
|
|
| 68 |
builder.add_edge("assistant", "tools")
|
| 69 |
builder.set_entry_point("assistant")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 70 |
builder.add_conditional_edges(
|
| 71 |
"assistant",
|
| 72 |
tools_condition,
|
|
@@ -84,13 +90,19 @@ class AdvancedAgent:
|
|
| 84 |
# Initial state must be a dict with "messages" key!
|
| 85 |
result = self.graph.invoke({"messages": messages})
|
| 86 |
final_messages = result["messages"]
|
|
|
|
|
|
|
| 87 |
ai_messages = [msg for msg in final_messages if isinstance(msg, AIMessage)]
|
|
|
|
| 88 |
if not ai_messages:
|
| 89 |
return "I wasn't able to generate a proper response. Please try again."
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
|
|
|
|
|
|
|
|
|
| 94 |
except Exception as e:
|
| 95 |
print(f"Error running agent graph: {e}")
|
| 96 |
return f"Sorry, I encountered an error while processing your question: {str(e)}"
|
|
|
|
| 65 |
builder = StateGraph(MessagesState)
|
| 66 |
builder.add_node("assistant", assistant)
|
| 67 |
builder.add_node("tools", tools_node)
|
| 68 |
+
builder.add_edge("tools", "assistant")
|
| 69 |
builder.add_edge("assistant", "tools")
|
| 70 |
builder.set_entry_point("assistant")
|
| 71 |
+
builder.add_conditional_edges(
|
| 72 |
+
"tools",
|
| 73 |
+
lambda x: "assistant",
|
| 74 |
+
{"assistant": "assistant"}
|
| 75 |
+
)
|
| 76 |
builder.add_conditional_edges(
|
| 77 |
"assistant",
|
| 78 |
tools_condition,
|
|
|
|
| 90 |
# Initial state must be a dict with "messages" key!
|
| 91 |
result = self.graph.invoke({"messages": messages})
|
| 92 |
final_messages = result["messages"]
|
| 93 |
+
|
| 94 |
+
# Extract only AI messages from the final state
|
| 95 |
ai_messages = [msg for msg in final_messages if isinstance(msg, AIMessage)]
|
| 96 |
+
|
| 97 |
if not ai_messages:
|
| 98 |
return "I wasn't able to generate a proper response. Please try again."
|
| 99 |
+
|
| 100 |
+
# Get the last AI message - this should be the final answer
|
| 101 |
+
last_message = ai_messages[-1]
|
| 102 |
+
|
| 103 |
+
# Return the content of the last AI message
|
| 104 |
+
return last_message.content if last_message.content else "I wasn't able to generate a proper response. Please try again."
|
| 105 |
+
|
| 106 |
except Exception as e:
|
| 107 |
print(f"Error running agent graph: {e}")
|
| 108 |
return f"Sorry, I encountered an error while processing your question: {str(e)}"
|