Spaces:
Sleeping
Sleeping
Download backend/src/services/notes.py from pikamomo/Deep_Research_Agent: direct link, hf CLI and curl.
- Browser
- Download file 2.33 kB
-
https://huggingface.co/spaces/pikamomo/Deep_Research_Agent/resolve/main/backend/src/services/notes.py
- Command line
-
hf download hf://spaces/pikamomo/Deep_Research_Agent/backend/src/services/notes.py
-
curl -L -o notes.py https://huggingface.co/spaces/pikamomo/Deep_Research_Agent/resolve/main/backend/src/services/notes.py
2.33 kB
| """Helpers for coordinating note tool usage instructions.""" | |
| from __future__ import annotations | |
| import json | |
| from models import TodoItem | |
| def build_note_guidance(task: TodoItem) -> str: | |
| """Generate note tool usage guidance for a specific task.""" | |
| tags_list = ["deep_research", f"task_{task.id}"] | |
| tags_literal = json.dumps(tags_list, ensure_ascii=False) | |
| if task.note_id: | |
| read_payload = json.dumps({"action": "read", "note_id": task.note_id}, ensure_ascii=False) | |
| update_payload = json.dumps( | |
| { | |
| "action": "update", | |
| "note_id": task.note_id, | |
| "task_id": task.id, | |
| "title": f"Task {task.id}: {task.title}", | |
| "note_type": "task_state", | |
| "tags": tags_list, | |
| "content": "Please add the new information from this round to the task overview", | |
| }, | |
| ensure_ascii=False, | |
| ) | |
| return ( | |
| "Note collaboration guide:\n" | |
| f"- Current task note ID: {task.note_id}.\n" | |
| f"- Before writing the summary, you must call: [TOOL_CALL:note:{read_payload}] to get the latest content.\n" | |
| f"- After completing analysis, call: [TOOL_CALL:note:{update_payload}] to sync incremental information.\n" | |
| "- When updating, maintain the original paragraph structure and add new content to the corresponding sections.\n" | |
| f"- Recommended to keep tags as {tags_literal} so other Agents can quickly locate it.\n" | |
| "- After successfully syncing to notes, then output the summary for the user.\n" | |
| ) | |
| create_payload = json.dumps( | |
| { | |
| "action": "create", | |
| "task_id": task.id, | |
| "title": f"Task {task.id}: {task.title}", | |
| "note_type": "task_state", | |
| "tags": tags_list, | |
| "content": "Please record task overview, sources overview", | |
| }, | |
| ensure_ascii=False, | |
| ) | |
| return ( | |
| "Note collaboration guide:\n" | |
| f"- No note has been created for this task yet, please first call: [TOOL_CALL:note:{create_payload}].\n" | |
| "- After successful creation, record the returned note_id and reuse it in all subsequent updates.\n" | |
| "- After syncing notes, then output the summary for the user.\n" | |
| ) | |