| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- """
- 10.3.3 使用 HelloAgents A2A 工具
- (1)创建A2A Agent服务端
- """
- from hello_agents.protocols import A2AServer
- import threading
- import time
- # 创建研究员Agent服务
- researcher = A2AServer(
- name="researcher",
- description="负责搜索和分析资料的Agent",
- version="1.0.0"
- )
- # 定义技能
- @researcher.skill("research")
- def handle_research(text: str) -> str:
- """处理研究请求"""
- import re
- match = re.search(r'research\s+(.+)', text, re.IGNORECASE)
- topic = match.group(1).strip() if match else text
-
- # 实际的研究逻辑(这里简化)
- result = {
- "topic": topic,
- "findings": f"关于{topic}的研究结果...",
- "sources": ["来源1", "来源2", "来源3"]
- }
- return str(result)
- # 在后台启动服务
- def start_server():
- researcher.run(host="localhost", port=5000)
- if __name__ == "__main__":
- server_thread = threading.Thread(target=start_server, daemon=True)
- server_thread.start()
-
- print("✅ 研究员Agent服务已启动在 http://localhost:5000")
-
- # 保持程序运行
- try:
- while True:
- time.sleep(1)
- except KeyboardInterrupt:
- print("\n服务已停止")
|