理解模板
"智慧的开端是对术语的定义。" — 苏格拉底
概述
理解模板帮助语言模型在尝试解决问题或生成内容之前理解和分析信息。这些模板通过确保模型正确解释了任务、上下文和要求,为有效推理奠定了基础。
┌──────────────────────────────────────────────────────────────┐
│ │
│ 理解过程 │
│ │
│ 输入 → 分析 → 结构化 → 澄清 → 准备推理 │
│ │
└──────────────────────────────────────────────────────────────┘基础模板
1. 问题分析
最基本的理解模板帮助将问题或疑问分解为其核心组成部分。
markdown
# 问题分析模板
任务:在尝试回答之前分析并分解以下问题。
问题:{{question}}
请提供:
1. **问题类型**:这是什么类型的问题?(例如,事实性、概念性、分析性)
2. **核心任务**:需要什么具体行动或思考?
3. **关键组件**:需要解决哪些主要要素?
4. **隐含假设**:哪些未陈述的假设可能相关?
5. **知识领域**:哪些知识领域相关?
6. **约束**:是否存在任何明确或隐含的约束?
7. **重述**:用您自己的话重述问题以确保清晰。
完成此分析后,您将更好地准备有效地解决问题。Token 数量:~120 tokens(仅模板)
使用示例:
- 用于理解要求至关重要的复杂问题
- 当解释的精确性很重要时
- 在处理多步骤问题之前
2. 信息提取
用于从文本中提取结构化信息。
markdown
# 信息提取模板
任务:从以下文本中提取并组织关键信息。
文本:{{text}}
请提取:
1. **主题**:中心主题是什么?
2. **关键事实**:列出最重要的事实陈述。
3. **实体**:识别人物、组织、地点、日期等。
4. **关系**:这些实体之间如何相互关联?
5. **数值数据**:提取任何数字、统计数据或测量值。
6. **声明**:做出了哪些断言或论证?
7. **证据**:为这些声明提供了什么支持?
以清晰、结构化的格式组织此信息。Token 数量:~110 tokens(仅模板)
使用示例:
- 用于处理研究论文或文章
- 总结复杂文档时
- 在从多个来源综合信息之前
3. 问题分解
用于将复杂问题分解为可解决的部分。
markdown
# 问题分解模板
任务:将以下问题分解为较小的、可管理的组件。
问题:{{problem}}
请提供:
1. **问题类型**:这是什么类别的问题?
2. **目标状态**:成功的解决方案是什么样的?
3. **给定信息**:明确提供了哪些信息?
4. **未知变量**:需要确定什么?
5. **约束**:必须满足哪些限制或条件?
6. **子问题**:将主要问题分解为更小的部分。
7. **依赖关系**:这些子问题之间如何相互关联?
8. **解决方案方法**:建议解决问题的高级策略。
此分解将提供解决问题的结构化方法。Token 数量:~120 tokens(仅模板)
使用示例:
- 用于数学或逻辑问题
- 面对多步骤推理任务时
- 在尝试复杂分析之前
高级模板
4. 概念映射
用于理解领域内概念之间的关系。
markdown
# 概念映射模板
任务:创建以下文本中思想和关系的概念图。
文本:{{text}}
请提供:
1. **核心概念**:识别中心思想或概念。
2. **概念定义**:简要定义每个概念。
3. **层次关系**:哪些概念是其他概念的子类别?
4. **因果关系**:哪些概念影响或导致其他概念?
5. **对比概念**:哪些概念彼此对立?
6. **互补概念**:哪些概念相互支持或增强?
7. **缺失的概念**:是否存在任何隐含但未陈述的概念?
以结构化格式表示这些关系,展示概念如何相互连接。Token 数量:~120 tokens(仅模板)
使用示例:
- 用于理论或抽象内容
- 分析复杂系统时
- 在综合不同信息之前
5. 多视角分析
用于理解主题的不同观点。
markdown
# 多视角分析模板
任务:从多个视角分析以下主题。
主题:{{topic}}
请提供:
1. **视角识别**:关于此主题存在哪些主要观点?
2. **核心论证**:每个视角的主要论证是什么?
3. **证据基础**:什么证据支持每个视角?
4. **基本价值观**:每个视角的基础价值观或假设是什么?
5. **共识领域**:视角在哪里汇聚?
6. **关键分歧**:根本的争议点是什么?
7. **综合可能性**:如何整合这些视角?
此分析将提供对看待此主题的不同方式的平衡理解。Token 数量:~120 tokens(仅模板)
使用示例:
- 用于有争议或复杂的主题
- 当平衡理解至关重要时
- 在形成微妙立场之前
6. 需求分析
用于清楚地理解任务需求。
markdown
# 需求分析模板
任务:分析以下任务或项目的需求。
任务描述:{{task_description}}
请提供:
1. **主要目标**:主要目标是什么?
2. **可交付成果**:需要哪些具体输出?
3. **质量标准**:如何衡量成功?
4. **约束**:必须在什么限制内工作?
5. **依赖关系**:哪些外部因素影响此任务?
6. **利益相关者**:谁参与或受影响?
7. **优先级**:哪些方面最重要?
8. **模糊之处**:哪些方面需要澄清?
此分析将确保在继续之前正确理解所有需求。Token 数量:~120 tokens(仅模板)
使用示例:
- 用于项目规划
- 当任务需要创建特定输出时
- 在开始任何复杂任务之前
实现模式
以下是实现问题分析模板的简单 Python 函数:
python
def understand_question(question):
"""
创建分析和分解问题的提示。
Args:
question (str): 要分析的问题
Returns:
str: 格式化的问题分析提示
"""
return f"""
任务:在尝试回答之前分析并分解以下问题。
问题:{question}
请提供:
1. **问题类型**:这是什么类型的问题?(例如,事实性、概念性、分析性)
2. **核心任务**:需要什么具体行动或思考?
3. **关键组件**:需要解决哪些主要要素?
4. **隐含假设**:哪些未陈述的假设可能相关?
5. **知识领域**:哪些知识领域相关?
6. **约束**:是否存在任何明确或隐含的约束?
7. **重述**:用您自己的话重述问题以确保清晰。
完成此分析后,您将更好地准备有效地解决问题。
"""测量和优化
使用理解模板时,通过以下方式测量其有效性:
- 准确性:理解是否正确识别了所有关键要素?
- 全面性:是否涵盖了输入的所有重要方面?
- 清晰度:结构化理解是否清晰明确?
- 实用性:理解是否改善了后续推理?
通过以下方式优化您的模板:
- 删除不能改善理解的不必要组件
- 为您的特定领域添加所需的特定组件
- 根据输入的复杂性调整详细程度
与其他工具结合
理解模板与其他认知工具结合使用效果最佳:
┌─────────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ 理解模板 │────►│ 推理模板 │────►│ 验证模板 │
│ │ │ │ │ │
└─────────────────────┘ └─────────────────┘ └─────────────────┘例如,首先使用问题分析模板,然后将结构化理解传递给问题解决模板,最后使用验证模板验证解决方案。
下一步
- 探索 reasoning.md 了解建立在理解之上的模板
- 查看 composition.md 了解组合多个模板的方法
- 查看 ../cognitive-programs/basic-programs.md 了解使用这些模板的程序化方法