真的不难!Agent工作流Prompt精华全解析!

在详解和实测吴恩达4种Agentic工作流之中,测试了各种框架诸如反思、工具调用、规划、多智能体,在学习了其中各种Prompt设计后,有了一些新的认识分享给大家~

图片

对于特定的任务来说,没有万能的Prompt,只有一些通用的式,要完成这个任务还需要这个任务特定的Example。另外,你一定要PUA它,强烈的鼓励它,使用类似MUST、奖励等字眼来PUA它,这样能让大模型更好的跟随指令。

所以一定要给它一些Example,在没有一个不包含Example,结果往往是不理想的。虽说网上也有介绍ZeroShot的Prompt,比比如Let’sthink step bystep,但遇到稍微复杂点的任务它就不一定能达到自己想要的效果。

图片

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

1.解决任务的方法

2.任务的输入和输出

3.任务的Example,3~5个左右

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

5.用户输入的问题

话不多说,我们来看看4种LLM Agentic工作流Prompt设计,相信大家一定能有所收获!

图片

一、ReAct Prompt

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

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

图片

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

图片

二、CoT思维链 Prompt

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

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

图片

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

CoT式Prompt示例:

图片

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

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

图片

思维树Prompt示例:

图片

四、反思Prompt

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

反思prompt示例:
图片

五、工具调用Prompt

如果你有大量的工具函数O可能会被调用,但你显然无法将所有T001S发给LLM,这可能会超过大模型的Token限制。你要怎么处理呢?

一个简单的方法是采用分组,尽量将类似的函数组合到一起,然后再选择。

图片

工具调用示例:

图片

另外,在使用工具调用时候,由于大模型有时候会捏造参数,你一定要在Prompt中提示它不要捏造任何参数,如果未提供,请求用户提供,这需要针对不同模型多次尝试优化。

六、多智能体Prompt

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

总结:

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

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

学习AI大模型是一项系统工程,需要时间和持续的努力。但随着技术的发展和在线资源的丰富,零基础的小白也有很好的机会逐步学习和掌握。【点击蓝字获取】

【2025最新】AI大模型全套学习籽料(可白嫖):LLM面试题+AI大模型学习路线+大模型PDF书籍+640套AI大模型报告等等,从入门到进阶再到精通,超全面存下吧!

### Dify 多 Agent 工作流实现方案 Dify 是一个强大的工具,支持通过多 Agent 的方式构建复杂的工作流。以下是关于如何使用 Dify 实现多 Agent 工作流的相关技术与解决方案。 #### 1. 模块化设计 在构建多 Agent 工作流时,模块化是关键的设计理念。每个 Agent 被视为独立的模块,负责处理特定的任务或子任务。例如,一个 Agent 可以专注于文本生成,而另一个 Agent 则可以处理图像生成或数据分析[^1]。这种模块化的设计允许开发者根据需求灵活组合和优化各个模块。 #### 2. 数据传递与交互 为了实现多 Agent 之间的协作,需要设计一种机制来确保数据能够在不同 Agent 之间高效传递。可以通过以下方法实现: - **共享存储**:使用数据库或文件系统作为中间层,Agent 之间通过读写共享存储进行数据交换。 - **消息队列**:利用消息队列(如 RabbitMQ 或 Kafka)实现异步通信,使 Agent 能够按顺序处理任务。 - **API 接口**:为每个 Agent 提供 RESTful API 或 GraphQL 接口,便于其他 Agent 调用其功能[^2]。 #### 3. 工作流编排 工作流编排是多 Agent 系统的核心部分,它定义了 Agent 的执行顺序和依赖关系。可以采用以下方法进行编排: - **手动配置**:通过 YAML 文件或其他配置语言明确指定每个 Agent 的输入输出及执行顺序。 - **动态调度**:基于业务逻辑动态决定下一个要执行的 Agent,这通常需要引入决策引擎或规则引擎。 - **低代码平台**:利用 Dify 提供的可视化工具或低代码平台快速搭建复杂的工作流[^2]。 #### 4. 示例代码 以下是一个简单的示例,展示如何通过 Python 脚本调用多个 Dify Agent 并串联它们形成工作流: ```python import requests def call_agent(agent_id, input_data): url = f"http://localhost:8000/agents/{agent_id}/invoke" response = requests.post(url, json=input_data) return response.json() # 第一个 Agent 负责文本生成 input_for_agent_1 = {"prompt": "编写一段关于人工智能的文章"} output_from_agent_1 = call_agent("agent_1", input_for_agent_1) # 第二个 Agent 负责将生成的文本转换为语音 input_for_agent_2 = {"text": output_from_agent_1["result"]} output_from_agent_2 = call_agent("agent_2", input_for_agent_2) print("最终结果:", output_from_agent_2) ``` #### 5. 性能优化与监控 为了保证多 Agent 工作流的稳定性和性能,需要定期对系统进行优化和监控: - **负载均衡**:当多个 Agent 同时运行时,合理分配计算资源以避免瓶颈。 - **日志记录**:记录每个 Agent 的执行过程和结果,方便后续排查问题。 - **错误处理**:设计完善的错误处理机制,确保某个 Agent 出现异常时不会影响整个工作流的运行[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值