Anaconda 介紹與環境安裝
對剛踏入程式設計這個領域的初學者,最常遇到的挑戰之一就是「環境設定」。不同專案可能需要不同版本的 Python 或套件,手動管理這些相依性不僅繁瑣,且容易發生衝突,導致程式無法順利執行。
簡單來說,Python package 是一門「程式語言」的安裝包,而 Anaconda 則是一個「懶人工具箱」。
詳細對比:Python package vs. Anaconda
| 特性 | Python package (官方原生版) | Anaconda (科學計算發行版) |
| 本質 | 程式語言本身。 | 以 Python 為核心的軟體包管理器與環境。 |
| 內容物 | 只有 Python 解譯器和標準函式庫。 | Python + 1,500+ 個常用的科學計算與數據分析套件。 |
| 套件管理 | 使用 pip。 | 可使用 pip或 conda(pip比較通用,安裝衝突較少; conda功能更豐富,可管理非 Python 依賴項)。 |
| 圖形介面 | 無(主要透過終端機/命令提示字元)。 | 有(Anaconda Navigator),點點滑鼠就能操作。 |
| 佔用空間 | 非常小(約 100MB 左右)。 | 非常大(約 3GB - 5GB 以上),因為預設包含IDE等套件。 |
| 目標族群 | 一般開發者、網站開發、系統自動化。 | 數據科學家、AI 研究、機器學習工程師。 |
主要差異
Anaconda 內建了 Conda 環境管理系統。
在開發時,我們常遇到「專案 A 需要舊版套件,專案 B 需要新版套件」的情況。原生 Python 處理這類衝突比較麻煩;而 Anaconda 讓你像開關抽屜一樣,輕鬆切換不同的獨立環境,互不干擾。
在安裝 Anaconda 與 PyTorch 之前,硬體規格評估與顯示卡驅動程式的準備是最關鍵的前置作業。如果系統環境或驅動沒設定好,即使成功安裝了軟體套件,後續也無法順利呼叫 GPU 進行模型訓練加速。
Anaconda 與沙盒 容器 虛擬機
簡單來說,我們剛剛建立的 Conda 虛擬環境 (test_env),既不是虛擬機,也不是容器。嚴格定義上,它最接近一種「輕量級的環境變數隔離(套件沙盒)」。
把這三種技術從「最輕量」到「最重量」做結構上的對比:
1. Python/Conda 虛擬環境 (Virtual Environment)
- 本質:只是硬碟裡的一個資料夾,加上環境變數的切換。
- 結構運作:當您在 terminal 輸入
conda activate test_env時,系統並沒有啟動任何獨立的作業系統或核心。只是把 Windows 的「路徑設定 (PATH)」告訴電腦:接下來呼叫python或是執行套件時,優先去test_env這個資料夾裡面找,不要去系統預設的全域環境找。 - 隔離程度(極低):它只隔離了 Python 套件(例如專案 A 的 PyTorch 不會跟專案 B 的 TensorFlow 發生衝突)。
2. 容器 (Container, 例如 Docker)
- 本質:作業系統層級的隔離(進程與檔案系統隔離)。
- 結構運作:容器會共用您電腦底層的作業系統核心 (Kernel),但為應用程式打造一個看起來「完全獨立」的假象空間。它有自己專屬的檔案系統、網路介面與進程空間。
- 隔離程度(中高):程式碼被關在容器裡,即使程式崩潰,通常也不會影響外面的主機。在 AI 領域,許多人會把開發環境包裝成 Docker Container 來確保到哪台機器跑都不會報錯,不過要讓 Docker 順利調用本機的顯示卡,需要額外設定 NVIDIA Container Toolkit。
3. 虛擬機 (Virtual Machine, VM, 例如 VMware, VirtualBox, Proxmox VE)
- 本質:硬體層級的虛擬化。
- 結構運作:它會在您的實體硬體上,透過虛擬化軟體切出一塊資源(例如分配 4 核心 vCPU、8GB RAM),並在上面安裝一整套全新的作業系統(Guest OS)。
- 隔離程度(最高):完全的沙盒狀態,虛擬機裡面中毒或系統崩潰,外面的宿主機完全沒事。不過,由於中間隔了一整層虛擬硬體與作業系統,如果要讓 VM 裡面的程式直接調用底層的硬體資源(例如所謂的 GPU PCIe Passthrough 硬體直通),設定難度非常高。
1. 基本系統與硬體需求
- 作業系統:Windows 10/11、macOS 10.15+(支援 Apple Silicon 與 Intel Mac)、或 Linux(推薦 Ubuntu 20.04/22.04 LTS)。(這裡以 Windows 系統為範例)
- 記憶體 (RAM):至少需要 8GB,但強烈建議 16GB 或 32GB 以上,以免在載入資料集或大型模型時發生記憶體不足而崩潰。
- 儲存空間 (硬碟):建議使用 SSD,有助於加速模型載入。Anaconda 本身約佔用 3~5 GB,但後續的 PyTorch 框架、相關依賴包,以及動輒數 GB 的 AI 模型與資料集,通常會輕易吃掉 20GB 到 50GB 以上的可用空間。
(參考資料:Anaconda 官方系統需求)
2. 顯示卡 (GPU) 與驅動程式前置準備
AI 運算極度依賴 GPU,不同的顯示卡廠牌有完全不同的前置準備。在安裝 Anaconda 之前,請先確保系統已針對顯示卡完成以下設定:
- NVIDIA 顯示卡 (範例)
- 前置準備:您只需到官網下載並安裝最新的 NVIDIA 顯示卡驅動程式即可。
- 注意:現在不需要手動安裝全套的 CUDA Toolkit 或 cuDNN,因為透過 Anaconda 執行 PyTorch 安裝指令時,會自動將相容的 CUDA 函式庫一併下載下來。
- Intel 顯示卡 (Arc 獨立顯卡)
- 前置準備:
- BIOS 設定:請務必進入主機板 BIOS 開啟 Resizable BAR 功能。這對 Intel Arc 系列的運算效能至關重要。
- 驅動程式:請更新至最新的 Intel Graphics WHQL 驅動程式。
- 注意:標準版的 PyTorch 無法直接讓 Intel GPU 進行加速。後續在 Anaconda 中建立環境時,除了 PyTorch,還必須額外安裝 Intel Extension for PyTorch,才能順利進行運算。
- 前置準備:
- Apple Silicon (Mac M1/M2/M3 等)
- 前置準備:確保您的作業系統更新至 macOS 12.3 或更新版本。
- 注意:Apple 的硬體加速依賴於 Metal,這已經內建在最新的 PyTorch macOS 版本中,無須額外安裝特殊驅動程式。
- AMD 顯示卡
- 前置準備:主要在 Linux 環境下支援較佳,需要安裝 ROCm 軟體平台。Windows 下的支援度與相容性較具挑戰性,不建議使用。
(參考資料:PyTorch 官方本地安裝指南)
3. 安裝 Anaconda (Windows GUI Installer)
使用 Anaconda 安裝檔時,有幾個選項設定是避免日後系統環境衝突的關鍵:
- 雙擊執行您的 Anaconda 安裝檔。
- 一路點擊「Next」並在版權聲明頁面點選「I Agree」。
- 在選擇安裝類型 (Install For) 時,建議選擇 「Just Me」(僅為目前使用者安裝)。
- 選擇安裝路徑(通常保持預設即可),點擊「Next」。
- 在 Advanced Installation Options (進階安裝選項) 頁面中:
- ⚠️ 不要勾選「Add Anaconda3 to my PATH environment variable」。如果勾選,可能會與您電腦中既有的其他 Python 版本產生衝突。
- 建議勾選「Register Anaconda3 as my default Python 3.x」。
- 點擊「Install」等待安裝完成,最後點擊「Finish」。
4. 建立 Conda 虛擬環境
安裝完成後,我們需要建立一個專屬的「虛擬環境」,讓套件獨立運作。
一、 CLI 方法:使用終端機
這是工程師常用的方式,因為速度快,支援透過腳本設定。
- 打開 Windows 的「開始」選單,搜尋並開啟 「Anaconda Prompt」(請注意,要使用這個特製的終端機,而不是系統內建的 cmd)。
- 在終端機內輸入以下指令,建立一個名為
test_env(您可以隨意更改名稱) 且 Python 版本為 3.11 的虛擬環境:
conda create -n test_env python=3.11 -y
- 建立完成後,輸入指令以進入該環境:
conda activate test_env
- 成功後,您會看到命令列最前面的
(base)變成了(test_env)
二、 GUI 方法:使用 Anaconda Navigator
適合喜歡視覺化操作的人。
- 開啟程式:打開 Anaconda Navigator。
- 進入環境分頁:點擊左側欄位中的 "Environments"。

- 點擊建立:在中間面板底部點擊 "Create" 按鈕。
- 設定參數:
- Name: 輸入你的環境名稱(例如
my_web_project或test_env)。 - Packages: 勾選 Python 並選擇你需要的版本(通常選最新穩定版即可)。
- Name: 輸入你的環境名稱(例如

- 自動安裝:點擊 "Create",Navigator 會幫你跑進度條,完成後你就會看到新環境出現在清單中。
5. 在虛擬環境安裝 PyTorch 與 CUDA 支援
我們可以直接透過 Anaconda 安裝支援 GPU 加速的 PyTorch 版本。最方便的是,Conda 會自動幫您打包下載並安裝對應的 CUDA 函式庫,不需要再跑去 NVIDIA 官網另外裝 CUDA Toolkit。這個階段一樣有 GUI 方法和 CLI 方法,但個人推薦以 CLI 操作為主,較為迅速與方便。
一、 CLI 方法
這裡先演示 pip 安裝的方法 (建議),也附上 Conda 安裝的版本 (因為 Conda 的依賴解析器在面對龐大的深度學習套件時,常常會引發版本衝突;而 pip 直接下載官方編譯好的 Wheel (whl) 檔案,速度更快且更不容易出錯。)
A. pip inatall
官方提供的 pip 安裝包(Wheel)已經內建了對應的 CUDA 庫,因此不需要額外去 NVIDIA 官網安裝 CUDA Toolkit。
- 請確認您的終端機目前已進入虛擬環境(命令列前方顯示
(test_env))。 - 輸入以下官方提供的 pip 安裝指令(此處以 CUDA 12.4 版本為例):
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
- 等待進度條跑完,pip 會自動為您下載並安裝 PyTorch 主程式及其所需的 CUDA 執行時環境。

B. conda install
請在 Anaconda Prompt(確保已在 test_env 環境下)輸入這串官方提供的安裝指令:
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia -y
- 安裝完畢會顯示上圖畫面
二、 GUI 方法
勾選下列套件,接著一路按apply就會自動安裝完成。
⚠️ 注意:使用 GUI 方法的安裝方式會是 Conda ,需考慮日後套件衝突問題。

三、 驗證安裝是否成功
安裝完畢後,可以透過以下方法確認 PyTorch 有沒有成功抓到您的 GPU,在 Anaconda Prompt 中輸入 python 按 Enter (或是直接在 Navigator 對應虛擬環境的頁面點擊播放鍵 >> "Open with python" ) ,進入 Python 互動模式。
import torch
print("PyTorch ver:", torch.__version__)
print("CUDA:", torch.cuda.is_available())
if torch.cuda.is_available():
print("GPU:", torch.cuda.get_device_name(0))For Apple Silicon (Mac)
替換 print("CUDA:", torch.cuda.is_available()) 指令檢查 MPS 是否可用:print("MPS:", torch.backends.mps.is_available())

- 如果螢幕輸出顯示
CUDA: True,並且成功印出裝置的 GPU 型號,那就代表您的本地環境已經建置完成 - 測試完畢後,輸入
exit()或 Ctrl + Z + Enter 即可離開 Python 互動模式。
四、 進階驗證 (執行一個簡單的張量運算) (optional)
可以嘗試建立一個張量並將其移動到 GPU 上,以確認整個流程是通順的。可以直接用python互動模式輸入或存成檔案並執行 python <your_file>.py
import torch
if torch.cuda.is_available():
device = torch.device("cuda")
print("Using CUDA (NVIDIA GPU)")
elif torch.backends.mps.is_available():
device = torch.device("mps")
print("Using MPS (Apple Silicon GPU)")
else:
device = torch.device("cpu")
print("GPU not available, using CPU")
x = torch.rand(5, 3).to(device)
print(x)


- 如果這段程式碼能順利執行,並根據你的硬體顯示對應的訊息與一個 5x3 的隨機張量,就代表你的 PyTorch 環境已經準備就緒
張量測試程式碼說明
最基礎但也最重要的動作之一:「建立資料並搬運到運算單元」
1. torch.rand(5, 3):建立資料
這是 PyTorch 用來產生隨機數字的指令。
torch: 調用 PyTorch 庫。.rand: 產生範圍在 0 到 1 之間(均勻分佈)的隨機浮點數。(5, 3): 定義資料的形狀 (Shape)。這會建立一個 5 列 3 欄 的二維矩陣,在 PyTorch 中稱為 Tensor (張量)。
2. .to(device):運算位置
device: 這是一個變數,代表讓電腦在哪裡進行運算。通常是前面定義好的torch.device("cuda")(NVIDIA GPU)或torch.device("cpu")。.to(): 這個方法會將記憶體中的資料複製到指定的設備中。- 如果
device是cuda,資料就會從系統記憶體(RAM)搬到顯卡的顯存(VRAM)中。 - 意義:GPU 的平行運算速度比 CPU 快非常多,但 GPU 只能處理「已經在它記憶體裡」的資料。所以這一步是為了利用顯卡加速做準備。
- 如果
3. x = ...:賦值
將最後產生的結果(已經放在 GPU 或 CPU 上的張量)存入變數 x,方便後面進行矩陣運算。
如果只寫 torch.rand(5, 3) 而沒有寫 .to(device),預設會建立在 CPU 上。如果後面的神經網絡是在 GPU 上跑的,兩者「不在同一個地方」就會報錯
5. 終端機環境潔癖設定
預設情況下,當使用者安裝完 Anaconda 並將其初始化後,每次打開終端機(Terminal、命令提示字元或 PowerShell),Anaconda 都會強制且自動地進入它預設的 (base) 環境,會看到命令列前面永遠掛著一個 (base),這代表當前終端機的 Python 指令與套件路徑,都已經被 Anaconda 接管了。
對於習慣保持系統環境乾淨的人來說,自動載入 (base) 環境可能會帶來以下困擾:
- 指令衝突:如果您在終端機還要執行其他非 Python 的工作,或是系統原本就有內建的 Python,強制掛載 Anaconda 環境可能會導致路徑混亂或指令呼叫錯誤。
- 非預期的全域安裝:忘記切換環境時,會不小心把套件全部安裝到
(base)裡面,久了會讓預設環境變得非常髒且容易發生版本衝突。
補充說明:
關閉 Anaconda 預設環境自動啟動 為了避免 Anaconda 影響系統原有的終端機環境,建議關閉 (base) 環境的自動啟動機制。
- 請在 Anaconda Prompt 執行以下指令:
conda config --set auto_activate_base false- 設定完成後,未來開啟終端機將不會自動載入任何虛擬環境。當您需要執行專案時,請養成手動啟動專屬環境的習慣:
conda activate test_env
Member discussion