
AI 摘要
- 微軟與 Meta 合作開發 Type Server Protocol,讓 Pylance 可改用 Pyrefly 進行型別檢查
- 開發者切換後仍可使用 Pylance 的自動完成、提示及 GitHub Copilot 整合功能
- 使用整合功能需 Pylance 2026.4.1 以上版本,並搭配至少 0.60.0 版的 Pyrefly
微軟與 Meta 合作開發型別伺服器協定(Type Server Protocol,TSP),讓 VS Code 的 Python 語言支援套件 Pylance 可以改用 Meta 的 Pyrefly 進行型別檢查。目前此功能已開放所有 VS Code 使用者使用,開發者切換後仍可保留 Pylance 原有的程式碼自動完成、提示及 GitHub Copilot 整合功能。
切換方式與功能定位
Pylance 會在開發者撰寫 Python 程式時提供程式碼自動完成、錯誤提示及查找函式定義等功能。型別檢查則是確認變數及函式使用的資料是否符合預期,協助在程式執行前找出可能的錯誤。過去 Pylance 與微軟開發的 Pyright 型別檢查器緊密整合,若開發者偏好 Pyrefly,必須另外安裝其 VS Code 擴充套件,無法直接在 Pylance 中切換。
TSP 是微軟與 Meta 共同開發的協定,讓 Pylance 能與不同型別檢查器交換程式碼分析資訊,不必綁定單一工具。透過 TSP,開發者可交由 Pyrefly 檢查程式碼型別,Pylance 則繼續提供自動完成建議、程式碼導覽及 GitHub Copilot 整合功能。微軟已在 GitHub 公開協定規格,Pyright 仍是 Pylance 預設使用的型別檢查器。
使用條件
- 需要 Pylance 2026.4.1 以上版本
- 需搭配至少 0.60.0 版的 Pyrefly
- Pylance 偵測到 Pyrefly 時會詢問是否切換;若尚未安裝 Pyrefly,Pylance 也能自動下載
Pyrefly 技術特點
Pyrefly 由 Meta 主導開發,使用 Rust 語言實作,著重大型 Python 專案的型別檢查速度,也能辨識使用 Pydantic 或 Django 時常見的程式寫法。開發團隊可依專案需求選擇型別檢查器,不必因此更換原本使用的 Pylance 功能。
型別檢查器設定比較
| VS Code 設定選項 | 型別檢查器 | 說明 |
|---|---|---|
| Pylance 內建分析 | Pylance 內建 | 使用 Pylance 原有的型別分析 |
| Pylance 搭配 Pyright | Pyright | Pyright 為 Pylance 預設使用的型別檢查器 |
| Pylance 搭配 Pyrefly | Pyrefly | 透過 TSP 交由 Pyrefly 檢查程式碼型別 |
兩種使用方式的適用對象
| 使用方式 | 適合對象 |
|---|---|
| 安裝 Pyrefly 獨立擴充套件 | 多數使用者,可取得型別檢查、程式碼自動完成及修改程式結構等功能(Pyrefly 團隊建議) |
| 透過 Pylance 整合 Pyrefly | 需要保留 Pylance 原有功能,或使用 GitHub Copilot 整合功能的開發團隊 |
Reference Link : ithome.com.tw




