整改版本:按Day01工程化标准重写|不是泛泛课程笔记
生成时间:2026-06-09 15:32
| 学习模块 | 视频 / 分P / 章节 | 建议观看重点 |
|---|---|---|
| FastAPI应用实例 | FastAPI完整速通:Hello World API、路径参数、查询参数、POST接口、Pydantic。 | 重点看它如何支撑“合同收款汇总 FastAPI 接口原型”,不要全刷,只按关键词定位。 |
| GET查询接口 | FastAPI完整速通:Hello World API、路径参数、查询参数、POST接口、Pydantic。 | 重点看它如何支撑“合同收款汇总 FastAPI 接口原型”,不要全刷,只按关键词定位。 |
| POST分析接口 | FastAPI完整速通:Hello World API、路径参数、查询参数、POST接口、Pydantic。 | 重点看它如何支撑“合同收款汇总 FastAPI 接口原型”,不要全刷,只按关键词定位。 |
| Swagger接口文档 | FastAPI完整速通:Hello World API、路径参数、查询参数、POST接口、Pydantic。 | 重点看它如何支撑“合同收款汇总 FastAPI 接口原型”,不要全刷,只按关键词定位。 |
| Agent调用API | FastAPI完整速通:Hello World API、路径参数、查询参数、POST接口、Pydantic。 | 重点看它如何支撑“合同收款汇总 FastAPI 接口原型”,不要全刷,只按关键词定位。 |
如果原视频分P标题变化,请按模块关键词人工定位;不要全刷。
一句话理解:FastAPI应用实例 是完成“合同收款汇总 FastAPI 接口原型”这个任务时必须掌握的一个工程环节。
AI 工程里为什么必须会:FastAPI应用实例 不是孤立概念,它会影响接口参数、JSON结构、工作流节点、Agent工具、RAG结果或制造业业务数据能否被稳定处理。
项目里怎么用:在“合同收款汇总 FastAPI 接口原型”中,我要用它解决:把Day01合同汇总能力升级成HTTP接口,让悟空/DEAP/Agent可以通过请求获取结果。
面试时怎么说:我会把 FastAPI应用实例 放到业务场景里讲,先说明它解决什么问题,再说明它如何支撑 FastAPI、RAG、Agent、悟空/DEAP 或 AI表格的落地。
面试官追问怎么答:如果被追问,我会补充它的输入、输出、异常情况和工程边界,避免只背定义。
一句话理解:GET查询接口 是完成“合同收款汇总 FastAPI 接口原型”这个任务时必须掌握的一个工程环节。
AI 工程里为什么必须会:GET查询接口 不是孤立概念,它会影响接口参数、JSON结构、工作流节点、Agent工具、RAG结果或制造业业务数据能否被稳定处理。
项目里怎么用:在“合同收款汇总 FastAPI 接口原型”中,我要用它解决:把Day01合同汇总能力升级成HTTP接口,让悟空/DEAP/Agent可以通过请求获取结果。
面试时怎么说:我会把 GET查询接口 放到业务场景里讲,先说明它解决什么问题,再说明它如何支撑 FastAPI、RAG、Agent、悟空/DEAP 或 AI表格的落地。
面试官追问怎么答:如果被追问,我会补充它的输入、输出、异常情况和工程边界,避免只背定义。
一句话理解:POST分析接口 是完成“合同收款汇总 FastAPI 接口原型”这个任务时必须掌握的一个工程环节。
AI 工程里为什么必须会:POST分析接口 不是孤立概念,它会影响接口参数、JSON结构、工作流节点、Agent工具、RAG结果或制造业业务数据能否被稳定处理。
项目里怎么用:在“合同收款汇总 FastAPI 接口原型”中,我要用它解决:把Day01合同汇总能力升级成HTTP接口,让悟空/DEAP/Agent可以通过请求获取结果。
面试时怎么说:我会把 POST分析接口 放到业务场景里讲,先说明它解决什么问题,再说明它如何支撑 FastAPI、RAG、Agent、悟空/DEAP 或 AI表格的落地。
面试官追问怎么答:如果被追问,我会补充它的输入、输出、异常情况和工程边界,避免只背定义。
一句话理解:Swagger接口文档 是完成“合同收款汇总 FastAPI 接口原型”这个任务时必须掌握的一个工程环节。
AI 工程里为什么必须会:Swagger接口文档 不是孤立概念,它会影响接口参数、JSON结构、工作流节点、Agent工具、RAG结果或制造业业务数据能否被稳定处理。
项目里怎么用:在“合同收款汇总 FastAPI 接口原型”中,我要用它解决:把Day01合同汇总能力升级成HTTP接口,让悟空/DEAP/Agent可以通过请求获取结果。
面试时怎么说:我会把 Swagger接口文档 放到业务场景里讲,先说明它解决什么问题,再说明它如何支撑 FastAPI、RAG、Agent、悟空/DEAP 或 AI表格的落地。
面试官追问怎么答:如果被追问,我会补充它的输入、输出、异常情况和工程边界,避免只背定义。
一句话理解:Agent调用API 是完成“合同收款汇总 FastAPI 接口原型”这个任务时必须掌握的一个工程环节。
AI 工程里为什么必须会:Agent调用API 不是孤立概念,它会影响接口参数、JSON结构、工作流节点、Agent工具、RAG结果或制造业业务数据能否被稳定处理。
项目里怎么用:在“合同收款汇总 FastAPI 接口原型”中,我要用它解决:把Day01合同汇总能力升级成HTTP接口,让悟空/DEAP/Agent可以通过请求获取结果。
面试时怎么说:我会把 Agent调用API 放到业务场景里讲,先说明它解决什么问题,再说明它如何支撑 FastAPI、RAG、Agent、悟空/DEAP 或 AI表格的落地。
面试官追问怎么答:如果被追问,我会补充它的输入、输出、异常情况和工程边界,避免只背定义。
一句话解释:它的本质是让“把Day01合同汇总能力升级成HTTP接口,让悟空/DEAP/Agent可以通过请求获取结果。”变成可执行、可验证、可复用的工程流程。
为什么重要:AI工程面试不只考知道概念,更考能否把概念变成项目产出。
在 AI 工程里的使用场景:FastAPI接口、DEAP工作流、RAG知识库、Agent工具、制造业数据分析。
面试表达:我会先讲业务问题,再讲FastAPI接口如何支撑这个问题的解决。
一句话解释:企业AI应用要把自然语言、业务字段、接口返回和模型回答整理成结构化输入输出。
为什么重要:没有结构化输入输出,工作流和Agent就无法稳定复用。
在 AI 工程里的使用场景:JSON、API参数、Pydantic模型、Tool Schema、AI表格字段、RAG片段。
面试表达:我会关注每一步的输入、输出和字段含义,而不是只追求模型回答。
一句话解释:AI能力必须有边界:权限、日志、错误兜底、拒答、人审和测试。
为什么重要:企业场景中误调用接口、误写数据、编造答案都会产生真实风险。
在 AI 工程里的使用场景:销帮帮写入、财务问答、合同分析、制造业订单风险预警。
面试表达:我会明确哪些可以自动化,哪些必须人工确认。
产物目录:/Users/hejunkai/Documents/AI工程师/28天每日背诵文档/Day03_FastAPI接口_实战项目
核心文件:day03_fastapi_contract_api.py
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI(title="合同收款汇总API")
class ContractSummaryRequest(BaseModel):
team_name: str
month: str
@app.get("/health")
def health():
return {"status": "ok"}
@app.post("/contracts/summary")
def summarize_contracts(req: ContractSummaryRequest):
# 演示数据,真实项目可替换为数据库、AI表格或ERP接口
records = [
{"team_name": "星辰战队", "month": "2026-04", "contract_amount": 480000, "paid_amount": 320000},
{"team_name": "星辰战队", "month": "2026-04", "contract_amount": 260000, "paid_amount": 260000},
{"team_name": "先锋战队", "month": "2026-04", "contract_amount": 390000, "paid_amount": 100000}
]
matched = [r for r in records if r["team_name"] == req.team_name and r["month"] == req.month]
return {
"team_name": req.team_name,
"month": req.month,
"contract_count": len(matched),
"total_contract_amount": sum(r["contract_amount"] for r in matched),
"total_paid_amount": sum(r["paid_amount"] for r in matched),
"total_unpaid_amount": sum(r["contract_amount"] - r["paid_amount"] for r in matched)
}
# 运行:uvicorn day03_fastapi_contract_api:app --reload
# 浏览器打开:http://127.0.0.1:8000/docs验收目标:能打开 /docs,测试 POST /contracts/summary,并解释该接口如何变成Agent工具。
| 操作任务 | 要求 | 验收方式 |
|---|---|---|
| 完成当天实战产物 | 生成或阅读 day03_fastapi_contract_api.py | 能打开 /docs,测试 POST /contracts/summary,并解释该接口如何变成Agent工具。 |
| 解释输入数据 | 说清用户问题、字段、接口参数或文档来源 | 能说出每个字段的业务含义 |
| 解释处理过程 | 按步骤说明筛选、校验、调用、检索、生成或汇总逻辑 | 别人能按你的说明复现 |
| 解释输出结果 | 说明输出JSON、Markdown、Schema、流程图或讲解稿的用途 | 能关联FastAPI/Agent/悟空/DEAP |
| 准备面试表达 | 用2-3分钟讲清当天主题 | 能回答至少3个追问 |
| 易忘点 | 正确理解 | 错误理解 |
|---|---|---|
| 只背定义 | 要结合业务输入、处理、输出讲 | 把技术点说成百科解释 |
| 忽略产物 | 每天必须有代码、JSON、Schema、流程图或讲解稿 | 只看视频不做东西 |
| 混淆原型和生产 | 原型要如实说,生产还需权限/日志/测试/部署 | 把MVP说成已上线系统 |
| 忽略字段和数据结构 | 企业AI落地关键是字段、接口、数据结构 | 只关注模型回答 |
| 忽略异常兜底 | 接口失败、资料不足、写入风险都要处理 | 假设每次都成功 |