多代理通信系统

一个完整的代理间通信系统,包含火车、航班和票务代理,用于协调和查询交通信息。

  • by bhanuprakashd
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 bhanuprakashd/A2A_ADK_Ticket_Agent

使用说明

A2A多智能体系统

与火车、航班和票务代理的完整代理对代理(A2A)通信系统。

快速开始

1.设置环境

# Create conda environment
conda create -n agent python=3.13
conda activate agent

# Install dependencies
pip install a2a-sdk google-adk python-dotenv httpx requests
pip install selectolax primp playwright
playwright install

2.配置环境变量

创建 .env 根目录中的文件:

MCP_ENDPOINT=https://railway-mcp.amithv.xyz/mcp
MCP_TIMEOUT=360
GOOGLE_GENAI_USE_VERTEXAI=FALSE
GOOGLE_API_KEY=your-api-key-here
TRAIN_AGENT_URL=http://localhost:10004
FLIGHT_AGENT_URL=http://localhost:10005

3.克隆MCP服务器(如果尚未存在)

git clone https://github.com/opspawn/Google-Flights-MCP-Server.git

4.运行代理

1号航站楼-列车员:

python -m train_agent

2号航站楼-航班代理:

python -m flight_agent

3号航站楼-票务代理:

python -m ticket_agent

建筑

Ticket Agent (Coordinator :8000)
    ├── Train Agent (:10004) ──> Railway MCP (Remote)
    └── Flight Agent (:10005) ──> Google Flights MCP (Local)

关键文件

  • train_agent/:印度铁路列车信息代理
  • flight_agent/:Google Flights航班搜索代理
  • ticket_agent/:代表训练/飞行的协调员代理人
  • Google-Flights-MCP-Server/:用于飞行数据的本地MCP服务器
  • .env:环境配置

故障排除

端口冲突:

lsof -ti:10004,10005,8000 | xargs kill

缺少依赖项:

pip install selectolax primp playwright
playwright install

MCP连接问题:

  • 验证 .env 有正确 MCP_ENDPOINT
  • 确保安装了所有依赖项
  • 检查MCP服务器是否可访问

文档

看 SETUP_GUIDE.md 有关详细的设置说明和故障排除。

许可证

该项目使用各种开源组件。有关许可证,请参阅各个目录。