Spaces:
Sleeping
Sleeping
graph test
Browse files
app.py
CHANGED
|
@@ -137,6 +137,20 @@ class BasicAgent:
|
|
| 137 |
def final_answer(self, state: AnswerState) -> Dict[str, Any]:
|
| 138 |
print(f"[final_answer] Agent returning answer: {state['answer']}")
|
| 139 |
answer = state["answer"] if state["answer"] else "I don't know"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 140 |
return {
|
| 141 |
"answer": answer,
|
| 142 |
"is_final_answer": True,
|
|
|
|
| 137 |
def final_answer(self, state: AnswerState) -> Dict[str, Any]:
|
| 138 |
print(f"[final_answer] Agent returning answer: {state['answer']}")
|
| 139 |
answer = state["answer"] if state["answer"] else "I don't know"
|
| 140 |
+
|
| 141 |
+
if not state["is_final_answer"]:
|
| 142 |
+
state["messages"].append(
|
| 143 |
+
ChatMessage(
|
| 144 |
+
role="user",
|
| 145 |
+
content="Based on the information provided, please provide a final answer, no tool calls allowed.",
|
| 146 |
+
)
|
| 147 |
+
)
|
| 148 |
+
response = self.model.invoke(state["messages"])
|
| 149 |
+
if "FINAL ANSWER:" in response.content:
|
| 150 |
+
answer = response.text().split("FINAL ANSWER:")[-1].strip()
|
| 151 |
+
print(f"Agent final answer: {answer}")
|
| 152 |
+
|
| 153 |
+
answer = state["answer"] if state["answer"] else "I don't know"
|
| 154 |
return {
|
| 155 |
"answer": answer,
|
| 156 |
"is_final_answer": True,
|