Composio x Davinci Integration

1. Composio 介紹

Composio 是一個專為 AI 代理和大語言模型(LLMs)設計的創新集成平台,提供超過150個外部工具和服務的連接支持,無框架和模型限制,旨在簡化 AI 代理和 LLMs 在各種應用程式中的構建、連接與部署。它通過工具庫和身份驗證管理,支持與如 GitHub、Salesforce 等外部服務的集成,並支援10個以上流行的代理框架及所有功能調用的 LLM 供應商。Composio 還提供代碼解釋器、文件管理器、數據庫等系統工具,以幫助 AI 代理執行多樣化的任務。其優點包括減少開發時間和資源、提高可靠性以及強大的數據保護和企業級安全標準。此外,Composio 具有可擴展性,便於企業在整個組織中擴展 AI 集成,並為開發者提供了無框架和模型限制的靈活性,使其能夠使用自己偏好的工具和模型。

image-20240926-054720.png

2. 使用者操作步驟與流程

  1. 創建 Composio 帳號:進入 Composio ,進行註冊及登入。

    image-20240926-061156.png
    Composio Sign In & Login Page

  2. APP 驗證:打開命令提示字元(cmd) *若未執行此綁定步驟,後續達哥將無法協助執行 action

    1. 輸入 pip install composio_core composio_openai

    2. 輸入 composio add [APP] -e entity [ID] 進行綁定

      1. APP:請到 Composio All Tools 網頁查看

      2. ID:任意取一個代表該 APP 的某一個 Account,如:AIDE

  3. 取得 Composio API Key:進入 Composio Settings 的 API Keys 即可取得 API Key。

  4. 下載 此 zip 檔,解壓縮過後利用瀏覽器開啟 index.html 。

  5. 填入 Plugin Configuration:根據各項目填寫相關資訊,使用此 Plugin Generator 即可馬上透過 No-Code 的方式產生 Plugin。

  6. 選擇 APP:選取所需串接的 APP。

  7. 獲取 Plugin:提交後,會自動生成一個 JSON 檔,將該檔案上傳至達哥平台。

  8. 執行 後即可與達哥進行對話。

3. 開發文件

開發步驟

1. 環境準備

在進行開發前,請確保已安裝以下必要套件:

  • Flask: 作為 Web 框架,用於處理 HTTP 請求。

  • Flask-CORS: 允許跨來源資源共享(CORS)。

  • openai: 用於與 OpenAI 的 API 進行互動。

  • composio_openai: Composio 工具集套件。

安裝相關套件的指令:

pip install Flask Flask-CORS openai composio_openai

2. 基本架構

建立一個Flask應用,並透過 Flask-CORS 來允許跨來源請求。應用程序會接收 POST 請求,其中包含用戶與API Key 的資料,並根據用戶的需求使用 Composio 和 Davinci API 進行處理。

from flask import Flask, render_template, request from flask_cors import CORS app = Flask(__name__) CORS(app) if __name__ == '__main__': app.run(debug=True, port=5001)

3. 初始化與綁定服務

3.1 初始化 Composio 工具集

通過 Composio API Key 和 Entity ID 來初始化 Composio 工具集。這使我們能夠連接指定的外部應用程序,如 Gmail、Youtube、GitHub 等 。

from composio_openai import ComposioToolSet composio_toolset = ComposioToolSet(api_key=Composio_API_KEY, entity_id=Entity_ID)
3.2 綁定應用

將需要綁定的應用(如Gmail、YouTube、GitHub 等)映射到工具集。

4. 執行對話和工具調用

此程式片段會執行達哥回傳的 action (比如發送 E-mail, …)。

6. API 路由設定

此程式片段設定 Composio Plugin 可以 request 到的 API。

7. 執行應用

最後,啟動 Flask 應用來監聽 POST 請求,並根據用戶需求返回結果。

4. 結論

透過達哥平台與 Composio 的串接,我們能夠有效地將生成式 AI 能力與多個外部應用進行整合,提供更加智能化和高效的解決方案。這種集成不僅讓 AI 代理能夠利用 Composio 的豐富工具庫與多種外部服務互動,也大大簡化了開發流程,提升了 AI 應用的擴展性與靈活性。

優勢

  1. 快速集成多個應用:Composio 提供超過150個外部工具和服務的連接支持,無論是 GitHub、Gmail 等常見應用,還是企業內部系統,都能輕鬆進行綁定。

  2. 簡化開發流程:透過 Composio 的託管身份驗證系統與達哥的強大 AI 能力,開發者可以專注於核心業務邏輯,無需處理複雜的身份驗證及API管理。

  3. 高效的工具調用:AI 代理能夠根據用戶需求靈活調用所需工具,並在不同平台之間無縫執行任務,極大提升了操作的自動化和智能化程度。

  4. 靈活的應用擴展性:達哥與 Composio 的無框架和模型限制讓開發者可以自由選擇最合適的工具與框架,確保在不同情境下都能提供最佳性能。

  5. 提高業務效率:藉由 AI 代理自動化處理日常任務,企業能夠顯著降低手動操作的時間與成本,同時提升整體工作流程的效率。