1. XML标签化提示词
XML标签式的提示词(XML-style prompt engineering)是一种在与大型语言模型(LLM)交互时使用的技术,通过在提示中使用类似XML的标签结构来更明确地控制模型的输出。
这种方法的主要特点和优势包括:
-
结构化输入:使用
<tag>
和</tag>
对内容进行分组和分类,帮助模型区分不同类型的信息。 -
明确角色和指令:例如,可以使用
<system>这是系统指令</system>
和<user>这是用户输入</user>
来区分不同的角色。 -
格式控制:可以指定输出的具体格式,比如
<output_format>JSON</output_format>
。 -
内容分段:将复杂提示分解成逻辑部分,如
<context>
,<question>
,<examples>
等。
示例提示:
<system>
你是一个专业的数据分析师
</system>
<context>
以下是某公司2023年第一季度的销售数据
产品A: 1200单位
产品B: 850单位
产品C: 1450单位
</context>
<question>
哪个产品销售最好,销售额比第二名高多少百分比?
</question>
<output_format>
请提供简洁的分析,并用百分比表示差距
</output_format>
这种提示方法特别有效,因为它让LLM更容易理解提示的结构和期望输出的形式,从而产生更准确、一致的回答。
需要注意的是,不同LLM对XML标签的处理能力可能有所不同,但大多数现代LLM(如deepseek、GPT系列等)都能很好地理解和响应这种格式的提示。
2.的XML标签式提示词综合实战
XML标签式提示词是与deepseek交互的强大技术,可以显著提高输出的质量和可控性。以下是一些实用的实战技巧和示例:
基础结构化提示
使用基本的XML标签来组织不同类型的信息:
<instructions>我需要你扮演一位历史学家,分析下面的事件</instructions>
<context>1929年10月24日,美国股市暴跌,导致大萧条开始</context>
<request>请分析这一事件的原因、影响和历史意义</request>
角色定义与指令控制
通过XML标签定义精确的角色和指令:
<role>你是一位经验丰富的财务顾问</role>
<background>我是一位35岁的软件工程师,年收入25万元,有10万元储蓄</background>
<goals>
- 为退休储蓄
- 购买房产
- 投资教育
</goals>
<constraints>风险承受能力中等,时间跨度20年</constraints>
<output_format>请提供结构化的财务规划建议,包括投资分配比例和时间表</output_format>
格式化输出控制
精确控制deepseek的输出格式:
<user_query>分析以下三家科技公司的优势和劣势:苹果、微软、谷歌</user_query>
<output_structure>
<company>公司名称</company>
<strengths>3-4条核心优势,每条不超过30字</strengths>
<weaknesses>3-4条主要劣势,每条不超过30字</weaknesses>
<future_outlook>50字左右的未来展望</future_outlook>
</output_structure>
多步骤思考引导
使用XML标签引导deepseek进行分步思考:
<problem>设计一个智能家居系统来优化能源使用</problem>
<thinking_steps>
1. <identify_requirements>列出智能家居系统的核心需求和限制条件</identify_requirements>
2. <analyze_components>分析所需的硬件和软件组件</analyze_components>
3. <design_architecture>设计系统架构和数据流</design_architecture>
4. <energy_optimization>提出具体的能源优化策略</energy_optimization>
5. <implementation_plan>提供实施计划和时间表</implementation_plan>
</thinking_steps>
<output>请按照上述思考步骤,提供完整的设计方案</output>
示例驱动提示
通过具体示例引导deepseek理解预期输出:
<task>将以下技术文档翻译成面向非技术用户的简易说明</task>
<example_input>
TCP/IP协议采用四层结构,分别为应用层、传输层、网络层和链路层,通过封装和解封装实现数据传输。
</example_input>
<example_output>
互联网通信就像邮政系统:你的信息被放入不同的信封中(层级),每个信封上有不同的地址信息,帮助你的信息从一台电脑安全地到达另一台电脑。
</example_output>
<input_to_translate>
DNS解析过程包括递归查询和迭代查询,通过分布式数据库将域名转换为IP地址,实现网络资源的定位。
</input_to_translate>
条件逻辑控制
使用XML标签设置条件逻辑:
<data>
顾客年龄: 27岁
购买历史: 电子产品、书籍
会员等级: 黄金
最近登录: 7天前
</data>
<rules>
<if condition="会员等级 == '黄金' AND 最近登录 < 10天">
推荐高端电子产品,折扣15%
</if>
<else_if condition="会员等级 == '黄金' AND 最近登录 >= 10天">
推荐热门电子产品,折扣20%并发送回访邮件
</else_if>
<else>
推荐常规产品,折扣10%
</else>
</rules>
<output>根据以上规则,生成个性化营销方案</output>
综合实战案例
一个更复杂的综合实战案例:
<system>你是一位AI教育顾问,专注于个性化学习计划设计</system>
<student_profile>
<name>小明</name>
<age>16</age>
<grade>高一</grade>
<strengths>数学、编程</strengths>
<weaknesses>英语写作、历史</weaknesses>
<learning_style>视觉学习者,喜欢互动和实践</learning_style>
<goals>提高英语能力,准备大学申请</goals>
<available_time>每周可学习额外10小时</available_time>
</student_profile>
<requirements>
1. 创建一个为期8周的学习计划
2. 重点关注英语写作能力提升
3. 包含每周具体学习活动
4. 推荐具体学习资源和工具
5. 设计进度跟踪和评估方法
</requirements>
<output_format>
<plan_overview>总体学习计划和目标</plan_overview>
<weekly_schedule>
<week_number>周数</week_number>
<focus_areas>本周重点</focus_areas>
<activities>具体活动,每天不超过2小时</activities>
<resources>推荐资源</resources>
<progress_metrics>进度衡量指标</progress_metrics>
</weekly_schedule>
<adaptation_strategies>如何根据学习进度调整计划</adaptation_strategies>
</output_format>
这些XML标签式提示技巧可以帮助你获得更精确、更符合预期的deepseek回答。实践中,可以根据具体需求灵活组合和调整这些技巧,以达到最佳效果。