
LLM 基础笔记
生成式 AI
生成模型
- 自回归(AR)模型: 一次生成一个 token 的输出,基于先前的 tokens。
- 非自回归(NAR)模型: 并行一次性生成所有输出,不依赖先前的 tokens。
| AR 模型 | NAR 模型 | |
|---|---|---|
| 并行性 | 低 | 高 |
| 速度 | 慢 | 快 |
| 质量 | 高 | 低 |
结合上述两种方法(Encoder + Decoder 架构):
- 用 AR model 生成中间向量,用 NAR model 生成最终输出。
- 用 NAR model 多次生成,逐步优化输出。
- 推测解码(Speculative decoding): 用 NAR model 快速生成若干个预测输出,作为 AR model 的后续输入, 使得 AR model 可以同时输出多个结果。
扩展法则
现有的预训练语言模型对于数据的需求量远高于扩展法则 (例如 Chinchilla)中所给出的估计规模。 很多更小的模型也能够通过使用超大规模的预训练数据获得较大的模型性能提升。 这种现象的一个重要原因是由于 Transformer 架构具有较好的数据扩展性。 目前为止,还没有实验能够有效验证特定参数规模语言模型的饱和数据规模 (即随着数据规模的扩展,模型性能不再提升)。
涌现能力
大语言模型的涌现能力被非形式化定义为
在小型模型中不存在但在大模型中出现的能力:
- 上下文学习(In-context learning)。
- 指令遵循(Instruction following)。
- 逐步推理(Step-by-step reasoning)。
ChatGPT
在对话数据上微调的 GPT 模型:
- 预训练(Pre-training): 学习文字接龙,学习大规模资料(自监督学习),生成下一个单词。
- 指令微调(Instruction-tuning,IT): 人工文字接龙,人工标注部分问题的答案(监督学习),引导模型生成的方向。
- 基于人类反馈的强化学习 (RLHF): 训练一个奖励模型(reward model),负责评价模型生成的答案,提供人类反馈。 以 reward model 的评价分数为奖励,通过强化学习优化模型。 一般聚焦于三个方面:有用性(Helpfulness)、诚实性(Honesty)、无害性(Harmlessness)。
使用标注数据进行指令微调(IT)的监督学习, 以及基于人类反馈的强化学习(RLHF)。
扩散模型
- 前向过程(扩散)+ 反向过程(去噪)。
- 稳定扩散模型。
视频模型
生成视频作为世界模型模拟器。
LLM 工具链
LangChain
LangChain 旨在让使用 LLM 编程变得更容易。
模型 I/O 模块 规范化 LLM 输入(例如提示词)、API 和输出(例如补全):
检索模块 帮助处理数据和用户输入, 使检索相关信息变得更容易:
链模块 将任务链接在一起:
智能体模块 是带有函数列表(称为工具)的链,它可以执行这些函数, 而链是硬编码的, 智能体在 LLM 的帮助下选择其操作:
LLM 平台
AI 智能体
由巧妙的 LLM 提示词驱动的 AI 智能体:
智能体指令
- 使用现有文档: 使用现有的操作程序、支持脚本或政策文档来创建 LLM 友好的例程(routines)。
- 提示智能体分解任务: 提供更小、更清晰的步骤有助于最大限度地减少歧义,并帮助模型更好地遵循指令。
- 定义清晰的操作: 确保例程中的每一步都对应一个特定的行动或输出。
- 捕获边缘情况: 实际交互通常会产生决策点,一个健壮的例程会预测常见的变化, 并包含关于如何通过条件步骤或分支来处理它们的指令,例如在缺少所需信息时提供替代步骤。
智能体编排
单智能体系统(Single-agent systems):
多智能体系统中心模式(Multi-agent systems in manager pattern): 其余智能体作为工具,由中心智能体调用:
多智能体系统去中心模式(Multi-agent systems in decentralized pattern), 多个代理作为对等体运行:
智能体防护措施
构建防护措施:
- 相关性分类器: 确保智能体响应保持在预期范围内,通过标记偏离主题的查询。
- 安全分类器: 检测试图利用系统漏洞的不安全输入(越狱或提示注入)。
- PII 过滤器: 通过审查模型输出中任何潜在的个人身份信息(PII),防止不必要的个人身份信息泄露。
- 内容审核: 标记有害或不当的输入(仇恨言论、骚扰、暴力),以保持安全、尊重的互动。
- 工具安全措施: 通过评估您代理可用的每个工具的风险, 并根据只读与写入访问、可逆性、所需的账户权限和财务影响等因素分配低、中或高评级。 使用这些风险评级来触发自动化操作, 例如在高风险功能执行前暂停进行防护措施检查,或在需要时升级到人工干预。
- 基于规则的保护: 简单的确定性措施(黑名单、输入长度限制、正则表达式过滤器)以防止已知的威胁, 如禁止的术语或 SQL 注入。
- 输出验证: 通过提示工程和内容检查确保响应与品牌价值一致,防止可能损害品牌完整性的输出。
当超出失败阈值或高风险操作时,触发人工干预计划,是一项关键的安全保障措施。
MCP 服务器
LLM 工具
文档
LLM 参考
- LLM 综述:大语言模型。