
通过实时 GPT-4O 音频模型转型零售:多智能体方法提升客户体验
- Rifx.Online
- Large Language Models , Generative AI , AI Applications
- 05 Mar, 2025
问题陈述
GPT 40 Realtime 是 OpenAI 模型家族中的一个新模型。当它在 Azure 上发布时,引起了大家的极大兴趣(也包括我),我非常兴奋地想尝试一下。
所以,这是我尝试使用 GPT4O Realtime 处理 Gen AI 用例的尝试。
我用来展示该解决方案的实时音频功能的用例是一个零售购物车用例,我在其中将音频部分实现为代理的响应。
该解决方案有 3 个协同工作的代理。第一个是管理所有交互、会话、状态、护栏等的监管代理。第二个是产品咨询代理,帮助我获取特定产品的详细信息。第三个代理将帮助我将商品添加到购物车,并允许我结账以询问更多产品。以下是代理的快速流程:
- 我作为用户首先说“hi”
- 系统回复并问我是否有兴趣查看一些产品(这是一个糖果店的例子)。
- 然后我告诉他们我对一些产品感兴趣。
- 系统告诉我——我可以在 KitKat、MnM、Twix 等之间进行选择。系统还问我是否有关于一个特定产品的详细信息。
- 我告诉系统我想了解 KitKat。
- 系统获取关于该产品的所有信息,并问我是否可以在购物车中添加一些。
- 我说“是”,并在购物车中提到 2 件商品。
- 系统将商品添加到购物车,并问我是否对更多产品感兴趣。
- 如果我的回答是“否”,则它会结账。如果回答是“是”,则转到步骤 2 并执行相同的步骤。
解决方案
所以,让我们深入研究解决方案。
该解决方案围绕我用来构建多个 Gen AI Agentic 用例的 AGF(Azure Gen AI Foundation)框架设计。您可以在结论部分找到这些用例的列表。
该用例从我可以看到系统要求我交互的地方开始。
我说“hi”,系统回复“hi”。系统还为我提供了下一步的指导。
这里重要的是音频响应。我使用 GPT 40 Realtime 模型来生成答案(我也保留了文本部分以供比较)。
作为用户,我听取了指示并回复了一个产品。然后系统(通过语音)引导我选择它拥有的 4 个产品线之一。
接下来,我提到我想了解他们的一个产品——因此,第三个代理调用“获取详细信息”工具来获取信息并再次以音频响应。
接下来,代理问我是否想将产品添加到购物车中,并问我需要多少个(全部通过音频)。
一旦我确定了数量——它就会将详细信息添加到购物车中。
接下来,系统会询问我是否要继续购物,并根据我的输入决定调用哪个下一个代理。这演示了代理之间非循环的动态交互。
所有答案和响应都通过音频。
我确实提到我需要另一件商品。这次我选择了 Twix。所以系统会经历相同的过程。
一旦我将内容添加到购物车中,系统会再次询问我是否需要继续或结账。
这次,我告诉系统我想结账,它结束了流程。
解决方案的逻辑架构:
结论
我已经从事代理工作一段时间了,以下是我实现的一些代理用例,请将它们用作参考:
- 整个“代理解决方案”概述 @ https://medium.com/@nayan.j.paul/implementing-llm-and-gen-ai-applications-using-the-world-of-llm-agents-37fab8889bd3
- 基于目标的代理开发 @ https://medium.com/@nayan.j.paul/how-i-designed-a-tic-tac-toe-agent-in-a-multi-agent-setup-with-llm-and-gen-ai-3da646177980
- 使用代理集合进行探索性数据分析 @ https://medium.com/@nayan.j.paul/designing-exploratory-analysis-agent-with-gen-ai-large-language-models-llms-61310a1cd60f
- 设计假设检验和模式分析代理 @ https://medium.com/@nayan.j.paul/designing-hypothesis-analysis-agent-with-gen-ai-large-language-models-llms-a09aaf7016d4
- 设计供应链仿真建模 @ https://medium.com/@nayan.j.paul/designing-simulation-modeling-agents-using-gen-ai-large-language-models-llms-ed12f462c3f2
- 汽车订单放置的多轮用例 @ [https://medium.com/@nayan.j.paul/multi-turn-goal-based-agents-with-large-language-models-with-practical-use-case-49a78fcc
使用 Gen AI 解决狼、羊和卷心菜问题
狼、羊和卷心菜问题是一个经典的谜题,它展示了逻辑推理和解决问题的能力。在这个游戏中,一个农民需要用一艘船把一只狼、一只羊和一棵卷心菜运过河。船一次只能载农民和另一样东西。挑战在于确保在运输过程中狼不会吃掉羊,羊也不会吃掉卷心菜。
本文探讨了如何使用由 Gen AI 驱动的多智能体系统来解决狼、羊和卷心菜问题。
游戏规则
- 农民、狼、羊和卷心菜最初都在河的一边。
- 农民必须将所有物品运到河的另一边。
- 船一次只能载农民和一件物品。
- 狼不能和羊单独在一起。
- 羊不能和卷心菜单独在一起。
多智能体系统设计
我们将设计一个多智能体系统,其中每个实体(农民、狼、羊和卷心菜)都由一个智能体表示。每个智能体将具有以下组件:
- 状态: 表示智能体的当前位置(河的左边或右边)。
- 目标: 智能体的期望状态(例如,所有智能体都在右边)。
- 动作: 智能体可以执行的动作(例如,移动到另一边,停留)。
- 规则: 定义游戏规则的约束(例如,狼和羊不能单独在一起)。
- 推理: 根据当前状态、目标、动作和规则进行规划和决策的能力。
智能体交互
智能体将相互交互以实现总体目标。农民智能体将协调其他智能体的移动,确保遵守游戏规则。智能体将进行通信和协商,以确定最佳的动作序列。
Gen AI 集成
Gen AI 可以集成到智能体的推理组件中,以增强其决策能力。Gen AI 模型可以在游戏状态、动作和结果的数据集上进行训练。这使得智能体能够从过去的经验中学习并做出更明智的决策。
解决游戏
以下是多智能体系统如何解决狼、羊和卷心菜问题的方法:
- 农民带着羊过河。
- 农民独自返回。
- 农民带着狼过河。
- 农民把羊带回来。
- 农民带着卷心菜过河。
- 农民独自返回。
- 农民带着羊过河。
代码实现(概念)
以下是一个概念性的 Python 代码片段,用于说明多智能体系统:
class Agent:
def __init__(self, name, location, goal):
self.name = name
self.location = location # 'left' or 'right'
self.goal = goal
def __str__(self):
return f"{self.name} is on the {self.location} side"
def can_move(self, other_agent=None):
# Implement game rules here
if self.name == "farmer":
return True
if self.name == "wolf" and other_agent.name == "goat" and self.location != "farmer":
return False
if self.name == "goat" and other_agent.name == "cabbage" and self.location != "farmer":
return False
return True
def move(self, other_agent=None):
if self.can_move(other_agent):
self.location = 'right' if self.location == 'left' else 'left'
return True
else:
return False
## Example usage
farmer = Agent("farmer", "left", "right")
wolf = Agent("wolf", "left", "right")
goat = Agent("goat", "left", "right")
cabbage = Agent("cabbage", "left", "right")
print(farmer)
print(wolf)
print(goat)
print(cabbage)
结论
狼、羊和卷心菜问题提供了一个简单而有效的例子,说明如何使用多智能体系统和 Gen AI 来解决复杂问题。通过将每个实体表示为一个智能体,并集成 Gen AI 进行推理,我们可以创建能够规划、做出决策并实现期望目标的智能系统。
参考
- Multi Agent System for Wolf Goat Cabbage game — https://medium.com/@nayan.j.paul/wolf-goat-cabbage-game-using-multi-agent-system-and-gen-ai-677506ecf906
- O1 Model based Multi Agent System for Reasoning — https://medium.com/@nayan.j.paul/root-cause-analysis-use-case-with-the-new-o1-reasoning-model-e4f75e88403b
- Multi Agent Back Order Propagation System — https://medium.com/@nayan.j.paul/implementing-back-order-prediction-agent-using-gen-ai-large-language-models-llms-8eede590438e
- Shipping ETA prediction using Multi Agent System — https://medium.com/@nayan.j.paul/implementing-shipment-eta-prediction-agent-using-gen-ai-large-language-models-llms-d0e9021bb4b
- 3 common Gen AI Patterns : https://medium.com/me/stats/post/73081a855c71