项目简介
Bee Agent Framework 可以让您轻松使用您选择的模型构建可扩展的基于代理的工作流程。该框架旨在与IBM Granite和Llama 3.x模型一起稳健地运行,并且我们正在积极致力于优化其与其他流行的LLMs性能。
我们的目标是使开发人员能够采用最新的开源和专有模型,并对当前代理实现进行最小的更改。
主要特征
-
🤖
AI 代理
:使用我们为 Llama 3.1 精制的强大Bee 代理或构建您自己的代理。
-
🛠️
工具
:使用我们的内置工具或使用 Javascript/Python创建您自己的工具。
-
👩💻
代码解释器
:在沙箱容器中安全地运行代码。
-
💾
内存
:优化代币支出的多种策略。
-
⏸️
序列化
处理复杂的代理工作流程并轻松暂停/恢复它们而不会丢失状态。
-
🔍
可追溯性
:全面了解代理的内部工作情况,记录所有运行事件,并使用我们的MLFlow 集成来调试性能。
-
🎛️ 具有缓存和错误处理功能的
生产级
控制。
-
🔁
API
:使用兼容 OpenAI 的Assistant API和Python SDK集成您的代理。
-
🖥️
聊天 UI
:通过内置的透明度、可解释性和用户控件,在令人愉悦的 UI中为用户提供代理服务。
-
...更多关于我们的路线图
入门
提示
您想要一个包含 Bee、代码解释器和可观察性的完整设置的 TypeScript 项目吗?查看我们的Bee Framework Starter 。
安装
npm install bee-agent-framework
或者
yarn add bee-agent-framework
例子
import { BeeAgent } from "bee-agent-framework/agents/bee/agent";
import { OllamaChatLLM } from "bee-agent-framework/adapters/ollama/chat";
import { TokenMemory } from "bee-agent-framework/memory/tokenMemory";
import { DuckDuckGoSearchTool } from "bee-agent-framework/tools/search/duckDuckGoSearch";
import { OpenMeteoTool } from "bee-agent-framework/tools/weather/openMeteo";
const llm = new OllamaChatLLM();
const agent = new BeeAgent({
llm,
memory: new TokenMemory({ llm }),
tools: [new DuckDuckGoSearchTool(), new OpenMeteoTool()],
});
const response = await agent
.run({ prompt: "What's the current weather in Las Vegas?" })
.observe((emitter) => {
emitter.on("update", async ({ data, update, meta }) => {
console.log(`Agent (${update.key}) 🤖 : `, update.value);
});
});
console.log(`Agent 🤖 : `, response.result.text);
本地安装
-
克隆存储库
git clone [email protected]:i-am-bee/bee-agent-framework
。
-
安装依赖项
yarn install
。
-
创建
.env
(从
.env.template
)并填写缺失值(如果有)。
-
启动代理
yarn run start:bee
(它运行
./examples/agents/bee.ts
文件)。
➡️所有示例都可以在示例目录中找到。