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就能让它们工作的更高效。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

<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、付费专栏及课程。

余额充值