提示词工程培训课——Part3
提示词工程培训课——Part3
提示词工程培训课——Part3 提示词工程培训课——Part3 Modified August 11, 2024 创建智能体之后,接下来是对智能体进行编排。这里我提供一个示例,该示例涉及文本的缩写、扩写以及总结。这个例子主要用于演示目的,采用了较为简单的形式。实际上,在具体的工作中,你可能会遇到更复杂的情况或需求。你可以参考这个示例,了解如何进行智能体的编排工作。 在这里,我引入了一个问题分类器。该分类器将所有指令分为四大类别:扩写、缩写、总结以及其他。对于常规的指令分类,我们主要关注前三个类别:扩写、缩写和总结。至于无效或未分类的指令,则归入第四类。 在正常指令的处理流程中,我们会将用户引导至相应的处理模块进行专门处理。处理完成后,系统将直接给出回复。对于错误指令或未识别的指令,系统将直接通知用户,告知他们选择了错误的选项。 接下来,我们需要为每个环节选择合适的模型,并调整模型参数。我们推荐使用最新版本的模型,但你可以根据实际需求进行选择。重点是调整模型的参数,主要关注两个关键参数:温度参数和最大标记数。 温度参数控制文本的随机性,该值越大,生成的文本越具有随机性。一般建议将温度参数设置在0.5左右。最大标记数参数直接影响输出内容的长度,建议将其设置为最大值,以确保输出内容的完整性和充分性。 在第四步中,我们将对分类器进行内容编排。以本例为参考,我们将指令分为四类:扩写、缩写、总结以及其他。编排时,只需设定最终的分类条件。一旦分类器匹配到特定的分支,它将执行相应的操作。这样的编排方式有助于过滤并避免处理不明确的指令,确保智能体能够准确响应用户的指令。 在为分类器设置好内容之后,接下来需要为每个指令编写具体内容。以当前的缩写、扩写和总结三个分支为例,我们将为每个分支创建一个简单的指令。这些简单指令中将包含一个变量,该变量即为用户在初始阶段输入的、希望进行扩写、缩写或总结的原始文本。我们通过变量引用的方式将其引入到指令中。 具体书写变量时,通常使用花括号,并根据之前定义的变量名进行填写。在执行过程中,系统会将相应的值赋给该变量,随后将这个值传递给模型进行推理,形成最终的提示词。 在各分支处理完毕后,我们将对每个分支的结果进行最终输出。由于这是一个示例,我们的输出内容也相对简洁。大家可以在这里看到,输出的内容基本上是之前分支处理的原始文本结果。 整个测试流程首先需要准备文本素材,这些素材将用于进行扩写、缩写和总结三项测试。待素材准备就绪后,我们将逐一进行各项测试,以验证每个分支是否能够顺利执行。 扩写测试: 缩写测试: 总结测试: 错误处理测试: 十一、在线课件 由于近期盗版频发,需要课件的加我微信。 创建智能体之后,接下来是对智能体进行编排。这里我提供一个示例,该示例涉及文本的缩写、扩写以及总结。这个例子主要用于演示目的,采用了较为简单的形式。实际上,在具体的工作中,你可能会遇到更复杂的情况或需求。你可以参考这个示例,了解如何进行智能体的编排工作。 在这里,我引入了一个问题分类器。该分类器将所有指令分为四大类别:扩写、缩写、总结以及其他。对于常规的指令分类,我们主要关注前三个类别:扩写、缩写和总结。至于无效或未分类的指令,则归入第四类。 在正常指令的处理流程中,我们会将用户引导至相应的处理模块进行专门处理。处理完成后,系统将直接给出回复。对于错误指令或未识别的指令,系统将直接通知用户,告知他们选择了错误的选项。 接下来,我们需要为每个环节选择合适的模型,并调整模型参数。我们推荐使用最新版本的模型,但你可以根据实际需求进行选择。重点是调整模型的参数,主要关注两个关键参数:温度参数和最大标记数。 温度参数控制文本的随机性,该值越大,生成的文本越具有随机性。一般建议将温度参数设置在0.5左右。最大标记数参数直接影响输出内容的长度,建议将其设置为最大值,以确保输出内容的完整性和充分性。 在第四步中,我们将对分类器进行内容编排。以本例为参考,我们将指令分为四类:扩写、缩写、总结以及其他。编排时,只需设定最终的分类条件。一旦分类器匹配到特定的分支,它将执行相应的操作。这样的编排方式有助于过滤并避免处理不明确的指令,确保智能体能够准确响应用户的指令。 在为分类器设置好内容之后,接下来需要为每个指令编写具体内容。以当前的缩写、扩写和总结三个分支为例,我们将为每个分支创建一个简单的指令。这些简单指令中将包含一个变量,该变量即为用户在初始阶段输入的、希望进行扩写、缩写或总结的原始文本。我们通过变量引用的方式将其引入到指令中。 具体书写变量时,通常使用花括号,并根据之前定义的变量名进行填写。在执行过程中,系统会将相应的值赋给该变量,随后将这个值传递给模型进行推理,形成最终的提示词。 在各分支处理完毕后,我们将对每个分支的结果进行最终输出。由于这是一个示例,我们的输出内容也相对简洁。大家可以在这里看到,输出的内容基本上是之前分支处理的原始文本结果。 整个测试流程首先需要准备文本素材,这些素材将用于进行扩写、缩写和总结三项测试。待素材准备就绪后,我们将逐一进行各项测试,以验证每个分支是否能够顺利执行。 扩写测试: 缩写测试: 总结测试: 错误处理测试: 十一、在线课件 由于近期盗版频发,需要课件的加我微信。 ⭐ 我是谁? 我是蓝衣剑客 我的职业经历? .NET工程师—— 架构师—— 售前经理—— 项目经理&提示词工程师 我在AI领域中干了什么? 《生成式人工智能数据应用合规》行业标准起草代表 《中国生成式人工智能应用与实践报告》技术顾问 为多家国内外大型央国企、上市企业提供解决方案咨询 承接多个世界500强外企在AI领域的落地工作 我在社区共建上做过什么? 全国最大的提示词工程社区——LangGPT核心成员 著有:《提示词工程培训课系列》、《RAG提示工程系列》、《AI Agent系列》、《个人提效系列》等 我是谁? 我是蓝衣剑客 我的职业经历? .NET工程师—— 架构师—— 售前经理—— 项目经理&提示词工程师 我在AI领域中干了什么? 《生成式人工智能数据应用合规》行业标准起草代表 《中国生成式人工智能应用与实践报告》技术顾问 为多家国内外大型央国企、上市企业提供解决方案咨询 承接多个世界500强外企在AI领域的落地工作 我在社区共建上做过什么? 全国最大的提示词工程社区——LangGPT核心成员 著有:《提示词工程培训课系列》、《RAG提示工程系列》、《AI Agent系列》、《个人提效系列》等 一、前言 各位,时间飞逝,转眼间我们已经迎来了学习的第三阶段。在这一阶段,我们将深入探讨一些最新的技术发展,包括但不限于提示词工程和智能体的进一步教学。这些内容无疑将为我们的认知带来新的深度。现在,让我们直接进入主题,开始我们的探索之旅吧! 二、Part3课程导览 三、上节回顾 四、进阶技术——CCoT 首先,让我们来了解第一个提示词进阶技术——CCoT。CCoT通过正反力矩的机制,指导模型识别正确与错误。这种方法简洁而直观,非常容易理解。 五、进阶技术——PoT 在日常使用中,我们会发现一个非常有意思的问题:大模型在解决数学问题时可能不够可靠(甚至连简单的加法都会算错)。那么如果有数学运算的任务,大模型岂不就是不行了?不要着急,接下来我们就来讨论下数值增强类的提示词技术。 PoT技术,实际上是思维链技术的一个衍生。PoT特别适用于数值推理任务,它会引导模型生成一系列代码,模型再通过代码解释器工具进行最后运算。通过这种引导模型生成代码再进行执行的手段,可以显著提升模型在数学问题求解上的表现。 PoT作为CoT的衍生技术,也遵循了零样本和少样本的学习范式。零样本PoT与CoT在方法上极为相似,它们都不需要大量的样本即可进行有效的推理。同样,少样本PoT也采用了类似的策略,通过较少的样本来优化模型的表现。 六、进阶技术——SA SA这种技术是让模型在给出最终答复前,先在中间过程中给出一个自问自答的结果,利用这个结果去推动下一步的思考。通过展现正确的中间的思考过程,来提升回复的准确性。 七、进阶技术——LtM 接下来,让我们深入了解LtM技术,也就是"最少到最多"提示工程技术。这种方法采用了分治策略,把复杂问题拆解成若干个子问题,然后引导模型进行解答。这种技术也是一种推理策略,特别适用于多跳推理和复杂任务。 八、进阶技术——PS PS这种技术的目的,是让模型通过一系列自我计划来引导自身进行深入推理,这种技术属于CoT的增强版,同时也解决了CoT在实际应用中出现的许多错误。 九、智能体母体 "智能体母体"可以被理解为智能体的原型或基础形式,它是创建智能体的原始模板。通过它可以衍生出众多的子智能体。智能体母体的设计和功能,为派生出具有特定任务和特性的子智能体提供了基础,从而扩展了智能体的应用范围和多样性。 下面,我将分享智能体母体所使用的提示词。这些提示词是构建和定制子智能体的关键工具。大家可以直接复制这些提示词,并将其应用到自己的项目中。这样,你就可以利用这些提示词来创建和优化自己的智能体,以满足特定的需求和目标。 现在,让我们进入实践环节,动手创建一个智能体母体。在此过程中,我需要强调的是,无论是智能体母体的创建还是后续智能体的生成,我们都将使用Dify这个平台来进行。这个平台为我们提供了一个强大的环境,让我们能够高效地进行智能体的开发和测试。 首先,请登录至后台系统,接着点击“工作室”按钮,进入智能体管理界面。随后,点击“创建空白应用”选项,选择“Agent”,并开始创建该Agent应用。 接下来,进行第二步,即创建智能体应用。在此步骤中,你需要首先输入智能体的名称,然后点击“创建”按钮以完成操作。 第三步,完成智能体创建后,点击你所创建的智能体,进入其编排页面。在此页面中,你首先需要对模型进行调整:选择所需的模型,并设置模型的温度及输出长度参数。请注意,模型的默认输出长度通常为512,这往往不足以满足需求,且是用户常见的配置问题。 调整完模型后,你需要输入提示词。若需编排编写提示词,建议使用步骤一中准备的提示词模板,直接将其编排进智能体即可。 在智能体编排完成后,我们需要点击“添加功能”按钮。在这一步中,应根据自己的实际需求进行选择。通常,推荐你至少选择“开场白”功能,因为开场白的内容将作为提示词的一部分,提供给模型进行推理分析。 随后,将进入选择智能体工具的环节。这一步骤同样需要根据你的具体需求来定制。你应根据实际情况,挑选并添加合适的工具,以确保智能体能够满足你的需求。 编写开场白 在完成智能体的整体设置后,便可以利用该智能体来创建个性化的提示词。在整个交互过程中,只需提供提示词的名称及其具体的执行任务。基于个人的要求,智能体将自动生成一个完整的智能体模板。 十、AI Agent Flow 接下来,我们来探讨智能体流,这是一种多智能体系统的工程实现方式。智能体流通常分为两大类:对话流和工作流。对话流侧重于多轮交互,而工作流则关注任务的一次性执行。 十一、动手做一个AI Agent Flow 下面我们以Dify平台为例,我们来具体讲解如何创建一个智能体流。请注意,虽然不同平台上智能体流的具体实现和概念可能有所差异,但其核心仍然是围绕多轮对话和任务执行的。无论是对话流还是工作流,它们都是在通过智能体间的协作,提高任务处理的效率和智能性。 关于创建流式智能体的流程,其基本步骤与创建智能体母体的初步步骤大致相同。首先,需要选择“工作室”按钮,然后创建一个新的空白智能体。创建智能体后,需要为其指定一个名称。填写智能体名称完毕后,点击“创建”按钮以完成设置。