跳转至

01 快速开始

三种启动方式,任选其一。前提:已安装 Docker(方式一/二)或 Python 3.10+(方式三)。

方式一:一键脚本(macOS / Linux)

bash scripts/start.sh        # 自动创建 .venv、安装依赖、构建本体、启动 API+MCP

方式二:Docker(推荐,隔离环境)

docker compose up -d api mcp   # 构建并后台启动两个服务
docker compose ps              # 查看状态

方式三:手动

# 1. 创建虚拟环境并安装依赖(首次)
python3 -m venv .venv && .venv/bin/pip install -r requirements.txt

# 2. 构建本体(可选,仓库已内置 domains/agent_task/agent_task_ontology.owl)
.venv/bin/python scripts/build_ontology.py

# 3. 启动推理 API + Demo 页面
.venv/bin/uvicorn api.main:app --host 127.0.0.1 --port 8000
# 另开终端启动 MCP(可选)
.venv/bin/python mcp/mcp_server.py --domain agent_task --port 9000

验证服务已就绪

curl -s http://127.0.0.1:8000/api/health

实测返回:

{"status":"ok","ontology":"agent_task_ontology.owl","reasoner":"OWL 2 RL (owlrl) + 业务规则 R2/R4","domain":"agent_task","dirty":false,"agents":5,"tasks":8,"counts":{"agents":5,"tasks":8,"capabilities":5,"constraints":1,"assignments":0,"inferred_triples":457}}

关键字段:status=ok、本体已加载、inferred_triples 为推理物化后的三元组数。

跑测试与一键演示

.venv/bin/python -m pytest tests/ -q     # 29 passed
bash scripts/demo.sh                     # 一键演示:能力匹配→编排→分配→一致性

停止服务

docker compose down                      # Docker 方式
# 手动方式:Ctrl+C 终止两个终端进程

通用模式说明(重要边界)

本服务支持加载自定义本体(见 04 运维)。当已加载自定义本体时,服务进入"通用模式":图谱 / 物化 / SPARQL / 通用查询可用;领域推理 R1–R4 不可用(返回明确提示),重启服务可恢复默认本体。判断当前模式:

curl -s -X POST http://127.0.0.1:8000/api/reason \
  -H "Content-Type: application/json" \
  -d '{"type":"capability_match","task":"t_login_dev"}'
# 若返回“当前为通用模式……领域推理仅默认本体可用”,即处于通用模式