建立開發環境#

在進行任何程式碼修改之前,建立適用於 Xinference 開發的必要環境至關重要。包括熟悉 Git 的使用、建立獨立環境、安裝 Xinference 以及前端部分的編譯。

Git 的使用#

當你需要修復問題、新增功能或改進文件時,熟悉 GitHub 和 Xinference 程式碼庫非常重要。

對新使用者來說,使用 Git 是參與 Xinference 開發最令人畏懼的環節之一。很快就會感到壓力龐大,但以下指南將有助於簡化流程並減少潛在問題。如果您遇到難以解決的問題,歡迎在社群中尋求協助。

Xinference 的程式碼託管在 GitHub 。要參與 Xinference 程式碼貢獻,你需要註冊一個 免費的 GitHub 帳戶 。我們使用 Git 進行版本控制,以便大家共同參與專案的開發。

你可以參考 GitHub 指南 來安裝 git,設定 SSH 金鑰以及配置 git。你需要完成這些步驟,以確保你的本地端儲存庫和 GitHub 可以正常運作,後續的工作才能順利進行。

以下是一些很好的學習 Git 的資源:

備註

如果在 git clone 程式碼的時候速度較慢,可以透過以下指令添加代理。

export https_proxy=YourProxyAddress

创建一個隔離環境#

在正式安裝 Xinference 之前,建議使用 Conda 建立一個隔離環境以方便後續操作。

conda create --name xinf
conda activate xinf

xinf 可替換為自訂的 Conda 環境名稱。

隨後需要在新建的 Conda 環境中安裝 Python 以及 Node.js (npm)。指令如下:

conda install python=3.12
conda install nodejs

從原始碼安裝#

在開始之前,請確保您已經克隆了儲存庫。假設您將儲存庫克隆到名為 inference 的目錄中,請進入該目錄,其中包含 setup.cfgsetup.py 檔案,並執行以下命令:

pip install -e .
xinference-local

如果命令能夠成功執行,接下來就能正常使用 Xinference 了,使用教學詳見 使用

如果出現報錯或者在運行過程中卡死,那就需要進行下一步前端編譯。

前端編譯#

首先需要進入 inference/xinference/ui/web/ui 目錄下,隨後執行如下命令清除快取:

npm cache clean

如果命令執行失敗,您可以嘗試添加 --force 選項

備註

如果該目錄下已經存在 node_modules 資料夾的話,建議先手動刪除該資料夾。

接著在該目錄下執行以下命令進行前端編譯:

npm install
npm run build

如果第一個指令執行失敗,您仍然可以嘗試透過加入 --force 選項解決。

編譯完前端後,您可以返回到包含 setup.cfgsetup.py 檔案的目錄,然後透過 pip install -e . 安裝 Xinference。