📝智能体开发实战笔记 (Day 1-2)

核心主题: RAG 原理、Prompt 工程、工作流编排

1. 🧠 智能体的底层逻辑:RAG (检索增强生成)

智能体的对话流本质就是三步走:输入 (Input) -> 执行 (Execution) -> 输出 (Output)。 为了让 AI 懂私有知识(比如路飞课程、公司文档),我们需要 RAG

⚙️ 数据处理流程 (Pipeline)

  1. 分块 (Chunking): 把知识库的长文本切成小块。
  2. 嵌入 (Embedding): 扔进 Embedding Model,把文字变成数学向量。
  3. 入库: 存入 向量数据库 (Vector DB)

🔄 检索与生成 (Retrieval & Generation)

当用户提问时:

  1. 检索: 把用户的问题也变成向量,去向量库里“搜”最相似的内容。
  2. 注入: 把搜到的内容(Context)填入 Prompt。
  3. 生成: Prompt + 检索到的知识 + 用户问题 -> 扔给大模型 -> 输出答案。

💡 核心价值: 解决大模型“胡说八道”的问题,让它基于事实回答。

2. 🗣️ Prompt 工程 (提示词编写)

提示词是智能体的“大脑皮层”,必须用 Markdown 格式 写才规范。

📐 结构规范

  • 标题层级: 用 # 表示一级标题,## 表示二级标题(让 AI 读懂结构)。
  • 变量注入: 用双大括号 {{ }} 包裹变量。
    • {{user_input}}: 用户输入的内容。
    • {{context}}: 知识库检索到的内容。

🛡️ 系统提示词 (System Prompt) 模板

Markdown

# Role

你是一个专业的课程顾问。

# Constraints

1. 你必须基于 {{context}} 回复用户,不能编造事实。

2. 如果知识库中没有答案,请直接回答“不知道”。

# Task

回答用户的问题:{{user_input}}

3. 🖼️ 图片检索与多模态

智能体不仅能回文字,还能回图片(比如返回课程海报、架构图)。

  • 数据源: 本地图片、在线 URL。
  • 难点: 图片多了检索不准。
  • 解决方案: 人工标注 (Annotation)。给图片写一段准确的文字描述,检索时其实是在检索这段描述。

📤 图片输出的 Prompt 技巧

如果需要模型返回图片,要在 Prompt 里规定 Markdown 图片格式:

Markdown

# Task

你必须整理相关图片并返回。

# Output Format

请严格按照以下格式输出图片:

![图片描述](URL)

(注意:这里必须告诉模型用标准的 Markdown 图片语法,即![alt](url))

4. 🔀 高级工作流:让 AI 更像人 (Router & Optimization)

为了不让 AI 变成只会答题的机器人,我们需要在检索之前加两个“脑子”:

🚦 第一关:意图识别 (Intent Recognition / Router)

  • 为什么要做? 区分用户是在“闲聊”还是“办正事”。
  • 逻辑分流:
    • 👉 情况 A(打招呼/无关话题): 走 通用大模型(回复“你好”、“天气不错”)。
    • 👉 情况 B(问课程/业务问题): 走 知识库检索流程(RAG)。

🔧 第二关:问题优化 (Query Rewriting)

  • 为什么要做? 用户问得可能很烂、很模糊(比如只问“多少钱?”)。
  • 怎么做? 在检索之前,先用一个模型把用户的问题改写成机器能听懂的完整句子。
    • 用户问: “贵吗?”
    • 改写后: “请问课程价格是多少?” -> 再去检索知识库,准确率翻倍!