1. LLM 工作流程
flowchart LR
Input[输入文本] --> Token[Token化]
Token --> Embed[嵌入向量]
Embed --> Transformer[Transformer 处理]
Transformer --> Prob[概率分布]
Prob --> Decode[解码生成]
Decode --> Output[输出文本]
概念解释:
- Token化:将输入文本拆分成模型可识别的最小单元,如单词、子词或字符。
- 嵌入向量:把离散的 Token 映射为连续的数值向量,使模型能够计算语义关系。
- Transformer:通过自注意力机制捕捉文本中的长距离依赖关系。
- 概率分布:模型预测下一个 Token 的概率。
- 解码生成:根据概率采样或选择最可能的 Token,逐步生成完整回答。
2. Transformer 核心机制
flowchart TB
Input[输入Token] --> Embedding[词嵌入]
Embedding --> Positional[位置编码]
Positional --> Attention[自注意力层]
Attention --> FFN[前馈神经网络]
FFN --> Norm[层归一化]
Norm --> Output[输出概率]
概念解释:
自注意力机制是 Transformer 的核心。它让模型在处理每个 Token 时,都能同时参考输入中其他位置的 Token,从而理解上下文关系。位置编码则补充了序列顺序信息,因为自注意力本身不感知顺序。
3. LLM 四大核心能力
mindmap
root((LLM核心能力))
自然语言理解
意图识别
情感分析
实体提取
自然语言生成
文本创作
翻译
总结
推理能力
逻辑推理
代码生成
数学计算
上下文学习
多轮对话
少样本学习
角色一致
概念解释:
LLM 不仅能理解语言,还能生成、推理和学习。上下文学习能力让它可以通过少量示例快速适应新任务,这也是 Prompt Engineering 有效的原因。
4. LLM 应用调用链路
sequenceDiagram
participant U as 用户
participant App as 前端应用
participant API as 后端API
participant LLM as LLM服务
participant Cache as 缓存
U->>App: 输入问题
App->>API: 发送请求
API->>Cache: 检查缓存
alt 缓存未命中
API->>LLM: 调用 chat.completions.create
LLM-->>API: 返回生成结果
API->>Cache: 写入缓存
end
API-->>App: 返回回答
App-->>U: 展示结果
概念解释:
生产环境中,前端不直接调用 LLM,而是通过后端代理。后端可以统一处理认证、限流、缓存和日志,避免 API 密钥泄露,并降低调用成本。
5. Prompt Engineering 结构
flowchart LR
Role[角色定义] --> Context[上下文背景]
Context --> Instruction[具体指令]
Instruction --> Example[示例]
Example --> Constraint[约束条件]
Constraint --> Output[输出格式]
概念解释:
高质量的 Prompt 通常包含五个要素:角色定义让模型知道以什么身份回答;上下文提供背景;指令明确任务;示例展示期望输出;约束条件控制输出长度、格式和风格。
6. 主流 LLM 服务商选型
flowchart TD
Start[选择LLM] --> Task{任务类型}
Task -->|复杂推理/代码| OpenAI[GPT-4 / GPT-4o]
Task -->|长文本/安全/分析| Claude[Claude-3 系列]
Task -->|多模态/成本敏感| Gemini[Gemini Pro]
Task -->|私有化/合规| Local[开源模型]
Task -->|简单任务/低成本| Turbo[GPT-3.5 / Haiku]
概念解释:
不同模型各有优势。选择时要综合考虑任务复杂度、上下文长度、成本、安全合规和多模态需求。简单任务使用轻量模型可以大幅降低成本。
7. 直接调用 vs 后端代理调用
flowchart TB
subgraph Direct[直接调用]
D1[前端] --> D2[LLM API]
end
subgraph Proxy[后端代理调用]
P1[前端] --> P2[后端API]
P2 --> P3[LLM API]
end
style Proxy fill:#d4edda,stroke:#28a745
概念解释:
直接调用简单但不安全,API 密钥会暴露在前端。后端代理是生产环境的标准做法,可以在服务端统一管理密钥、监控用量、实现缓存和限流。