挑战课程 · 任一编码 Agent + 录制好的模型回放(无需 API Key)

用 Python 构建 LLM 功能:结构化输出、工具调用与评测

把演示日的一次模型调用变成能上线的功能——校验结构化输出、给工具调用设白名单、带着错误信息重试、拿不准就转人工而不是瞎猜,并用分母覆盖全部用例的离线评测来度量。

进阶5 个挑战2–4 hours熟悉函数、字典与异常处理免费课程徽章:模型输出是不可信输入审核于 2026-10-11

把这一句话粘贴给你的 Agent,即可开始:

Read https://flypython.com/skills/flypython/SKILL.md and start the FlyPython course `llm-features-in-python`.

需要一个能执行命令并联网的编码 Agent(纯网页聊天 AI 做不了)。Agent 会用一次性授权链接为你授权、 自己取回课程文件——你不需要下载任何东西。 还没装 FlyPython Skill?选你工具对应的工具课 →

概览

学到什么一个可运行的工单分诊功能(ticket_triage.py):把每条模型回复当成不可信输入——经过校验的输出契约、工具调用白名单、带错误反馈的重试、人工兜底——外加一个每次改动都能回放、带通过阈值的离线评测。
适合谁熟悉函数、字典与异常处理 · PATH 中有 Python 3.11 或更新版本
时长与费用2–4 hours · 免费

开始

一次运行是怎么跑的

Agent 负责驱动;课程文件经 Skill 到达你的工作目录——不下载、不 clone。

Skill任一编码 Agent + 录制好的模型回放(无需 API Key)

Skill 负责取文件

把上方入口语句粘贴给你的 Agent。它会带你走一次性授权链接(核对码、点「允许」),自己取回本课文件,然后陪你做题。没装 Skill 的 Agent 也可以用这段简报:

请完成 FlyPython 挑战课程「用 Python 构建 LLM 功能:结构化输出、工具调用与评测」(course id course-llm-features)的检查点 。
机读简报:https://flypython.com/api/challenges/llm-features-in-python
打开课程文件夹,先读 TASK.md——它就是契约。
规则:最小变更、不新增依赖、绝不修改 tests/ 或 solution/。
用 python verify.py 检查 starter/;自报关卡先让我回答课后问题,再运行 --attest ID 取得码。

Agent 在任务契约下工作:最小变更、不新增依赖、绝不修改 solution/。可选引导模式见 COURSE.md。

文件

文件自己到达

课程文件在 /api/challenges/llm-features-in-python/files——Agent 取清单后按路径逐个写入。你无需手动下载任何东西。

场景皮肤

同样的技能,你熟悉的领域

三个皮肤走同一份代码和同一套测试。开课前选一个最贴近你工作的。

scenario/it-helpdesk/recordings.json + devices.json

IT 服务台(带设备查询工具)

把内部工单分到五个类别;模型可以先按资产标签查询设备。

scenario/saas-feedback/recordings.json

SaaS 反馈收件箱

完全不带工具地分类应用内反馈——模型只凭工单文本作答。

scenario/shop-support/recordings.json + orders.json

商店客服(带订单查询工具)

分类商店的客服邮件;模型可以先查询订单再作答。

验证

“完成”由什么决定

15 个测试锚定输出契约、工具调用白名单、带错误反馈的重试、人工兜底,以及分母覆盖全部用例的评测。starter 复现具名失败;已审核的实现对着录制回复通过 15/15——无需联网、无需 API Key。

python verify.py  # 在课程文件夹运行:打印检查点状态 + 认领码

把这套方法带回你的项目

第 5 课把工作流——而不是代码——迁移到你真正拥有的一个脚本上:三行任务契约、一个从红变绿的新测试、 一份写明测试不能证明什么的记录。同一个循环在AI Coding 工作方法指南中有完整描述, 并可由可运行示例练习。

认领你的证据

检查点通过后,python verify.py 会打印确定性认领码。 完成授权的 Agent 会替你一次性批量提交;手动提交则粘贴到进度页—— 每个检查点 10 分,集齐五个获得 模型输出是不可信输入 课程徽章。认领码是自我声明的证据,不是证书。

验证不能证明什么

通过课程套件只证明被锚定的行为在测试输入上成立——不等于明天的数据也对,不等于生产性能达标, 在你为自己的项目写下契约之前,也不代表你项目里的任何事。仓库测试是证据,不是你的结果。