基于语言代理树搜索(LATS)和GPT-4o攻克复杂的LLM决策问题 原创
本文将通过一个完整的财务决策方面的案例来展示如何将语言代理树搜索与GPT-4o模型相结合以增强LLM决策能力。
简介
大型语言模型(LLMs)在执行涉及复杂推理的自然语言任务方面表现出了非凡的能力。因此,这些模型已经发展成为能够规划、制定战略和解决复杂问题的代理。然而,当涉及到在不确定性下做出决策时,挑战依然存在,因为结果不是确定性的,或者在不断变化的环境中需要自适应决策,特别是在每一步都影响下一步的多步骤场景中。因此,我们需要更先进的能力……
这就是GPT-4的高级推理能力和语言代理树搜索(LATS,Language Agent Tree Search)结合起来解决这些挑战的地方。LATS采用了一种动态的、基于树的搜索方法,增强了GPT-4o的推理能力。通过将蒙特卡洛树搜索(MCTS)与LLM集成,LATS统一了推理、行动和规划,创建了一个更深思熟虑和自适应的问题解决框架。这种强大的组合可以改进决策,更稳健地处理复杂任务,为将语言模型部署为自主代理确立了新的标准。
“搜索”是GenAI问题解决中缺失的部分吗?
计算问题求解可以广义地定义为“在组合问题空间中搜索”,通常用树结构来描述。深度优先搜索(DFS)和广度优先搜索(BFS)是探索此类解空间的基本方法。深度搜索力量的一个显著例子是AlphaGo的“第37手”(https://en.wikipedia.org/wiki/AlphaGo_versus_Lee_Sedol),它展示了如何通过广泛的探索产生创新的、超越人类的解决方案。
与遵循预定义路径的传统方法不同,LLM可以通过基于上下文预测潜在结果、策略或操作,在解决方案空间内动态生成新的分支。这种能力使LLM不仅可以导航,还可以扩展问题空间,使其在问题结构不完全清楚、不断演变或高度复杂的情况下非常强大。
基于元生成算法的推理时间推理(MGA)
在训练过程中,缩放计算因其提高模型性能的能力而得到广泛认可。然而,在推理过程中,缩放计算的好处仍未得到充分探索。MGA(元生成算法,Meta Generation Algorithms)通过在推理过程中放大计算资源提供了一种新方法……
与传统的令牌级生成方法不同,元生成算法采用高阶控制结构,如规划、具有多个模型调用的循环、自反射、任务分解和动态调节。这些机制使模型能够端到端地执行任务,从而模仿通常被称为“系统二”思维模式的高级认知过程。
【推理时间推理(MGA)算法摘要】
令牌级生成算法
- 解码算法:贪婪解码、波束搜索、推测解码等。
- 令牌级搜索空间:logits、下一个令牌分布、概率分数
元生成算法
- 控制循环多个模型调用CoT
- 搜索算法ToT、GoT、MCTS
- 细化算法:自我反思、自我修正
因此,单向元生成算法可以通过将搜索集成到生成过程中来增强LLM推理。在推理过程中,MGA动态探索更广阔的解决方案空间,使模型能够推理潜在结果并实时调整策略。通过生成多条路径并评估其可行性,元生成算法使LLM能够模拟类似于传统搜索方法的更深入、更复杂的推理。这种方法不仅扩展了模型生成新见解的能力,而且改善了信息不完整或不断变化的情况下的决策。
通常,思想树(ToT)和思维图(GoT)等技术被用来有效地导航组合解空间。
- ToT(2*)通过将潜在结果结构化为树枝,促进对多条路径的探索,从而实现分层决策。
- GoT(6*)映射了想法之间的复杂关系,使模型能够动态调整和优化其推理路径。
- CoT(5*)提供了一步一步的推理,将连续的思想联系起来,提高了生成的连贯性和深度。
为什么MCTS算法更好些?
在思想树(ToT:Tree of Thoughts)方法中,深度优先搜索(DFS)或广度优先搜索(BFS)等传统方法可以对这棵树进行导航,但它们的计算成本很高,因为它们是系统地、详尽地探索每一条可能的路径。
蒙特卡洛树搜索(MCTS)是对这一点的改进,它模拟了不同的动作结果,并根据这些模拟更新了树。具体地说,MCTS算法使用一个“选择”过程,在这个过程中,它使用一种平衡探索(尝试新路径)和利用(选择已知的好路径)的策略来选择决策节点。这是由一个称为上置信区间(UCB)的公式指导的。
UCB公式包括两个关键部分:
- 探索项:这表示选择节点的潜在回报,并通过模拟计算得出。
- 利用项:这会减少你进入某条路径的深度,这意味着如果一条路径被过度探索,算法可能会转向一条探索较少的路径,即使它最初看起来不太有希望。
通过使用UCB选择节点,用LLM模拟结果(奖励),并在树上反向传播奖励,MCTS算法将有效地平衡探索新策略和利用已知成功策略之间的关系。
UCB公式的第二部分是“利用项”,随着你深入探索特定路径,该项会减少。这种减少可能会导致选择算法切换到决策树中的另一条路径,即使该路径的即时奖励较低,因为当该路径的探索较少时,利用项仍然较高。
使用UCB公式进行节点选择、使用LLM模拟进行奖励计算和反向传播是MCTS算法的本质。
实战案例:财务决策实施方案
LATS操作(1*):https://arxiv.org/pdf/2310.04406
为了说明问题,我们将使用语言代理树搜索(LATS)算法来解决在当今宏观经济环境下提出最优投资策略的挑战性问题。我们将以《国际货币基金组织世界经济展望报告》为背景,简要总结该文件,为大型语言模型提供宏观经济状况信息。注意,在这个案例实现技术中,我们没有使用时下流行的RAG技术。下面,我们来分析一个使用LATS算法搜索解决方案空间的示例。
第一次迭代:
1.选择
我们从根节点开始,由于这是第一次LATS迭代,我们将选择LLM生成的所有初始决策节点(A、B和C节点),并模拟它们的结果。
2.模拟和反向传播
下一个LLM根据其上下文“模拟”每种策略,并为每个“节点”分配以下“奖励”——投资回报。
- 策略A:5000美元
- 策略B:7000美元
- 策略C:4000美元
3.扩展
根据选择,策略B具有最高的UCB1值(因为所有节点都在相同的深度)。因此,我们通过模拟其子节点仅扩展策略B。
B节点扩展,因为它具有更高的模拟奖励值
第二次迭代:
1.选择
由于B1和B2策略没有模拟,因此它们的UCB分数是并列的,两个节点都将被模拟。
2.模拟两个节点
- 模拟B1:LLM预测B1的回报为8500美元。
- 模拟B2:LLM预测B2的回报为7500美元。
3.反向传播
每次模拟后,模拟结果都会在树上反向传播,更新父节点的值。这一步可确保新信息的影响在整个树中得到反映。
更新策略B的值:策略B现在需要反映B1和B2的结果。一种常见的方法是对B1和B2的奖励进行平均,以更新策略B的值。现在,基于其子节点的结果,策略B的更新值为8000美元。
反向传播后,策略B的奖励值会更新
4.重新计算UCB分数
反向传播后,重新计算树中所有节点的UCB得分。这次重新计算使用更新后的值(平均奖励)和访问次数,确保每个节点的UCB1分数准确反映其潜在奖励和探索量。
UCB=(探索/奖励项)+(利用项)
需要再次强调的是,在不断深入探索的路径上,所有节点的利用项都会减少。
5.下一步选择和模拟
选择B1以进一步扩展(因为它具有更高的奖励)到子节点:
- B1a:“投资人工智能公司”
- B1b:“投资绿色科技”
B1节点因奖励更高而进一步扩展
6.反向传播
子节点奖励向上反向传播
B1奖励更新为(9200+6800)/2=8000
B奖励更新为(8000+7500)/2=7750
7.UCB计算
反向传播后,重新计算所有节点的UCB值。假设由于探索因子的衰减,B2现在的UCB得分高于B1a和B1b。如果B1被进行了广泛探索(从而减少对其子节点的探索项),这种情况可能会发生。该算法不再继续扩展B1的子代,而是转向探索B2,由于其未探索的潜力,即更高的利用价值,B2变得更具吸引力。
当探索通过节点的路径时,节点的利用价值会降低,这可能会触发分支切换——通过新决策节点的新路径需要进一步探索。
这个例子展示了MCTS如何根据新信息动态调整其搜索路径,确保算法在进展过程中保持高效并专注于最有前景的策略。
基于Azure平台的OpenAI GPT-4o模型实现
接下来,我们将使用GPT-4o模型构建一个“财务顾问”,实战性地实现一下LATS算法。(有关完整的代码,请参考Github仓库)
提示:为了进行准确的分析,我使用7月24日的国际货币基金组织《世界经济展望》报告作为我的LLM背景进行模拟,即生成子节点和为决策节点分配奖励……
以下视频给出项目代码的运行方式展示:
LATS在决策树上迭代MCTS,创建新节点并进行树搜索
该代码中利用开源的graphviz库来直观地描述在执行投资策略模拟期间生成的决策树。但是,因为决策树太宽,无法放入一张图片中;所以,我添加了一点代码片断,方便展示树的样子。当然,你可以在Github仓库中找到一棵完整的示例决策树……
运行MCTS示例代码,以便在当前宏观经济环境中找到最佳投资策略
从生成的决策树中截取的屏幕截图
以下是LATS推断出的最佳策略……
Optimal Strategy Summary: The optimal investment strategy is structured around several key steps influenced by the IMF report. Here's a concise summary of each step and its significance:
1. **Diversification Across Geographies and Sectors:**
- **Geographic Diversification:** This involves spreading investments across regions to mitigate risk and tap into different growth potentials. Advanced economies like the U.S. remain essential due to their robust consumer spending and resilient labor market, but the portfolio should include cautious weighting to manage risks. Simultaneously, emerging markets in Asia, such as India and Vietnam, are highlighted for their higher growth potential, providing opportunities for higher returns.
- **Sector Diversification:** Incorporating investments in sectors like green energy and sustainability reflects the growing global emphasis on renewable energy and environmentally friendly technologies. This also aligns with regulatory changes and consumer preferences, creating future growth opportunities.
2. **Green Energy and Sustainability:**
- Investing in green energy demonstrates foresight into the global shift toward reducing carbon footprints and reliance on fossil fuels. This is significant due to increased governmental supports, such as subsidies and policy incentives, which are likely to propel growth within this sector.
3. **Fintech and E-Commerce:**
- Allocating capital towards fintech and e-commerce companies capitalizes on the digital transformation accelerated by the global shift towards digital platforms. This sector is expected to grow due to increased adoption of online services and digital payment systems, thus presenting promising investment opportunities.
上述内容对应的中文意思是:
最优策略概述:最优投资策略围绕受国际货币基金组织报告影响的几个关键步骤构建。以下是对每个步骤及其意义的简要总结。
1.跨地域和部门的多样化
- 地域多元化:这涉及将投资分散到各个地区,以降低风险并挖掘不同的增长潜力。由于美国等发达经济体强劲的消费支出和有弹性的劳动力市场,它们仍然至关重要,但投资组合应包括谨慎的权重来管理风险。与此同时,印度和越南等亚洲新兴市场因其更高的增长潜力而受到关注,为更高的回报提供了机会。
- 行业多元化:将投资纳入绿色能源和可持续发展等行业反映了全球对可再生能源和环保技术的日益重视。这也与监管变化和消费者偏好相一致,创造了未来的增长机会。
2.绿色能源和可持续性
- 投资绿色能源表明了对全球减少碳排放和依赖化石燃料的转变的远见。由于政府支持的增加,如补贴和政策激励,这可能会推动该行业的增长。
3.金融科技和电子商务
- 利用全球向数字平台转变加速的数字化转型,向金融科技和电子商务公司分配资本。由于在线服务和数字支付系统的日益普及,该行业有望增长,从而带来有前景的投资机会。
结论
通过集成语言代理树搜索(LATS)技术,我们可以实现利用大型语言模型的推理能力来动态模拟和评估潜在策略。这种技术组合允许构建决策树,其不仅可以描述决策的逻辑进程,而且适应大型语言模型通过模拟和反思提供的不断变化的背景和见解信息。
注意:除非另有说明,本文中所有图片均由作者本人提供。
参考文献
【1】《Language Agent Tree Search: Unifying Reasoning, Acting, and Planning in Language Models》(语言代理树搜索:统一语言模型中的推理、行为和规划);作者:Zhou等。
【2】《Tree of Thoughts: Deliberate Problem Solving with Large Language Models》(思维树:使用大型语言模型进行深思熟虑的问题解决);作者:Yao等。
【3】《The Landscape of Emerging AI Agent Architectures for Reasoning, Planning, and Tool Calling: A Survey》(用于推理、规划和工具调用的新兴人工智能代理架构的前景综述);作者:Tula Masterman,Mason Sawtell,Sandi Besen和Alex Chao。
【4】《From Decoding to Meta-Generation: Inference-time Algorithms for Large Language Models》(从解码到元生成:大型语言模型的推理时间算法);作者:Sean Welleck,Amanda Bertsch,Matthew Finlayson,Hailey Schoelkopf,Alex Xie,Graham Neubig,Ilia Kulikov和Zaid Harchaoui。
【5】《Chain-of-Thought Prompting Elicits Reasoning in Large Language Models》(思维链促进大型语言模型中的启发式推理);作者:Jason Wei,Xuezhi Wang,Dale Schuurmans,Maarten Bosma,Brian Ichter,Fei Xia,Ed H. Chi,Quoc V. Le和Denny Zhou。
【6】《Graph of Thoughts: Solving Elaborate Problems with Large Language Models》(思维图:用大型语言模型解决复杂问题);作者:Maciej Besta,Nils Blach,Ales Kubicek,Robert Gerstenberger,Michał Podstawski,Lukas Gianinazzi,Joanna Gajda,Tomasz Lehmann,Hubert Niewiadomski,Piotr Nyczyk和Torsten Hoefler。
译者介绍
朱先忠,51CTO社区编辑,51CTO专家博客、讲师,潍坊一所高校计算机教师,自由编程界老兵一枚。
原文标题:Tackle Complex LLM Decision-Making with Language Agent Tree Search (LATS) & GPT-4o,作者:Ozgur Guler