Skip to content

大模型应用开发常见坑点


一、把大模型当数据库用

问题:

  • 期望大模型"记住"所有企业内部知识
  • 直接让模型回答它没见过的私有数据

结果: 幻觉严重,答案看似合理但完全编造

原则:

  • 大模型的知识有截止日期
  • 私有知识必须通过 RAG 或微调注入
  • 永远不要盲目信任模型输出

二、Prompt 写得像散文

问题:

  • Prompt 没有结构
  • 指令模糊
  • 没有输出格式约束

结果: 输出不稳定,格式不可控

原则:

  • Prompt 要结构化:角色 + 任务 + 格式 + 约束 + 示例
  • 越具体越好
  • 用 Few-shot 示例锚定输出格式

三、RAG 系统"检索了但没用好"

问题:

  • 文档切分粒度不对
  • 没有做重排序
  • 检索结果直接塞给模型

结果: 检索结果相关但回答不相关

原则:

  • 切分策略要根据文档类型调优
  • 一定要做重排序
  • Prompt 要引导模型"基于以下信息回答"

四、Agent 无限循环不收敛

问题:

  • 没有最大步数限制
  • 工具描述不清晰
  • 没有终止条件

结果: Token 消耗爆炸,响应时间极长

原则:

  • 设置最大推理步数
  • 工具描述要精确
  • 设计明确的终止条件

五、忽视流式输出体验

问题:

  • 用户等待 10 秒才看到完整回答
  • 没有实现 SSE 流式输出

结果: 用户体验极差

原则:

  • 必须实现流式输出
  • 前端展示打字机效果
  • 长时间无输出要有超时处理

六、没有做敏感内容过滤

问题:

  • 用户输入攻击性内容
  • 模型输出不当内容

结果: 合规风险,品牌风险

原则:

  • 输入和输出都要做内容审核
  • 建立敏感词库 + 模型审核双重机制
  • 高风险场景加人工审核

七、Token 成本不控制

问题:

  • 每次都把完整对话历史发给模型
  • RAG 检索结果不截断

结果: 成本飙升

原则:

  • 对话历史要做压缩和摘要
  • RAG 结果做截断
  • 相似问题做语义缓存
  • 建立 Token 用量监控和预算告警

八、把所有问题都交给一个大模型

问题:

  • 简单任务也用最贵的模型
  • 不做模型路由

结果: 成本高、延迟高

原则:

  • 简单任务用小模型或规则
  • 复杂任务用大模型
  • 建立模型路由策略

九、没有评估体系就上线

问题:

  • 不知道模型回答的准确率
  • 上线后靠用户反馈发现问题

结果: 线上翻车

原则:

  • 建立评估数据集
  • 自动化评估 + 人工评估结合
  • 上线前做充分测试

十、架构一开始就设计成单体

问题:

  • 模型调用、RAG、对话管理全部耦合

结果: 无法独立扩展,排查问题困难

原则:

  • 模块化设计:模型调用层、RAG 层、对话管理层、安全审核层分离
  • 用消息队列解耦
  • 每个模块可独立部署和扩展

基于 VitePress 构建