跳到主要內容
CHOOSE THE RIGHT TOOL

自己做東西

寫程式、串 API、跑模型
先判斷這件事該怎麼做,再看有哪些選項。

簡單的,你可以自己做。複雜的,至少先知道該找什麼人、問什麼問題。

54 個查證過的選項 · 其中 6 個不必寫程式就能用
更多篩選:門檻、類型、特性
使用門檻
類型
再篩
這頁怎麼讀:先點上面「我要做什麼」。你會先看到這一類問題真正該先判斷什麼、 接著是幾個該問自己的問題,然後才是選項比較與具體工具。 每張卡一眼四件事——要不要錢、能不能商用、資料會不會被拿去訓練、還活著嗎。 官方沒寫清楚的一律寫「官方資料不足」,不猜、不填、不替廠商美化。 這裡沒有排行榜,也沒有「最好的工具」。 技術門檻我們會直接標示:可以自己用的,告訴你怎麼開始;需要工程能力的,也直接說。 不確定手上這件事屬於哪一類,先看 這是哪一類問題; 動手前想避開共同的坑,看 選之前先知道這幾件事。
先判斷這件事

自己做東西寫程式、串 API、跑模型

非工程師現在確實做得出可用的小工具,但要有心理準備:做出來只是開始,難的是維護。技術選擇上有兩條路:用雲端 API(快、按量計費、資料要看條款)或自己跑模型(資料不出門、要有硬體與人)。另外,用 AI 寫程式的工具幾乎都要你自備模型 API 金鑰,那筆錢是額外的。

先縮小範圍

回答 2 題就好。每一題都會直接改變下面顯示哪些選項,不會問你用不到的事。

1你要自己寫,還是先看有沒有現成的?

2這個東西會拿去商用嗎?

還有這幾題要自己回答

  1. 這個東西是給自己用,還是要給別人用?後者的維護責任完全不同。
  2. 你有沒有能力維護它?做出來只是開始,難的是三個月後還活著。
  3. 要用雲端 API 還是自己跑模型?前者快但資料要看條款,後者要有硬體與人。
  4. 資料備份與出錯處理想好了嗎?
  5. 如果你哪天沒空了,誰接手?

這幾題沒有標準答案,但答不出來就代表還不到選工具的時候。

不寫程式做出網頁應用:兩條路,差別在你的資料

兩個都能用聊天的方式做出可以跑的東西,功能上難分高下。先看條款再看功能——其中一家明文把你的資料拿去訓練它的模型。

ReplitLovable
做得出什麼瀏覽器裡寫程式與部署,內建 AI Agent前端、後端、資料庫、登入都有,程式碼可同步到自己的 GitHub
你的內容歸誰官方條款:「you retain any and all of your rights to any content you submit, post, or display」⚠️ 官方條款:你授予它 worldwide, perpetual, royalty-free 授權
⚠️ 會不會拿去訓練條款未就此單獨載明,要另外讀資料政策⚠️ 明文列在用途裡:「developing and training artificial intelligence and machine learning models」
平台本身的權利依服務條款官方載明平台與其素材的一切權利屬於 Lovable 及其授權人
什麼時候選它要一個能寫程式也能部署的環境,自己掌握較多要最快做出一整套能跑的應用,且放進去的資料不敏感

怎麼選功能不是這裡的重點,資料才是。Lovable 的條款把「開發與訓練 AI 模型」明文寫進你授權給它的用途裡,而且是 perpetual(永久)——拿它做公開的東西沒問題,放客戶資料或未公開內容進去就要先想清楚。兩家的條款都是 2026-09-18 讀的官方原文,條款會改,做決定前自己再讀一次。

靜態網站放哪裡:GitHub Pages、Cloudflare Pages 還是 Workers

三個都免費、都能自訂網域。差別不在快不快,在你的原始碼能不能私有、不存在的路徑會回什麼、以及你到底需不需要後端。

GitHub PagesCloudflare PagesCloudflare Workers(含 KV/D1)
最適合作品集、文件站、教學頁;已經在用 GitHub 的人靜態網頁與 PWA,一個指令上線需要一點後端:代理 API、藏金鑰、排程寫資料
免費方案上限站台 1 GB、每月 100 GB 頻寬(軟)、每小時 10 次建置(軟)每月 500 次建置、每站 20,000 檔、單檔 25 MiB每天 100,000 次請求、每次 CPU 10 ms;D1 每天 10 萬列寫入
原始碼私有⚠️ 免費方案只能從公開 repo 發布可以,推的是產出資料夾可以,推的是程式碼包
不存在的路徑回 404⚠️ 可能回 200+首頁,用狀態碼驗檔案會被騙你自己寫的程式決定
商用⚠️ 官方明文:不得作為商業交易或 SaaS 的免費主機官方資料不足,目前無法確認官方資料不足,目前無法確認
要注意推上公開 repo 就是公開發布,上鎖要在推之前整個資料夾部署就整個公開,開發檔先清掉執行環境不是 Node,本機綠燈不等於線上會跑

怎麼選只有靜態頁、程式碼本來就公開,GitHub Pages 最省事;原始碼想私有、或要一個指令部署,用 Cloudflare Pages,但記得它對不存在的路徑會笑著回 200;一旦要藏金鑰或排程寫資料才進到 Workers,而且先把每天的額度算一遍。本站三個都在用,作品放哪裡就是照這三個問題分的。

稜線做出來的樣子

不是廠商案例,是本站自己用這一類工具做出來、現在就能打開的作品。

第四步 · 才挑品牌

認出類型、比過同類之後,下面才是具體選項。每張卡一眼四件事—— 要不要錢、能不能商用、資料會不會被拿去訓練、還活著嗎。

你現在就能用

不必架伺服器,也不用先學程式

可以直接登入、安裝,或照著教學開始。

Replit

AI 服務

瀏覽器裡就能寫程式與部署的平台,內建 AI Agent,可以用講的把想法變成能跑的小工具。

💰 Freemium⚖️ 可商用:你保留內容權利🔒 訓練政策未查證📌 活躍(Replit 官方營運)

不適合⚠️ 放公司機密程式碼卻沒先確認資料政策(見下)、需要完全離線的環境、要長期維運的正式產品(要有人接手維護)

看完整判斷
最適合
非工程師想做出一個真的能用的小工具、不想在自己電腦裝開發環境、做原型與內部小系統
適合誰
PM、行政、老師、研發
使用門檻
需要一些技術協助技術等級 Lv.2
費用細節
官方定價:Starter 免費,含每日 Agent 額度、可發布 1 個線上專案;Core 年繳約 US$17/月,含更多 Agent 用量與 US$20 模型額度;Pro 年繳約 US$95/月,含 10 個平行 Agent 與 US$100 模型額度;Enterprise 為客製報價。
商用條款
官方原文:「Except as provided in these Terms, you retain any and all of your rights to any content you submit, post, or display on or through the Service, and you are responsible for protecting those rights.」2026-09-18 讀官方條款。
資料政策
⚠️ 官方隱私政策提到會將資料用於「改善程式碼生成等機器學習技術的準確度」,但**未明確說明使用者的程式碼或提示是否被用於訓練模型,也未載明訓練用途的退出方式**。要放機密程式碼前,建議直接向官方確認。
放在哪裡跑
SaaS
還活著嗎
維護中活躍(Replit 官方營運)
複查頻率
每 90 天下次複查 2026-12-09自動確認網址存在:2026-09-18
你需要注意
  • ⚠️ 官方政策未明確交代程式碼是否用於訓練,機密專案要先確認
  • 做出來只是開始,上線後的錯誤處理與維護仍要有人負責
  • Agent 用量按額度計費,複雜專案成本會累積

Lovable

AI 服務

用聊天的方式做出完整網頁應用(前端、後端、資料庫、登入都有),程式碼可同步到自己的 GitHub。

💰 Freemium⚖️ ⚠️ 你的資料會被拿去訓練模型🔒 訓練政策未查證📌 活躍(Lovable 官方營運)

不適合需要完全客製架構的正式產品、資料不能上雲的場合、沒有人能接手維護的長期系統

看完整判斷
最適合
非工程師要做 MVP 或內部原型、PM 想快速做出可點擊的真實原型、行銷做落地頁
適合誰
PM、行銷、顧問、研發
使用門檻
需要一些技術協助技術等級 Lv.2
費用細節
官方說明免費方案每日 5 個 build credits(每月最多 30)、每月 20 個雲端託管額度;另有 Pro 與 Business 方案。額度依任務複雜度扣點,官方載明點數不可退款、月額度兩個月後到期。實際價格請看官方定價頁。
商用條款
官方原文:「You grant us a worldwide, perpetual, royalty-free license to use, copy, modify, process, analyze, and otherwise exploit your Customer Data for our business purposes, including without limitation: operating, maintaining, and improving the Services; developing and training artificial intelligence and machine learning models」——「perpetual」是永久,而且用途明文包含訓練 AI 模型。另外官方也載明平台本身「We (and our licensors) own all rights, title, and interest in and to the Services and Lovable Materials」。放客戶資料或未公開內容進去之前要先想清楚。2026-09-18 讀官方條款。
資料政策
本站尚未查證其是否使用專案內容訓練模型,放敏感資料前請自行向官方確認。
放在哪裡跑
SaaS
還活著嗎
維護中活躍(Lovable 官方營運)
複查頻率
每 90 天下次複查 2026-12-09自動確認網址存在:2026-09-18
你需要注意
  • ⚠️ 資料政策本站未查證
  • 產出的是真的程式碼,代表也真的需要有人維護
  • 按點數計費,反覆修改會消耗額度

GitHub Pages

外部資源

從 GitHub repo 直接發布靜態網站,git push 就上線。本站學習家族與英語家族都放這裡。

💰 Free⚖️ ⚠️ 不得作為商業交易或 SaaS 的免費主機🔒 訓練政策未查證📌 活躍(GitHub 官方營運)

不適合⚠️ 商業交易或 SaaS 的免費主機(官方明文禁止)、內部用、不想被外人看到的東西(站台一律公開)、需要後端的應用

看完整判斷
最適合
作品集、文件站、教學頁、已經在用 GitHub 管程式碼的人、不用另外學部署工具就想上線
適合誰
研發、老師、PM
使用門檻
需要一些技術協助技術等級 Lv.2
費用細節
免費方案只能從公開 repo 發布;私有 repo 要 Pro/Team/Enterprise(官方頁 2026-09-19 讀)。限制:發布站最大 1 GB、每月 100 GB 頻寬(軟上限)、每小時 10 次建置(軟上限)、部署超過 10 分鐘逾時。
商用條款
官方限制頁原文:「GitHub Pages is not intended for or allowed to be used as a free web-hosting service to run your online business, e-commerce site, or any other website that is primarily directed at either facilitating commercial transactions or providing commercial software as a service (SaaS).」作品集、文件站、教學頁不在這條裡。2026-09-19 讀。
資料政策
官方明寫:即使 repo 是私有的,Pages 站台也是公開在網路上的(「GitHub Pages sites are publicly available on the internet, even if the repository for the site is private」)。
放在哪裡跑
SaaS
還活著嗎
維護中活躍(GitHub 官方營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 推上公開 repo 就是公開發布,內部用的東西要先上鎖再推
  • 只有靜態檔,沒有後端
  • 網址帶 repo 子路徑,絕對路徑寫錯就抓不到資源
  • 1 GB 站台大小是硬上限,100 GB 月頻寬是軟上限

Natural Earth

外部資源

全球國界、海岸線、河流、城市點位的向量與影像圖資,1:10m/1:50m/1:110m 三種比例尺,公眾領域。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Tom Patterson、Nathaniel Vaughn Kelso 與社群維護)

不適合需要街道、門牌這類細節(比例尺最細只到 1:10m)、需要每天更新的即時邊界、要精確到鄉鎮以下的行政區

看完整判斷
最適合
做世界地圖、簡報地圖、資料視覺化底圖、要一份不必標示出處也能商用的乾淨圖資、檔案小、不想處理整顆 OSM 星球檔
適合誰
研發、行銷、老師、數據分析
使用門檻
需要一些技術協助技術等級 Lv.2
費用細節
免費下載,不用帳號。
商用條款
官方使用條款原文:「All versions of Natural Earth raster + vector map data found on this website are in the public domain.」並明寫「No permission is needed to use Natural Earth. Crediting the authors is unnecessary.」其中超過 20 種語言的名稱資料來自 CC0 的 Wikidata。2026-09-19 讀。
資料政策
靜態檔案下載,沒有帳號也沒有追蹤。
放在哪裡跑
Self-hosted
授權
Public domain
還活著嗎
維護中活躍(Tom Patterson、Nathaniel Vaughn Kelso 與社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • 比例尺是給世界地圖用的,放大到縣市層級會不夠細
  • 官方明說不保證正確性,爭議邊界要自己判斷
  • 更新頻率低,政治邊界變動不會馬上反映

OurAirports

外部資源

全球機場、跑道、導航台與頻率的開放資料,一個 CSV 直接下載,公眾領域。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(David Megginson 與社群維護,資料放在 GitHub)

不適合即時航班動態(它是靜態基礎資料)、以為資料保證正確(官方明說不保證)、商業航空的正式作業用途

看完整判斷
最適合
旅遊或航班類應用要機場清單與座標、IATA/ICAO 代碼對照、不想處理授權問題的基礎資料
適合誰
研發、數據分析
使用門檻
簡單設定技術等級 Lv.1
費用細節
免費、免帳號;2026-09-19 實測機場 CSV 回 200、12,724,965 bytes。
商用條款
官方資料頁原文:「All data is released to the Public Domain, and comes with no guarantee of accuracy or fitness for use.」同頁明說歡迎但不要求標示出處:「We'd love you to give us credit … but you're not required to.」2026-09-19 讀。
資料政策
靜態 CSV,免帳號。
放在哪裡跑
Self-hosted
授權
Public domain
還活著嗎
維護中活躍(David Megginson 與社群維護,資料放在 GitHub)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 官方明說不保證正確性,關鍵用途要交叉驗證
  • 社群維護,小型機場資料可能過時
  • 檔案 12 MB 以上,前端直接載要先篩

CC-CEDICT

外部資源

開放的中英辭典資料檔:漢字詞條、拼音與英文釋義,1997 年起由社群維護,多數中文學習軟體的底層詞庫。

💰 Free⚖️ 可商用(須標示出處並同授權分享)🔒 訓練政策未查證📌 活躍(MDBG 與社群維護)

不適合當權威辭典(社群維護,釋義風格不一)、台灣用語的權威來源(以大陸用法為主)、不打算同授權釋出衍生作品的專案

看完整判斷
最適合
中英詞典功能的離線詞庫、拼音標註與斷詞的輔助資料、中文學習工具
適合誰
研發、老師
使用門檻
簡單設定技術等級 Lv.1
費用細節
免費下載,免帳號。
商用條款
官方專案頁原文:「CC-CEDICT is licensed under a Creative Commons Attribution-Share Alike 3.0 License.」⚠️ 是 **3.0**,不是常被誤寫的 4.0;ShareAlike 代表改作後要以同授權釋出。2026-09-19 讀。
資料政策
靜態資料檔,不連外。
放在哪裡跑
Self-hosted
授權
CC BY-SA 3.0
還活著嗎
維護中活躍(MDBG 與社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 同授權義務(ShareAlike),商業產品要評估
  • 以簡體與大陸用語為主,繁體欄位有但台灣慣用語不全
  • 釋義由社群貢獻,風格與詳略不一致

這個條件下,目前沒有可以自己直接用的選項。

需要工程或廠商協助 你不一定要自己操作,但該知道它在解什麼問題

這一區不是進階玩家專區。當事情變複雜時,這些內容幫你看懂選型, 也幫你知道該跟工程師或廠商確認哪些事。

OpenAI API

AI 服務

把 OpenAI 模型能力接進自家系統的介面,按使用量計費;也提供 Embedding 等非對話用途。

💰 API 計費⚖️ 可商用🔒 預設不用於訓練📌 活躍(OpenAI 官方營運)

不適合資料完全不能離開公司、需要離線運作、沒有工程資源的團隊

看完整判斷
最適合
把 AI 功能做進自己的產品或內部系統、量體不確定、不想先養機器、語意搜尋等 Embedding 應用
適合誰
研發、PM
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
按使用量計費,價格依模型而異。
商用條款
商用 API 服務,依服務條款使用。
資料政策
官方原文:「data sent to the OpenAI API is not used to train or improve OpenAI models (unless you explicitly opt in to share data with us)」。預設為濫用監控保留紀錄最多 30 天;可申請零資料留存(Zero Data Retention)。
放在哪裡跑
SaaS
怎麼接
公開 API
還活著嗎
維護中活躍(OpenAI 官方營運)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • 需要工程資源串接與維護
  • 按量計費,長文件與大量請求成本累積快
  • 模型會改版,同一段 prompt 行為可能改變

OpenRouter

AI 服務

用一個 API 存取數百個不同供應商的模型,不必為每家各接一次。

💰 API 計費⚖️ ⚠️ 依你用的那個模型而定🔒 訓練政策未查證📌 活躍(OpenRouter 官方營運)

不適合對資料流向要求極嚴的場合(多一層中介)、不需要多模型的單純應用

看完整判斷
最適合
想比較不同模型表現的開發階段、不想被單一供應商綁死、需要在模型之間切換的產品
適合誰
研發、PM
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
按使用量計費;官方說明會自動挑選較划算的選項。
商用條款
官方原文:「You retain copyright and any other proprietary rights that you may hold in the Input. Your ownership rights in the Output are set forth in the Model Terms for each Model you use.」同一段還自陳 Model Terms 可能過期或缺漏。所以透過它呼叫哪個模型,就要去讀那個模型的條款。2026-09-18 讀官方條款。
資料政策
官方 quickstart 文件未說明提示詞是否留存或用於訓練;導入敏感資料前請自行確認其資料政策與各下游供應商條款。
放在哪裡跑
SaaS
怎麼接
公開 API
還活著嗎
維護中活躍(OpenRouter 官方營運)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-18
你需要注意
  • ⚠️ 資料會經過中介平台再轉給實際的模型供應商,等於多一層信任
  • 官方入門文件未交代資料政策,要另外查
  • 各模型的可用性與價格會變動

Ollama

外部資源

在自己電腦上跑開源模型的工具。官方訴求是本機執行的內容不會離開你的機器。

💰 Freemium⚖️ ⚠️ 依個別模型而定🔒 本機執行時資料不離開你的機器📌 活躍(Ollama 官方維護)

不適合硬體不足的機器、需要最強模型能力的正式服務、不懂技術的一般使用者

看完整判斷
最適合
資料完全不能外傳的測試與開發、先在自己電腦上試玩開源模型、離線環境
適合誰
研發、資訊/資安
使用門檻
需要工程能力技術等級 Lv.3
費用細節
本機執行免費;官方另有雲端付費方案。
商用條款
工具本身免費,但你跑的**每個模型有自己的授權**(有的可商用、有的僅限研究)。不能因為下載得到就當成能商用。
資料政策
官方說明本機執行的內容不會離開機器;使用雲端方案則另當別論。
放在哪裡跑
Self-hosted、On-prem、Edge
還活著嗎
維護中活躍(Ollama 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • 本機模型能力通常明顯不如最新雲端大模型
  • 吃硬體,筆電跑大模型會很慢
  • ⚠️ 模型授權要個別確認

vLLM

外部資源

把大型語言模型服務化的高效能推論框架,源自 UC Berkeley,現由社群維護。

💰 Free⚖️ 可商用🔒 自架不上傳,資料留在自己的環境📌 活躍(社群與多家機構共同維護)

不適合只是想試玩模型的階段(用桌面工具就好)、沒有維運人力的團隊

看完整判斷
最適合
自架模型要正式上線、要撐同時很多人用、想壓低單次推論成本、資料完全不出公司的部署
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源免費;成本在 GPU 與維運。
商用條款
Apache-2.0 授權。
資料政策
自行部署,請求不離開你的環境。
放在哪裡跑
Self-hosted、On-prem官方說明支援 NVIDIA/AMD/Intel GPU、TPU 與 CPU,並提供 OpenAI 相容的 API 端點。
授權
Apache-2.0
還活著嗎
維護中活躍(社群與多家機構共同維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • 要有 GPU 與會維運的人
  • 模型本身的授權要另外確認
  • 調校參數對吞吐與延遲影響大,要實測

Hugging Face Hub

外部資源

開放 AI 模型與資料集的平台,官方說明託管超過 200 萬個模型、150 萬個資料集與 150 萬個應用。

💰 Freemium⚖️ ⚠️ 依個別模型而定🔒 訓練政策未查證📌 活躍(Hugging Face 官方營運)

不適合不懂技術的一般使用者直接使用、把它當成單一 AI 產品

看完整判斷
最適合
找特定任務的開源模型、查模型說明卡(限制與偏誤)、技術評估與比較
適合誰
研發、資訊/資安、PM
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
基本使用免費,另有 PRO 與 Team/Enterprise 方案。
商用條款
平台可免費使用,但**上面每個模型與資料集有各自的授權**——有的可商用、有的禁止商用、有的要申請。不能因為「在 Hugging Face 上」就當成可自由使用。
資料政策
上傳到公開 repo 的內容是公開的;私有 repo 與企業方案另有安全設定。
放在哪裡跑
SaaS、Self-hosted
怎麼接
公開 API
還活著嗎
維護中活躍(Hugging Face 官方營運)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 每個模型授權不同,不能一概而論
  • 模型品質參差,公開不等於可用於正式環境
  • 需要工程能力才能實際使用

Aider

專業任務工具

在終端機裡跟 AI 結對寫程式的開源工具,會直接改檔案並自動 git commit。

💰 Free⚖️ 可商用🔒 依你選用的模型供應商而定📌 活躍(Aider-AI 維護)

不適合完全不熟 git 的人(它的安全網就是 git)、不想讓 AI 直接動檔案的場合

看完整判斷
最適合
已經在用 git 的開發流程、要 AI 在既有專案裡跨檔案修改、想自選模型(含本機模型)
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
工具免費,但**要自備模型 API 金鑰**,那筆錢是額外的。
商用條款
Apache-2.0 授權。
資料政策
工具本身在本機執行,但你的程式碼會送到你選的模型供應商——資料政策取決於那一家。
放在哪裡跑
Self-hosted
授權
Apache-2.0
還活著嗎
維護中活躍(Aider-AI 維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 會直接改你的檔案並 commit,用前確認 git 狀態乾淨
  • 要自備 API 金鑰,用量就是錢
  • 程式碼會送到你選的模型供應商

Cline

專業任務工具

在 IDE 裡跑的開源 AI 編碼代理,能讀專案結構、跨檔案改碼、執行指令,有 Plan/Act 兩種模式。

💰 Free⚖️ 可商用🔒 依你選用的模型供應商而定📌 活躍(Cline 官方維護)

不適合不想讓 AI 執行指令的環境、沒有版本控制的專案

看完整判斷
最適合
想在 VS Code/JetBrains 裡用 AI 改碼、需要先看計畫再執行的謹慎流程、想自選模型供應商
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
工具免費,但**要自備模型 API 金鑰**。
商用條款
Apache-2.0 授權。
資料政策
程式碼會送到你設定的模型供應商,資料政策取決於那一家。官方說明支援 Anthropic、OpenAI、Google、Bedrock 與本機 Ollama 等。
放在哪裡跑
Self-hosted
授權
Apache-2.0
還活著嗎
維護中活躍(Cline 官方維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ Act 模式會執行指令,要看清楚再放行
  • 要自備 API 金鑰,用量就是錢
  • 程式碼會送到你選的模型供應商

Qwen(通義千問)

技術類型

阿里巴巴的開源大型語言模型系列,權重採 Apache-2.0,是商用授權最單純的選擇之一。

💰 Free⚖️ 可商用🔒 自架不上傳,資料留在自己的機器📌 活躍(阿里巴巴 Qwen 團隊維護)

不適合沒有 GPU 或推論預算的團隊、需要最前沿推理能力的場合(仍以閉源旗艦為主)

看完整判斷
最適合
要自架 LLM 又不想處理授權限制、中文任務、從 0.6B 到 235B 依硬體挑尺寸
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
權重免費,成本在硬體與維運。
商用條款
官方說明所有開放權重模型採 Apache 2.0 授權,是三大開源 LLM 家族裡條件最單純的。
資料政策
自行部署,輸入不離開你的環境。
放在哪裡跑
Self-hosted、On-prem官方列出 Dense 0.6B/1.7B/4B/8B/14B/32B 與 MoE 30B-A3B/235B-A22B 等尺寸。
授權
Apache-2.0
還活著嗎
維護中活躍(阿里巴巴 Qwen 團隊維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • 要有 GPU 與會維運的人
  • 小尺寸模型能力明顯不如旗艦閉源模型
  • 中文以外語言的表現要自己實測

Llama(Meta)

技術類型

Meta 的開放權重模型系列,生態最大,但**授權是自訂條款不是標準開源**,有三條硬性商用義務。

💰 Free⚖️ ⚠️ 可商用但有三條硬性義務🔒 自架不上傳,資料留在自己的機器📌 活躍(Meta 官方維護)

不適合⚠️ 月活躍使用者超過 7 億又沒申請授權的公司、不想在產品上標示「Built with Llama」的場合、衍生模型不想被要求以 Llama 命名的情況

看完整判斷
最適合
需要成熟生態與大量現成工具鏈、研究與內部應用、願意遵守標示與命名義務的產品
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
權重免費取得,成本在硬體與維運。
商用條款
Llama 社群授權的三條關鍵條款:(1) 版本發布日當月,若你的產品月活躍使用者超過 7 億,必須另外向 Meta 申請授權;(2) 散布時必須顯著標示「Built with Llama」;(3) 用它訓練或微調出來的模型,名稱必須以「Llama」開頭。
資料政策
自行部署,輸入不離開你的環境。
放在哪裡跑
Self-hosted、On-prem
授權
Llama Community License(自訂)
還活著嗎
維護中活躍(Meta 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 三條商用義務常被忽略,產品上線前要逐條確認
  • 要有 GPU 與維運人力
  • 授權條款各版本略有差異,要看你用的那一版

Gemma(Google)

技術類型

Google 的開放權重模型系列,輕量、可在較小硬體上跑,但採自訂使用條款而非 OSI 開源授權。

💰 Free⚖️ ⚠️ 自訂條款,非 OSI 開源🔒 自架不上傳,資料留在自己的機器📌 活躍(Google 官方維護)

不適合⚠️ 不想受禁用政策與下游傳遞義務約束的產品、需要標準開源授權以簡化法遵的場合

看完整判斷
最適合
資源有限的環境(模型尺寸小)、已在 Google 生態系的團隊、研究與原型
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
權重免費取得。
商用條款
官方條款:使用受「Gemma 禁用政策」約束;散布時要在下游協議中包含使用限制、提供完整條款副本、修改過的檔案要標註;Google 對產出物不主張權利,但保留在合理認為違反協議時遠端限制使用的權利。(Gemma 4 另採 Apache-2.0,要看你用的是哪一代。)
資料政策
自行部署,輸入不離開你的環境。
放在哪裡跑
Self-hosted、On-prem、Edge
授權
Gemma Terms of Use(Gemma 4 為 Apache-2.0)
還活著嗎
維護中活躍(Google 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 不是標準開源授權,法遵流程要另外處理
  • ⚠️ Google 保留遠端限制使用的權利
  • 各世代授權不同,要確認你用的版本

Qdrant

專業任務工具

向量資料庫:專門存放「意思的數值表示」並快速找出相似項目,是語意搜尋與 RAG 的儲存層。

💰 Freemium⚖️ 可商用🔒 自架不上傳,資料留在自己的伺服器📌 活躍(Qdrant 官方維護)

不適合資料量小的場合(用 pgvector 或檔案就夠)、沒有工程人力的團隊

看完整判斷
最適合
語意搜尋、推薦、相似比對、資料量大到用檔案存不下的向量、要自架的知識庫後端
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
自架開源版免費;官方另有 Qdrant Cloud 託管服務。
商用條款
Apache-2.0 授權。
資料政策
自行部署時資料不離開你的環境。
放在哪裡跑
Self-hosted、On-prem、SaaS
授權
Apache-2.0
還活著嗎
維護中活躍(Qdrant 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • 要有人維運(備份、擴容、升級)
  • 向量品質取決於你用的嵌入模型,資料庫本身不負責準確度
  • 小規模場景是過度設計

pgvector

專業任務工具

讓現有的 PostgreSQL 直接做向量相似搜尋的擴充套件——**不用另外架一套向量資料庫**。

💰 Free⚖️ 可商用🔒 自架不上傳,資料留在自己的資料庫📌 活躍(作者持續維護)

不適合超大規模、對延遲極敏感的向量檢索、沒有在用 PostgreSQL 的環境

看完整判斷
最適合
已經在用 PostgreSQL 的團隊、中小規模的語意搜尋、想把向量與既有關聯資料放在一起管理
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源免費,跑在你既有的資料庫上。
商用條款
PostgreSQL License(BSD 風格的寬鬆授權),官方授權檔明示可為任何目的使用、複製、修改與散布,不收費也不需另簽協議。
資料政策
跑在你自己的資料庫裡。
放在哪裡跑
Self-hosted、On-prem支援 L2、內積、cosine、L1、Hamming、Jaccard 等距離計算,並可與 JOIN、ACID、時間點還原等 PostgreSQL 既有功能一起用。
授權
PostgreSQL License
還活著嗎
維護中活躍(作者持續維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • 極大規模時效能不如專用向量資料庫
  • 要會 PostgreSQL 運維
  • 索引參數調校會明顯影響查詢速度與準確度

LlamaIndex

專業任務工具

把自己的資料接給 LLM 的開發框架:資料連接、索引、查詢一整套,是做 RAG 最常見的骨架之一。

💰 Free⚖️ 可商用🔒 依你選用的模型供應商而定📌 活躍(LlamaIndex 官方維護)

不適合不寫程式的使用者(那用 NotebookLM 這類現成服務)、只有幾份文件的簡單需求

看完整判斷
最適合
要做文件問答、內部知識庫的開發專案、需要接多種資料來源(API、PDF、SQL)、想快速做出 RAG 原型
適合誰
研發、PM
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
框架開源免費;官方另有 LlamaParse 等付費服務。
商用條款
MIT 授權。
資料政策
框架本身在你的環境執行,但實際回答的模型由你指定——資料政策取決於那一家。
放在哪裡跑
Self-hosted
怎麼接
公開 API
授權
MIT
還活著嗎
維護中活躍(LlamaIndex 官方維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • 它是框架不是模型,還要自己選模型與向量庫
  • 版本更新快,API 會變
  • RAG 的品質主要取決於資料整理,不是框架

sentence-transformers

技術類型

產生 Embedding(把文字變成可比較的數值)與重排序的標準函式庫,官方說明可用超過 15,000 個現成模型。

💰 Free⚖️ 可商用🔒 自架不上傳,資料留在自己的機器📌 活躍(UKPLab 維護)

不適合直接回答問題(那是 LLM 的工作)、沒有工程人力的團隊

看完整判斷
最適合
語意搜尋、相似文件比對、去重、RAG 的檢索層、要自架、資料不出公司的向量計算
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源免費;模型可在本機跑。
商用條款
函式庫採 Apache-2.0。⚠️ 但你選用的個別預訓練模型有各自的授權,要分開確認。
資料政策
本機執行,文字不外傳。
放在哪裡跑
Self-hosted、On-prem
授權
Apache-2.0(個別模型另有授權)
還活著嗎
維護中活躍(UKPLab 維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 函式庫授權與模型授權是兩件事
  • 中文任務要挑對模型,通用英文模型效果會差很多
  • 需要工程人力

Langfuse

專業任務工具

LLM 應用的觀測平台:把每一次呼叫的輸入輸出、成本、延遲記錄下來,並支援提示詞版本管理與評估。

💰 Freemium⚖️ 核心可商用(MIT)🔒 自架不上傳,資料留在自己的伺服器📌 活躍(Langfuse 官方維護)

不適合還在原型階段的專案、沒有工程人力的團隊

看完整判斷
最適合
AI 功能上線後要知道實際發生什麼、追蹤成本與延遲、提示詞要版本控管的團隊
適合誰
研發、PM
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
自架免費;官方另有雲端與企業方案。
商用條款
官方說明核心採 MIT 授權,但 `ee` 資料夾內的企業版功能適用不同條款。只用核心功能沒問題,要用到企業功能前要確認。
資料政策
自架時追蹤紀錄留在你的環境;但紀錄裡會含使用者輸入,等於多一份敏感資料要保護。
放在哪裡跑
Self-hosted、On-prem、SaaS
授權
MIT(ee 目錄另計)
還活著嗎
維護中活躍(Langfuse 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 追蹤紀錄會存下使用者的輸入內容,本身就是要保護的資料
  • 核心與企業版授權不同
  • 自架要有人維運

Open WebUI

專業任務工具

自架的 AI 對話介面,可接 Ollama 本機模型或 OpenAI 相容 API,能完全離線運作。

💰 Free⚖️ ⚠️ 自訂授權,且要求保留品牌🔒 自架不上傳(取決於你接的模型)📌 活躍(Open WebUI 官方維護)

不適合⚠️ 想移除品牌標示的商業部署、沒有維運人力的團隊

看完整判斷
最適合
公司想自架內部 AI 介面、接本機模型給不會用終端機的同事使用、完全離線的環境
適合誰
資訊/資安、研發
使用門檻
需要工程能力技術等級 Lv.3
費用細節
開源免費自架。
商用條款
官方 README 說明專案包含多種授權的程式碼,其中含「Open WebUI 授權」,**並額外要求保留「Open WebUI」品牌標示**;授權有變更歷史,官方要讀者查 LICENSE_HISTORY 以確認各部分適用條款。要拿來做白牌內部系統前務必先讀。
資料政策
介面自架,但實際回答的模型由你設定——接雲端 API 時資料仍會送到那一家。
放在哪裡跑
Self-hosted、On-prem
授權
Open WebUI License(含品牌保留要求)
還活著嗎
維護中活躍(Open WebUI 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 授權要求保留品牌,白牌部署要先確認
  • ⚠️ 授權變更過,要看 LICENSE_HISTORY 對應版本
  • 自架要有人維運與更新

Grafana

專業任務工具

最普及的監控與儀表板工具,可接各種資料源做即時視覺化與告警。

💰 Freemium⚖️ ⚠️ AGPL-3.0🔒 自架不上傳,資料留在自己的伺服器📌 活躍(Grafana Labs 官方維護)

不適合⚠️ 要嵌進對外商業產品又沒評估授權的情況、純粹做商業分析報表(BI 工具更合適)

看完整判斷
最適合
系統與業務指標的即時監控、告警與值班流程、要接多種資料源的儀表板
適合誰
資訊/資安、研發、營運
使用門檻
需要工程能力技術等級 Lv.3
費用細節
開源版自架免費;官方另有雲端與企業方案。
商用條款
官方 repo 說明現行採 AGPL-3.0(部分例外走 Apache-2.0,詳見其 LICENSING.md)。AGPL 有網路著作權傳染條款——把修改過的版本當成服務提供給他人,可能要一併公開原始碼。嵌入對外產品前請讓法務評估。
資料政策
自架時資料不離開你的環境。
放在哪裡跑
Self-hosted、On-prem、SaaS
授權
AGPL-3.0(部分例外 Apache-2.0)
還活著嗎
維護中活躍(Grafana Labs 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ AGPL-3.0,商業嵌入要先評估
  • 自架要有人維運
  • 儀表板做得多之後,維護成本比想像高

SearXNG

專業任務工具

可自架的聚合搜尋引擎:把多家搜尋結果合併呈現,且不追蹤、不側寫使用者。

💰 Free⚖️ ⚠️ AGPL-3.0🔒 自架不上傳,查詢留在自己的伺服器📌 活躍(SearXNG 社群維護)

不適合⚠️ 對外商業服務又沒評估 AGPL、需要穩定商業支援的關鍵應用

看完整判斷
最適合
內部研究工具不想被搜尋引擎側寫、要給 AI Agent 用的搜尋後端、隱私要求高的環境
適合誰
資訊/資安、研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
自架免費。
商用條款
官方說明採 AGPL-3.0。自架自用單純,對外提供服務前要評估網路著作權條款。
資料政策
官方強調使用者不被追蹤也不被側寫。
放在哪裡跑
Self-hosted、On-prem
授權
AGPL-3.0
還活著嗎
維護中活躍(SearXNG 社群維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ AGPL-3.0
  • 上游搜尋服務可能限流或擋,需要維護
  • 結果品質取決於所聚合的來源

Temporal

專業任務工具

持久化工作流引擎:讓跨越數天、會失敗、要重試的流程能可靠地跑完,狀態不會因為重啟而遺失。

💰 Free⚖️ 可商用🔒 自架不上傳,資料留在自己的伺服器📌 活躍(Temporal Technologies 維護)

不適合簡單的定時任務(cron 就夠)、沒有工程人力的團隊、只是要串兩個 SaaS(Zapier 類更快)

看完整判斷
最適合
長時間、多步驟、不能中斷的業務流程、需要自動重試與狀態保存的整合、微服務之間的協調
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源免費自架;官方另有 Temporal Cloud。
商用條款
MIT 授權。
資料政策
自架時資料不離開你的環境。
放在哪裡跑
Self-hosted、On-prem、SaaS
授權
MIT
還活著嗎
維護中活躍(Temporal Technologies 維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • 概念門檻高(workflow/activity/determinism),學習曲線陡
  • 自架要維運資料庫與叢集
  • 小規模需求是過度設計

LangGraph

專業任務工具

做 AI Agent 的編排框架:支援持久化執行、狀態記憶、以及在流程中插入人工確認。

💰 Free⚖️ 可商用🔒 依你選用的模型供應商而定📌 活躍(LangChain 官方維護)

不適合單次問答就結束的需求(直接呼叫模型就好)、不寫程式的團隊、還沒試過寫死流程(Workflow)就想上 Agent

看完整判斷
最適合
需要多步驟、會中斷再續跑的 Agent、要在關鍵步驟插入人工審核的流程、需要追蹤 Agent 狀態與除錯
適合誰
研發、PM
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
框架開源免費;官方另有 LangSmith 等付費服務。
商用條款
MIT 授權。
資料政策
框架在你的環境執行,但模型呼叫會送到你指定的供應商。
放在哪裡跑
Self-hosted
怎麼接
公開 API
授權
MIT
還活著嗎
維護中活躍(LangChain 官方維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ Agent 難以驗收——先確認寫死的流程真的做不到再上
  • 版本更新快
  • 除錯需要搭配追蹤工具才看得清楚

CrewAI

專業任務工具

多 Agent 協作框架:用角色分工的方式讓多個 AI 代理人一起完成任務,也支援事件驅動的固定流程。

💰 Free⚖️ 可商用🔒 依你選用的模型供應商而定📌 活躍(CrewAI 官方維護)

不適合單一 Agent 就能做完的任務(多開只會更難驗收)、對輸出穩定性要求高的正式流程

看完整判斷
最適合
要讓多個 AI 分工協作的實驗、角色分工清楚的內容或研究流程、想要獨立於 LangChain 的技術選擇
適合誰
研發、PM
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
框架開源免費。
商用條款
MIT 授權。
資料政策
框架在你的環境執行,模型呼叫送到你指定的供應商。
放在哪裡跑
Self-hosted
怎麼接
公開 API
授權
MIT
還活著嗎
維護中活躍(CrewAI 官方維護)
複查頻率
每 365 天下次複查 2027-09-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 多 Agent 的成本與不可預測性都是倍增的,先確認單一 Agent 真的不夠
  • Agent 之間的交接容易累積誤差
  • 驗收設計比開發更花時間

Chroma

專業任務工具

設計成「最容易開始」的向量資料庫,可以嵌在程式裡跑,也能當伺服器用。

💰 Freemium⚖️ 可商用🔒 本機或自架時資料不外傳📌 活躍(Chroma 官方維護)

不適合超大規模、高併發的正式環境、已經在用 PostgreSQL 又不想多一套系統(用 pgvector)

看完整判斷
最適合
RAG 原型與小型專案、不想先架一整套基礎設施的階段、本機開發與測試
適合誰
研發、PM
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源免費;官方另有 Chroma Cloud 託管服務。
商用條款
Apache-2.0 授權。
資料政策
嵌入式或自架執行時資料留在你的環境。
放在哪裡跑
Self-hosted、On-prem、SaaS可用 pip/npm 嵌入程式內執行,也可用 CLI 啟動成伺服器。
授權
Apache-2.0
還活著嗎
維護中活躍(Chroma 官方維護)
複查頻率
每 90 天下次複查 2026-12-08自動確認網址存在:2026-09-10
你需要注意
  • 大規模場景的效能與運維成熟度不如專用向量資料庫
  • 自動處理嵌入很方便,但也讓人忽略嵌入模型的選擇
  • 資料備份與遷移要自己規劃

Dify

專業任務工具

視覺化的 LLM 應用開發平台:工作流、RAG 管線、Agent、模型管理與觀測一整套,可自架。

💰 Freemium⚖️ ⚠️ 可商用但有兩條硬性限制🔒 自架不上傳(取決於你接的模型)📌 活躍(LangGenius 官方維護)

你會在什麼情況下想到它要做一個「查得到出處」的問答機器人,而你不想從向量庫、切塊、檢索、prompt 組裝一路自己寫。

怎麼用(最短路徑)

  1. 自架或用雲端版,建一個 workspace(=一個 tenant,這個詞等一下會咬人)。
  2. 知識庫丟文件,它幫你切塊建索引;切塊大小與重疊可調,這是後面答不答得準的關鍵。
  3. 建一個 Chat App 掛上知識庫,prompt 裡把「答不出來就說不知道、並附出處」寫死。
  4. 拿 API Key 打 /chat-messages,blocking 或 streaming 兩種模式擇一。
  5. 前面接你自己的管道:LINE、Teams、網頁 widget。

真實案例:產銷履歷法規諮詢 LINE 客服服務約 6,000 位農民本站作者實作

LINE Webhook → Cloudflare Workers 中繼層 → Dify /chat-messages → LINE Reply API

為什麼不讓 LINE 直接打 Dify?中間那層 Worker 看起來多餘,但它做四件 Dify 不會幫你做的事。這是整個案子最值錢的一個決定。

  • 驗簽LINE 的 x-line-signature 要用 channel secret 做 HMAC-SHA256 驗證,失敗回 401。沒有這層,任何人都能對你的 endpoint 灌訊息,每一則都燒你的 token。
  • 群組防洗版Bot 拉進農民群組後,每句閒聊都會觸發。規則設成只有 @提及,或 #問/#/?/? 開頭才回應。
  • 非文字訊息直接丟掉貼圖、照片、位置不進 Dify,不消耗額度。
  • 逾時防呆LINE 的 reply token 有時效。Dify 慢了要回一句友善的預設訊息,不能讓農民看到空白。

踩坑

  • 授權不是 Apache。官方 LICENSE 兩條硬限制:未經書面授權不得用原始碼經營多租戶環境(官方定義「一個 tenant 對應一個 workspace」),以及不得移除或修改 console 與應用前端的 LOGO 與著作權資訊(原始碼的 web/ 目錄,或 Docker 的 web image)。
  • 「幫三個客戶各開一個 workspace」就是多租戶。顧問最常用的交付方式,正好踩在這條上——這是授權問題,不是技術問題。
  • 答不準,先回頭調切塊與檢索,不要急著換模型。切塊大小、重疊、取幾段才是主要變因;換更貴的模型通常只是變貴。
  • blocking 模式的逾時要自己抓。平台不會替你處理下游(LINE、Teams)的時限。

什麼時候不要用它

  • 只有 20 題 FAQ:直接塞進 prompt,不需要向量庫,也不需要平台。
  • 要白牌交付給客戶:先把商業授權的錢算進報價再決定。
  • 已經有 n8n 或 Make 在跑,而且只是要串一支 API:那段用既有平台就好。

要換的話

RAGFlow(切塊與文件解析更細)、AnythingLLM(更輕、更快上手),或完全不要平台——自己寫檢索直接接模型 API,像上面那個案子的中繼層一樣。

費用、授權、資料政策與維護狀態
最適合
公司要做內部 AI 助理又想要完整平台、非工程師也能參與拉流程的團隊、要同時接多家模型並比較
適合誰
研發、PM、資訊/資安
使用門檻
需要工程能力技術等級 Lv.3
費用細節
社群版自架免費;官方另有 Dify Cloud 與企業版。
商用條款
官方授權為「Dify 開源授權,基於 Apache 2.0 並附加額外條件」。兩條關鍵限制(引自官方 LICENSE):(1)「未經 Dify 書面明確授權,你不得使用 Dify 原始碼經營多租戶環境」;(2)「使用 Dify 前端的過程中,不得移除或修改 Dify 控制台或應用程式中的 LOGO 或著作權資訊」。符合上述任一情況要另外取得商業授權。
資料政策
平台自架時資料留在你的環境,但實際回答的模型由你設定——接雲端 API 時資料仍會送到那一家。
放在哪裡跑
Self-hosted、On-prem、SaaS
授權
Dify Open Source License(基於 Apache 2.0 加額外條件)
還活著嗎
維護中活躍(LangGenius 官方維護)
複查頻率
每 90 天下次複查 2026-12-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 多租戶與品牌兩條限制是自架公司最容易違反的
  • 自架要有人維運(Docker、資料庫、升級)
  • 版本更新快,升級前要看遷移說明

Flowise

專業任務工具

視覺化拖拉建 AI Agent 流程的工具。⚠️ 官方 repo 已於 2026-08-13 封存。

💰 Free⚖️ 可商用🔒 自架不上傳(取決於你接的模型)📌 已封存

不適合⚠️ 新專案(上游已封存,不宜當長期基礎)、需要持續安全更新的正式環境

看完整判斷
最適合
參考既有流程設計的學習用途、已經在用、短期內不打算換的既有專案
適合誰
研發、PM
使用門檻
需要工程能力技術等級 Lv.3
費用細節
開源免費。
商用條款
官方說明原始碼採 Apache License 2.0。
資料政策
自架時流程留在你的環境;模型呼叫送到你設定的供應商。
放在哪裡跑
Self-hosted、On-prem
授權
Apache-2.0
還活著嗎
已封存⚠️ 已封存(官方 repo 於 2026-08-13 archived)
複查頻率
每 365 天下次複查 2027-09-10自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ **官方 repo 已於 2026-08-13 封存**,後續發展要看官方公告
  • 新專案建議改用仍在維護的替代方案
  • 封存後的安全性更新不可期待

Awesome-Selfhosted

外部資源

自架軟體與網路服務的權威清單:想把服務放在自己伺服器上時,先來這裡找有什麼選擇。

💰 Free⚖️ ⚠️ 依個別軟體而定🔒 訓練政策未查證📌 活躍(社群持續維護,官方另有網站版)

不適合⚠️ 當成產品目錄直接照用(它是清單不是評測)、沒有維運能力的團隊——自架的成本在人不在授權費

看完整判斷
最適合
評估「這件事有沒有可以自架的開源方案」、資料不能上第三方雲的環境、IT 部門盤點替代方案
適合誰
資訊/資安、研發
使用門檻
需要專業部署/開發技術等級 Lv.4
費用細節
清單本身免費;上面列的軟體各有各的授權與成本。
商用條款
清單本身只是索引,**真正決定你能不能商用的是你挑中的那個軟體的授權**。清單不會替你把關這一點,要自己逐一確認。
放在哪裡跑
SaaS
還活著嗎
維護中活躍(社群持續維護,官方另有網站版)
複查頻率
每 90 天下次複查 2026-12-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 它是清單不是評測,收錄不等於推薦
  • 上面的專案品質與維護狀態差異極大,要自己再查一輪
  • 自架的真正成本是維運人力

MCP Servers(官方參考實作)

外部資源

Model Context Protocol 的官方參考伺服器:讓 AI 助理能安全地存取檔案、Git、記憶體等外部工具與資料。

💰 Free⚖️ 可商用🔒 視你接的 AI 服務而定📌 活躍(由 MCP steering group 維護;已封存的伺服器另移他處)

不適合⚠️ 直接拿參考實作上正式環境(官方明說是教育用途)、不寫程式的使用者

看完整判斷
最適合
想讓 Claude 這類 AI 連上自家工具與資料、學習 MCP 怎麼運作、評估要不要導入 MCP 架構
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源免費。
商用條款
官方說明採雙授權:新貢獻為 Apache License 2.0,既有程式碼為 MIT。
資料政策
MCP 的重點就是「受控存取」——它決定 AI 能碰你哪些檔案與資料,設定權限時要保守。
放在哪裡跑
Self-hosted、On-prem官方參考伺服器七個:Memory、Git、Filesystem、Fetch、Everything、Time、Sequential Thinking;社群版另見 MCP Registry。
授權
Apache-2.0(新貢獻)/MIT(既有程式碼)
還活著嗎
維護中活躍(由 MCP steering group 維護;已封存的伺服器另移他處)
複查頻率
每 365 天下次複查 2027-09-10自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 官方明示這些是參考實作、供教學用,不是 production-ready
  • ⚠️ 給 AI 檔案系統存取權限本身就是風險,範圍要收窄
  • 社群伺服器品質參差,要個別評估

Anthropic Agent Skills(官方)

外部資源

Anthropic 官方公開的 Agent Skills 範例集:把「怎麼做某件事」寫成 Claude 可以動態載入的資料夾。

💰 Free⚖️ ⚠️ 依個別 skill 而定🔒 訓練政策未查證📌 活躍(Anthropic 官方維護)

不適合⚠️ 未經測試就用在關鍵任務(官方明示為示範與教育用途)、不熟 AI 工具的一般使用者

看完整判斷
最適合
想讓 AI 依照公司規範重複執行任務、學習 Skill 的寫法與結構、找官方認可的範例當起點
適合誰
研發、PM、顧問
使用門檻
需要工程能力技術等級 Lv.3
費用細節
免費取得。
商用條款
官方說明多數 skill 採 Apache 2.0;但**文件類 skill(docx/pdf/pptx/xlsx)是 source-available、不是開源**,它們是支撐 Claude 文件能力的實作,僅作為複雜 skill 的參考。要商用前先確認你要用的是哪一個。
放在哪裡跑
Self-hostedSkill 是一個資料夾:含 name/description 的 frontmatter、指令內容、以及可選的腳本與資源檔。
授權
多數 Apache-2.0;文件類 skill 為 source-available
還活著嗎
維護中活躍(Anthropic 官方維護)
複查頻率
每 90 天下次複查 2026-12-09自動確認網址存在:2026-09-10
你需要注意
  • ⚠️ 官方免責:僅供示範與教育,實作可能與 Claude 內建行為不同,關鍵任務前要自行充分測試
  • ⚠️ 文件類 skill 非開源授權
  • Skill 的效果取決於你寫得多清楚,不是複製就會變強

Cloudflare Pages

外部資源

靜態網站與 PWA 的免費託管:把一個資料夾推上去就有網址與 HTTPS。本站與 17 支作品都放這裡。

💰 Freemium⚖️ 商用權利未查證🔒 訓練政策未查證📌 活躍(Cloudflare 官方營運)

不適合需要資料庫或後端邏輯的應用(那是 Workers 的事)、拿狀態碼判斷檔案存不存在的自動化(不存在的路徑可能回 200)、沒清乾淨的專案資料夾(整包上傳等於整包公開)

看完整判斷
最適合
靜態網頁、PWA、單檔小工具、不想自己管伺服器、要免費 HTTPS 與自訂網域、一個指令就要上線的個人專案
適合誰
研發、PM、老師
使用門檻
需要工程能力技術等級 Lv.3
費用細節
官方限制頁(2026-09-19 讀):免費方案每月 500 次建置、每站最多 20,000 個檔案、單一檔案最大 25 MiB、每帳號 100 個專案、100 個自訂網域;Pages Functions 的請求計入 Workers 方案額度。
商用條款
開發者平台的服務專屬條款(2026-09-19 讀)只寫「可用來託管內容」、禁止攻擊行為、禁止用冒充他人的子網域,沒有針對商用或免費方案的明文規定。本站不據此推斷可不可以商用,請自行讀主服務條款。
資料政策
託管靜態檔,訪客的每個請求都經過 Cloudflare 邊緣節點;本站未查到 Pages 訪客資料的獨立聲明,以 Cloudflare 隱私政策為準。
放在哪裡跑
SaaS
怎麼接
公開 API
還活著嗎
維護中活躍(Cloudflare 官方營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 不存在的路徑可能回 200+首頁(SPA 回退),用狀態碼驗檔案在不在會被騙
  • 整個資料夾部署就整個公開,開發檔要先清掉再上傳
  • 刪掉部署後邊緣快取仍可能餵舊檔一陣子,驗證要帶 cache-buster
  • 免費方案每月 500 次建置,CI 一直推很快用完

Cloudflare Workers(含 KV/D1)

外部資源

在邊緣節點跑後端程式的無伺服器平台,配 KV 鍵值庫與 D1 SQL 資料庫。本站需要後端的作品(代理外部 API、排程寫資料)都跑這裡。

💰 Freemium⚖️ 商用權利未查證🔒 訓練政策未查證📌 活躍(Cloudflare 官方營運)

不適合每天寫入量大的資料服務(免費 D1 每天 100,000 列寫入)、重運算(免費方案每次請求 CPU 只有 10 ms)、直接搬 Node 程式上來不改(執行環境不是 Node)

看完整判斷
最適合
靜態網站需要一點後端:代理 API、藏金鑰、排程抓資料、流量小、每天有固定額度就夠用的小服務、不想養伺服器但需要一個小資料庫
適合誰
研發、資訊/資安
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
官方限制頁(2026-09-19 讀):免費方案每天 100,000 次請求(UTC 午夜歸零)、每次請求 CPU 時間 10 ms、Worker 體積 64 MiB;KV 每天 100,000 次讀、1,000 次寫(不同鍵)、1 GB 儲存;D1 每天 500 萬列讀取、100,000 列寫入、總儲存 5 GB、單庫 500 MB、每帳號 10 個資料庫。
商用條款
開發者平台的服務專屬條款(2026-09-19 讀)只寫「可用來託管內容」與禁止攻擊、禁止冒名子網域,沒有針對商用的明文規定。本站不據此推斷,請自行讀主服務條款。
資料政策
程式與資料都在 Cloudflare 的節點上跑;接外部 API 時,那家看到的是 Cloudflare 的出口 IP。
放在哪裡跑
Edge
怎麼接
公開 API
還活著嗎
維護中活躍(Cloudflare 官方營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 額度是每天算的,資料量一大就是長期工程
  • 執行環境不是 Node,本機測過不等於線上會跑
  • 免費 D1 單庫 500 MB,超過要付費
  • KV 同一個鍵每秒只能寫 1 次

Leaflet

外部資源

輕量的網頁地圖程式庫(官網自述約 42 KB),配 OpenStreetMap 圖磚就能免金鑰畫地圖。本站 14 支作品的地圖都是它。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Volodymyr Agafonkin 與社群維護)

不適合3D 或大量向量圖層的視覺化、需要離線地圖卻不想自己做快取、以為裝了它就有地圖:圖磚與資料是另外的來源

看完整判斷
最適合
在網頁上放一張地圖、標幾個點、畫一條軌跡、不想綁 Google 金鑰與計費、手機網頁與 PWA
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
GitHub 授權為 BSD-2-Clause(2026-09-19 由 GitHub API 讀取):可商用、可修改,需保留著作權聲明。⚠️ 圖磚與地圖資料的授權是另一回事,見 OpenStreetMap 那張卡。
資料政策
程式庫本身不連外;連外的是你接的圖磚伺服器,使用者 IP 會打到那裡。
放在哪裡跑
Self-hosted
授權
BSD-2-Clause
還活著嗎
維護中活躍(Volodymyr Agafonkin 與社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • 它只負責畫,圖磚是別人的伺服器,流量大要換來源
  • 離線要自己快取,做不到就老實標「需要網路」
  • 2.0 仍是 alpha(官網 2025-08 公告),正式專案先留在 1.x

OpenStreetMap(資料、圖磚、Nominatim、Overpass)

外部資源

全球開放地圖資料庫,附三種免費取用管道:圖磚、地址與座標查詢(Nominatim)、資料查詢(Overpass)。本站山脈與釣魚作品的座標與軌跡底層。

💰 Free⚖️ 可商用(須標示出處,衍生資料庫須同授權釋出)🔒 訓練政策未查證📌 活躍(OpenStreetMap 基金會與 FOSSGIS 營運)

不適合高流量或商業級的即時地理編碼(公用服務有嚴格限流)、自動完成搜尋(Nominatim 政策明文禁止)、需要保證可用性的服務(官方不保證)

看完整判斷
最適合
步道、山屋、登山口、店家這類地理資料、不想付地圖 API 費用的小專案、需要自己下載資料做離線處理
適合誰
研發、數據分析
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
資料與三個公用服務都免費,但各有使用政策(2026-09-19 讀):圖磚須標示出處、送出能識別 App 的 User-Agent、禁止預先批次抓圖磚;Nominatim 最多每秒 1 次請求、結果必須自行快取、禁止自動完成與系統性查詢;Overpass 主站建議每天少於 10,000 次查詢與 1 GB 資料,若是常態使用要再除以 100。
商用條款
資料授權 ODbL,官方頁原文:「You are free to copy, distribute, transmit and adapt our data, as long as you credit OpenStreetMap and its contributors」;改作或建立在其上的資料庫「may distribute the result only under the same license」。2026-09-19 讀。
資料政策
公開資料;但用官方公用服務時,你的使用者 IP 會直接打到 OSM 基金會的伺服器。
放在哪裡跑
SaaS、Self-hosted
怎麼接
公開 API
授權
ODbL 1.0(資料)
還活著嗎
維護中活躍(OpenStreetMap 基金會與 FOSSGIS 營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 公用服務跑在捐贈的伺服器上,不保證可用性,可能不通知就封鎖
  • Nominatim 同名道路會錯配到幾公里外,每一批都要做離群掃描
  • Overpass 有空位不代表查詢跑得完,逾時要換路不是重試
  • 資料是志工編的,缺漏與錯誤要自己驗

Open-Meteo

外部資源

免金鑰的天氣預報 API,回 JSON。本站 13 支作品的天氣來源,是全站用最多的一個。

💰 Freemium⚖️ ⚠️ 商用要付費方案🔒 訓練政策未查證📌 活躍(Open-Meteo 官方營運)

不適合⚠️ 商業用途(要付費方案)、需要台灣官方觀測值、每分鐘超過 600 次的高頻服務

看完整判斷
最適合
個人網站與非營利專案要天氣預報、不想申請帳號與金鑰、要多國多地點的預報
適合誰
研發、數據分析
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
非商業用途免費且免註冊(2026-09-19 實測不帶任何金鑰直接回 200):每天少於 10,000 次、每小時 5,000 次、每分鐘 600 次;商業用途或更多請求要訂閱付費方案。
商用條款
官方條款頁(2026-09-19 讀):免費 API 限非商業用途(私人網站、非營利、個人自動化、公開研究、教學);「If you plan to use our service for commercial purposes or require additional API calls, we kindly request you to consider subscribing to our API plans」。有廣告或收費的網站算商業。資料本身依 CC BY 4.0 提供。
資料政策
免註冊、不用帳號;請求內容只有座標與參數。
放在哪裡跑
SaaS
怎麼接
公開 API
授權
CC BY 4.0(資料)
還活著嗎
維護中活躍(Open-Meteo 官方營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • 預報是全球模型算的,山區地形細節看不到;要台灣本地官方觀測還是得回氣象署
  • 免費額度是給非商業用的,有廣告或收費就算商業
  • 不同高度的溫度是兩件事,要先看它在講哪個高度

Open Topo Data

外部資源

查任一座標海拔的開源 API,公用端點免金鑰。本站 10 支山岳作品用它驗山峰座標、算爬升。

💰 Free⚖️ 商用權利未查證🔒 訓練政策未查證📌 活躍(ajnisbet 維護,GitHub)

不適合每天超過 1,000 次的批次查詢(要自架)、把單一資料集當作真值(不同解析度差很多)、沒逐資料集看授權就商用

看完整判斷
最適合
驗證一批座標的海拔對不對、算路線爬升與坡度、要自己挑高程資料集(歐洲 25 m、全球 30 m 等)
適合誰
研發、數據分析
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
公用 API(2026-09-19 讀官網並實測回 200):每次最多 100 個座標、每秒最多 1 次、每天最多 1,000 次;可用 Docker 自架跑自己的資料集。
商用條款
軟體本身 MIT(2026-09-19 由 GitHub API 讀取),但公用 API 的商用條款官網沒寫;而且每個高程資料集(EU-DEM、ASTER、SRTM、NED 等)各有自己的來源授權,官網逐一列出連結。要商用請逐資料集確認。
資料政策
公用端點免註冊;請求內容只有座標。
放在哪裡跑
SaaS、Self-hosted
怎麼接
公開 API
授權
MIT(軟體);資料集各自授權
還活著嗎
維護中活躍(ajnisbet 維護,GitHub)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 不同解析度的資料集不能共用同一套誤差門檻,同一座標可以差數百公尺
  • 刀刃地形與塔狀山頂會被網格抹平,低估是常態
  • 每天 1,000 次很快用完,批次要自架

氣象資料開放平臺(中央氣象署)

外部資源

台灣官方的天氣預報與觀測資料 API,要申請授權碼。本站山域與海邊作品的官方天氣來源。

💰 Free⚖️ 商用權利未查證🔒 訓練政策未查證📌 活躍(中央氣象署營運)

不適合直接從瀏覽器打(授權碼會外露)、不想註冊帳號的專案、需要全球資料

看完整判斷
最適合
要台灣本地的官方預報與觀測值、潮汐、地震、颱風這類只有官方有的資料、做給台灣使用者的工具
適合誰
研發、數據分析、公務員
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
免費,但要註冊取得授權碼:2026-09-19 實測不帶授權碼直接回 HTTP 401「Authorization key is not correct」。
商用條款
平臺的說明頁與條款頁需要 JavaScript 才能讀,本站用程式抓不到條文。同一份資料集在政府資料開放平臺的登錄(編號 9308「鄉鎮天氣預報」)license 欄位是代碼「1」,本站未能確認它對應哪一版條款。商用前請自行到 data.gov.tw 該資料集頁確認。2026-09-19 查。
資料政策
授權碼綁帳號;金鑰不能寫進前端網頁,要繞一層後端。
放在哪裡跑
SaaS
怎麼接
公開 API 登入方式 授權碼(Authorization 參數)
還活著嗎
維護中活躍(中央氣象署營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 授權碼寫進前端就等於公開,本站作品都繞 Worker 代理
  • 說明與條款頁需 JS,程式化查證做不到
  • 大量下載官方要求另外申請會員(data.gov.tw 登錄頁原文)

MiniSearch

專業任務工具

純前端的全文搜尋程式庫:幾百到幾萬筆資料在瀏覽器裡建索引、模糊比對、前綴搜尋,不用後端。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Luca Ongaro 維護;最近推送 2025-09)

你會在什麼情況下想到它站上有一份幾百筆的名錄(餐廳、步道、題目),使用者想打幾個字就找到,而你不想為了搜尋養一台伺服器。

怎麼用(最短路徑)

  1. `npm i minisearch`,或直接用 ESM CDN 引入。
  2. 宣告要索引的欄位(`fields`)與要回傳的欄位(`storeFields`),`addAll(rows)`。
  3. 中文一定要自訂 `tokenize`:把連續中文切成兩字一組(bigram),否則「牛肉麵」整句是一個詞,搜「牛肉」找不到。
  4. 查詢時開 `prefix: true` 與 `fuzzy: 0.2`,前者讓打一半就有結果,後者容錯一個字。
  5. 資料變動就整份重建,幾百筆不到半秒,不要試著增量維護。

真實案例:米其林指南的 433 家餐廳做站內搜尋433 筆、18 個文字欄位本站作者實作(最小落地,2026-09-19)

restaurants.json → MiniSearch(bigram tokenizer)→ 瀏覽器內查詢

為什麼在瀏覽器建索引,而不是把索引檔一起出貨?因為索引比資料還大。實測數字讓這個決定沒有懸念。

  • 建索引433 筆、18 個欄位,362.9 ms 建完。
  • 索引大小序列化後 489,079 bytes,原始 JSON 只有 364,552 bytes——出貨索引等於多載一份資料。
  • 查詢速度「牛肉麵」29 筆 7.63 ms、「鼎泰豐」1 筆 2.30 ms、「綠星」3 筆 0.28 ms。
  • 找不到的「ramen」0 筆——資料裡英文名沒有這個字,字面搜尋不會自己懂拉麵=ramen,同義詞要另外餵。

踩坑

  • 預設 tokenizer 對中文無效。它用空白與標點切詞,「蔡家牛肉麵」整個是一個 token,搜「牛肉麵」會用前綴比對勉強中,搜「肉麵」就沒了。bigram 切法是最省事的解。
  • 不要序列化索引再出貨。433 筆的索引就比資料大 34%,資料越多差距越大;在瀏覽器建只要零點幾秒。
  • `fuzzy` 開太大會把「台中」配到「台北」,0.2 是能容錯又不亂配的數字,要自己拿資料試。

什麼時候不要用它

  • 資料超過幾萬筆:索引記憶體與建索引時間都會讓手機吃不消,該上 DuckDB-wasm 或後端。
  • 只是要「篩選」不是「搜尋」:下拉選縣市、選類別,直接 `filter()` 就好,不需要索引。
  • 需要語意(「便宜的日本料理」):那是向量檢索或 LLM 的事。

要換的話

FlexSearch(更快但 API 較繞)、Fuse.js(純模糊比對、不建倒排索引,幾百筆以內夠用)、DuckDB-wasm(真的要 SQL 與大資料時)。

費用、授權、資料政策與維護狀態
最適合
靜態網站要站內搜尋,但沒有伺服器、幾百到幾萬筆的名錄、清單、題庫、要容錯(打錯一個字也找得到)
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
MIT(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
MIT
還活著嗎
維護中活躍(Luca Ongaro 維護;最近推送 2025-09)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 預設的斷詞把整句中文當一個詞,中文一定要自訂 tokenizer
  • 序列化後的索引可能比原始資料還大,別把索引出貨,在瀏覽器現場建
  • 只做字面比對,同義詞(拉麵/ramen)要自己餵

Turf.js

專業任務工具

瀏覽器與 Node 都能跑的地理計算程式庫:兩點距離、最近點、點在不在多邊形內、緩衝區,吃標準 GeoJSON。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Turf 社群維護)

你會在什麼情況下想到它你有一批經緯度(山峰、店家、釣點),要回答「離我最近的是哪個」「有幾個在 10 公里內」,或懷疑其中有幾筆座標是錯的。

怎麼用(最短路徑)

  1. `npm i @turf/turf`(整包)或只裝 `@turf/distance`、`@turf/nearest-point` 這種單模組。
  2. 把座標包成 GeoJSON:`turf.point([lng, lat])`——經度在前,跟平常寫 lat,lng 相反。
  3. `nearestPoint`、`distance`、`booleanPointInPolygon`、`bboxPolygon` 四個函式就能做完大部分事。
  4. 離群掃描:不要用一個大框,改算「每個點到名單內最近鄰的距離」,異常大的才是錯。

真實案例:郊山漫遊的 100 座小百岳做座標體檢100 座、含標高與縣市本站作者實作(最小落地,2026-09-19)

xiao-baiyue.js → GeoJSON FeatureCollection → nearestPoint/distance/booleanPointInPolygon

為什麼離群掃描不能用「台灣本島邊界框」?因為框會把對的當成錯的。這次就抓到三筆假警報。

  • 最近點台北 101 最近的小百岳是南港山,2.37 km;10 km 內有 6 座。
  • 邊界框掃描用本島框(119.9–122.1,21.8–25.4)掃,3 座在框外:雲台山、太武山、蛇頭山——全是金門馬祖,座標沒錯,是框錯了。
  • 最近鄰掃描改算兩兩距離,最近的三對是 2,999 m、3,022 m、3,240 m,沒有異常近的重複點,也沒有異常遠的孤點。
  • 結論外島是資料現實不是錯誤;離群要用相對距離判,不用絕對框。

踩坑

  • 經緯度順序。GeoJSON 是 `[lng, lat]`,資料檔通常是 `lat, lng`,包錯順序所有距離都算得出來、而且全錯,不會報錯。
  • 邊界框會誤判外島。金門、馬祖、蘭嶼在任何本島框外,掃出來要先問「它是不是本來就在外面」。
  • `@turf/turf` 整包引入體積大,前端出貨要改成單模組引用。

什麼時候不要用它

  • 只是算兩點距離:Haversine 公式十行就寫完,不必裝套件。
  • 要路程或等時圈:那是路由引擎(OSRM、Valhalla)的事。
  • 資料量到十萬點以上:改用 PostGIS 或 DuckDB 的空間擴充。

要換的話

geolib(更輕、只做距離與方位)、Python 端的 shapely+geopandas(建置腳本階段做同樣的事,本站山岳作品多半在這一層做)。

費用、授權、資料政策與維護狀態
最適合
一批座標要做距離、最近鄰、範圍判斷、資料建置階段的離群掃描(哪個點跑到海裡)、地圖上要畫緩衝圈、算面積
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
MIT(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
MIT
還活著嗎
維護中活躍(Turf 社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 用本島邊界框做離群掃描,外島會全部被標成錯
  • 整包很大,正式出貨要只引用用到的模組
  • 距離是大圓距離,不是路程

PapaParse

專業任務工具

瀏覽器與 Node 的 CSV 解析器:處理引號、換行、BOM、串流大檔,幾十 MB 的政府開放資料一秒內解完。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Matt Holt 與社群維護)

你會在什麼情況下想到它政府開放平臺給你一個幾十 MB 的 CSV,你想在建置腳本或瀏覽器裡直接讀,而不是先開 Excel 另存。

怎麼用(最短路徑)

  1. `npm i papaparse`;Node 端 `Papa.parse(text, { header: true, skipEmptyLines: true })`。
  2. 看 `result.errors`,空陣列才算解成功;`result.meta.fields` 是欄名。
  3. 檔案大於幾十 MB 改 `Papa.parse(stream, { step })` 一列一列處理,不要整份讀進記憶體。
  4. 抓下來的檔先看 Content-Type 以外的東西:政府平臺的 CSV 會標成 text/html,程式照標頭判斷會走錯分支。

真實案例:政府資料開放平臺全目錄 CSV 一次解完67,744,251 bytes、52,422 列、22 欄本站作者實作(最小落地,2026-09-19)

curl 全目錄匯出 → PapaParse(header 模式與串流模式各跑一次)

整份讀還是串流?67 MB 兩種都跑得動,差別在記憶體不在速度;決定的依據是它會跑在哪台機器。

  • 整份解析讀檔 322 ms、解析 861 ms,52,422 列 22 欄,0 個錯誤;第一欄名乾淨無 BOM 殘留(它自己處理掉了)。
  • 串流解析977 ms 跑完同樣 52,422 列,記憶體只留當下那一列。
  • 順手統計授權方式:政府資料開放授權條款第 1 版 52,380 筆、CC BY 4.0 16 筆、CC0 15 筆、CC BY-SA 8 筆、OFL 3 筆。
  • 目錄每天在變09-17 抓是 53,191 列,09-19 是 52,422 列——少了 769 個資料集。要重複跑的統計必須記日期。

踩坑

  • Content-Type 說謊。這份 CSV 的回應標頭是 text/html,內容是 CSV;程式若照標頭決定解析器會走錯路,要看內容開頭。
  • BOM 它會吃掉,但不是所有工具都會。同一份檔用別的解析器第一欄名可能多一個看不見的字元,篩不到。
  • 所有欄位都是字串:`'12' > '9'` 是 false,數值欄要自己 `Number()`。

什麼時候不要用它

  • 檔案是 .xlsx:用 SheetJS 或 exceljs。
  • 要做真正的分析(group by、join):把 CSV 丟進 DuckDB 或 Polars,不要在 JS 裡手寫聚合。
  • 只是十幾列的小設定檔:`split(',')` 就夠,不必裝套件。

要換的話

csv-parse(Node 端、串流原生)、DuckDB-wasm(要 SQL 時直接 `read_csv`)、Python 的 pandas/Polars(建置腳本階段)。

費用、授權、資料政策與維護狀態
最適合
開放資料平臺的 CSV 直接在前端或建置腳本讀、使用者上傳 CSV 要即時預覽、檔案太大不能一次讀進記憶體時用串流
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
MIT(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
MIT
還活著嗎
維護中活躍(Matt Holt 與社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • `header: true` 要求第一列是欄名,多列表頭的公文式 CSV 要先砍
  • 所有值都是字串,數字要自己轉
  • 串流模式在瀏覽器要用 File 物件,不是純字串

Workbox

專業任務工具

Google 出的 Service Worker 工具組:自動列出要預快取的檔案、算內容雜湊、管理快取策略,PWA 的離線與更新不用手寫。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Google Chrome 團隊維護)

你會在什麼情況下想到它你的 PWA 有十幾個檔,每次改一個就要記得升 sw.js 裡的 CACHE 版號,忘了一次使用者就卡在舊版。

怎麼用(最短路徑)

  1. `npm i -D workbox-build`,寫一支 `build-sw.mjs` 呼叫 `generateSW({ globDirectory, globPatterns, swDest })`。
  2. 它掃目錄、對每個檔算內容雜湊寫進 sw.js——檔案內容變,雜湊就變,不用手動升版。
  3. `skipWaiting: false` 保留「等待+橫幅+SKIP_WAITING 訊息」那套更新流程;設 true 就是改完立刻換。
  4. 外部資源(地圖圖磚、字型)用 `runtimeCaching` 設 CacheFirst 加上 `expiration`。
  5. 把 `build-sw` 接進部署指令,跟 staging 清洗一起跑。

真實案例:米其林指南 App 的 sw.js 改成自動產9 個檔、543 KB本站作者實作(最小落地,2026-09-19)

index.html+restaurants.json+icons → workbox-build generateSW → sw.js+workbox 執行期檔

為什麼保留 skipWaiting: false?因為家族的更新機制是「等待、顯示橫幅、使用者按了才切換」。自動產 sw 不該偷偷改掉這個行為。

  • 產出8 個預快取項目、543,238 bytes,排掉 og 分享圖;產生耗時 2,151 ms。
  • 檔案sw.js 只有 1,588 bytes,另外多一個 workbox-e190f46a.js 執行期檔——這個檔要一起部署,漏了 sw 就掛。
  • 版號每個項目帶 32 字元內容雜湊,改 restaurants.json 重跑就自動變;原本手寫的 2,635 bytes sw.js 裡那個 CACHE 版號從此不用人記。
  • 圖磚OSM 圖磚設 CacheFirst、最多 200 張、7 天——只快取使用者實際看過的,符合 OSM 圖磚政策;預抓是被禁止的。

踩坑

  • 執行期檔要一起出貨。generateSW 預設用 importScripts 載入 workbox-<hash>.js,只上傳 sw.js 會靜默失敗。要單檔就設 `inlineWorkboxRuntime: true`。
  • 它接管更新流程。skipWaiting 與 clientsClaim 兩個旗標決定使用者何時看到新版,接進既有橫幅機制前先確認這兩個值。
  • 預快取超過 2 MB 的檔會被跳過並警告,大資料檔要改 runtime 快取或提高上限。

什麼時候不要用它

  • 三、五個檔的單檔 App:手寫 30 行 sw.js 更清楚,也不用加建置步驟。
  • 沒有 Node 建置流程的專案:它是建置工具,沒地方跑。
  • 要精細控制每個請求的快取邏輯:直接寫 Service Worker。

要換的話

vite-plugin-pwa(用 Vite 的專案,底層就是 Workbox)、手寫 sw.js(本站 17 支 Pages 作品目前都是這樣,用了才知道要不要換)。

費用、授權、資料政策與維護狀態
最適合
PWA 要離線可用,而且檔案清單常變、每次改檔就要升快取版號、常常忘記的團隊、要對外部資源(圖磚、字型)設快取策略
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
MIT(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
MIT
還活著嗎
維護中活躍(Google Chrome 團隊維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 產出的 sw.js 旁邊還有一個 workbox-<hash>.js 執行期檔,要一起出貨
  • 預快取上限預設 2 MB,大檔要明說或改 runtime 快取
  • 快取外部圖磚要遵守對方的使用政策(OSM 只准快取使用者看過的)

Hono

專業任務工具

跑在 Cloudflare Workers、Deno、Bun、Node 上的輕量 Web 框架:路由、JSON、中介層幾行搞定,用的是 Web 標準的 Request/Response。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Yusuke Wada 與社群維護)

你會在什麼情況下想到它健康家族那種一支 Worker 塞八個小 App、或農漁產行情那種要開幾個查詢端點的後端,原生 `fetch(request)` 裡的 if/else 已經長到看不懂。

怎麼用(最短路徑)

  1. `npm i hono`,`const app = new Hono()`,`app.get(&#x27;/x/:id&#x27;, c =&gt; c.json(...))`,`export default app`——wrangler 直接認得。
  2. 路徑參數 `c.req.param(&#x27;id&#x27;)`、JSON body `await c.req.json()`、環境綁定 `c.env.DB`。
  3. `app.notFound()` 與 `app.onError()` 一開始就寫,不要讓 Workers 回預設的空白錯誤。
  4. 本機 `wrangler dev --local` 起來,用 Node 的 `fetch` 寫測試腳本打它。

真實案例:一支 Worker:三個端點加 404,接本機 D14 個路由、含 GROUP BY 彙總本站作者實作(最小落地,2026-09-19)

Hono → drizzle-orm/d1 → wrangler dev --local 的 D1

為什麼測試腳本改用 Node fetch,不用 curl?因為 curl 在 Windows 的 Git Bash 下會把中文參數轉成 ANSI 碼頁送出,資料寫進資料庫就是亂碼——這不是 Hono 的錯,但你會先怪它。

  • 路由GET /health、POST /prices、GET /prices/:item、GET /stats 加 notFound,全部各回對應狀態碼(201/200/404)。
  • 中文參數用 Node fetch 打 `/prices/青江菜` 與 `/prices/%E9%9D%92…` 兩種寫法,`c.req.param()` 都回「青江菜」、查到 2 筆——原生就解碼,不用自己 decodeURIComponent。
  • 假警報同一個端點用 Git Bash 的 curl 送「高麗菜」,寫進 D1 的是 CP950 亂碼,查詢當然 0 筆。花了一輪才確認是殼層,不是框架。
  • 啟動wrangler dev 幾秒內 Ready,之後每個請求在本機都是毫秒級。

踩坑

  • Windows 殼層會污染中文測試。Git Bash 呼叫原生 exe 時中文參數走 ANSI 碼頁;測試一律用 Node 腳本或檔案輸入,不要在命令列打中文。
  • 中介層順序就是執行順序。驗簽、CORS 要註冊在路由之前,寫在後面等於沒寫。
  • `export default app` 之後 wrangler 的 scheduled(排程)handler 要另外掛,Hono 只接 fetch。

什麼時候不要用它

  • 只有一個端點:原生 fetch handler 更短。
  • 要 Session、樣板、完整後端:那是 Next.js/Remix 那一層的事,Hono 是路由層。
  • 不是跑在 Web 標準執行環境(例如老的 Express 專案):沒有換的理由。

要換的話

itty-router(更小、更少功能)、原生 fetch handler(單端點)、Cloudflare 自家的 Pages Functions(檔案即路由,適合放在 Pages 專案裡)。

費用、授權、資料政策與維護狀態
最適合
Workers 上要開幾個 API 端點、一支 Worker 要同時服務多個小 App(路由分流)、要 404、驗簽、CORS 這類中介層而不想手刻
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
MIT(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
MIT
還活著嗎
維護中活躍(Yusuke Wada 與社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • 路由靠字串比對,路徑設計要先想好
  • 中介層順序決定行為,驗簽要放最前面
  • 在 Windows 用 Git Bash 的 curl 測中文會被殼層轉成 ANSI 碼頁,看起來像框架的錯

Drizzle ORM

專業任務工具

TypeScript 的輕量 ORM,直接支援 Cloudflare D1:用程式碼宣告資料表,查詢寫起來像 SQL 但有型別檢查。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Drizzle Team 維護)

你會在什麼情況下想到它Worker 裡 `env.DB.prepare(&#x27;SELECT ...&#x27;).bind(...)` 的字串越寫越多,欄位改名要全文搜尋,沒有任何東西幫你檢查。

怎麼用(最短路徑)

  1. `npm i drizzle-orm`;用 `sqliteTable()` 宣告表與欄位,這份宣告就是 schema 的單一來源。
  2. Worker 裡 `const db = drizzle(c.env.DB)`,`db.select().from(t).where(eq(t.item, x)).orderBy(desc(t.day)).limit(5)`。
  3. 插入用 `db.insert(t).values([...]).returning({ id: t.id })`,D1 支援 returning。
  4. 彙總用 `sql`avg(${t.price})`` 樣板配 `groupBy`。
  5. 建表這次用 `wrangler d1 execute --local --file=schema.sql`;正式流程要走 drizzle-kit 遷移,本站還沒測。

真實案例:農漁產行情那種每日價格表:宣告、寫入、查詢、彙總1 張表、2 個索引、3 種查詢本站作者實作(最小落地,2026-09-19)

sqliteTable 宣告 → drizzle(env.DB) → wrangler dev --local 的 D1

為什麼 schema 用程式碼宣告,而不是只留 schema.sql?因為查詢時的欄位名會被型別系統檢查。打錯欄位名在編輯器就紅,不用等到線上回空陣列。

  • 寫入POST 三筆 → `insert().values().returning()` 回 3 個 id,HTTP 201。
  • 查詢`where(eq(item, &#x27;青江菜&#x27;)).orderBy(desc(day)).limit(5)` 回 2 筆,依日期新到舊。
  • 彙總`select({ avg: sql`avg(price)`, n: sql`count(*)` }).groupBy(item)` 回每個品項的均價與筆數,青江菜 13.25。
  • 沒測的drizzle-kit 產遷移檔、`wrangler d1 migrations apply`——這次建表直接跑 SQL 檔,正式專案要補這段。

踩坑

  • 遷移是另一套工具。drizzle-orm 只管查詢,表結構變更要 drizzle-kit;兩個版本要對齊。
  • D1 額度照算。免費方案每天 500 萬列讀、10 萬列寫,`select *` 掃全表就是全表的列數,ORM 不會幫你加 WHERE。
  • 聚合函式要自己用 `sql` 樣板寫,型別是 unknown,要手動標。

什麼時候不要用它

  • 三個查詢的小 Worker:`env.DB.prepare()` 直接寫更短。
  • 團隊沒有 TypeScript:型別檢查是它一半的價值,純 JS 用只剩語法糖。
  • 資料庫不是 SQLite 系:D1 以外它也支援 Postgres/MySQL,但本站沒驗過。

要換的話

原生 D1 API(小專案)、Kysely(純查詢建構器、沒有 schema 宣告)、Prisma(功能多但在 Workers 上有 WASM 體積問題,見 Next.js+Prisma 那一列)。

費用、授權、資料政策與維護狀態
最適合
Workers+D1 的專案要一個 schema 單一來源、查詢想有型別提示又不想被 ORM 藏掉 SQL、同一份 schema 要在本機 SQLite 與 D1 共用
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
Apache-2.0(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
Apache-2.0
還活著嗎
維護中活躍(Drizzle Team 維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 本站只實測了查詢層;drizzle-kit 的遷移產生與套用沒測,那是另一套流程
  • D1 的每日列讀寫額度照算,ORM 不會幫你省
  • 聚合要用 `sql` 樣板,不是每個函式都包好了

Dexie.js

專業任務工具

IndexedDB 的封裝:一行宣告 schema,`where().equals()` 查索引、`bulkAdd` 批次寫入、直接存 Blob,離線 App 的本地資料庫。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(David Fahlander 與社群維護)

你會在什麼情況下想到它錯題管理器那種要在手機上存幾千題、每題帶一張圖、還要依科目與答對次數查的 App,手寫 IndexedDB 的 transaction 與 cursor 已經寫到懷疑人生。

怎麼用(最短路徑)

  1. `npm i dexie`;`db.version(1).stores({ mistakes: &#x27;++id, subject, [subject+streak], createdAt&#x27; })`——只列要索引的欄位,其他欄位照存。
  2. 寫入 `bulkAdd(rows)`;Blob 直接放在物件裡,不用轉 base64。
  3. 查詢 `where(&#x27;[subject+streak]&#x27;).equals([&#x27;數學&#x27;, 3])`、`where(&#x27;subject&#x27;).equals(&#x27;英文&#x27;).reverse().sortBy(&#x27;createdAt&#x27;)`。
  4. 改 schema 就 `version(2).stores({...})` 加 `upgrade()`,舊的 version 宣告要留著。
  5. 測試在真瀏覽器跑:Playwright 開一個本機頁面呼叫這些函式。

真實案例:錯題管理器的資料模型在真 Chrome 上壓測1,000 題、每題 4 KB 圖片 Blob本站作者實作(最小落地,2026-09-19)

Dexie 4.4.6 → 本機 http 頁面 → Playwright 驅動已安裝的 Chrome 153

為什麼堅持在真瀏覽器測,不用 Node 的假 IndexedDB?因為測試環境的容忍度跟執行環境不同,本機綠燈會說謊——這個站已經為此付過學費。

  • 寫入1,000 筆含 Blob `bulkAdd` 283 ms。
  • 複合索引`[subject+streak]` 查「數學、連對 3 次」count 0.9 ms,84 筆。
  • 索引+排序科目「英文」333 筆依建立時間反排 10.6 ms。
  • Blob取第 500 筆,`image instanceof Blob` 且 size 4,096 一致;storage 用量 5,111,808 bytes。

踩坑

  • version 號只能往上。改了 `stores()` 沒升版,開庫就拋錯;升了版但砍掉舊 version 宣告,舊使用者的資料會遷移失敗。
  • Node 測不到。Node 沒有 IndexedDB,裝假實作能讓測試綠,但 Blob、配額、瀏覽器清資料這些行為都不在假實作裡。
  • 複合索引要在 `stores()` 宣告 `[a+b]` 才能用,事後查會直接拋錯,不是回空。

什麼時候不要用它

  • 幾個鍵值的設定:localStorage。
  • 資料要跨裝置:先想同步層,本地庫只是快取。
  • 資料量到十萬筆以上還要複雜查詢:考慮 sql.js 或 DuckDB-wasm。

要換的話

idb(更薄,只是 Promise 化的 IndexedDB)、localForage(key-value 抽象、API 最簡單)、直接寫 IndexedDB(本站錯題管理器目前就是這樣,1 支作品)。

費用、授權、資料政策與維護狀態
最適合
PWA 要在裝置上存幾千筆資料與圖片、需要索引查詢(依科目、依日期)而不是整包讀出來篩、版本升級時要遷移舊資料
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
Apache-2.0(2026-09-19 由 GitHub API 讀取)。同名的 Dexie Cloud 同步服務是另一個產品,本卡不涵蓋。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
Apache-2.0
還活著嗎
維護中活躍(David Fahlander 與社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 改 `stores()` 定義必須升 version 號,否則開庫直接拋錯
  • Node 沒有 IndexedDB,用假實作跑的測試不等於瀏覽器會過
  • 瀏覽器可能在空間不足時清掉資料,重要的東西要能重建或匯出

Playwright

專業任務工具

微軟出的瀏覽器自動化:用程式開真的 Chrome/Firefox/WebKit,設手機視窗、量 DOM、截圖、跑端對端測試,可以直接用機器上已裝的 Chrome。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Microsoft 維護)

你會在什麼情況下想到它你用 headless Chrome 加手工 CDP 輪詢做截圖驗證,發現 window-size 小於 504 會被夾住、virtual-time 會讓每次失敗在不同項目——想要一個不用自己修的驅動層。

怎麼用(最短路徑)

  1. `npm i playwright`;不想下載瀏覽器就 `chromium.launch({ channel: &#x27;chrome&#x27; })` 用機器上的 Chrome。
  2. `browser.newPage({ viewport: { width: 390, height: 844 }, deviceScaleFactor: 2 })`——視窗寬度是真的 390,不會被夾。
  3. `page.goto(url, { waitUntil: &#x27;networkidle&#x27; })`,然後 `page.evaluate()` 量 `scrollWidth` 與 `clientWidth`。
  4. `page.screenshot()` 留證據,但斷言要寫在 DOM 數字上。
  5. 本機頁面用 `python -m http.server` 起一個埠,`file://` 下 IndexedDB 與 fetch 行為不一樣。

真實案例:找工具頁在手機寬度的自動體檢1 個線上頁、99 張卡本站作者實作(最小落地,2026-09-19)

Playwright channel: 'chrome' → Chrome 153 → ridgeline-lab.com/tools/

為什麼用 channel: 'chrome' 而不下載 Playwright 自己的 Chromium?因為這台機器已經有 Chrome,而且使用者用的也是 Chrome;少下載幾百 MB,測的還是真正會被用的那個瀏覽器。

  • 啟動274 ms 起 Chrome 153.0.8010.52,沒有下載任何東西。
  • 手機寬度viewport 390 實際生效:`clientWidth` 390、`scrollWidth` 390,沒有橫向捲動——之前用 window-size 參數會被夾到 504。
  • 內容networkidle 4,432 ms 後 DOM 裡有 99 張 `article.tool`、21 張 `.scard`,跟建置輸出一致。
  • 順手同一個瀏覽器實例先跑完 Dexie 的 IndexedDB 壓測再來量這頁,兩件事一支腳本。

踩坑

  • 截圖會騙人,DOM 不會。截圖只證明「看起來對」,橫向捲動要量 `scrollWidth &gt; clientWidth`。
  • networkidle 不等於載完。有 analytics 或長輪詢的頁面它會等到逾時;改等特定元素出現。
  • `file://` 頁面的 IndexedDB、fetch、Service Worker 行為跟 http 不同,測本機頁一律起一個 http 伺服器。

什麼時候不要用它

  • 單元測試邏輯函式:不需要瀏覽器。
  • 只是想看一眼:手動開 DevTools 更快。
  • 要爬有反機器人的網站:那是另一個問題,工具再好也過不去。

要換的話

Puppeteer(只驅動 Chrome、API 相近)、手工 CDP(本站之前的做法,坑很多)、Cypress(偏向前端開發者的測試框架)。

費用、授權、資料政策與維護狀態
最適合
部署前自動確認頁面在 390px 沒有橫向捲動、元素都在、需要真瀏覽器才測得到的東西(IndexedDB、Service Worker、字型)、批次截圖給人看
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
開源,免費。
商用條款
Apache-2.0(2026-09-19 由 GitHub API 讀取)。
資料政策
程式庫,跑在你自己的環境;本身不連外、不收資料。
放在哪裡跑
Self-hosted
授權
Apache-2.0
還活著嗎
維護中活躍(Microsoft 維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • 預設會下載三套瀏覽器(幾百 MB),用 `channel: 'chrome'` 可以直接用已裝的 Chrome
  • `networkidle` 在有長輪詢的頁面會等很久
  • 截圖不是驗證,量 DOM 才是;兩個都要

geoBoundaries

外部資源

全球行政區界資料庫,涵蓋所有聯合國會員國的省、縣層級邊界,CC BY 4.0,API 直接回 GeoJSON。

💰 Free⚖️ 可商用(須標示出處)🔒 訓練政策未查證📌 活躍(William & Mary geoLab 維護)

不適合以為邊界代表官方立場(它明說是彙整不是政治表態)、需要村里級的細緻邊界、不願意標示出處的專案(標示是授權條件)

看完整判斷
最適合
要一份可商用的各國行政區界、按縣市、按省做資料著色地圖、程式化取用(API 回 GeoJSON)
適合誰
研發、數據分析、PM
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
免費、免帳號;API 實測直接回 GeoJSON(台灣 ADM1,2026-09-19)。
商用條款
官網原文:「geoBoundaries datasets are provided under the CC BY 4.0 license, which allows for most commmercial, noncommercial, and academic uses. Our license requires an acknowledgement in any products you produce which use this data.」2016 年起收錄約 100 萬條邊界、涵蓋 200 多個國家與地區。2026-09-19 讀。
資料政策
公開資料,API 不用帳號。
放在哪裡跑
SaaS、Self-hosted
怎麼接
公開 API
授權
CC BY 4.0
還活著嗎
維護中活躍(William & Mary geoLab 維護)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 標示出處是授權條件不是禮貌,漏標等於沒授權
  • 各國的行政層級定義不同,ADM1 在甲國是省、在乙國可能是州
  • 邊界來源逐國不同,精度不一致

GeoNames

外部資源

全球地名資料庫:2,500 萬個地名、1,200 萬個獨立地物,含座標、人口、行政層級與多語別名,CC BY 授權。

💰 Free⚖️ 可商用(須標示出處)🔒 訓練政策未查證📌 活躍(GeoNames 營運)

不適合門牌級的地址解析(那是地理編碼服務的事)、高頻商業查詢直接打公用 API(有限流)、不標示出處的專案

看完整判斷
最適合
地名搜尋與自動完成的本地資料來源、把地名對應到國家、行政區與時區、需要多語言地名對照
適合誰
研發、數據分析
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
資料庫免費下載;API 要免費帳號,demo 帳號有限流(2026-09-19 實測 demo 端點回 200 但內容極短)。
商用條款
官方 About 頁原文:「The GeoNames geographical database is available for download free of charge under a creative commons attribution license.」資料量同頁載明:逾 2,500 萬個地名、1,200 萬個獨立地物、480 萬個居住地、1,600 萬個別名。2026-09-19 讀。
資料政策
公開資料;用 API 要帳號,查詢內容會送到對方伺服器。
放在哪裡跑
SaaS、Self-hosted
怎麼接
公開 API 登入方式 免費帳號 username 參數
授權
CC BY
還活著嗎
維護中活躍(GeoNames 營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 公用 API 有每日限額,正式用途要下載資料庫自架
  • 地名品質逐國不同,小地方可能缺漏或重複
  • 同名地點很多,配對要加上國家與行政區條件

Overture Maps

外部資源

由 Meta、Microsoft、Amazon、TomTom 等組成的開放地圖基金會出品:地點、建物、道路、行政區與地址,以 Parquet 格式整批釋出。

💰 Free⚖️ ⚠️ 可商用但逐主題授權不同🔒 訓練政策未查證📌 活躍(Overture Maps Foundation,Linux 基金會旗下)

不適合前端直接讀(檔案是資料工程格式,不是 API)、只要幾個點的小專案(殺雞用牛刀)、沒看清楚各主題授權就整批商用

看完整判斷
最適合
需要全球 POI(地點)而 OSM 覆蓋不足的地區、資料工程管線(Parquet 直接進 DuckDB/Spark)、建物輪廓與道路網的整批分析
適合誰
研發、數據分析
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
免費、免帳號,資料放在雲端物件儲存直接讀。
商用條款
官方出處頁載明各主題授權不同:base、buildings、divisions 等主題為 ODbL(含 OpenStreetMap 資料),places 主題的 Meta/Microsoft/PinMeTo 等來源為 CDLA Permissive 2.0,另有來源為 CC BY 4.0 與 ODC-PDDL。**ODbL 的主題會帶來衍生資料庫同授權的義務,CDLA 不會**——混著用之前要先確認你用到哪幾個主題。2026-09-19 讀。
資料政策
公開資料檔案,下載不用帳號。
放在哪裡跑
Self-hosted
授權
ODbL/CDLA Permissive 2.0/CC BY 4.0(依主題)
還活著嗎
維護中活躍(Overture Maps Foundation,Linux 基金會旗下)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 不同主題不同授權,ODbL 的主題有同授權義務
  • Parquet 檔案巨大,要用 DuckDB 或雲端查詢,不能直接開
  • 出處標示要逐主題寫,官方頁列了很長一串

USGS 地震目錄

外部資源

美國地質調查所的全球地震資料:即時 GeoJSON 摘要(過去一小時/一天/一週/一月)與歷史查詢 API,美國公眾領域。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(美國地質調查所營運)

不適合取代官方防災警報(它不是台灣的官方發布單位)、需要台灣本地最快速報(那是氣象署)、以為每筆規模都是最終值(初判會被修正)

看完整判斷
最適合
做地震即時看板或推播、研究某地區的歷史地震分布、不想申請金鑰就要全球地震資料
適合誰
研發、數據分析、老師
使用門檻
需要工程能力 需要寫程式技術等級 Lv.3
費用細節
免金鑰、免帳號;2026-09-19 實測即時 GeoJSON 回 200、約 202 KB。
商用條款
USGS 官方頁原文:「USGS-authored or produced data and information are considered to be in the U.S. Public Domain.」⚠️ 同頁提醒:網站上部分非 USGS 拍攝的照片與圖片仍有著作權,不在公眾領域內。2026-09-19 讀。
資料政策
公開資料,免帳號。
放在哪裡跑
SaaS
怎麼接
公開 API
授權
美國公眾領域(資料)
還活著嗎
維護中活躍(美國地質調查所營運)
複查頻率
每 180 天下次複查 2027-03-18自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 它是資料來源不是警報系統,防災決策要看當地官方
  • 初判規模與位置會被後續修正,快取太久會顯示舊值
  • 網站上的照片與插圖不一定是公眾領域

Unicode CLDR

外部資源

各語言與地區的在地化資料:國名、語言名、貨幣、日期與數字格式、時區顯示名,是幾乎所有作業系統與程式語言在地化的底層。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(Unicode 協會維護)

不適合以為它管時區規則(那是 IANA tz)、直接當資料庫用(多數人是透過程式語言的國際化函式庫間接用)、需要行銷用的國家分類

看完整判斷
最適合
做多語系介面要一份權威的在地化資料、國名、貨幣、語言代碼的對照、日期與數字格式要符合各地習慣
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
免費、開放下載。
商用條款
Unicode License v3 原文:「Permission is hereby granted, free of charge, to any person obtaining a copy of data files and any associated documentation (the "Data Files") or software … to deal in the Data Files or Software without restriction」,條件是保留著作權與授權聲明。2026-09-19 讀。
資料政策
靜態資料檔,不連外。
放在哪裡跑
Self-hosted
授權
Unicode License v3
還活著嗎
維護中活躍(Unicode 協會維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • 資料龐大且結構複雜,多數情況該用程式語言的國際化 API 而不是自己讀
  • 每年改版,顯示字串會變動
  • 繁簡與區域變體要指定對,zh-TW 與 zh-Hant 不完全等價

IANA 時區資料庫(tz)

外部資源

全球各地當地時間的歷史與規則:時區邊界、UTC 偏移、日光節約時間的變更歷史,公眾領域。

💰 Free⚖️ 可商用🔒 訓練政策未查證📌 活躍(IANA 與 tz 社群維護)

不適合把時區當固定不變(各國政治決定會改)、需要時區的地理多邊形(那要另外的資料集)、以為只要存 UTC 就沒事(顯示仍需規則)

看完整判斷
最適合
任何要處理跨時區時間的程式、查某地某年當時的日光節約規則、伺服器與裝置的時區更新
適合誰
研發
使用門檻
需要專業部署/開發 需要寫程式技術等級 Lv.4
費用細節
免費,公開下載。
商用條款
官方 LICENSE 檔原文:「Unless specified below, all files in the tz code and data (including this LICENSE file) are in the public domain.」少數檔案(date.c、newstrftime.3、strftime.c)源自 BSD 並採 BSD 三條款授權。2026-09-19 讀。
資料政策
靜態資料檔,不連外。
放在哪裡跑
Self-hosted
授權
Public domain(少數檔案 BSD-3-Clause)
還活著嗎
維護中活躍(IANA 與 tz 社群維護)
複查頻率
每 365 天下次複查 2027-09-19自動確認網址存在:2026-09-19
你需要注意
  • ⚠️ 規則一年改好幾次,系統沒更新就會算錯當地時間
  • 歷史資料以「有代表性的地點」為單位,不是每個城市都有自己的條目
  • 時區名稱會被淘汰改成別名

這個條件下,目前沒有需要工程協助的選項。

還需要什麼

技術類型速查——聽不懂廠商講的名詞時來這裡。 選工具前先知道這幾件事——授權與模型權重的共同坑。 回到全部 126 個選項

收錄的是本站實際查證過官方定價、授權與資料政策的選項(目前 AI 服務 13 · 專業任務工具 55 · 外部資源 46 · 技術類型 12)。 卡片上的「人工查核」日期,是我們最後一次真的讀過官方頁面的時間; 條款與價格都會改版,要拿去做正式決策前請自己再點一次官方連結確認。 發現過期或寫錯,歡迎來信告訴我。