零號特工
個人有機人工智慧框架
- 零號代理不是預先定義的代理框架。它被設計為動態的、有機成長的,並且在使用過程中不斷學習。
- 零號代理是完全透明、可讀、可理解、可自訂和互動的。
- 零號代理程式使用計算機作為完成其(您的)任務的工具。
現在具有響應式 UI、自動記憶和反射:
關鍵概念
- 通用助理
- 零號代理程式並未針對特定任務進行預先編程(但可以)。它旨在成為通用個人助理。給它一個任務,它會收集訊息,執行命令和程式碼,與其他代理實例合作,並盡力完成任務。
- 它具有持久性記憶,可以記住先前的解決方案、程式碼、事實、指示等,以便將來更快、更可靠地解決任務。
- 計算機作為工具
- 零號代理程式使用作業系統作為完成其任務的工具。它沒有預先編程的單一用途工具。相反,它可以編寫自己的程式碼並根據需要使用終端創建和使用自己的工具。
- 其武器庫中唯一的預設工具是在線搜索、內存功能、通訊(與用戶和其他代理)以及代碼/終端執行。其他一切都是由代理本身創建或可以由用戶擴展。
- 工具使用功能從頭開始開發,即使對於非常小的模型,也是最相容和可靠的。
- 預設工具:零號代理包括知識、網頁內容、程式碼執行和通訊等工具。
- 建立自訂工具:透過建立您自己的自訂工具來擴充 Agent Zero 的功能。
- 儀器:儀器是一種新型工具,可讓您建立可由零號代理程式呼叫的自訂函數和流程。
- 多代理商合作
- 每個代理都有一個高級代理為其分配任務和指示。然後每個特工向上級報告。
- 對於鏈中的第一個代理(代理 0),上級是人類用戶;代理人認為沒有什麼差別。
- 每個智能體都可以創建其下級智能體來幫助分解和解決子任務。這有助於所有代理商保持其環境乾淨且專注。
- 完全可自訂和可擴展
- 該框架中幾乎沒有任何內容是硬編碼的。沒有什麼是隱藏的。一切都可以由用戶擴展或更改。
- 整個行為由提示/default/agent.system.md檔案中的系統提示符號定義。改變這個提示並顯著改變框架。
- 該框架不以任何方式指導或限制代理。代理無需遵循硬編碼的規則。
- 每個提示、在其通訊循環中發送到代理程式的每個小訊息範本都可以在提示/資料夾中找到並進行更改。
- 每個預設工具都可以在python/tools/資料夾中找到,並可以更改或複製以建立新的預定義工具。
- 當然,它是開源的(除了像 Perplexity 這樣的一些工具,但將來也會被開源替代品取代)。
- 溝通是關鍵
- 給您的代理人適當的系統提示和說明,它可以創造奇蹟。
- 座席可以與上司和下級溝通,提出問題、發出指示、提供指導。在系統提示中指導您的客服人員如何有效溝通。
- 終端介面是即時串流互動的。您可以隨時停下來進行幹預。如果您發現您的代理商走錯了方向,請立即停下來並告訴它。
- 這個框架有很大的自由度。您可以指示您的代理定期向上級匯報,請求允許繼續。您可以指導他們在決定何時委派子任務時使用評分系統。上級可以複審下級的結果和爭議。可能性是無限的。
不錯的功能
- 輸出非常乾淨、色彩豐富、可讀且具有互動性;沒有什麼是隱藏的。
- 您在終端機中看到的相同彩色輸出會自動儲存到每個會話的logs/資料夾中的HTML檔案中。
- 代理輸出是即時串流的,允許用戶隨時閱讀和乾預。
- 不需要編碼,只需要提示和溝通技巧。
- 憑藉可靠的系統提示,即使是小型模型,該框架也很可靠,包括精確的工具使用。
記住
零號特工可能很危險!透過正確的指導,零號代理可以做很多事情,甚至對您的電腦、資料或帳戶有潛在的危險。始終在隔離環境(例如內建的 docker 容器)中執行 Agent Zero,並注意您的願望。
零號特工沒有預先編程;它是基於提示的。整個框架僅包含最少量的程式碼,並且不以任何方式指導代理程式。一切都在prompts/資料夾中的系統提示符號。在這裡您可以根據您的需求重寫整個框架行為。如果您的代理商無法正確溝通,請使用工具、推理、使用記憶、尋找答案 - 只是更好地指導它。
如果您無法提供理想的環境,請告知您的代理商。零號代理程式旨在在隔離的虛擬環境中使用(為了安全),並預先安裝和配置了一些工具。如果您無法提供所有必要的條件或 API 金鑰,只需更改系統提示並告訴您的代理程式可以使用哪些作業系統和工具。沒有什麼是硬編碼的;如果您不告訴您的代理某個工具,它就不會知道並且不會嘗試使用它。
已知問題
- 系統提示很爛。你可以做得更好。如果你這樣做,請幫助我:)
- Docker 容器中的代理程式和終端之間透過 SSH 進行的通訊有時會中斷並停止產生輸出。有時是因為代理程式運行了類似「server.serve_forever()」的東西,導致終端掛起,有時會發生隨機錯誤。重新啟動代理程式和/或 docker 容器會有所幫助。
- 代理可以破壞他的作業系統。有時,代理可以停用虛擬環境、卸載軟體包、更改配置等。
理想的環境
- Docker 容器:運行 Agent Zero 的完美環境是內建的 Docker 容器。代理程式可以自行下載映像frdel/agent-zero-exe並啟動容器,您只需要執行 docker(如 Docker 桌面應用程式)。
- Python :系統上必須安裝Python才能運行該框架。
- 網路存取:代理需要存取互聯網才能使用其線上知識工具並執行需要連接的命令和腳本。如果您不需要代理在線,您可以在提示/資料夾中更改其提示並將其完全本地化。
設定
有關 Windows、macOS 和 Linux 的詳細設定指南(帶有影片)可以在本頁的新代理零文件中找到。
查閱文檔
該文件深入介紹了該框架及其功能。如果您是零號特工的新手,那麼這是一個很好的起點。按一下此處查看文件。
即將推出
- 預先安裝的二進位檔案和捆綁器腳本
- 知識工具開源與網頁抓取工具
- 使用者互動改進
- 上下文可切換的法學碩士
變更日誌 [自版本 0.7 起]
v0.7.1
- 持久聊天- 序列化到 /tmp/chats 並在啟動時自動載入到 run_ui.py 中
- 文檔堆疊合併到儲存庫中
- 錯誤修復
v0.7
- 自動記憶
- 使用者介面改進
- 儀器儀表
- 擴展框架
- 反思提示
- 錯誤修正
筆記
自 v0.6 以來啟動檔案的變更:
- main.py 檔案已替換為 run_ui.py (webui) 和 run_cli.py (terminal) 啟動檔案。
- Webui 和終端啟動檔案的設定已移至initialize.py。