Skip to content

Latest commit

 

History

History
282 lines (214 loc) · 10.3 KB

README-CN.md

File metadata and controls

282 lines (214 loc) · 10.3 KB

EN | CN | JP

Composio 标志 Composio 标志

测试 PyPI 下载量

面向 AI 代理的生产就绪型工具集

只需一行代码,即可为您的代理配备高质量的工具和集成,无需担心身份验证、准确性和可靠性!


✨ 社交媒体 >> Discord | Youtube | Twitter | LinkedIn

⛏️ 贡献 >> 报告错误 | 请求功能 | 参与贡献

📋 目录

🤔 为什么选择 Composio?

我们相信基于 AI 的代理/工作流是未来。 Composio 是将 AI 代理集成到最佳代理工具并用它们完成任务的最佳工具集。

插图

🔥 主要特性

  • 100+ 工具:支持各种不同类别

    • 软件:在 GitHub、Notion、Linear、Gmail、Slack、Hubspot、Salesforce 等 90 多个平台上执行任何操作。
    • 操作系统:点击任意位置、输入任何内容、复制到剪贴板等。
    • 浏览器:智能搜索、截图、MultiOn、下载、上传等。
    • 搜索:Google 搜索、Perplexity 搜索、Tavily、Exa 等。
    • 软件工程:Ngrok、数据库、Redis、Vercel、Git 等。
    • RAG:即时为任何类型的数据提供代理 RAG!
  • 框架:通过一行代码在 OpenAI、Claude、LlamaIndex、Langchain、CrewAI、Autogen、Gemini、Julep、Lyzr 等代理框架中使用工具。

  • 托管授权:支持六种不同的身份验证协议。将 Access Token、Refresh Token、OAuth、API Keys、JWT 等 抽象出来,让您专注于构建代理。

  • 准确性:由于更好的工具设计,您的工具调用的 代理准确性提高了 40%

  • 可嵌入:在应用程序后端进行白标,为所有用户和代理管理身份验证和集成,保持一致的体验。

  • 可插拔:设计为可轻松扩展其他工具、框架和身份验证协议。

🚀 Python 快速入门

1. 安装

要开始使用,请在终端中键入以下命令。

pip install composio-core

如果您想安装带有 openai 插件的 'composio' 包:pip install composio-openai

2. Composio 实战测试

让我们使用 Composio 创建一个可以为 Github 仓库点赞的 AI 代理。

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 快速入门

要在 Javascript 中开始使用 Composio SDK,请按照以下步骤操作:

1. 安装 Composio SDK

npm install composio-core

2. 配置 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");

3. 运行您的脚本

node your_script.js

这将设置 Composio SDK 并执行一个使用提供的说明创建 GitHub 问题的代理。

有关更多详细信息,请参阅 Composio SDK 文档

💡 示例

Star 历史

Star History Chart

📋 阅读我们的行为准则

作为我们开源社区的一部分,我们要求自己和其他贡献者遵守高标准的沟通。作为本项目的参与者和贡献者,您同意遵守我们的行为准则

🤗 贡献

Composio 是开源的,我们欢迎贡献。请 fork 存储库,为您的功能创建一个新分支,添加您的功能或改进,然后发送拉取请求。

在开始之前,请先阅读我们的贡献指南行为准则

🔗 链接

🛡️ 许可证

Composio 采用 Elastic 许可证 - 有关详细信息,请参阅 LICENSE 文件。

💪 感谢所有贡献者

贡献者名单