總覽
XAgent 是一個開源、實驗性的大型語言模型 (LLM) 驅動的自主代理程式,旨在無需人工干預的情況下解決各種複雜任務。它旨在成為一個通用型、超級智慧的代理程式,能夠處理任何給定的任務,並持續開發以增強其能力。
主要目的和目標使用者群
- 主要目的:提供一個自主 LLM 代理程式,可以自動解決複雜任務,為各種應用提供通用解決方案。
- 目標使用者群:對利用自主 AI 代理程式實現任務自動化、解決複雜問題以及探索 AI 前沿感興趣的開發者、研究人員和組織。這包括數據分析、軟體開發、研究以及任何需要智慧自動化的領域。
功能細節與操作
- 自主性:XAgent 可以獨立解決多樣化任務,最大限度地減少人為參與。
- 安全性:操作限制在 Docker 容器內,確保安全的執行環境。
- 可擴展性:使用者可以輕鬆添加新工具,甚至新代理程式以增強 XAgent 的能力。
- 使用者介面:提供友善的圖形使用者介面 (GUI) 和命令列介面 (CLI) 進行互動。
- 人機協作:XAgent 可以與使用者協作,對於複雜任務依照指導,並在遇到挑戰時尋求協助。
- 模組化架構:
- 調度器 (Dispatcher):動態實例化並將任務分派給不同的代理程式。
- 規劃器 (Planner):生成和完善任務計劃,將其分解為帶有里程碑的子任務。
- 執行器 (Actor):執行操作以達成目標並完成子任務,利用各種工具並與人協作。
- 工具伺服器 (ToolServer):一個基於 Docker 的伺服器,提供強大且安全的工具:
- 文件編輯器 (File Editor):用於寫入、讀取和修改文件。
- Python 筆記本 (Python Notebook):用於運行 Python 程式碼、驗證想法和繪製圖表的互動式環境。
- 網頁瀏覽器 (Web Browser):用於搜尋和訪問網頁。
- Shell:執行 Shell 命令,包括程式安裝和服務託管。
- 快速 API 整合 (Rapid API Integration):從 Rapid API (ToolBench 集合) 訪問和呼叫各種 API。
- 任務執行工作流程:
- 使用者透過 CLI 或 GUI 提交任務。
- XAgent 處理任務、生成計劃並執行操作。
- 所有生成的檔案和中間步驟都保存在本地工作區和運行記錄中。
- 記錄可以加載以重現先前的運行,敏感資訊會被移除以供安全共享。
使用者效益
- 提高效率:自動化複雜任務,節省時間和資源。
- 強化問題解決:能夠跨不同領域處理複雜問題。
- 安全操作:Docker 容器化確保安全的執行環境。
- 靈活性和客製化:易於透過新工具和代理程式擴展以滿足特定需求。
- 改進協作:促進使用者與 AI 代理程式之間的無縫互動。
- 可重現性:詳細的運行記錄便於重現和分析過去的執行。
相容性與整合
- 作業系統:ToolServer 設定需要 Docker 和 Docker Compose。
- Python 版本:需要 Python >= 3.10。
- API 金鑰:可使用 OpenAI API 金鑰進行配置 (推薦 gpt-4-32k,支援 gpt-4 和 gpt-3.5-turbo-16k)。
- Docker 整合:ToolServer 作為 Docker 容器運行,提供自給自足的環境。
- 網頁介面:透過網頁瀏覽器 (http://localhost:5173) 訪問以進行 GUI 互動。
客戶回饋與案例研究
- 資料分析:成功協助使用者進行複雜的資料分析,包括資料檢查、環境驗證、程式碼生成和報告編譯 (例如 iris.zip 分析)。
- 推薦:透過在資訊不足時主動尋求人類輸入,展示人機協作 (例如餐廳推薦)。
- 模型訓練:能夠執行訓練機器學習模型等複雜任務 (例如訓練 BERT 模型進行電影評論情感分析)。
- 評估:在超過 50 個真實世界的複雜任務中,對比 AutoGPT 進行的人類偏好評估中表現更優,這些任務分為搜尋與報告、編碼與開發、資料分析、數學和生活助理。
存取與啟用方法
- 原始碼:可在 GitHub 上獲取 (github.com/OpenBMB/XAgent)。
- ToolServer 設定:
- 拉取 Docker 映像檔:
docker compose up - 從本地原始碼建置:
docker compose build然後docker compose up
- 拉取 Docker 映像檔:
- XAgent 設定:
- 安裝要求:
pip install -r requirements.txt - 在
assets/config.yml中配置 API 金鑰。 - 運行 XAgent:
python run.py --task "put your task here" --config-file "assets/config.yml"
- 安裝要求:
- GUI 存取:啟動 XAgent-Server 容器後,訪問
http://localhost:5173。預設憑證:使用者名稱guest,密碼xagent。