用于生成 LLM 管道的 AI 代理系统

一些背景

大型语言模型中提示技术的演变反映了人工智能预计处理的任务日益复杂化。

单次提示是起点,其中为模型提供一个例子,并期望仅基于该例子准确地执行任务。

多重提示通过提供多个示例改进了这一点,使模型能够完善对模式期望的理解。

进一步来说,出现了提示模板,标准化输入结构以确保一致性并减少模型输出的差异。这是通过在提示中创建变量或占位符来实现的,这些变量或占位符在运行时被替换为值。

随着任务变得越来越复杂,链接开始出现,将多步骤任务分解为连续的提示,其中一个提示的输出成为下一个提示的输入。

然而,为了解决事实不准确的挑战,引入了检索增强生成 (RAG),将检索机制与语言模型相结合,确保生成的文本以实时、准确的数据源为基础。

ChainBuddy 是一款人工智能助手,可根据初始提示自动生成入门级 LLM 流程。~来源

ChainForge

当我在这项研究中看到 Ian Arawjo 的名字时,我立即想起了ChainForge,这是他围绕模型选择、提示模板和生成审计构建评估逻辑的创新工具。

ChainForge 提供了直观的 GUI,可以本地安装或直接从 Chrome 浏览器运行,使其可访问且灵活地用于各种 AI 开发任务。

ChainForge 进行了重大更新,包括引入聊天回合节点,这与 OpenAI 从完成和插入模式转向专注于基于聊天的交互的转变相一致。

用户可以跨不同的语言模型并行运行多个对话、模板化聊天消息,甚至在每个节点的对话中切换 LLM。

这种灵活性对于生成审计来说是无价的,可以检查每个聊天节点是否存在诸如Prompt DriftLLM Drift之类的问题,从而确保更强大的对话式 AI 系统。

ChainForge 的演变使其成为任何专注于构建和审核对话式 AI 界面的人的强大工具。

返回 ChainBuddy

ChainBuddy 基于 ChainForge 并利用 LangChain 的 LangGraph。

ChainBuddy 似乎可以很好地用作基于 Web 的用户界面以及基于代理的分解和流程创建器。但它不是传统的创意创建器,而是一种可以比较不同 LLM 的响应并创建管道的工具。

管道可以作为代理应用程序的工具。因此,ChainBuddy 可以看作是一种技术工具,可以帮助构建者将复杂且模糊的查询分解为一系列步骤。

充当某种逻辑工具。

  1. ChainBuddy是一个基于聊天的人工智能助手,它可以与用户互动以了解他们的需求和目标,然后生成可编辑和交互式的 LLM 管道来帮助他们开始工作。
  2. 该研究还提供了对人工智能界面未来的见解,同时反映了潜在的风险,例如用户过度依赖人工智能来生成 LLM 管道。

以上是ChainBuddy仅根据一个用户提示创建的工作流程示例。在此示例中,用户想要探索不同的角色如何影响 LLM 对复杂数学问题的响应。在这种情况下,ChainBuddy会自动生成一个包含各种角色、数学问题和模板提示的管道。然后,它会对四个不同的 LLM 进行比较。此外,它使用 Python CodeEvaluator检查输出的准确性,验证解决方案是否正确。用户可以自定义此过程,例如,通过调整输出或添加更多正则表达式模式进行验证。

缺失的环节

该研究承认存在大量代理开发框架,但确定需要更高级别的抽象。

用户和 AI/ML 专家可以在这里设置管道和自动评估以及 LLM 行为的可视化。

对话式用户界面

ChainBuddy 助手是一款聊天工具,位于 ChainForge 平台的左下角。我必须说,我在撰写本文时检查了ChainForge ,ChainBuddy 不可用。

在 ChainBuddy 聊天 UI 中,用户可以首先通过聊天界面描述问题。然后,助手会进行问答环节,以澄清用户的意图,最多会问三个关键问题。

用户可以单独回答每个问题,澄清过程完成后,用户可以通过单击按钮触发助手生成流程。

生成的流程可以根据需要进行审查或修改,必要时可以选择请求新版本。助手界面保持简单,复杂性集中在代理架构和流程生成功能上。

ChainBuddy 基于 LangGraph 构建,这是一个专为使用 LLM 构建有状态、多参与者应用程序而设计的库。

上图是 ChainBuddy 界面和使用示例。用户指定需求A,ChainBuddy 回复需求收集表单B,用户可以填写并发送,也可以通过开放式聊天C进行跟进。用户按下绿色按钮D表示他们已准备好生成流程。延迟 10-20 秒后,ChainBuddy 生成启动管道E。此处,启动管道包括示例输入、多个要尝试的提示(提示模板)、两个查询模型和一个基于 Python 的代码评估器。

早期用户反馈

意图澄清:用户经常输入缺乏足够细节的提示,无法生成定制的工作流程。为了解决这个问题,ChainBuddy采用了交互式聊天格式,以便更好地澄清。

结构化输入:虽然系统最初使用开放式、类似 ChatGPT 的聊天来向用户提问,但长篇大论的回答让用户难以自然地回答。

为了改善这种情况,我们实施了一种表格填写方法,允许用户只回答他们选择的问题,同时限制问题的数量和长度。

反馈:用户建议一些有用的功能,例如可视化系统进度并包括可解释的人工智能元素,以阐明系统如何生成结果或可视化。

流程编辑:一些用户表示有兴趣继续与ChainBuddy进行交流,以改进或扩展现有工作流程。虽然该功能是理想的,但它过于复杂,无法在研究范围内完全实现。

ChainBuddy系统架构采用前端和后端设置。在前端,需求代理收集用户的意图和上下文(左侧)。一旦用户按下生成按钮,系统就会将此意图发送到后端Planner代理。然后,Planner 将问题分解为较小的任务,并将每个任务分配给特定代理。这些代理的输出由管理整体流程的连接代理链接和组织。可选的Reviewer 代理可以进一步细化结果。最后,完成的流程以JSON格式作为 ChainForge 流程发送回前端。

最后的想法

ChainBuddy 是一个很好的例子,它使用对话式 UI 通过代理方法收集用户信息,包括目标、要求、偏好等。

ChainBuddy 充当更高的抽象层,帮助用户将他们的需求转化为管道。尽管这个管道可能不是最终产品,但它是解决空白画布问题的一步。

为用户提供可编辑的起点以达到最终状态。

互操作性可能需要考虑,因为流程需要导出或至少在其他 IDE 中重新创建。

任务分解和任务分配给特定目的的代理

ChainBuddy 的代理系统受到高级提示概念和旨在增强自主代理的项目的启发,旨在根据用户需求制定长期计划。

这种方法需要将任务分解为具体的、可管理的操作,使各个代理能够执行这些操作并将结构化数据返回给上游代理。

这种架构允许每个代理专注于单一任务,从而提高了效率和准确性。

该系统包括一个需求收集聊天助手,它可以与用户交互以澄清他们的意图并收集他们的问题的背景,为后续规划奠定基础。

规划代理根据用户指定的目标制定全面的实施计划,接收有关系统内所有可访问节点的上下文信息,包括其名称、描述和允许的连接。

计划中的每个任务都委托给专门的任务代理,以促进重点执行。

这些任务对应于用户界面中需要生成的不同节点,允许部署较小、功能较弱的模型用于执行任务,同时保留较大、功能更强大的模型用于规划。

然后,连接代理处理来自特定任务代理的输出,生成节点之间的连接并确定界面内的初始位置。

最后,事后审阅代理根据提供给规划者的初始用户标准评估生成的工作流程,并能够在必要时提示规划者进行修订。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拉达曼迪斯II

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值