重點速覽
因為很多 AI 工具本身就是用 Python 或 JavaScript 寫的程式,要有對應的執行環境(Python 或 Node.js)才能跑,而且這些工具是透過各自的套件管理工具(Python 用 pip,Node.js 用 npm、npx)來下載與安裝。要看一份教學需要哪一個,看它的指令就知道:出現 python、pip、requirements.txt 是 Python;出現 node、npm、npx、package.json 是 Node.js。如果工具有提供官方安裝程式或獨立安裝指令,往往兩個都不用另外裝。
為什麼 AI 教學都要先裝 Python 和 Node.js?因為你要用的 AI 工具,很多本身就是用 Python 或 JavaScript 寫成的程式,電腦裡要先有能「讀懂並執行」這些程式的軟體,工具才跑得起來。這篇不教安裝步驟(各工具的安裝方式請看對應的工具文章),而是說明這兩個東西是什麼、教學裡那些 pip、npm、npx、虛擬環境在做什麼,以及看到「找不到指令」時該怎麼判斷。
Python 和 Node.js 是什麼?
程式語言是寫程式用的語言;寫好的程式碼要有另一個軟體負責執行,這個軟體稱為執行環境(Runtime,讓某種語言的程式能在電腦上跑起來的軟體)。
- Python 是一種程式語言,也是執行 Python 程式的軟體名稱。負責逐行讀取並執行 Python 程式碼的部分稱為直譯器(Interpreter)。你在終端機輸入
python或python3,啟動的就是它。 - Node.js 是 JavaScript 的執行環境。Node.js 官方的說明是:它是開源、跨平台的 JavaScript 執行環境,把 Google Chrome 核心的 V8 JavaScript 引擎拿到瀏覽器之外執行。所以原本只在網頁裡跑的 JavaScript,也能在你的電腦上讀寫檔案、連網路、當伺服器。
簡單說:Python 和 Node.js 本身不是 AI,它們是 AI 工具的「地基」。一個用 Python 寫的工具,沒有 Python 就跑不起來;一個用 JavaScript 寫的工具,沒有 Node.js 也一樣。
為什麼 AI 工具常用這兩個來發布?
除了程式語言本身,關鍵在套件(Package,別人寫好、打包起來讓你直接拿來用的程式碼)和套件管理工具(Package manager,負責下載、安裝、更新、移除套件的程式)。
| 項目 | Python | Node.js |
|---|---|---|
| 語言 | Python | JavaScript |
| 執行程式的指令 | python、python3(Windows 常見 py) | node |
| 套件管理工具 | pip | npm(另有 npx 可以直接執行套件裡的指令) |
| 預設的套件來源 | Python Package Index(PyPI) | npm registry |
| 專案的套件清單 | 常見 requirements.txt | package.json |
| 套件裝在哪 | 建議裝進專案的虛擬環境(常見資料夾名稱 .venv) | 專案底下的 node_modules 資料夾;加 -g 是全域安裝 |
| 在本站會遇到的例子 | ComfyUI 這類本地 AI 程式,用 python -m pip install -r 裝相依套件 | 用 npm install -g 安裝的終端機 AI 代理、用 npx 啟動的 MCP 伺服器 |
表格最後一列是本站整理的例子,不是官方分類。
這兩個生態系的共同點是:一行指令就能把別人的工具連同它需要的所有套件一起裝好。Python 的 pip 預設從 PyPI 下載套件;Node.js 官方說明 npm 是 Node.js 的標準套件管理工具。對開發者來說,把工具發布成套件是成本最低的發布方式之一,所以很多 AI 教學的第一步才會是「先裝 Python」或「先裝 Node.js」。
這裡還有一個常見名詞:相依套件(Dependency),指一個程式要正常運作、必須先裝好的其他套件。Node.js 專案的相依套件寫在 package.json 裡,在專案資料夾執行 npm install,npm 就會把清單上的套件全部裝進 node_modules。Python 專案常把清單寫在 requirements.txt,用 python -m pip install -r requirements.txt 一次裝好。
npm install 和 npx 的差別
很多 AI 教學會讓你執行 npx 某個套件,而不是先 npm install。差別在於:
npm install:把套件下載並安裝下來,之後重複使用。不加參數時裝進目前專案的node_modules;加-g是全域安裝(裝到整台電腦都能用的位置),npm 官方文件的建議是:要在命令列直接執行的工具裝在全域,要在程式碼裡引用的套件裝在專案裡。npx:直接執行某個套件提供的指令。npm 官方文件說明,如果專案裡沒有這個套件,npx 會把它裝到 npm 的快取資料夾再執行,執行前會先詢問你(加--yes就不問)。
例如 Claude Code 的官方文件說明,有些 MCP 伺服器的設定說明會給你一行像 npx -y @example/mcp-server 的啟動指令,代表這個伺服器會在你的電腦上執行。這時你的電腦就需要 Node.js。也因為 npx 會下載並執行別人寫的程式,請只執行你信任來源的套件,安全原則見 讓 AI 代理安全操作電腦。
虛擬環境:讓每個 Python 專案各用各的套件
虛擬環境(Virtual environment)是一個獨立的資料夾,裡面有一份 Python 和這個專案需要的套件,和其他專案、和系統本身的 Python 隔開。
為什麼需要它?Python 官方教學舉的例子是:A 程式需要某個套件的 1.0 版,B 程式需要 2.0 版,如果全部裝在同一個 Python 裡,不管裝哪一版,都會有一個程式無法執行。給 A、B 各自一個虛擬環境,就互不影響。
Python 官方文件對虛擬環境的幾個說明,對初學者特別實用:
- 常見的資料夾名稱是
.venv或venv,放在專案資料夾裡。 - 不要放進 Git 這類版本控制(版本控制的概念見 給 AI 使用者的 Git 入門)。
- 它是「用完可丟」的:應該能輕鬆刪掉再重建,所以不要把自己的程式碼放在裡面。
- 不能搬移或複製:要換位置,就在新位置重建一個。重建時,用
requirements.txt這類清單把套件裝回來最方便。
「啟動」(activate)虛擬環境,實際上做的事是把虛擬環境裡放執行檔的資料夾,加到 PATH 的最前面,所以之後輸入 python 會找到虛擬環境裡的那一份。官方文件也說明,啟動不是必要的:直接用虛擬環境裡 Python 的完整路徑執行,效果一樣。
怎麼看出一份教學需要哪一個?
以下是本站整理的判斷方法,不是官方標準:
- 先看工具的官方安裝方式。如果有官方安裝程式、桌面程式,或像
curl ... | bash這種獨立安裝指令,通常不需要先裝 Python 或 Node.js。例如 Claude Code 用官方安裝指令就不需要 Node.js,只有改用 npm 安裝時才需要。 - 看指令開頭的字。
python、python3、py、pip是 Python;node、npm、npx是 Node.js。 - 看專案裡的檔案。有
requirements.txt或.py檔,是 Python 專案;有package.json,是 Node.js 專案。 - 看有沒有自帶執行環境。有些軟體會把自己需要的 Python 一起打包,例如本站 ComfyUI 安裝教學 裡的可攜版,指令用的是資料夾裡自帶的
python_embeded\python.exe,不是你電腦上另外裝的 Python。
「找不到指令」等常見錯誤,先檢查什麼
這些指令都要在終端機(用文字輸入指令來操作電腦的程式)裡輸入。終端機、路徑、PATH 的基礎概念,請先看 終端機基礎。
| 你看到的狀況 | 可能的原因 | 先試什麼 |
|---|---|---|
終端機說找不到 python、node、npm 這類指令 | 沒有安裝,或程式所在的資料夾不在 PATH 裡 | 開一個新的終端機視窗再試;用 python3 --version(Windows 用 py --version)或 node --version 確認 |
用 npm install -g 裝好的工具,輸入名稱卻找不到 | npm 放全域指令的資料夾不在 PATH 裡 | 依 npm 官方文件,確認全域安裝的路徑在 PATH 裡 |
輸入 python3 --version 出現 NameError | 你是在 Python 的互動模式(提示字元是 >>>)裡輸入,而不是在終端機 | 先離開 Python 互動模式(輸入 quit()),再到終端機輸入 |
| 用 pip 安裝時出現權限錯誤 | 想把套件裝進系統的 Python | 不要用系統管理員權限硬裝,改建立虛擬環境再安裝 |
| 明明裝了套件,執行時卻說找不到 | 套件裝到了另一份 Python(電腦上常不只一份) | 用 python -m pip 安裝,確保 pip 和你執行的是同一份 Python;用虛擬環境時,確認已啟動 |
最後一列的 python -m pip 寫法,是 Python 官方教學一直使用的方式:-m 代表「用這一份 Python 執行 pip 模組」,所以套件一定會裝進你正在用的那一份 Python。
接著看什麼
- 還不熟終端機、路徑和環境變數:終端機基礎
- 想替自己的專案留下可以還原的紀錄:給 AI 使用者的 Git 入門
- 想知道 npx 啟動的 MCP 伺服器是什麼:MCP 是什麼
- 讓 AI 代理幫你執行安裝指令前,先讀:讓 AI 代理安全操作電腦
- 名詞不熟:到 名詞小辭典 查,例如 Python、Node.js、套件管理工具、虛擬環境、PATH。
常見問題
我只想用 AI 工具,不寫程式,也一定要裝 Python 或 Node.js 嗎?
不一定。只要工具是用 Python 或 JavaScript 寫的,而且你選擇用 pip 或 npm 安裝,就需要對應的執行環境;但不少工具另外提供官方安裝程式或獨立安裝指令,例如 Claude Code 用官方安裝指令就不需要 Node.js。先看工具的官方文件,再決定要不要裝。
Python 和 Node.js 要兩個都裝嗎?
看你要用的工具。它們是兩個不同語言的執行環境,彼此不互相取代,也不衝突;只用到其中一種工具,就只裝那一個。
什麼是虛擬環境?一定要用嗎?
虛擬環境是替單一專案準備的一個獨立資料夾,裡面有自己的 Python 和套件,不會和其他專案打架。Python 官方教學建議用它來解決「A 專案要舊版套件、B 專案要新版」的衝突;而且遇到權限錯誤時,官方安裝指南建議改用虛擬環境,而不是用系統管理員權限硬裝。
npm install 和 npx 有什麼不一樣?
npm install 是把套件下載、安裝進專案(或用 -g 裝到全域),之後可以重複使用。npx 是直接執行某個套件提供的指令;如果專案裡沒有那個套件,它會先問你,再把套件下載到 npm 的快取資料夾裡執行。
為什麼明明裝好了,終端機還是說找不到指令?
最常見的原因是那個程式所在的資料夾不在 PATH 裡,或是你在安裝前就開著的終端機視窗還沒讀到新的設定。先關掉終端機、開一個新視窗再試;用 npm 全域安裝的指令,npm 官方文件也提醒要確認它的安裝路徑在 PATH 裡。
可以把 .venv 或 node_modules 資料夾複製到別台電腦,或放進 Git 嗎?
不建議。Python 官方文件說明虛擬環境不該放進 Git 這類版本控制,也不適合搬移或複製,要用 requirements.txt 這類清單在新位置重建;Node.js 專案也是同樣的道理,保留 package.json,到新位置再用 npm install 裝回來。
留言
用 GitHub 帳號登入就能留言,留言會公開顯示在 GitHub Discussions。留言前請先看社群規則。