Transformer 应用与系统设计
本文把 Char05.txt 到 Char10.txt 中的智能客服、代码助手、向量检索、硬件助手、提示词优化、翻译插件和 Agent 相关内容整理为系统设计视角。
1. 应用类型总览
| 应用 | 核心能力 | 推荐技术 |
|---|---|---|
| 智能客服 | 意图识别、FAQ 匹配、对话生成 | Embedding + 检索 + 小生成模型/API |
| 代码助手 | 代码生成、错误修复、重构建议 | CodeT5 / CodeGen / API / 静态分析 |
| 向量检索 | 文本向量化、ANN 搜索、排序过滤 | Sentence-BERT + FAISS/Milvus/Qdrant |
| 硬件助手 | 文档解析、RAG、设计建议 | LangChain/LlamaIndex + 向量库 |
| 提示词优化 | Prompt 库、聚类、Few-shot | TF-IDF、KMeans、T5-small、人工评估 |
| 翻译系统 | 文档解析、翻译、质量评估 | MarianMT / API / BLEU / ROUGE |
| Agent | 工具调用、任务规划、状态管理 | LangChain / 自定义 planner / FastAPI |
2. RAG 是 Jetson Nano 最适合的方向
相比微调,RAG 更适合 Jetson Nano:
flowchart LR
A[Documents] --> B[Chunk]
B --> C[Embedding]
C --> D[Vector Store]
Q[Question] --> E[Query Embedding]
E --> D
D --> F[Top-K Context]
F --> G[Small LLM or Remote LLM]
G --> H[Answer]
原因:
- 不需要训练大模型。
- 可以离线构建小规模向量库。
- 推理可本地小模型或远程 API。
- 知识更新只需更新文档和向量,不必重新训练。
Jetson Nano 上建议:
- 小规模文档:FAISS 本地索引。
- embedding:
paraphrase-MiniLM-L6-v2或更小模型。 - 生成:远程 API、桌面服务,或量化小模型。
3. 智能客服架构
随书智能客服章节包含:
- 对话生成。
- FAQ 匹配。
- 情绪检测。
- 知识库构建。
- 多轮上下文管理。
Jetson Nano 友好架构:
用户问题 -> 规则/意图识别 -> FAQ 检索 -> 若命中则返回 -> 若未命中则调用远程 LLM
本地可运行部分:
- FAQ embedding。
- cosine similarity。
- 情绪分类小模型。
- FastAPI 服务。
不建议本地运行:
- 大型对话模型训练。
- 多轮长上下文生成。
- 高并发服务。
4. 代码助手架构
Char06.txt 涉及代码生成、错误检测、代码修复、VS Code 插件和 LSP。
推荐拆成三层:
- 静态分析层:AST、lint、复杂度分析。
- 检索层:从项目文档和代码片段中检索上下文。
- 生成层:由远程 LLM 或更强机器上的模型生成建议。
Jetson Nano 更适合:
- 本地 AST 解析。
- 小规模代码片段检索。
- 提供边缘 API。
- 调用远端模型。
5. 硬件开发助手
Char08.txt 的硬件助手方向适合与本仓库结合:
PDF / Markdown / Datasheet -> 清洗 -> 切分 -> embedding -> 检索 -> 生成答案
适合放入知识库的内容:
- Jetson Nano 文档。
- STM32 文档。
- datasheet。
- pinout。
- 编译日志和错误修复记录。
- 驱动配置步骤。
Jetson Nano 上可以承担:
- 文档解析。
- 小规模向量检索。
- 简单问答服务。
复杂推理建议交给远程模型。
6. 提示词工程
Char09.txt 覆盖:
- Prompt 对模型效果的影响。
- Prompt 库构建。
- KMeans / DBSCAN 聚类。
- 自动扩展。
- Few-shot / Zero-shot。
- T5 提示词优化。
实用流程:
收集 prompt -> 分类标注 -> 评估输出 -> 聚类去重 -> 维护模板 -> A/B 测试
评价维度:
- 正确性。
- 完整性。
- 简洁性。
- 稳定性。
- 成本与延迟。
7. 翻译系统
Char10.txt 覆盖文档翻译、划词翻译、翻译 Agent 和质量评估。
架构:
文档解析 -> 分段 -> 翻译 -> 术语表修正 -> 质量评估 -> 输出保存
Jetson Nano 上建议:
- 文档解析和分段可以本地做。
- 小 MarianMT 模型可小规模尝试。
- 批量翻译建议用远程 API 或更强机器。
- BLEU / ROUGE 评估可以本地做。
8. Agent 设计
Agent 不是一个模型,而是“模型 + 工具 + 记忆 + 规划”的系统。
基本组件:
| 组件 | 作用 |
|---|---|
| Planner | 分解任务 |
| Tool Router | 选择工具 |
| Memory | 维护上下文和历史 |
| Retriever | 查询知识库 |
| Executor | 执行 API、脚本或数据库操作 |
| Evaluator | 检查结果是否满足目标 |
Jetson Nano 可做:
- 本地工具执行节点。
- 传感器/硬件控制 Agent。
- 文档检索节点。
- 低并发边缘网关。
大模型规划建议放到远端。
9. Qwen2.5 0.5B 的使用建议
Qwen2.5-0.5B 比 LLaMA 3B、Gemma 7B 小很多,但对 Jetson Nano 来说仍然不适合训练。
建议用途:
- 量化推理实验。
- 短 prompt 的本地生成测试。
- 与 RAG 结合做小规模问答。
不建议用途:
- 全量微调。
- LoRA 训练。
- 长上下文推理。
- 多并发服务。
如果要学习微调,先用 tiny GPT-2 / tiny BERT;如果要体验 Qwen2.5 0.5B,优先在桌面或云端完成量化和测试,再尝试部署到 Jetson Nano。
Page Source