名称: llm-架构师 描述: 当用户需要LLM系统架构、模型部署、优化策略和生产服务基础设施时使用。设计可扩展的大型语言模型应用,重点关注性能、成本效益和安全性。
LLM 架构师
目的
提供专家级大型语言模型系统架构,用于大规模设计、部署和优化LLM应用。专长于模型选择、RAG(检索增强生成)管道、微调策略、服务基础设施、成本优化以及生产LLM系统的安全护栏。
何时使用
- 从需求到生产,设计端到端的LLM系统
- 为特定用例选择模型和服务基础设施
- 实施RAG(检索增强生成)管道
- 在保持质量阈值的同时优化LLM成本
- 构建安全护栏和合规机制
- 规划微调、RAG与提示工程策略
- 为高吞吐量应用扩展LLM推理
快速开始
在以下情况调用此技能:
- 从需求到生产,设计端到端的LLM系统
- 为特定用例选择模型和服务基础设施
- 实施RAG(检索增强生成)管道
- 在保持质量阈值的同时优化LLM成本
- 构建安全护栏和合规机制
不要在以下情况调用:
- 仅需简单的API集成(改用后端开发人员技能)
- 仅需提示工程,无需架构决策
- 需要从头训练基础模型(几乎总是错误的方法)
- 与语言模型无关的通用机器学习任务(改用机器学习工程师技能)
决策框架
模型选择快速指南
| 需求 | 推荐方法 |
|---|---|
| 延迟 <100毫秒 | 小型微调模型(7B量化版) |
| 延迟 <2秒,预算无限制 | Claude 3 Opus / GPT-4 |
| 延迟 <2秒,领域特定 | Claude 3 Sonnet 微调版 |
| 延迟 <2秒,成本敏感 | Claude 3 Haiku |
| 可接受批量/异步处理 | 批量API,最便宜层级 |
RAG 与 微调 决策树
需要定制LLM行为吗?
│
├─ 需要领域特定知识吗?
│ ├─ 知识频繁变化吗?
│ │ └─ RAG(检索增强生成)
│ └─ 知识是静态的吗?
│ └─ 微调 或 RAG(两者都测试)
│
├─ 需要特定的输出格式/风格吗?
│ ├─ 能在提示中描述吗?
│ │ └─ 提示工程(先尝试)
│ └─ 格式对提示来说太复杂吗?
│ └─ 微调
│
└─ 需要延迟 <100毫秒吗?
└─ 微调的小型模型(7B-13B)
架构模式
[客户端] → [API网关 + 速率限制]
↓
[请求路由器]
(按意图/复杂性路由)
↓
┌────────┴────────┐
↓ ↓
[快速模型] [强大模型]
(Haiku/小型) (Sonnet/大型)
↓ ↓
[缓存层] ← [响应聚合器]
↓
[日志记录与监控]
↓
[响应返回客户端]
核心工作流:设计LLM系统
1. 需求收集
询问以下问题:
- 延迟:P95响应时间要求是多少?
- 规模:预期请求量/天及增长轨迹?
- 准确性:最低可接受质量是多少?(可衡量指标)
- 成本:预算限制?(美元/请求 或 美元/月)
- 数据:用于评估的现有数据集?敏感级别?
- 合规性:法规要求?(HIPAA、GDPR、SOC2等)
2. 模型选择
def select_model(requirements):
if requirements.latency_p95 < 100: # 毫秒
if requirements.task_complexity == "simple":
return "llama2-7b-finetune"
else:
return "mistral-7b-quantized"
elif requirements.latency_p95 < 2000:
if requirements.budget == "unlimited":
return "claude-3-opus"
elif requirements.domain_specific:
return "claude-3-sonnet-finetuned"
else:
return "claude-3-haiku"
else: # 可接受批量/异步
if requirements.accuracy_critical:
return "gpt-4-with-ensemble"
else:
return "batch-api-cheapest-tier"
3. 原型与评估
# 在评估数据集上运行基准测试
python scripts/evaluate_model.py \
--model claude-3-sonnet \
--dataset data/eval_1000_examples.jsonl \
--metrics accuracy,latency,cost
# 预期输出:
# 准确率:94.3%
# P95延迟:1,245毫秒
# 每1K请求成本:$2.15
4. 迭代检查清单
- [ ] P95延迟满足要求吗?如果不 → 优化服务(量化、缓存)
- [ ] 准确率满足阈值吗?如果不 → 改进提示、微调或升级模型
- [ ] 成本在预算内吗?如果不 → 积极缓存、小型模型路由、批处理
- [ ] 安全护栏测试了吗?如果不 → 添加内容过滤器、PII检测
- [ ] 监控仪表板上线了吗?如果不 → 设置 Prometheus + Grafana
- [ ] 运行手册文档化了吗?如果不 → 记录常见故障和修复方法
成本优化策略
| 策略 | 节省 | 何时使用 |
|---|---|---|
| 语义缓存 | 40-80% | 60%+ 相似查询 |
| 多模型路由 | 30-50% | 混合复杂性查询 |
| 提示压缩 | 10-20% | 长上下文输入 |
| 批处理 | 20-40% | 可容忍异步的工作负载 |
| 小型模型级联 | 40-60% | 简单查询优先 |
安全检查清单
- [ ] 针对对抗性示例测试了内容过滤
- [ ] 验证了PII检测和脱敏
- [ ] 实施了提示注入防御
- [ ] 实现了输出验证规则
- [ ] 为所有请求配置了审计日志
- [ ] 记录并验证了合规性要求
危险信号 - 何时升级处理
| 观察现象 | 行动 |
|---|---|
| 提示迭代后准确率 <80% | 考虑微调 |
| 延迟 > 2倍要求 | 审查基础设施 |
| 成本 > 2倍预算 | 积极缓存/路由 |
| 幻觉率 >5% | 添加RAG或更强护栏 |
| 检测到安全绕过 | 立即进行安全审查 |
快速参考:性能目标
| 指标 | 目标 | 临界值 |
|---|---|---|
| P95延迟 | < 2倍要求 | < 3倍要求 |
| 准确率 | >90% | >80% |
| 缓存命中率 | >60% | >40% |
| 错误率 | <1% | <5% |
| 每1K请求成本 | 在预算内 | <150% 预算 |
附加资源
-
详细技术参考:参见 REFERENCE.md
- RAG实施工作流
- 语义缓存模式
- 部署配置
-
代码示例与模式:参见 EXAMPLES.md
- 反模式(提示足够时却微调、无回退)
- LLM系统质量检查清单
- 弹性LLM调用模式