modelscope/ms-agent
MS-Agent: a lightweight framework to empower agentic execution of complex tasks
MS‑Agent – 輕量且可擴展的自主 AI 代理框架
是什麼 – MS‑Agent(前稱 modelscope‑agent)是一個開源 Python 庫,讓開發者能建構、執行與自訂「代理」——由 LLM 驅動的程式,可呼叫工具、保留記憶並自主探索資料。它內建 模型呼叫協定 (MCP) 層,用於與 ModelScope 的推論服務通訊,一個遵循 Anthropic Agent-Skills 協定的 技能系統,以及一個小型的 React + FastAPI Web UI,用於互動式聊天。
核心功能(如 README 所述)
- 支援工具呼叫的多代理聊天 – 代理可透過 MCP 呼叫外部工具(搜尋、程式碼執行、影片生成等)。
- 深度研究 / 代理洞察 – 專為自主文獻或資料研究設計的工作流程,在 DeepResearch 基準測試中得分極高。
- 程式碼生成與影片生成 – 內建專案(Code Genesis, Singularity Cinema)用於產生程式碼資產與短(約 5 分鐘)影片。
- 代理技能 – 基於知識的技能系統,使用混合 FAISS + BM25 搜尋檢索相關技能,透過 LLM 進行過濾,建構相依關係 DAG,並平行執行獨立技能。
- 記憶支援 – 可透過
mem0庫啟用可選的永久記憶,讓代理在會話間記住使用者偏好。 - 多模態輸入 – 圖像、影片及其他模態可輸入給代理。
- 上下文壓縮 – 自動修剪與總結長對話歷史,以維持在 token 限制內。
- Web UI – 本地 React 路由器 + FastAPI 伺服器,透過 Server-Sent Events 流式傳輸代理回應。
- 代理中心 CLI – 用於將代理工作區與遠端 ModelScope 倉儲同步、監視變更、在不同代理格式間轉換的指令。
典型工作流程(快速入門範例)
- 從 PyPI 安裝套件(基礎版或帶
[research]擴充)。pip install ms-agent # 核心功能 pip install 'ms-agent[research]' # 深度研究功能 - 匯出 ModelScope API 金鑰(預設 LLM 後端所需)。
export MODELSCOPE_API_KEY=YOUR_KEY - 寫一個簡短的非同步腳本,建立一個帶有 MCP 設定的
LLMAgent並呼叫run():import asyncio from ms_agent import LLMAgent mcp = { "mcpServers": { "fetch": { "type": "streamable_http", "url": "https://mcp.api-inference.modelscope.net/YOUR_UUID/mcp" } } } async def main(): agent = LLMAgent(mcp_config=mcp) await agent.run('Introduce modelscope.cn') asyncio.run(main()) - 執行腳本;代理將流式回傳回應,可選地透過提供的 Web UI 查看。
擴展框架的方法
- 透過在
ms_agent/skill/下放置 Python 模組並描述它們,即可新增技能;系統將自動發現、檢索並組合它們。 - 插入自訂工具(如金融資料收集器),並透過 MCP 暴露給代理,使其在對話中呼叫。
- 更換 LLM 後端——雖然預設使用 ModelScope 的推論 API,但該庫可指向任何符合 MCP 格式的 OpenAI 相容端點。
- 安裝
mem0ai並提供 DashScope 嵌入金鑰,即可啟用記憶功能;代理將從永久向量儲存中儲存與檢索上下文。
誰可能使用它
- 建構用於文獻回顧、資料探勘或金融分析的自主代理的研究人員。
- 需要快速原型化多工具 LLM 助手(程式碼生成、影片創建、網路搜尋等)的開發者。
- 希望在保持底層架構模組化之同時,擁有自架式 UI 與代理互動的團隊。
進一步了解
- 論文: https://arxiv.org/abs/2309.00986
- 文件(英文): https://ms-agent-en.readthedocs.io
- 文件(中文): https://ms-agent.readthedocs.io/zh-cn
- MCP 演示平台: https://modelscope.cn/mcp/playground
- Discord 社群: https://discord.gg/qmTFPY9byM
TL;DR – MS‑Agent 是一個真實且持續維護的 Python 框架,用於建構自主、工具呼叫的 LLM 代理。它整合了協定層(MCP)、技能檢索/執行引擎、記憶支援、多模態輸入與輕量級 Web UI,適用於研究原型與小規模生產級助手。
相關
- Dispatch
- 專案
- 專案
- 專案
- 專案