- 新增多个文档文件,覆盖基本使用、高级功能、部署指南等 - 创建数据管理、模型配置、历史记录等详细指南 - 添加上下文管理、工具调用、变量系统等高级功能文档 - 提供快速开始、常见问题、故障排除等实用信息
8.7 KiB
8.7 KiB
上下文管理(高级模式)
上下文管理是高级模式的核心功能之一,让你能够精确控制多轮对话的上下文,实现复杂的AI交互场景。
💬 多轮会话概述
什么是上下文管理
上下文管理允许你:
- 编辑对话历史中的任意消息
- 添加、删除、重排对话消息
- 在消息中使用变量替换
- 模拟复杂的对话场景
- 测试AI在长对话中的表现
与基础模式的区别
| 功能 | 基础模式 | 高级模式 |
|---|---|---|
| 消息编辑 | ❌ | ✅ 完整编辑功能 |
| 变量替换 | ❌ | ✅ 消息级变量支持 |
| 多轮测试 | ✅ 简单多轮 | ✅ 复杂场景模拟 |
| 对话管理 | ❌ | ✅ 历史消息管理 |
🎛️ 会话编辑器(ContextEditor)
消息类型
1. 系统消息 (System)
设定AI的角色、行为规范和工作模式:
你是一个专业的{{role}},专长是{{expertise}}。
请遵循以下原则:
1. 提供准确、专业的建议
2. 保持{{tone}}的交流风格
3. 关注{{focus}}领域的问题
2. 用户消息 (User)
模拟用户的输入和问题:
我需要关于{{topic}}的建议,具体情况是:
{{situation}}
请帮我分析一下应该如何处理。
3. 助手消息 (Assistant)
AI的回复和响应,可以预设或编辑:
根据你描述的{{situation}},我建议采用以下策略:
1. 首先{{step1}}
2. 然后{{step2}}
3. 最后{{step3}}
这样做的原因是...
消息编辑操作
添加消息
-
选择插入位置
- 点击目标位置的"添加消息"按钮
- 选择在对话开头、中间或末尾添加
-
选择消息类型
- System - 用于设定AI角色和规则
- User - 模拟用户输入
- Assistant - 预设AI回复
-
编写消息内容
- 支持普通文本和Markdown格式
- 可以使用变量占位符
- 提供实时变量预览
编辑现有消息
-
消息选择
- 点击要编辑的消息
- 消息进入编辑模式
- 显示消息类型和编号
-
内容修改
- 修改消息文本内容
- 更改消息类型(如需要)
- 调整变量占位符
-
保存更改 / 持久化
- 实时保存并写入 ContextRepo(刷新后可恢复)
- 自动更新变量预览与缺失统计
- 验证消息格式
消息管理操作
-
删除消息
- 选择要删除的消息
- 确认删除操作
- 自动调整消息序号
-
复制消息
- 复制消息内容到剪贴板
- 复制到对话其他位置
- 作为新消息模板
-
重新排序
- 拖拽调整消息顺序
- 自动更新消息编号
- 保持对话逻辑连贯
🔄 变量在会话中的使用
消息级变量替换
基础语法
使用 {{变量名}} 在消息中插入变量:
系统: 你是一个{{role}},工作在{{company}}公司
用户: 请帮我解决{{problem}}这个问题
助手: 根据{{role}}的经验,对于{{problem}},我建议...
变量作用域
- 全局变量 - 在变量管理器中定义,作用于所有对话
- 会话变量 - 针对当前会话临时定义的变量
- 消息变量 - 仅在特定消息中有效的变量
变量合并与优先级
finalVars = 全局变量 ∪ 上下文变量覆盖;同名以上下文覆盖优先;预定义变量名不可覆盖。
动态变量更新
实时预览
- 编辑变量时实时更新消息预览
- 高亮显示变量替换位置
- 显示变量当前值
批量替换
- 一次性更新多个消息中的变量
- 支持正则表达式匹配
- 提供替换前的预览确认
变量历史
- 记录变量值的修改历史
- 支持回退到之前的变量状态
- 对比不同版本的差异
缺失变量处理
自动检测
系统会自动检测并标记缺失的变量:
- 🔴 未定义变量 - 红色标记
- 🟡 空值变量 - 黄色标记
- 🟢 正常变量 - 绿色标记
智能建议
- 自动建议相似的已定义变量
- 提供变量名称规范建议
- 根据上下文推荐合适的变量值
快速创建
- 点击缺失变量直接创建
- 自动填充推荐的变量值
- 批量创建多个缺失变量
📤 导入/导出与数量徽章
导出(标准格式)
- 在 ContextEditor 中“导出 → 标准格式”可导出单个上下文
- 结构包含:
messages[]、metadata.variables、tools[]
数量徽章
- 对话区显示“变量数/缺失数”与“工具数”徽章,便于总览
🎭 对话场景模拟
完整对话测试
1. 场景设计
角色扮演场景
System: 你是一名资深的产品经理,有10年互联网产品经验
User: 我们的APP用户留存率在下降,你觉得可能是什么原因?
Assistant: [让AI分析并回复]
User: 数据显示主要是新用户在第一周流失严重
Assistant: [让AI提供解决方案]
技术支持场景
System: 你是{{company}}的技术支持专家,擅长解决{{product}}相关问题
User: 我的{{product}}出现了{{error_message}}错误
Assistant: [AI诊断问题]
User: 按照你说的步骤操作后,现在出现了新的问题...
Assistant: [AI提供进一步支持]
2. 执行对话测试
逐步执行模式
- 逐条发送消息进行测试
- 观察AI在每轮的回应质量
- 记录对话流程和关键节点
批量执行模式
- 一次性发送完整对话序列
- 测试AI对完整上下文的理解
- 评估对话的连贯性和逻辑性
3. 结果分析
回复质量评估
- 内容准确性和相关性
- 回复的专业度和深度
- 是否保持角色一致性
上下文理解分析
- 是否正确理解对话历史
- 能否引用之前的对话内容
- 对话逻辑是否连贯
用户体验评价
- 对话是否自然流畅
- 回复是否满足用户期望
- 整体交互体验如何
高级测试功能
对话分支测试
- 在对话的关键节点创建分支
- 测试不同用户回复的AI响应
- 比较不同路径的对话效果
情境变化测试
- 在对话中途更改系统设定
- 测试AI对角色转换的适应性
- 验证上下文切换的处理能力
压力测试
- 测试极长对话的处理能力
- 验证复杂嵌套对话的理解
- 评估在信息过载时的表现
📊 对话管理和分析
对话保存和复用
场景模板
- 将优质对话保存为模板
- 支持变量化的场景复用
- 建立常用场景的模板库
历史记录管理
- 完整保存对话编辑历史
- 支持对话版本对比
- 快速回退到之前的状态
导入导出功能
- 导出对话为JSON或文本格式
- 导入外部对话进行测试
- 与团队成员分享测试场景
批量测试管理
测试套件
- 创建包含多个对话场景的测试套件
- 批量执行不同场景的测试
- 统一管理相关的测试用例
结果对比
- 对比不同模型在同一场景下的表现
- 分析不同参数配置的影响
- 生成详细的性能对比报告
自动化测试
- 设置定期执行的回归测试
- 自动检测对话质量的变化
- 预警性能下降或异常行为
协作和共享
团队协作
- 分享测试场景和结果
- 协作编辑复杂对话场景
- 建立团队知识库
版本控制
- 跟踪对话场景的修改历史
- 支持多人协作的版本管理
- 合并不同版本的修改
💡 最佳实践指南
对话设计原则
1. 渐进式复杂度
- 从简单对话开始测试
- 逐步增加对话的复杂性
- 识别AI能力的边界
2. 真实场景模拟
- 设计贴近真实使用场景的对话
- 包含常见的用户行为模式
- 考虑异常情况和边界案例
3. 上下文连贯性
- 确保对话逻辑的连贯性
- 避免突兀的话题转换
- 维护角色设定的一致性
变量使用技巧
1. 合理的变量粒度
- 避免过度细分变量
- 保持变量的语义完整性
- 平衡灵活性和复杂性
2. 描述性命名
- 使用清晰的变量名称
- 遵循一致的命名规范
- 添加必要的使用说明
3. 默认值设置
- 为变量提供合理的默认值
- 确保在变量缺失时能正常工作
- 提供变量使用示例
测试策略建议
1. 全面性测试
- 覆盖不同类型的对话场景
- 测试各种变量组合
- 包含正常和异常情况
2. 可重复性
- 确保测试结果的可重现性
- 记录测试的环境和条件
- 建立标准化的测试流程
3. 持续优化
- 基于测试结果持续改进
- 收集实际使用中的反馈
- 定期更新测试场景
相关链接: