目录

Edge Agent Harness

Edge Agent Harness 是一个用于本地验证端侧 Agent 工作流的测试项目。它通过 LangGraph 运行 Agent,使用本地工具和测试数据,并连接 OpenAI-compatible 模型服务。当前推荐搭配 llama.cpp-radix-tree 和 Qwen3 使用。

场景

  • 财报研究 (financial_research):基于本地虚构公司财报,完成查询、跨期比较和比例计算。
  • 现场运维 (field_maintenance):根据模拟设备状态、趋势、日志和手册,诊断实验室边缘设备问题。
  • 软件故障诊断 (edge_incident):读取本地事件服务的状态和日志,结合运行手册分析软件故障。

所有内置数据都是本地测试数据,不访问真实企业数据或硬件。财报 fixture 位于 data/financial/。

启动

先在一个终端启动模型服务。下面以本地 llama.cpp-radix-tree 和 Qwen3 GGUF 为例:

cd /path/to/llama.cpp-radix-tree
./build/bin/llama-server \
  --model /path/to/Qwen3-8B-Q8_0.gguf \
  --alias local \
  --host 0.0.0.0 --port 8080 \
  --ctx-size 32768 --parallel 4 \
  --kv-unified \
  --n-gpu-layers 99 --batch-size 2048 --ubatch-size 512 \
  --cache-ram 8192 \
  --cache-idle-slots --no-context-shift --cache-reuse 0 \
  --cache-kv-share on --cache-kv-share-route longest \
  --cache-radix-prompt on

再从本项目根目录启动 Harness:

cd /path/to/edge-agent-harness
python -m pip install -e .
export PYTHONPATH=src
export LLM_BASE_URL=http://127.0.0.1:8080/v1
export LLM_MODEL=local
python -m uvicorn edge_harness.app:app --host 0.0.0.0 --port 8090

打开 http://127.0.0.1:8090/ 使用工作台。运行软件故障诊断场景时,还需在第三个终端启动本地模拟事件服务:

python examples/edge_event_api.py --host 0.0.0.0 --port 8765 --state degraded

支持状态:healthy、degraded、down、worker_stall、regression。切换状态后重启事件服务即可模拟不同故障。

测试

检查模型服务和 Harness:

curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8090/health

运行 Harness 验收。添加 --chat 会向模型发送真实请求并执行工具调用:

PYTHONPATH=src python -m edge_harness.verify --base-url http://127.0.0.1:8090
PYTHONPATH=src python -m edge_harness.verify --base-url http://127.0.0.1:8090 --chat

重放预置 workload:

PYTHONPATH=src python -m edge_harness.batch \
  --base-url http://127.0.0.1:8080/v1 \
  --model local \
  --output-dir artifacts/batch

运行不依赖模型服务的项目测试:

PYTHONPATH=src python -m unittest discover -s tests -v
关于
272.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号