LLM Agent工作流揭秘:如何精炼Prompt以提升性能

在与大模型交互的过程中,提示词是很关键的,也是成本最低解决幻觉的有效方法。所以一定要给它一些Example,在没有一个不包含Example,结果往往是不理想的。虽说网上也有介绍Zero Shot 的Prompt,比如Let’s think step by step,但遇到稍微复杂点的任务,它就不一定能达到自己想要的效果。

一个精心设计完成特定任务的Prompt大体需要包含这几部分:

  1. 解决任务的方法

  2. 任务的输入和输出

  3. 任务的Example,3到5个左右。

  4. 任务的历史纪录,如果有的话

  5. 用户输入的问题。

下面我们一起来看看一些案例:

一、ReAct Prompt

ReAct 提供了一种更易于人类理解、诊断和控制的决策和推理过程。它的典型流程如下图所示,可以用一个有趣的循环来描述:思考(Thought)→ 行动(Action)→ 观察(Observation),简称TAO循环。

循环迭代以上流程,如下图:

Prompt设计如下所示:包含了说明解决问题的方法、输入和输出、样例和用户问题。

用交替进行的"思考、行动、观察"三个步骤来解决问答任务。思考可以对当前情况进行推理,而行动必须是以下三种类型:
  
(1) Search[entity],在维基百科上搜索确切的实体,并返回第一个段落(如果存在)。如果不存在,将返回一些相似的实体以供搜索。
(2) Lookup[keyword],在上一次成功通过Search找到的段落中返回包含关键字的下一句。
(3) Finish[answer],返回答案并结束任务。
 
你可以采取必要的步骤。确保你的回应必须严格遵循上述格式,尤其是行动必须是以上三种类型之一。
  
以下是一些参考示例:
问题: 科罗拉多造山运动东部地区的海拔范围是多少?
思考1: 我需要搜索科罗拉多造山运动,找到科罗拉多造山运动东部地区的范围,然后找到该地区的海拔范围。
行动1: 搜索[科罗拉多造山运动]
观察1: 科罗拉多造山运动是科罗拉多州及周边地区的一次造山运动(造山运动)。
思考2: 它没有提到东部地区。所以我需要查找东部地区的信息。...
(例子结束)
Question:{question}
{scratchpad}

二、CoT 思维链 Prompt

Chain-of-Thought(CoT)是一种改进的Prompt技术,目的在于提升大模型LLMs在复杂推理任务上的表现,对于复杂问题尤其是复杂的数学题大模型很难直接给出正确答案。

思维链就是一系列中间的推理步骤(a series of intermediate reasoning steps)。通过让大模型逐步参与将一个复杂问题分解为一步一步的子问题并依次进行求解的过程可以显著提升大模型的性能。

CoT式Prompt示例:

COT = """相关背景: 尼罗河是世界上最长的河流,长度约为6,650公里(4,132英里)。它流经东北非的十一国,包括埃及、苏丹和乌干达。
问题: 世界上最长的河流是什么?
思考: 这个问题询问世界上最长的河流,根据提供的背景信息,我知道是尼罗河。
行动: 完成[尼罗河]
...
"""

三、思维树(Tree-of-thought, ToT)Prompt

对 CoT 的进一步扩展,在思维链的每一步,推理出多个分支,拓扑展开成一棵思维树。使用启发式方法评估每个推理分支对问题解决的贡献。选择搜索算法,使用广度优先搜索(BFS)或深度优先搜索(DFS)等算法来探索思维树,并进行前瞻和回溯。

思维树Prompt示例:

假设我们要解决以下问题:“一个矩形花园的长度是宽度的两倍,如果它的周长是60米,那么它的面积是多少平方米?”
  
步骤1:定义问题``任务:确定矩形花园的面积。
已知:长度是宽度的两倍;周长是60米。
  
步骤2:分解问题``识别变量:设宽度为w,长度为2w。
使用公式:周长 = 2 * (长度 + 宽度)
替换已知:60 = 2 * (2w + w)
  
步骤3:求解方程``简化方程:60 = 2 * (3w)
解方程:60 = 6w
得出宽度:w = 10米
   
步骤4:计算长度
长度 = 2 * 宽度``长度 = 2 * 10 = 20米
  
步骤5:计算面积``面积 = 长度 * 宽度``面积 = 20 * 10 = 200平方米

四、反思Prompt

反思或者说精炼,是一种在现有问答基础上更进一步地指导模型进行自我优化和排除错误答案的过程。

反思Prompt示例:

之前的尝试:
问题: 《罗马议定书》由三位总理签署,其中一位被暗杀是作为什么的一部分?
思考1: 我需要搜索《罗马议定书》,找到这三位总理
...
行动3: 完成[第二次世界大战]
  
反思: 我搜索了参与签署的一位总理,然后试图立即回答。我应该搜索每位总理,然后查看每位总理的“死亡”信息,以获取更多信息后再回答。

五、工具调用Prompt

如果你有大量的工具函数可能会被调用,但你显然无法将所有Tools发给LLM,这可能会超过大模型的Token限制。你要怎么处理呢?一个简单的方法是采用分组,尽量将类似的函数组合到一起,然后再选择。

工具调用示例:

任务必须从以下选项中选择:
"token-classification"、"text2text-generation"、"summarization"、"translation"、"question-answering"、"conversational"、"text-generation"、"sentence-similarity"、"tabular-classification"、"object-detection"、"image-classification"、"image-to-image"、"image-to-text"、"text-to-image"、"text-to-video"、"visual-question-answering"、"document-question-answering"、"image-segmentation"、"depth-estimation"、"text-to-speech"、"automatic-speech-recognition"、"audio-to-audio"、"audio-classification"、"canny-control"、"hed-control"、"mlsd-control"、"normal-control"、"openpose-control"、"canny-text-to-image"、"depth-text-to-image"、"hed-text-to-image"、"mlsd-text-to-image"、"normal-text-to-image"、"openpose-text-to-image"、"seg-text-to-image"。

可能存在多个相同类型的任务。逐步思考解决用户请求所需的所有任务。
解析出尽可能少的任务,同时确保能够解决用户请求。
注意任务之间的依赖关系和顺序。
如果无法解析用户输入,你需要回复空 JSON [],否则必须直接返回 JSON。

六、 多智能体Prompt

多智能体提示词设计,大概源于人类的分工合作思想,Prompt如果设定过多的不同任务,很可能会导致大模型无法准确跟随指令,因此给不同的智能体设计专用的Prompt就能让它们工作的更高效。

总结:

以上就是一些常用的LLM Agents工作流中对于Prompt提示词使用与思考。通过精心设计的Prompt,我们可以显著提升LLM在Agent工作流中的表现。理解并应用这些设计原则,将有助于构建更高效、更可靠的AI系统。

既然大模型现在这么火热,各行各业都在开发搭建属于自己企业的私有化大模型,那么势必会需要大量大模型人才,同时也会带来大批量的岗位?“雷军曾说过:站在风口,猪都能飞起来”可以说现在大模型就是当下风口,是一个可以改变自身的机会,就看我们能不能抓住了。

那么,我们该如何学习大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

一、大模型全套的学习路线

学习大型人工智能模型,如GPT-3、BERT或任何其他先进的神经网络模型,需要系统的方法和持续的努力。既然要系统的学习大模型,那么学习路线是必不可少的,下面的这份路线能帮助你快速梳理知识,形成自己的体系。

L1级别:AI大模型时代的华丽登场

L2级别:AI大模型API应用开发工程

L3级别:大模型应用架构进阶实践

L4级别:大模型微调与私有化部署

一般掌握到第四个级别,市场上大多数岗位都是可以胜任,但要还不是天花板,天花板级别要求更加严格,对于算法和实战是非常苛刻的。建议普通人掌握到L4级别即可。

以上的AI大模型学习路线,不知道为什么发出来就有点糊,高清版可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

<think>好的,我现在需要回答用户关于如何使用Cursor创建Dify工作流的问题。首先,我得理解用户的问题。用户提到了Dify,一个低代码开发平台,可能用于构建应用或自动化流程。他们想通过Cursor(可能是一个代码编辑器或集成开发环境)来创建Dify的工作流,并需要方法和示例。 首先,我需要确认Dify和Cursor的具体功能和集成方式。根据用户提供的参考引用,Dify Agent通过知识库生成SQL查询数据库,步骤包括创建表结构、导入知识库、配置Dify查询SQL工作流、输入prompt模板以及Agent配置与对话展示。这可能意味着Dify工作流涉及到数据库操作、知识库集成以及自动化流程配置。 接下来,用户提到的Cursor可能是指Cursor.so,一个基于AI的代码编辑器,支持智能代码补全和生成。因此,用户可能希望利用Cursor的AI功能来辅助编写Dify工作流配置或相关代码。 我需要考虑如何将两者结合起来。可能的步骤包括: 1. **安装和设置Cursor**:用户需要安装Cursor并配置相关插件或扩展以支持Dify工作流的开发。 2. **了解Dify工作流结构**:Dify的工作流可能使用YAML、JSON或其他配置文件格式,或者需要编写特定的代码(如Python)来定义流程。 3. **利用Cursor的AI功能生成代码或配置**:用户可以通过自然语言描述工作流需求,Cursor生成相应的配置代码或脚本。 4. **集成知识库和数据库**:根据参考引用,需要创建表结构并导入数据,可能需要编写SQL脚本,Cursor可以帮助生成这些脚本。 5. **测试和调试工作流**:使用Cursor的调试功能验证工作流的正确性。 可能的示例包括使用Cursor生成创建数据库表的SQL语句,或者编写调用Dify API的Python代码。需要注意Dify的具体API或配置方式,可能需要查阅官方文档以确保准确性。 此外,用户提供的引用提到配置prompt模板和Agent,这可能涉及自然语言处理AI模型集成,Cursor的AI功能可以辅助生成这些模板或配置参数。 总结步骤可能如下: 1. 在Cursor中创建新项目,配置Dify环境。 2. 使用Cursor的AI生成SQL脚本创建数据库表。 3. 编写或生成Dify工作流配置文件,定义各个步骤(数据导入、查询处理等)。 4. 配置Agent设置和prompt模板,利用Cursor自动生成模板内容。 5. 测试工作流,调试可能出现的问题。 需要验证这些步骤是否符合Dify的实际操作流程,可能需要参考Dify的官方文档或教程,确保建议的方法正确可行。同时,示例代码或配置需要符合Dify的语法和结构,避免错误。</think>以下是使用Cursor创建Dify工作流的步骤详解及示例: ### 一、环境准备 1. 安装Cursor(需开启AI模式) 2. 注册Dify账号并创建应用 3. 准备SQL数据库(如MySQL/PostgreSQL) ### 二、核心配置流程 1. **数据库配置** 使用Cursor生成建表语句: ```sql CREATE TABLE knowledge_base ( id INT PRIMARY KEY AUTO_INCREMENT, content TEXT, metadata JSON ); ``` 通过`⌘/Ctrl + K`调用AI优化表结构[^1] 2. **工作流定义** 创建`dify_workflow.yaml`: ```yaml #Cursor生成提示:创建SQL查询工作流 steps: - name: data_loader type: sql_connector config: query: "SELECT * FROM knowledge_base WHERE metadata->>'category' = :category" - name: prompt_engine type: llm_processor params: template: | 根据以下内容生成报告: {{ data_loader.output }} ``` 3. **API集成**(Cursor自动补全) ```python # 通过⌘/Ctrl + L生成API调用代码 import dify_client workflow = dify_client.configure( sql_conn="mysql://user:pass@localhost/db", prompt_template=open('prompt.txt').read() ) ``` ### 三、调试技巧 1. 使用Cursor的AI调试功能: ```bash # 输入错误日志获取修复建议 ERROR: SQL connection timeout ``` 2. 可视化测试: ```python workflow.test_input({"category": "finance"}) ``` ### 四、最佳实践 1. 通过`⌘/Ctrl + T`生成单元测试模板 2. 使用AI生成prompt优化建议 3. 自动生成API文档注释
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值