Council 背后的核心理念是为开发人员提供工具来创建表现出可预测行为的复杂代理。这是通过一种强大的控制流程方法实现的,该方法利用了控制器、过滤器、评估器和预算等关键组件。这些元素协同工作,允许在代理之间自动路由、比较和评估结果,并为特定任务或子任务选择最佳结果。
Council 的主要优势之一在于它能够促进创建能够处理复杂任务的可靠代理。这些代理可以迭代需要探索多种替代方案、创建和完成子目标以及在指定预算约束下评估质量的挑战。这种复杂程度使得 Council 特别适合那些对准确性和可靠性要求极高的应用。
Council 的设计充分考虑了数据科学家的需求,提供了一个可以与 AI 生态系统中流行框架无缝集成的 Python 库。它提供了与各种 LLM 的连接,既有原生的,也有通过与 LangChain 等成熟库集成的。这种连接确保开发人员可以利用最合适的语言模型来应对其特定用例。
该框架非常重视生产准备。它旨在简化跨多个部署平台大规模打包和部署代理的过程。Council 与 Kubernetes 的集成促进了无缝生产部署,使企业环境中的 AI 应用程序能够轻松扩展和管理。
Council 的架构围绕几个关键概念构建。系统的核心是代理,它封装了从提示输入到最终响应的端到端应用程序逻辑。代理可以递归嵌套在其他代理中,从而可以创建复杂的分层 AI 系统。
控制器在理事会的运作中发挥着至关重要的作用。它们根据提示和提示历史确定用户意图,将输入路由到一个或多个注册链。控制器还利用评估器对返回的结果进行评分并确定下一步行动,包括是否需要修订。
理事会中的链是技能的有向图,这些技能位于同一位置,并为控制器公开单个执行入口点。用户可以定义自己的链或重复使用现有的实现,从而为 AI 任务的构建和执行提供灵活性。
评估器负责在运行时评估技能或链的质量。他们可以对最佳响应进行排名并选择最佳响应,或者识别符合特定质量阈值的响应。这一评估过程对于保持 AI 系统输出的可靠性和准确性至关重要。
Council 中的过滤器用于优化返回给控制器的响应,确保最终输出符合所需的条件和标准。
Council 的主要功能包括:
Council 代表了生成式 AI 应用程序开发的重要一步,提供了一个兼具灵活性、可扩展性和控制力的框架。它的开源性质和对生产就绪性的关注使其成为希望在现实环境中部署复杂 AI 系统的组织的宝贵工具。