项目介绍:Council
Council 是一个开源平台,专为快速开发和稳定部署定制化生成式 AI 应用而设计。该平台利用一组称为“代理”的模块,由 Python(未来还将支持 Rust)构建。Council 扩展了大型语言模型(LLM)工具生态系统,提供高级控制和可扩展的 AI 代理监管。
主要功能
- 支持高级代理:开发可靠的代理,这些代理能够处理需要探索替代方案、创建和完成子目标以及在预算限制下评估质量的任务。
- 数据科学家的福音:这是一个 Python 库,适合本地开发环境,并与流行框架集成。
- 无缝生产部署:通过 Kubernetes 集成,实现多平台的大规模打包、部署和监控。
- 生态系统连接性:与不断增长的 AI 代理生态系统相连,支持与 LangChain、LlamaIndex 及主要 AI 模型的集成。
- 可扩展监督:内置工具,管理、版本管理、监控、评估和控制已部署的代理。
核心概念
代理
代理封装了从提示输入到最终响应的端到端应用程序逻辑。代理可以递归嵌套在其他代理中,形成 AgentChains。
控制器
控制器根据提示和提示历史来确定用户意图,会将提示路由到注册链,并使用评估器对结果打分,决定进一步的行动。
技能
技能是接收提示或输入并返回输出的服务。技能可以包括调用公共可用语言模型 API 的一般用途任务,也可以是小型本地模型或特定应用的接口。
链
链是可理解为技能的有向图,提供单一入口供控制器执行。用户可以自定义链或重复使用现有的实现。
评估器
评估器负责在运行时评估多个技能或链的质量,可根据实施方式扩展标准评估器以实现所需的自定义行为。
过滤器
过滤器负责筛选返回给控制器的响应。
状态管理
Council 提供原生对象,以便管理代理、链和技能的上下文,可以轻松跟踪消息历史和中间结果。
快速入门
安装
可以通过以下方式安装 Council:
- (推荐)使用 pip 安装:
pip install council-ai
- 通过 Git 引用安装:
pip install git+https://github.com/chain-ml/council.git@<branch_name>
- 从本地副本安装,需先克隆仓库并在本地项目根目录运行:
pip install -e git+https://github.com/chain-ml/council.git@<branch_name>
可以通过运行 pip uninstall council-ai
卸载。
使用
用户可以通过简单的步骤开始使用 Council,比如导入 Council 模块,设置 API 密钥,然后创建技能和链,最后配置控制器、评估器等组件,完成设置后即可调用代理。
支持与社区
如需帮助可以提交 GitHub 问题,或者通过 Discord 和开发团队联系。欢迎加入我们活跃的社区,与核心开发团队以及其他用户互动。Council 项目欢迎所有形式的贡献,包括拉取请求、功能请求或问题报告。