
Composio:AI 开发利器,集成 100+ 工具,简化智能体构建
Composio 是一个 AI 智能体开发工具,集成了超过 100 种工具,简化开发和部署。支持一行代码调用多种工具和框架,适用于多种编程语言和场景。
·
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
微信公众号|搜一搜:蚝油菜花
🚀 快速阅读
- Composio 是一个 AI 智能体开发辅助工具,提供 100+集成工具,简化了 AI Agent 的开发和部署。
- 支持开发者通过一行代码调用多种工具和框架,如 OpenAI 和 Claude、LlamaIndex 等。
- Composio 支持多种编程语言,提供丰富的 API 和插件系统,多种身份验证协议,适用于多种场景。
正文(附运行示例)
Composio 是什么
Composio 是一个帮助开发者创建 AI 智能体的工具。它集成了超过 100 种工具,让 AI 智能体的开发和部署变得更简单。开发者只需写一行代码,就能调用像 OpenAI、Claude、LlamaIndex 这样的工具和框架。Composio 支持多种编程语言,提供丰富的 API 和插件系统,还支持多种身份验证协议。它的目标是提升 AI 助手的实用性和互动性,适用于自动化软件开发、内容管理、数据管理等多种场景,帮助开发者高效构建和管理 AI 智能体。
Composio 的主要功能
- 工具和框架集成:支持超过 100 个工具,包括软件、操作系统、浏览器、搜索和软件开发工具,还能与 OpenAI、Claude、LlamaIndex 等 AI 框架集成。
- 简化开发:只需一行代码就能调用各种工具和框架,大大简化了 AI 助手的开发过程。
- 身份验证管理:支持多种身份验证协议,如 AccessToken、RefreshToken、OAuth、APIKeys、JWT 等,简化了与不同应用的集成。
- 检索增强生成(RAG):提供适用于动态数据的 RAG 功能,提升 AI 助手的信息检索能力。
- 软件集成:能在 GitHub、Notion、Linear、Gmail、Slack、Hubspot、Salesforce 等 90 多个平台上执行操作。
- 浏览器功能:提供智能搜索、截图、多标签操作、下载、上传等功能。
- 软件工程支持:包括 Ngrok、数据库、Redis、Vercel、Git 等开发工具。
- 多语言和框架支持:支持 Python 和 JavaScript 等多种编程语言和框架,易于扩展和集成。
如何运行 Composio
Python 快速入门
- 安装
pip install composio-core
如果想安装带有 openai 插件的 ‘composio’ 包:pip install composio-openai
。
- Composio 实战测试
composio add github # 连接您的 Github - 在终端中运行
from openai import OpenAI
from composio_openai import ComposioToolSet, App, Action
openai_client = OpenAI(
api_key="{{OPENAIKEY}}"
)
# 初始化 Composio 工具集
composio_tool_set = ComposioToolSet()
# 获取预配置的 GitHub 工具
actions = composio_tool_set.get_actions(
actions=[Action.GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER]
)
my_task = "Star a repo composiodev/composio on GitHub"
# 设置 openai 助手
assistant_instruction = "You are a super intelligent personal assistant"
assistant = openai_client.beta.assistants.create(
name="Personal Assistant",
instructions=assistant_instruction,
model="gpt-4-turbo",
tools=actions,
)
# 创建线程
thread = openai_client.beta.threads.create()
message = openai_client.beta.threads.messages.create(
thread_id=thread.id,
role="user",
content=my_task
)
# 使用集成执行代理
run = openai_client.beta.threads.runs.create(
thread_id=thread.id,
assistant_id=assistant.id
)
# 执行函数调用
response_after_tool_calls = composio_tool_set.wait_and_handle_assistant_tool_calls(
client=openai_client,
run=run,
thread=thread,
)
print(response_after_tool_calls)
Javascript 快速入门
- 安装 Composio SDK
npm install composio-core
- 配置 OpenAI 和 Composio 工具集
import { OpenAI } from "openai";
import { OpenAIToolSet } from "composio-core";
const toolset = new OpenAIToolSet({
apiKey: process.env.COMPOSIO_API_KEY,
});
async function setupUserConnectionIfNotExists(entityId) {
const entity = await toolset.client.getEntity(entityId);
const connection = await entity.getConnection("github");
if (!connection) {
// 如果此实体/用户尚未连接帐户
const connection = await entity.initiateConnection(appName);
console.log("通过以下方式登录: ", connection.redirectUrl);
return connection.waitUntilActive(60);
}
return connection;
}
async function executeAgent(entityName) {
const entity = await toolset.client.getEntity(entityName);
await setupUserConnectionIfNotExists(entity.id);
const tools = await toolset.get_actions(
{ actions: ["github_issues_create"] },
entity.id
);
const instruction =
"Make an issue with sample title in the repo - himanshu-dixit/custom-repo-breaking";
const client = new OpenAI({ apiKey: process.env.OPEN_AI_API_KEY });
const response = await client.chat.completions.create({
model: "gpt-4-turbo",
messages: [
{
role: "user",
content: instruction,
},
],
tools: tools,
tool_choice: "auto",
});
console.log(response.choices[0].message.tool_calls);
await toolset.handle_tool_call(response, entity.id);
}
executeAgent("your-entity-name");
- 运行您的脚本
node your_script.js
这将设置 Composio SDK 并执行一个使用提供的说明创建 GitHub 问题的代理。
有关更多详细信息,请参阅 Composio SDK 文档。
资源
- Composio 项目官网:composio.dev
- Composio GitHub 仓库:ComposioHQ/composio
- Composio 文档:docs.composio.dev
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
微信公众号|搜一搜:蚝油菜花
更多推荐
所有评论(0)