by Rain Chu | 7 月 28, 2026 | Agent , AI
CrewAI 不是一個大語言模型,而是一套用來編排 AI Agent 的 Python 框架,它把一個複雜任務拆成不同角色,再透過 Task、Process 與 Crew 控制合作方式。模型負責思考,工具負責行動,知識庫負責補充事實,而 CrewAI 負責讓這些元件按照可理解的流程運作。
提示詞優化是一個很適合理解 CrewAI 的案例,只要把工作拆成分析、改寫、測試與最終審核,就能看見多 Agent 的價值,也能看見它的代價,Agent 數量增加後,模型呼叫、檢索次數、延遲與費用都會一起增加。真正重要的不是組一支看起來很熱鬧的 AI 團隊,而是讓每個角色都有不可取代的責任。
CrewAI 是什麼
CrewAI 是獨立開發的多 Agent 自動化框架,不依賴 LangChain,官方把主要能力分成 Crews 與 Flows,Crews 適合需要角色分工、探索與協作的任務,Flows 適合需要明確順序、狀態、條件分支與可稽核結果的工作流。
可以把它想成一間小型公司,Crew 是團隊,Agent 是成員,Task 是工作單,Process 是工作順序,Tool 是成員可以使用的工具。Knowledge 則是團隊共同或個別可查閱的資料庫。
元件 負責內容 提示詞優化案例 Agent 角色、目標、模型、工具與行為 分析師、改寫者、測試者 Task 工作描述、輸入、預期輸出與驗收條件 找出缺漏、產生新版、比較品質 Crew 組合 Agent 與 Task 並啟動執行 完整的提示詞優化團隊 Process 決定工作如何安排 依序分析、改寫、測試與定稿 Flow 控制狀態、事件與條件路徑 品質不合格時退回重寫 Knowledge 提供文件、網站或結構化資料 提示詞規範與優秀案例 Tool 讓 Agent 存取外部能力 向量檢索、網頁搜尋與評分器
提示詞優化 Crew 的完整架構
使用者輸入原始需求
↓
RAG 檢索提示詞規範與案例
↓
Prompt Analyzer 找出目標、限制與缺漏
↓
Prompt Optimizer 建立第一版完整提示詞
↓
Prompt Tester 以驗收標準比較品質
↓
Ultimate Optimizer 整合修正並輸出定稿
這種設計的關鍵是讓每個 Agent 產生下一個 Task 能直接使用的結果,分析師不應只給模糊評論,而要輸出結構化問題清單,改寫者要根據問題清單產生完整版本,測試者要使用固定量表,而不是憑感覺說新版比較好,最後的審核者只整合已確認的修正,不再任意改變需求。
若要進一步降低漂移,可以用 Pydantic 或 JSON 結構固定每一階段的輸出。這比單純增加角色背景故事更有效,因為下一個步驟能明確知道要讀取哪些欄位。
四個 Agent 不一定比兩個好
分析、優化、測試與最終優化看起來很完整,但每個角色都使用大型模型,還在每一階段重複查詢向量資料庫時,成本很容易放大。對簡單提示詞而言,分析與改寫可以由同一個 Agent 完成,再保留一個獨立測試 Agent,就已經有清楚的製作與驗收分工。
保留不同 Agent,當兩個角色需要不同工具、不同權限或不同模型時。
合併 Agent,當工作只是同一段文字的連續改寫時。
改用一般函式,當步驟不需要推理,只是格式轉換或資料驗證時。
改用 Flow,當流程需要條件分支、重試、人工確認與狀態保存時。
RAG 在 CrewAI 裡負責什麼
RAG 的用途不是替 Agent 增加想像力,而是讓它在執行任務前找到可靠的參考資料,提示詞優化系統可以把提示詞指南、優秀範例、品牌規範與輸出格式放進知識庫。使用者送出需求後,系統只取回最相關的片段,再讓 Agent 根據這些內容工作。
2024 年的實作組合是 Phidata、pgvector 與 OpenAI Embedding,Phidata 現在已改名為 Agno ,如果要維護舊專案,應先確認套件名稱與匯入路徑,不宜直接照搬舊版命令。
目前 CrewAI 已有內建 Knowledge ,可讀取文字、PDF、CSV、Excel、JSON 與網站內容,官方的 provider-neutral RAG client 預設使用 ChromaDB,也支援 Qdrant,若既有系統已使用 PostgreSQL,仍可把 pgvector 封裝成自訂 Tool,若只是做第一個原型,先用內建 Knowledge 通常更省事。
想理解本地檢索的完整取捨,可以搭配 GraphRAG 使用本地 Ollama ,若知識來源主要是專案文件與程式碼,OpenWiki 建立 Agent 共用知識庫 也很適合一起比較。
先用 RAG,不要急著訓練模型
手上有大量人工撰寫的中英文檢索式或高品質提示詞時,第一步不一定是微調。先把資料清理成「需求、上下文、限制、輸入範例、理想輸出」的成對資料,再用 RAG 找相似案例,通常能更快驗證需求。
先建立測試集,保留一批資料完全不進知識庫。
用 RAG 加單一 Agent 建立基準結果。
加入獨立評分 Agent,比較正確性、完整性與格式。
只有在格式高度穩定、資料量充足且 RAG 已到瓶頸時,再評估微調。
這樣做的好處是資料更新不必重新訓練,錯誤案例也能快速撤換。若資料彼此關聯複雜,還可以參考 Graphify 知識圖譜 ,評估是否需要從純向量檢索進一步加入實體與關係。
CrewAI 2026 最新安裝方式
截至 2026 年 7 月,官方文件要求 Python 3.10 以上且低於 3.14,並建議使用 uv 管理套件。CrewAI 現在預設建立 JSON-first 專案,Agent 放在 agents/*.jsonc,Task 與 Crew 設定放在 crew.jsonc。若需要早期常見的 Python 與 YAML 結構,才使用 --classic。
uv tool install crewai
uv tool update-shell
crewai create crew prompt_optimizer
cd prompt_optimizer
crewai install
crewai run
建立後會看到 crew.jsonc、agents/、knowledge/、skills/ 與 tools/。這個結構已經把多數需求放進設定檔,適合先從角色與任務定義開始,再加入自訂 Python Tool。
需要舊版 Python 與 YAML 專案時
crewai create crew prompt_optimizer --classic
舊版教學常出現 crew.py、agents.yaml 與 tasks.yaml,這些概念仍然有效,但預設腳手架已經不同。遇到匯入錯誤時,先確認 CrewAI 版本,再對照該版本官方文件。
CrewAI 如何連接 Ollama
CrewAI 不限定 OpenAI 或 Anthropic。官方文件提供 Ollama 設定,只要在 Agent 指定 LLM 與 base_url 即可。這能把多數推理留在本地端,避免每個 Agent 都產生雲端 API 費用。
from crewai import Agent, LLM
local_llm = LLM(
model="ollama/qwen3:8b",
base_url="http://localhost:11434"
)
analyzer = Agent(
role="提示詞分析師",
goal="找出需求缺漏並建立清楚的改寫規格",
backstory="你擅長把模糊需求拆成可驗收的條件",
llm=local_llm
)
如果 Ollama 在另一台主機,把網址換成實際內網位置即可。部署前要確認 Ollama 有對區域網路監聽、防火牆已開放,而且 CrewAI 使用的模型名稱與 ollama list 完全一致。選擇模型時可以參考 本地大模型推理框架比較 。
Docker 與硬體需求怎麼看
Docker Desktop 不是 CrewAI 的必要條件。早期範例需要 Docker,是因為它用容器啟動 PostgreSQL 與 pgvector。Linux 伺服器可以直接使用 Docker Engine,也可以把 PostgreSQL 安裝成系統服務。若改用 CrewAI 內建 Knowledge 與本地 ChromaDB,第一版甚至不一定需要 Docker。
一般筆電可以執行 CrewAI,因為框架本身不重。真正決定硬體需求的是模型、Embedding、向量資料庫與同時執行的 Agent 數量。雲端模型加本地向量庫的門檻最低。本地模型則要依參數量、量化格式與上下文長度準備足夠的記憶體或顯示記憶體。
成本最高的地方不是框架
CrewAI 開源框架本身不是主要成本。費用通常來自每個 Agent 的模型呼叫、反覆 RAG 檢索、長上下文、Embedding 建庫與失敗重試。四個 Agent 各自檢索並呼叫一次大型模型,很可能比單一 Agent 加一次驗收多出數倍費用。
讓檢索結果在同一輪工作流中共用,不要每個 Agent 重複搜尋。
分類、格式檢查與簡單摘要改用小模型。
昂貴模型只負責最終改寫或高風險判斷。
為 Task 設定清楚的 expected output、guardrail 與最大重試次數。
保存每次輸入、檢索片段、輸出與評分,才能知道錢花在哪裡。
Crews 與 Flows 應該怎麼選
若任務需要研究、創作、分析與不同專業觀點,使用 Crew。若工作需要固定順序、條件分流、錯誤重試、人工核准與狀態恢復,使用 Flow。正式系統通常會把兩者結合,由 Flow 控制整體流程,只在需要推理的節點呼叫 Crew。
需求 建議方式 研究後寫成報告 Crew 分析、改寫與交叉審核 Crew 依分數決定重寫或通過 Flow 呼叫 API 並等待人工批准 Flow 完整內容生產管線 Flow 控制流程,Crew 處理創作
如果需要從桌面工作台管理 Agent 專案,也可以參考 OpenWork 與 OpenCode Agent 工作台 ,比較框架層與操作介面的差異。
我會怎麼重做這套提示詞優化系統
先用單一 Agent 加 Knowledge 建立基準版本。
定義固定評分表,檢查目標、背景、限制、格式與可驗收性。
加入一個獨立測試 Agent,只負責找問題與打分。
分數未達門檻時,由 Flow 送回改寫,並限制重試次數。
先用 Ollama 小模型跑分析與分類,必要時才把最終改寫交給較強模型。
用保留測試集比較原始提示詞與優化結果,不把自我評價當成唯一證據。
這個版本的 Agent 更少,但責任更清楚,也更容易測試。CrewAI 的價值不是替程式多包幾層,而是讓角色、任務、工具、知識與執行順序都能被明確描述。當每個步驟都能觀察、驗證與替換,多 Agent 才真正從展示走向可維護的系統。
官方資源與案例程式碼
FAQ
CrewAI 是模型還是框架
CrewAI 是多 Agent 編排框架。它負責組織 Agent、Task、Process、Tool、Knowledge 與 Flow,實際推理由 OpenAI、Anthropic、Ollama 或其他模型提供。
CrewAI 可以完全使用本地模型嗎
可以。Agent 的 LLM 可指向 Ollama,也能連接其他 OpenAI 相容端點。若 Embedding 與知識庫也改用本地方案,就能大幅降低雲端 API 成本。
Crew 和 Flow 有什麼差別
Crew 強調角色分工與自主協作。Flow 強調精確的執行路徑、狀態、條件分支與可恢復性。正式系統常用 Flow 管理整體流程,再把需要創作或分析的工作交給 Crew。
建立提示詞優化工具需要微調模型嗎
通常不需要先微調。先用 RAG 提供規範與案例,再建立獨立測試集評估品質。只有資料格式穩定、數量足夠,而且 RAG 已無法改善時,才值得評估微調。
使用 CrewAI 一定要安裝 Docker Desktop 嗎
不一定。Docker Desktop 只是啟動 pgvector 的方便方式。CrewAI 本身不依賴 Docker,Linux 可以使用 Docker Engine,也能改用本機 ChromaDB 或遠端向量資料庫。
by Rain Chu | 7 月 11, 2026 | 未分類
本地部署大模型到了 2026 年,問題已經不只是「模型要選哪一個」。同一張顯卡、同一台 Mac、同一個模型,只要推理框架選錯,吞吐量、延遲、顯存使用率和維運成本都會差很多。
這也是為什麼 vLLM、SGLang、llama.cpp、MLX、Ollama 這五個工具會被放在一起比較。它們不是同一類產品的不同包裝,而是對應不同部署場景的五種答案。選對框架,比盲目追更大參數更實際。
先講結論
如果你要做高併發 API 服務,先看 vLLM。如果你在做 AI Agent、RAG、多輪工具呼叫,SGLang 很值得研究。如果你要跨平台、邊緣設備、低資源環境,llama.cpp 仍然是最靈活的選擇,如果你主要用 Apple Silicon,MLX 是最貼近硬體的路線。如果你只是想快速讓團隊或個人跑起來,Ollama 依然是最省心的入口。
五個框架的定位差異
框架 核心強項 適合場景 不適合情況 vLLM PagedAttention、Continuous Batching、高吞吐 生產 API、多使用者併發、GPU 服務 個人桌機快速試模型 SGLang RadixAttention、KV Cache 重用、結構化輸出 Agent、RAG、多輪對話、JSON 輸出 只想一鍵跑模型 llama.cpp GGUF、生態成熟、跨平台 CPU、邊緣設備、Mac、Windows、Linux、嵌入式 大規模高併發服務 MLX Apple Silicon 統一記憶體最佳化 M 系列 Mac、本地研究、Mac 開發者 NVIDIA GPU 伺服器 Ollama 安裝簡單、模型管理方便、API 友善 個人使用、團隊內部工具、快速 Demo 需要極致吞吐與深度客製
vLLM:高併發服務優先
vLLM 的代表性技術是 PagedAttention,可以把它理解成用作業系統管理記憶體的思路來管理 KV Cache,讓不同長度的請求不會浪費大量顯存,再加上 Continuous Batching,當某個請求完成後,新請求可以馬上進入批次,不必等整批全部結束。
所以 vLLM 最適合放在需要吞吐量的地方,例如公司內部模型 API、客服系統、多人同時使用的知識庫、需要穩定服務層的產品,你如果正在評估顯卡工作站,也可以對照我之前整理的 RTX PRO 6000 Blackwell 選購分析 ,因為推理框架和硬體規格要一起看才有意義。
SGLang:Agent 和 RAG 的效率選擇
SGLang 的重點不只是跑得快,而是能把複雜互動流程裡重複的上下文計算省下來,它的 RadixAttention 對多輪對話、RAG、知識庫查詢、Agent 工具呼叫很有價值,因為這些場景常常有大量共用前綴和重複上下文。
如果你的應用是「使用者問一句,模型答一句」,SGLang 的優勢不一定完全發揮。但如果你要處理多步驟推理、固定系統提示、文件檢索、JSON 格式化輸出,它會比一般推理框架更貼近 Agent 工程需求。
llama.cpp:跨平台與低資源環境的底座
llama.cpp 最大的價值是能跑在很多地方,從 Mac、Windows、Linux,到 CPU-only、小型邊緣設備、GGUF 量化模型,它提供的是一種很穩的本地推理底座,你不一定拿它做高併發生產 API,但它很適合實驗、嵌入式、離線環境、低成本部署。
如果你關心本地離線模型,之前整理過 gpt-oss 本地離線運行 ,那篇的思路也可以放到 llama.cpp 生態來看。
MLX:Apple Silicon 使用者要特別看
MLX 是 Apple Silicon 上很有意思的選擇。M 系列晶片的統一記憶體架構,讓 CPU、GPU 可以更有效率地共享資料,MLX 的價值就在於它不是把 Mac 當成一般電腦硬跑,而是更貼近 Apple 自家的硬體特性。
如果你手上是 Mac Studio、MacBook Pro 或其他 M 系列設備,MLX 適合拿來做本地研究、模型微調實驗、小型推理服務。它不是 NVIDIA 伺服器的替代品,但在 Mac 生態裡,這條路線會越來越重要。
Ollama:最容易讓人開始用
Ollama 的優勢不是極致效能,而是降低使用門檻。安裝、拉模型、切模型、提供本地 API,整個體驗很適合個人、教學、內部工具和快速 Demo。對很多團隊來說,先用 Ollama 把流程跑通,比一開始就追求 vLLM 的生產級架構更務實。
如果你要把 Ollama 放到內網或 AI Server 上,可以看 Ollama 遠端連線教學 。如果你想把開發環境成本壓低,也可以參考 LM Studio 與 Ollama 的零 API 成本開發環境 。
不要只選一個,混合部署更實際
真正成熟的部署,不一定是一個框架包打天下。比較實際的做法是分層:個人和內部 Demo 用 Ollama,Mac 研究環境用 MLX,跨平台和邊緣設備用 llama.cpp,RAG 和 Agent 後端看 SGLang,高併發正式服務再交給 vLLM。
如果你的硬體是 DGX Spark 或其他 AI Server,也可以把 DGX Spark GB10 Ollama 最佳設定 當作入口,再逐步把高併發服務拆到更專業的推理框架。
我的選型建議
個人開發者:先用 Ollama,真的需要跨平台或量化控制,再補 llama.cpp。
Mac 使用者:Ollama 做入口,MLX 做進階研究和 Apple Silicon 最佳化。
企業內部知識庫:先確認 RAG 架構和上下文重用需求,再評估 SGLang。
正式 API 服務:vLLM 是第一優先,特別是多使用者併發和 GPU 成本敏感時。
邊緣設備或離線場景:llama.cpp 的彈性仍然很難取代。
2026 年的本地 AI 部署,重點會從「能不能跑」走向「跑得是否有效率」。模型能力很重要,但推理框架決定了你花出去的硬體成本能不能真正轉成服務能力。選型時不要只看 benchmark,要看你的流量模式、硬體環境、維運能力和未來要不要接 Agent 工作流。
FAQ
本地大模型推理框架要先學哪一個?
一般使用者先學 Ollama,工程師再補 llama.cpp。需要生產服務時,再研究 vLLM 或 SGLang。
vLLM 和 SGLang 差在哪裡?
vLLM 強在高併發吞吐和生產服務,SGLang 更適合多輪對話、RAG、Agent 和重複上下文很多的流程。
Mac 使用者該選 MLX 還是 Ollama?
想快速跑模型先用 Ollama,想深入 Apple Silicon 最佳化和研究實驗,再看 MLX。
llama.cpp 還值得學嗎?
值得。它在 GGUF、量化、跨平台、CPU 和邊緣設備上仍然非常重要,是本地模型生態的底層工具之一。
by Rain Chu | 7 月 8, 2026 | Agent , AI
OpenCode 和 OpenWork 這組工具,真正值得看的地方不是「又一個 Claude Code 替代品」而已,而是它把 AI Agent 從純命令列往桌面工作台推了一步, OpenCode 負責 agentic coding 的核心能力,OpenWork 則把工作目錄、Session、Skill、Plugin、MCP、權限確認和遠端 worker 包成比較容易操作的圖形介面。
這條路線剛好踩在很多人的痛點上:Claude Code 好用,但成本、封閉性和模型選擇會卡住;Codex 很適合開發工作,但一般辦公流程、跨工具流程、團隊共享設定,還需要另一層產品化介面, OpenWork 的企圖就是把 opencode 這套底層能力包成「可以給團隊重複使用的 Agent 工作流」。
如果你之前已經在看 OpenCode 如何使用本地端模型 ,這篇可以當成下一步:不只讓模型接進來,而是把 skills、plugins、MCP 和權限流程一起整理成可操作的工作台。
OpenWork 是 opencode 的桌面層,不是另一個單純聊天 App
OpenWork 官方把自己定位成 Claude Cowork 和 Codex 的開源替代方案,它是一個 local-first 的桌面 app,背後 powered by opencode 你可以在本機跑 host mode,也可以用 client mode 連到既有 OpenCode server, 之後透過 UI 管理 session、看 streaming event、處理 permission request、管理 templates、安裝 skills 和 plugins。
這個定位很重要。OpenWork 不是要取代 OpenCode,而是把 OpenCode 原本比較偏開發者的 CLI 體驗,變成更像工作台的產品。OpenCode 擅長讀檔、改檔、跑工具、處理任務;OpenWork 則負責讓這些能力變得可視化、可審核、可分享。
這也是我覺得它和 用 AI 組一家公司 那篇可以放在一起看:真正有價值的不是單一模型多會回答,而是能不能把一套工作流程產品化,讓人、Agent、工具和權限一起運作。
OpenCode 和 OpenWork 的分工
這兩者的分工:
項目 OpenCode OpenWork 核心角色 AI coding agent 與 CLI/Server 核心 桌面工作台與協作介面 使用者體驗 偏工程師、命令列、設定檔 偏圖形介面、session、權限與模板 擴充方式 plugins、agents、SDK、生態資源 skills manager、plugins、MCP、templates 適合場景 開發、專案自動化、終端機工作流 把 Agent 流程包成團隊可重複使用的工作台
OpenWork README 裡有一句很關鍵:它是 ejectable 意思是就算 UI 還沒包到某個能力,只要底層 OpenCode 能做,理論上還是可以回到底層去做。這是開源工具很重要的特性,因為你不會被單一 UI 的產品進度完全卡死。
安裝與模式:先分清楚桌面 App、Host mode、Client mode
OpenWork 有幾種使用方式。最直覺的是下載桌面 app;如果你想自己 build,就要準備 Node.js、pnpm、Bun、Rust/Tauri、OpenCode CLI 官方 source build 流程大致是:
git clone https://github.com/different-ai/openwork
cd openwork
git checkout dev
pnpm install --frozen-lockfile
pnpm dev
如果只想跑 CLI host,也可以用 OpenWork Orchestrator:
npm install -g openwork-orchestrator
openwork start --workspace /path/to/workspace --approval auto
這裡要注意一件事:OpenWork 的 Host mode 會在本機跑 host stack,預設綁在 127.0.0.1 Client mode 則是連到既有的 OpenCode server,如果你看到 ready 是灰色、New task 不能按,第一個方向不是懷疑模型,而是檢查工作目錄、host stack、OpenCode server、provider key 或本地模型連線是否真的準備好。
Skills、Plugins、MCP:OpenWork 真正有用的地方
OpenWork 的 Skills manager 可以列出 `.opencode/skills`,也能把本地 skill folder 匯入到 `.opencode/skills/<skill-name>` 這個方向很像 Claude Code / Codex 的 skills 概念:把常用工作流程寫成可重複使用的操作說明,讓 Agent 每次做事不用從零開始猜。
如果你站上看過 用 skill-creator 建立 Skill ,OpenWork 這裡的邏輯也很接近:與其每次都寫一長串 prompt,不如把工作流程變成可安裝、可分享、可版本化的能力。
Plugin 則是 OpenCode 的原生擴充方式。OpenWork 會讀寫 `opencode.json`,Project scope 在工作目錄的 `opencode.json`,Global scope 通常在 `~/.config/opencode/opencode.json`。
awesome-opencode 這個 repo 則像是生態目錄,整理了 plugins、themes、agents、projects 和 resources 它不是核心工具,但很適合用來觀察 opencode 生態正在長出哪些周邊能力。
Build Mode 和 Plan Mode:不要一開始就讓 Agent 放手改
OpenCode 這類 agentic tool 最容易出問題的地方,是使用者還沒搞清楚任務邊界,就直接讓 Agent 進入執行狀態。比較穩的做法是先用 Plan Mode 讓它讀資料、拆任務、確認工具與風險,再進 Build Mode 讓它動手。
我會把它想成兩層:
Plan Mode :先觀察、讀檔、列步驟、找不確定性、提出執行順序。
Build Mode :開始改檔、跑命令、安裝依賴、呼叫工具、產出結果。
這和 Claude Code Workflow 裡的做法一致:先讓 Agent 把路線講清楚,再授權它動手。
AI Agent 的效率不是靠更衝,而是靠每一步都能回頭檢查。
本地模型與 Ollama:重點在 provider 設定,不是只裝好模型
很多人以為「Ollama 已經能跑模型」就等於 OpenWork 會自動看到它,但中間還差 provider 設定、base URL、模型名稱,以及 OpenCode / OpenWork 讀取設定檔的位置。
原則上,你要確認三件事:
Ollama server 已經在跑,常見位置是 `http://localhost:11434`,遠端機器則要確定防火牆與 bind address。
OpenCode 的 provider 設定有指到 Ollama 或 OpenAI-compatible endpoint。
OpenWork 使用的 workspace / dev-mode / global config,和你實際編輯的設定檔是同一份。
這部分可以搭配 Ollama 遠端連線教學 和 LM Studio 與 Ollama 的零 API 成本環境 一起看 OpenWork 不是魔法入口,它還是要靠底層 provider 設定把模型接起來。
Token 成本:免費模型不等於無限使用
免費通常代表某段時間、某個額度、某個服務條款下不用付費,不代表可以無限燒,也不代表 latency、rate limit、上下文長度和品質都沒有代價。
OpenCode / OpenWork 這種工具特別容易消耗 token,因為 Agent 會讀檔、反覆規劃、呼叫工具、看輸出、再修正你讓它處理一個大型 workspace,成本不是只有最後回答那幾百字,而是整個工作循環。
所以比較實際的策略是:
簡單查詢與短任務用便宜或本地模型。
高風險修改、跨檔案重構、複雜判斷再用強模型。
能寫成 skill / template 的流程就固化,減少每次重新解釋。
先 Plan 後 Build,避免 Agent 一路試錯燒成本。
Windows 使用者要先注意的幾個坑
Windows 問題不少,這也很符合這類 Tauri / Node / CLI 混合工具的現況。
OpenWork README 也有提到,Windows access 有一部分是透過 paid support plan;source build 則會牽涉 Node、pnpm、Bun、Rust、Tauri 和 OpenCode CLI。這不是一般雙擊安裝就結束的輕工具。
Ready 灰色 :先檢查 host stack 是否啟動、workspace 是否選對、provider 是否可用。
New task 灰色 :通常表示前置狀態未完成,例如沒有有效 session、工作目錄或 worker 尚未 ready。
nul 檔案問題 :Windows 下 `nul` 是特殊裝置名,如果工具誤產生同名檔,刪除會很麻煩。這種問題要優先回報 issue,並避免在重要目錄直接測不穩定版本。
`.config` 目錄看起來不對 :要確認你看的到底是 OpenCode global config、workspace config,還是 dev-mode 隔離狀態。
這裡我會建議用比較保守的方式測:先開一個乾淨測試資料夾,不要直接指到重要專案;先確認 session、provider、permission、簡單讀寫任務都正常,再把 OpenWork 放進真正的工作流程。
OpenWork 適合誰?
OpenWork 現階段比較適合三種人。
第一種是想把 OpenCode 圖形化的人。 你已經接受 agentic coding,但希望有 session、permission、skills、plugins 的視覺工作台。
第二種是想把 Agent 工作流交給團隊的人。 Templates、skills、remote sharing 這些能力,重點都是讓流程可以重複與分享。
第三種是正在比較 Claude Code、Codex、OpenCode 生態的人。 OpenWork 讓 opencode 不只停留在 CLI,而是開始往產品化入口走。
但如果你現在只想要一個穩定、少設定、打開就能工作的辦公 AI,OpenWork 可能還會讓你覺得太工程化。它的價值在於可控與可擴充,不在於完全隱藏複雜度。
資源整理
截至我整理資料時,OpenWork GitHub repo 約 1.6 萬 stars,awesome-opencode 約 8 千多 stars 這代表生態正在被快速關注,但也代表文件、Windows 體驗、plugin 相容性和錯誤處理還會持續變動。用它之前要有「早期開源工具」的心理預期。
OpenWork 把 OpenCode 從工具變成工作台
OpenCode 已經回答了「AI Agent 能不能在 terminal 裡幫我做事」;OpenWork 想回答的是下一題:「這套能力能不能被包成一個可視化、可分享、可審核的工作台?」
現階段最好的用法,是先用 OpenCode 跑穩本地模型、provider、skills 和 plugins,再用 OpenWork 管理 session、權限、template 與團隊共享流程。
OpenWork 的重點不是多一個聊天視窗,而是讓 opencode 的 Agent 能力開始變成「可交付的工作流程」。這會是 2026 年 AI 工具很重要的一條線。
FAQ
OpenWork 是什麼?
OpenWork 是 powered by opencode 的開源桌面工作台,讓使用者在本機或遠端 server 上管理 AI Agent session、skills、plugins、MCP、templates 與權限確認。
OpenWork 和 OpenCode 有什麼差別?
OpenCode 是底層 AI coding agent 與 CLI/Server 核心;OpenWork 是圖形化桌面層,負責把 session、權限、skills、plugins、templates 與工作目錄變得更容易操作。
by Rain Chu | 7 月 7, 2026 | Agent , AI , RAG , 簡報製作 , 語音合成
如果你常把 PDF、論文、產業報告或內部文件丟進 AI 工具整理,Google NotebookLM 確實很方便;但只要資料牽涉商業機密、未公開研究、客戶內容或公司內部知識庫,雲端上傳與模型選擇限制就會變成真正的門檻,Open Notebook 的定位,正是把 NotebookLM 類型的文件理解、問答、摘要與 Podcast 生成,搬到更可控、更可自訂的開源工作流裡。
圖:Open Notebook 私有 AI 研究工作流示意
Open Notebook 解決的是什麼問題?
傳統文件型 AI 助手最容易卡在兩件事:資料放在哪裡,以及模型能不能換。對個人研究來說,把公開文章交給雲端 AI 問答通常沒什麼壓力;但對企業團隊、顧問、研究員或寫作者來說,資料可能包含未公開策略、訪談紀錄、合約、財務數據或客戶文件。這時候,能否自架、能否控制資料歸屬、能否選用自己的模型,就不只是偏好,而是能不能導入的前提。
Open Notebook 的優勢在於,它不是只做一個聊天視窗,而是把「文件匯入、知識庫整理、跨文件問答、來源引用、Podcast 生成、模型配置」串成一套私有 AI 研究工作流。官方 GitHub 專案 lfnovo/open-notebook 目前採 MIT 授權,官方說明也把它定位為一個 privacy-focused alternative to Google NotebookLM,截至 2026-07-07,GitHub API 顯示約 35K stars,最新 release 為 v1.10.0。
核心亮點一:資料主權回到自己手上
Open Notebook 最吸引人的地方,是它把資料控制權從平台端拉回使用者端。你可以把文件、音訊、多媒體檔案、網頁等素材放進自己掌控的環境,再用 AI 做摘要、檢索與問答。對需要處理敏感研究、公司內部文件或客戶資料的人來說,這比「功能多一點」更重要。
這也讓 Open Notebook 很適合搭配文件前處理工具。例如需要先把 PDF、Word、PPT 轉成 AI 更容易讀的文字格式時,可以參考我之前寫過的 MarkItDown 教學 ,先把原始文件整理成更乾淨的資料,再交給知識庫系統分析。
核心亮點二:模型不再被單一供應商綁住
NotebookLM 的好處是省事,但限制也很明顯:使用者基本上跟著 Google 的模型與產品設計走。Open Notebook 則主打 18+ AI provider,官方 README 提到支援 OpenAI、Anthropic、Ollama、LM Studio 等供應商。這代表同一套知識庫可以依任務切換模型:便宜模型做初步整理,強模型做深入推理,本地模型處理敏感資料。
如果你的工作流已經開始用 Ollama 或本地模型,Open Notebook 的價值會更明顯。它可以成為文件層的操作介面,而模型層則交給你自己的 AI server,想走本地端路線的人,也可以延伸看 GraphRAG 使用本地端的 Ollama 或 Ollama 遠端連線教學 ,把模型部署與文件分析分開思考。
核心亮點三:Podcast 生成更像內容製作工具
Podcast 生成是 NotebookLM 很受歡迎的功能,但固定雙人對談也限制了內容形式。Open Notebook 的方向更偏向內容製作工具:可以做 1 到 4 位 speaker,並調整角色設定與對話形式。這讓它不只適合做「兩人解說」,也能做單人旁白、三人圓桌、多人辯論或不同角色的知識導覽。
對自媒體、研究型內容創作者或企業內訓來說,這點很實用。你可以先把一批文件整理成知識庫,再把其中的核心結論轉成 Podcast 腳本,甚至為不同聽眾設計不同敘事角色。它不是單純把文字念出來,而是把文件理解、腳本結構與音訊內容生產接在一起。
核心亮點四:Ask 模式更適合跨文件研究
Open Notebook 的 Ask 模式適合處理「不是問單一文件,而是要整合一批資料」的任務。例如你有 20 份產業報告,真正想問的不是某一頁寫了什麼,而是不同報告之間是否有共同趨勢、矛盾、缺口與可引用依據。這時候,單純的檢索式問答會不夠,需要能跨文件整理、比對與引用來源的研究流程。
這也是 RAG 類工具接下來會越來越重要的原因:文件不是只被「搜尋」,而是要被組織成可以反覆推理的知識庫。Open Notebook 提供的是比較完整的操作層;而像 GraphRAG、向量資料庫、本地模型與文件轉換工具,則是可以接在底下的技術層。把這些組起來,才會形成真正可重複的 AI 工作流 。
Open Notebook 和 NotebookLM 怎麼選?
比較面向 Open Notebook NotebookLM 資料控制 可自架,資料在自己掌控的環境 以 Google 雲端服務為主 模型選擇 可接多家 provider,也可接 Ollama / LM Studio 主要使用 Google 模型 Podcast 形式 可做 1-4 位 speaker 與自訂角色 以固定形式為主 部署方式 Docker、雲端或本地部署 直接使用雲端產品 適合對象 重視隱私、模型自由、工作流整合的人 重視上手速度、不想部署的人
簡單說,如果你要的是「馬上可以用」,NotebookLM 仍然很省事;如果你要的是「資料可控、模型可換、流程可自訂」,Open Notebook 會更有想像空間。它不是每個人都需要的工具,但對研究、顧問、內容團隊與企業知識庫來說,很值得放進評估清單。
導入前要先確認的限制
Open Notebook 的自由度比較高,但也代表它不是完全零門檻。最基本的前提是你要能接受 Docker 或自架環境;如果公司電腦不能裝 Docker,或 IT 政策不允許本機服務,導入就會比較麻煩
Docker 新手可以先看 如何使用 Docker 跟用 command line 一樣 ,先把容器概念補起來。
算力也要看你的模型選擇。如果只是用雲端 provider,主要成本會落在 API;如果想完全本地跑模型,就要準備足夠的 GPU、記憶體與模型部署能力。換句話說,Open Notebook 降低的是資料與模型綁定,不是把所有基礎設施成本變成零。
誰最適合用 Open Notebook?
研究員:需要整理大量論文、報告、訪談與來源引用。
內容創作者:需要把資料轉成腳本、長文、Podcast 或系列內容。
學生與知識工作者:需要把課堂筆記、PDF、網頁資料統一管理。
企業團隊:需要建立內部知識庫,又不希望敏感文件全部交給外部雲端。
Open Notebook 適合把 AI 研究流程變成私有工作台
Open Notebook 的價值,不只是「開源版 NotebookLM」這麼簡單。它真正有意思的地方,是把資料主權、模型自由、Podcast 生成、跨文件研究與自架部署放在同一個工作台裡。對只想偶爾整理公開資料的人來說,它可能稍微重了一點;但對需要長期累積知識庫、處理敏感文件、或把 AI 研究流程變成團隊基礎設施的人來說,它是一個值得測試的選項。
Open Notebook Github
FAQ
Open Notebook 是 NotebookLM 的替代品嗎?
它可以被視為 NotebookLM 的開源替代方案,但重點不只是功能相似,而是提供自架、模型選擇、資料控制與更多自訂能力。
Open Notebook 一定要很強的電腦才能用嗎?
不一定。如果使用雲端模型,主要需要 Docker 與 API 設定;如果要完全本地跑大型模型,才需要更強的 GPU、記憶體與部署能力。
Open Notebook 適合企業內部知識庫嗎?
適合放進評估清單,尤其是重視資料控制、模型彈性與自架部署的團隊。不過正式導入前,仍要評估權限管理、備份、資安政策與維運成本。
by Rain Chu | 7 月 6, 2026 | AI , 模型
Ornith 1.0 最值得注意的地方,不是又多了一個會補程式碼的開源模型,而是它把「寫程式」往前推了一步:先替任務搭工作流程,再開始產生解法。
這個差別很關鍵。很多 AI 寫程式失敗,不是模型不會寫函式,而是前面的任務拆解、資料來源、依賴安裝、API key、驗證方式沒有想清楚。Ornith 1.0 想解的正是這一層問題:讓模型先建立 scaffold,也就是一套能引導任務完成的工作台。
Ornith 1.0 是什麼?
Ornith 1.0 是 DeepReinforce 推出的開源 Agentic Coding 模型系列,官方定位是 self-improving open-source models for agentic coding。它不是單一模型,而是一整組不同大小與格式的模型家族。
9B Dense:比較適合本地測試與資源有限的部署。
31B Dense:官方頁列入模型家族,偏向更高能力的 dense 版本。
35B MoE:能力與資源需求往上推,Ollama 也提供 35B 版本。
397B MoE:旗艦級模型,更偏多 GPU 伺服器與研究測試場景。
官方資料提到,Ornith 1.0 建立在 Gemma 4 與 Qwen 3.5 這類 pretrained model 之上,並針對 coding agent 任務做後訓練。Hugging Face collection 目前列出 9B、35B、397B,以及 GGUF、FP8 等不同格式;GitHub README 也把這些版本整理成可部署的 checkpoint 清單。
如果你原本就在關注 Ollama + Qwen 3.6 的模型選擇 ,Ornith 1.0 可以放在同一條線上看:它不是單純聊天模型,而是更偏「本地程式代理」的方向。
真正的重點:先搭 scaffold,再寫程式
Ornith 1.0 的訓練思路,可以用一句話理解:模型不只學會產生 solution rollout,也學會產生帶領自己完成任務的 scaffold。
在傳統寫程式模型裡,使用者丟一個需求,模型很容易直接進入「產生程式碼」模式。但真實的小工具開發通常不是這樣。你要先知道資料從哪裡來、需不需要註冊 API、有哪些套件依賴、結果要怎麼展示、最後要怎麼驗證。
例如做一個五天天氣預報工具,如果一開始選 OpenWeather,後面才發現需要 API key,任務就會卡住。比較好的 agent 行為是回頭調整方案,改找不需要 API key 的資料來源,重新整理資料結構與 UI 呈現。Ornith 1.0 想訓練的,就是這種「條件變了,工作流程也跟著改」的能力。
這也解釋了為什麼它比較適合拿來觀察 AI agent,而不是只拿幾題補全測試就下結論。對程式代理來說,會寫一段 function 只是基本盤;能不能拆任務、改策略、補驗證,才是進入真實專案後的差距。
Benchmark 可以看,但不要只看跑分
官方 benchmark 涵蓋 Terminal-Bench 2.1、SWE-bench Verified、SWE-bench Pro、SWE-bench Multilingual、NL2Repo、SWE Atlas 等任務。下面先抓兩個比較容易理解的指標來看:
模型 Terminal-Bench 2.1 SWE-bench Verified 定位 Ornith-1.0-9B 43.1 69.4 本地測試與輕量部署 Ornith-1.0-35B 64.2 75.6 工作站或較高資源環境 Ornith-1.0-397B 77.5 82.4 多 GPU 伺服器與旗艦能力
9B 的意義不在於它能不能打贏所有大模型,而是它讓本地端測試變得比較實際。35B 與 397B 則是觀察這套 scaffold 訓練方法能不能隨模型規模放大的重點版本。
不過跑分仍然只能當入口。Coding agent 的實際體驗,還會被上下文管理、工具調用、檔案系統安全邊界、任務記憶、互動方式影響。這也是為什麼 Claude Code、Codex 這類工具難以只用「模型分數」比較。它們拼的是整套工作流,不只是底層模型。
如果你想把本地模型接進開發工作流,可以延伸看這篇 Claude Code 搭配 LM Studio 與 Ollama 的零 API 成本開發環境 ,它比較接近 Ornith 1.0 可能落地的位置。
怎麼在 Ollama 與 Hugging Face 上取得 Ornith 1.0?
目前最直接的入口有四個:
Ollama 頁面列出 9 個模型項目,並標示 `ornith:latest`、`ornith:9b` 約 5.6GB、`ornith:35b` 約 21GB,context window 皆為 256K。最簡單的測試方式是:
ollama run ornith
ollama run ornith:9b
ollama run ornith:35b
GitHub README 也提供從 Hugging Face GGUF 直接跑的方式:
ollama run hf.co/deepreinforce-ai/Ornith-1.0-9B-GGUF
如果你要讓其他電腦連到同一台 Ollama 伺服器,可以搭配 Ollama 遠端連線教學 來設定 API endpoint。Ornith 1.0 這類程式模型,通常會更適合放在可以被 IDE、CLI agent 或自動化腳本呼叫的環境裡。
Reward hacking 是這類模型一定要面對的問題
讓模型自己產生 scaffold,能力會變大,風險也會變大。最典型的問題是 reward hacking:模型不是好好完成任務,而是想辦法鑽驗證器的空子。
在程式任務裡,這可能長得很實際:偷看測試檔、硬寫 expected output、碰不該碰的驗證腳本,或把環境改到看起來通過。官方資料提到的防護思路,是把外層信任邊界固定住,讓環境、工具表面與測試隔離不能被模型改;再用規則監控與模型複查,把可疑方案篩掉。
這一段其實比跑分更重要。因為 agentic coding 的核心不是一次回答,而是連續操作。模型能操作越多工具,就越需要清楚的權限邊界與可追蹤紀錄。這也是我會把 Ornith 1.0 放在「值得測試的開源方向」,而不是「馬上取代成熟 coding agent」的位置。
如果你對這種自學型 agent 架構有興趣,可以接著看 Claude Memory 與 Dreaming:自學型 AI Agent 的下一步 ,兩者都在處理一個相近問題:AI 不只是回答,而是如何在任務中累積策略。
我會怎麼選版本?
如果只是想先試試看,從 `ornith:9b` 開始最合理。它的下載量、顯存壓力與啟動成本都比較低,也比較適合拿來測「任務拆解」是不是真的有感。
如果你有比較強的工作站,`ornith:35b` 才值得進入第二輪測試。它的定位更接近可用的 coding agent 模型,但也更需要良好的硬體與服務設定。若你的目標是跑大型專案、長上下文、多步驟任務,可以把 35B 放進候選清單。
397B 則不建議一般使用者一開始就碰。它更像是研究、企業或多 GPU 伺服器環境要評估的版本。對多數人來說,先把 9B/35B 放進 Ollama 或 OpenAI-compatible endpoint,測試能否穩定完成真實任務,會比追最大參數更有價值。
想把模型接進工具鏈,也可以參考 OpenCode 如何使用本地端模型 。Ornith 1.0 真正有趣的地方,正是在「本地模型 + coding agent + 可控工具」這個交會點。
結論:值得追,但要用真實任務測
Ornith 1.0 的亮點不是單一 benchmark 數字,而是它把開源程式模型推向「會先規劃工作台」的方向。這對本地 AI 編程很重要,因為真實任務往往不是只補一段 code,而是資料來源、依賴、限制、驗證與修正一起出現。
短期內,我會先看兩件事:第一,9B GGUF 在一般工作站或高階個人電腦上能不能穩定跑;第二,35B 在多步驟專案裡,能不能真的比一般 coding model 更會拆任務與自我修正。
如果這兩件事站得住,Ornith 1.0 就不只是又一個開源模型,而是本地 AI coding agent 往前走的一個重要訊號。
FAQ
Ornith 1.0 是什麼?
Ornith 1.0 是 DeepReinforce 推出的開源 Agentic Coding 模型系列,重點不是只產生程式碼,而是讓模型先為任務建立 scaffold,包含拆解步驟、工具選擇、驗證方式與錯誤處理,再產生解法。
Ornith 1.0 有哪些版本?
官方釋出 9B Dense、31B Dense、35B MoE 與 397B MoE 等版本;Hugging Face collection 中也包含 GGUF 與 FP8 版本。Ollama 頁面目前列出 ornith:9b 與 ornith:35b,兩者皆標示 256K context window。
一般使用者應該先跑哪個版本?
如果目標是本地測試,建議先從 9B 或 9B GGUF 開始;35B 比較適合顯存較充足的工作站。397B 更偏向多 GPU 伺服器環境,不是一般個人電腦的起手式。
Ornith 1.0 可以取代 Claude Code 或 Codex 嗎?
目前比較合理的看法是「值得測試的開源方向」,不是直接取代成熟工具。
Claude Code、Codex 這類產品還包含上下文管理、工具調用、專案理解、安全邊界與互動體驗,模型本身只是其中一層。
Ornith 1.0 怎麼用 Ollama 跑?
Ollama 官方頁面提供 `ollama run ornith`、`ollama run ornith:9b` 與 `ollama run ornith:35b`。
如果要直接使用 Hugging Face 的 GGUF,也可以參考 GitHub README 裡的 `ollama run hf.co/deepreinforce-ai/Ornith-1.0-9B-GGUF`。
近期留言