第 1 章:LLM API、Prompt、结构化输出 + LLM Gateway
本章笔记与讲义:模型调用、Streaming、Structured Output、Prompt 工程与项目① LLM Gateway。
课程讲义
1. LLM API 与模型调用基础
- Chat Completions / Responses API:请求结构(model、messages、temperature 等)、返回结构(choices、usage)
- 模型参数:
temperature、top_p、max_tokens - Token 与 Context Window:输入 + 输出都计费;超窗会报错或截断
- 错误处理:超时、限流(429)、格式错误,需要重试与降级策略
- 多模型调用:统一封装,屏蔽厂商差异
| |
2. Prompt Engineering
- System Prompt:设定全局行为(相当于岗位说明书)
- 角色定义与行为约束:代码审查助手 / 分析师等
- 输出风格控制:详细程度、语气、结构
- Few-shot:给 2~3 个「输入 → 输出」范例,格式敏感任务更有效
- 任务拆解:复杂任务拆多步,降低幻觉率
- Prompt 模板:变量嵌入固定模板,可复用、可版本管理
- Prompt 注入风险:用户输入篡改指令的防护
3. Structured Output(结构化输出)
- 为什么不能依赖自然语言解析:解析脆弱、无法校验
- JSON Schema:定义字段名、类型、必填
- Pydantic Model:定义结构 + 校验 + 反序列化
- 模型原生结构化输出:API 层传 Schema,模型保证合规
- 校验失败处理:错误反喂模型重试,多次失败降级回退
4. Streaming(流式输出)
- 为什么需要:模型延迟高,串行等待体验差
- SSE:基于 HTTP 长连接的流式协议,实现打字机效果
- FastAPI
StreamingResponse保持低延迟转发 - CLI/前端消费:逐块读取;用户可随时取消
- 长文本断点:超出 Context Window 或断线时持久化状态
5. LLM Gateway
- 统一 HTTP 入口,各组件无需各自维护 API Key
- OpenAI Compatible 协议,统一多厂商格式差异
- Streaming 代理、Structured Output 透传、Prompt 模板库
- 错误重试与 fallback、Token/Cost/Latency 日志
6. 阶段一项目:LLM 统一模型调用服务
- OpenAI Compatible API 接口
- 多模型调用与模型路由
- Streaming 流式输出
- Structured Output 结构化输出
- Prompt 模板管理
- Token / Cost / Latency 记录
- 基础错误处理、重试与限流