Spaces:
Sleeping
Sleeping
| from agent.state import ResearchState | |
| from agent.config import llm | |
| def reflection_node(state: ResearchState): | |
| prompt = f""" | |
| Original question: {state['topic']} | |
| Generated report: {state['report']} | |
| Does this report fully and accurately answer the | |
| original question? Reply with only YES or NO, | |
| then one sentence explanation. | |
| """ | |
| response = llm.invoke(prompt) | |
| passed = response.content.strip().upper().startswith("YES") | |
| return { | |
| "reflection_passed": passed, | |
| "loop_count": state['loop_count'] + 1 | |
| } | |
| def should_continue(state: ResearchState): | |
| if state['reflection_passed'] or state['loop_count'] >= 2: | |
| return "END" | |
| else: | |
| return "search" |