惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
S
SegmentFault 最新的问题
D
DataBreaches.Net
H
Help Net Security
有赞技术团队
有赞技术团队
M
MIT News - Artificial intelligence
Martin Fowler
Martin Fowler
IT之家
IT之家
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
腾讯CDC
罗磊的独立博客
Y
Y Combinator Blog
阮一峰的网络日志
阮一峰的网络日志
云风的 BLOG
云风的 BLOG
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
WordPress大学
WordPress大学
Microsoft Security Blog
Microsoft Security Blog
J
Java Code Geeks
Vercel News
Vercel News
Hugging Face - Blog
Hugging Face - Blog
aimingoo的专栏
aimingoo的专栏
Stack Overflow Blog
Stack Overflow Blog
Recent Announcements
Recent Announcements
博客园 - 三生石上(FineUI控件)

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理,
Self Discover框架,万万想不到AI Agent还能这样推理
风叔 · 2024-09-13 · via 人人都是产品经理

前面我们分享了Basic Reflection这种偏重反思的AI Agent设计模式,在面对复杂的问题时,就需要更强大的Self-discover设计模式来进行。这篇文章,作者的分享一定不能错过。

在上篇文章《AI大模型实战篇:Basic Reflection,AI Agent的左右互搏之术》中,风叔结合原理和具体源代码,详细介绍了第一种偏重反思的AI Agent设计模式,即Basic Reflection。

Basic Reflection 的思路非常朴素,使用成本较低,但是在实际应用中,Basic Reflection面对一些比较复杂的问题时,需要Generator具备更强大的推理能力。

在这篇文章中,沿着“更强大的推理能力”这条优化路线,风叔将介绍Self-discover设计模式。这个设计模式非常有意思,相信看到最后,大家会发现令人惊奇的结果。

一、Self Discover的概念

Self-Discover 是由Google的研究人员提出的一种AI Agent框架,可实现自动发现和构建推理结构,以解决各种推理任务。这种方法的核心是一个自发现过程,它允许大型语言模型在没有明确标签的情况下,自主地从多个原子推理模块(如批判性思维和逐步思考)中选择,并将其组合成一个推理结构。

Self-Discover框架包含两个主要阶段,自发现特定任务的推理结构、应用推理结构解决问题。如下图所示:

阶段一:自发现特定任务的推理结构

主要包含三个主要动作:选择(SELECT)、适应(ADAPT)和实施(IMPLEMENT)。

选择:在这个阶段,模型从一组原子推理模块(例如“批判性思维”和“逐步思考”)中选择对于解决特定任务有用的模块。模型通过一个元提示来引导选择过程,这个元提示结合了任务示例和原子模块描述。选择过程的目标是确定哪些推理模块对于解决任务是有助的。

适应:一旦选定了相关的推理模块,下一步是调整这些模块的描述使其更适合当前任务。这个过程将一般性的推理模块描述,转化为更具体的任务相关描述。例如对于算术问题,“分解问题”的模块可能被调整为“按顺序计算每个算术操作”。同样,这个过程使用元提示和模型来生成适应任务的推理模块描述。

实施:在适应了推理模块之后,Self-Discover框架将这些适应后的推理模块描述转化为一个结构化的可执行计划。这个计划以键值对的形式呈现,类似于JSON,以便于模型理解和执行。这个过程不仅包括元提示,还包括一个人类编写的推理结构示例,帮助模型更好地将自然语言转化为结构化的推理计划。

阶段二:应用推理结构

完成阶段一之后,模型将拥有一个专门为当前任务定制的推理结构。在解决问题的实例时,模型只需遵循这个结构,逐步填充JSON中的值,直到得出最终答案。

二、Self Discover的实现过程

下面,风叔通过实际的源码,详细介绍Self Discover模式的实现方法,具体的源代码地址可以在文章结尾处获取。在手机端阅读源码的体验不太好,建议大家在PC端打开。

第一步 定义Select、Adapt和Implement

第一步要做的事情,是前面所讲的阶段一,定义好select、adapt和implement这三个过程。

首先,定义select。给Select的prompt是,“对于给定的任务,找出最相关的reasoning module,即确定通过什么方法来解决任务”

然后,定义adapt。给Adapt的prompt是,“在不需要给出完整解决方案的情况下,让大模型调整上一步得到的reasoning module,以更好地适应任务。”

接下来,定义implement。给Implement的prompt是,“在不需要给出完整解决方案的情况下,利用上一步得到的优化后的reasoning module,创建一个可执行的推理结构。”

第二步 执行推理结构

第二步要做的事情,就是前面所讲的阶段二,应用这个推理结构获得最终答案

第三步 提出问题,开始推理

第三步就是将这个过程进行推理实现,如下面的代码所示,这一步非常关键,大家可以逐条仔细看:

这段代码非常简单。首先,我们提出了39种reasoning modules,即推理的具体方法,大家也可以自己提炼出一些推理方法,通过prompt告知给Agent。

然后,我们提出一个具体的推理任务:“Lisa 有 10 个苹果。她给了朋友 3 个苹果,然后从商店买了 5 个苹果。Lisa 现在有多少个苹果?”

然后大模型会自动选出最合适的推理方法。实践中发现,大模型选择了方法9和10。

接下来,针对目标任务,大模型自动优化推理方法的描述。

然后,大模型自动给出了具体的推理结构。

至此,Self Discover的原理和流程就介绍完了。

风叔在尝试这个case之前,完全没想到大模型还能在给定的推理方法中,自主选择最合适特定的问题的推理方法,并完成推理结构和推理语言的输出,这项能力确实是让风叔眼前一亮。通过这种推理方式,未来Agent就能解决更加多样化的问题,因为任何类型的问题,总能有其对应的推理和思考方式。

大家可以关注公众号【风叔云】,回复关键词【SD源码】,获取self discover设计模式的完整源代码,然后自己尝试一些更复杂的提问,看看大模型的回答效果。

总结

整个Self-Discover的关键在于,它允许模型在没有人类干预的情况下,自主地生成适合特定任务的推理结构。这样不仅提高了模型的推理能力,而且提高了推理过程的可解释性。通过这种方式,模型能够更有效地处理复杂和多样化的任务。

本篇文章提到的例子,虽然结构很清晰,但不足之处在于没有使用Tools。对于需要使用搜索工具、数学工具等外部工具的场景,我们也可以让大模型在adapt环节给出适合解决目标任务的外部工具,然后在后续过程中执行。

在下一篇文章中,风叔将介绍另一种优化Basic Reflection的方式,增加强化学习,Reflexion。

本文由人人都是产品经理作者【风叔】,微信公众号:【风叔云】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。