课程简介
把 Agent 当成会调工具的业务进程:输入是用户意图,输出是一条可查的任务,以及一次真正的预约变更。
本课跟一个可运行仓库走完这一圈:工具有超时和幂等、任务落库、写操作过权限、全程留审计。不接大模型 Key,意图先用规则解析,本机就能跑。
- 工具函数可单测
- 任务状态进数据库
- 没有权限的人调不到写工具
- 用 LangGraph 把上面三步串成状态机
- 用 FastAPI 暴露
/agent/run和审计查询
课程技术栈
- 接口:Python、FastAPI
- 数据:SQLite(SQLAlchemy)
- 编排:LangGraph
- 测试:pytest
flowchart TB 意图[用户意图] --> 解析[解析成动作] 解析 --> 权限[查这个人能不能写] 权限 -->|不行| 任务失败[任务 forbidden] 权限 -->|可以| 工具[调用预约工具] 工具 --> 任务成功[任务 succeeded] 任务失败 --> 审计[(审计日志)] 任务成功 --> 审计 工具 --> 预约[(预约表)]
这门课不讲什么
- 不讲 Prompt 调参、不讲多 Agent 辩论
- 不上支付、不做网页前台
- 不把大模型直接绑进主路径;解析槽位留在
parse_intent,以后再换 LLM
源码包里有什么
解压后目录 agent-enterprise/,和笔记按节对应:
| 节 | 主要文件 |
|---|---|
| 环境 | README.md、requirements.txt |
| 工具 | app/tools.py、tests/test_tools.py |
| 任务 | app/models.py、app/audit.py |
| 权限 | app/permissions.py |
| 状态机 | app/graph.py |
| 接口 | app/main.py |
预置账号:student-1 学生、intern-1 实习(只读)、admin-1 管理员。实验室:lab-a、lab-b。