LLM API 基础
请求含 model、messages、temperature、max_tokens 等。System 定角色,User 输入,Assistant 历史。
Temperature:低更确定(代码、抽取),高更创意(营销文案)。
流式
Server-Sent Events 逐 chunk 返回 delta content。后端:
for stream.Next() {
chunk := stream.Current()
w.Write([]byte(chunk.Content))
flusher.Flush()
}
注意 客户端断开 停止上游请求省 token。
结构化输出
- JSON mode / response_format
- Function calling:schema 描述参数,模型填槽
- 解析失败:重试 + 降级模板
Prompt 设计原则
版本与评测
prompts/
extract_order/v3.txt
extract_order/v3.meta.yaml # model, temp, eval score
CI 跑 golden set 回归;指标:exact match、F1、人工抽检。
成本与延迟
- 缩短 system prompt、压缩检索 context
- 小模型路由简单意图,大模型处理复杂
- 缓存相同 prefix(provider prompt caching)
安全
PII 脱敏进日志;用户输入 分隔符 防注入「忽略上文指令」。输出过滤敏感词。
与 Agent 衔接
week08-rag-agent-engineering 的 tool 依赖 function calling 稳定。站内 /zh/knowledge/agent-practice/prompt-versioning 有实践主题。
实战巩固与面试表达
本篇属于 8 周冲刺 week08-llm-api-prompt 主题。复习时先闭卷回答 frontmatter 中三张 flashcard,再展开口述两个「为什么」:为什么这种方案能 work、边界失败时如何降级。与相邻章节对照:算法篇强调复杂度与模板,Go 篇强调工程默认写法,中间件篇强调线上故障案例。
动手与自检清单
用 25 分钟限时做 1 道相关练习题或画出一张架构/数据结构示意图;用 5 分钟写 STAR 片段说明你在项目里是否用过类似技术。记录 3 个面试追问及你的标准答法,存入 /zh/notebook/master-plan 笔记。若某点不熟,回到对应 /chapters 交互 Lab 重新走一遍流程,比死记卡片更有效。
易错点提醒
避免只背名词不会画图;避免只说优点不谈 trade-off(性能、一致性、运维成本至少提一项);避免把学习 Demo 说成百万 QPS 生产。回答时使用「场景 → 方案 → 结果 → 反思」四段式,体现工程成熟度。
自检
写一版「从订单文本抽 JSON」的 system prompt + 2 个 few-shot;说明 temperature=0 仍不稳定时怎么办(固定 seed 若支持、后处理校验)。