上一篇文章了解了 Hugging Face 這個開源模型的大平台,但想要開發還是需要寫程式。別的程式語言我不熟我是不知道,但 Python 的套件百百種,如果發生套件衝突或者版本打架的問題,那是非常的頭痛。
我自己覺得使用 Python 開發的話,虛擬環境其實比基礎語法都還要重要。每個專案使用的版本或需要的套件不一樣,若沒有使用虛擬環境,就必須根據不同的需求下載或更新函式庫,這樣不但會讓我們的開發環境變得混亂,管理起來也相當麻煩。所以對我來說基本上我是一個專案綁定一個虛擬環境,幫助我隔離不同專案在開發上相互依賴的關係。
因為我的電腦是 MacOS,所以我只會提 Mac 的部分,跟 Windows 可能有些許差異。
本機安裝 Python,接著安裝套件即可
pip install virtualenv
Anaconda 安裝 點我進入 Anaconda 官網
Poetry 安裝要透過 Terminal 指令
- 使用 Homebrew
brew install poetry
- 使用 curl
curl -sSL https://install.python-poetry.org | python3 -
在我的第三天 【Day 03】Ollama UI 本機建置 有用到 conda 虛擬環境,但沒有詳細分享。那我就簡單分享一下 conda 的指令。除了創建環境這些指令跟 Virtualenv 不一樣,其他後續執行 Python 或安裝套件都是一樣的。
conda -V
# -n 和 --name 都可以
conda create -n test python=3.11
conda create --name test python=3.11
conda env list
# 開啟虛擬環境
conda activate openwebui
# 關閉虛擬環境
conda deactivate
# -n 和 --name 都可以
conda env remove -n test
conda env remove --name test
Poetry 我這邊分享幾個我比較常會用到的幾個指令,想知道詳細更多可以參考 Koko 老師的文章 -> 連結在這邊。
不知道有沒有人跟我一樣裝完 Poetry 之後在 Terminal 輸入還是沒辦法使用 Poetry。我的方法是使用 Poetry 前要先輸入一個指令
export PATH=$PATH:$HOME/.local/bin
,這樣就可以使用 Poetry 了。但是這麼長的指令很難記起來,所以推薦可以 Mac 的人去裝 oh-my-zsh。在每次打開 Finder 的資料夾的隱藏文件中找到.zshrc
,然後編輯找到alias
把前面的那個指令改成你記得起來的指令,這樣雖然使用 Poetry 多一個步驟但不會很麻煩,目前我只知道這個方法。
poetry new test
# 開啟虛擬環境
poetry shell
# 關閉虛擬環境
exit
# 安裝套件
poetry add pandas
# 指定版本
poetry add pandas=1.5.3
# 移除套件
poetry remove pandas
poetry show pandas
# 更新所有套件
poetry update
# 更新指定套件
poetry update pandas
6. 匯出 requirements.txt
,因為 poetry 是用 pyproject.toml 來管理套件,今天如果跟別人 co-work 的話還是少不了 requirements.txt
。只要使用以下指令 poetry 就會將該環境需要安裝的套件整理好了,包括所有套件的依賴,真的是非常強大!
poetry export -f requirements.txt --without-hashes > requirements.txt
今天分享了 Conda 和 Poetry 兩個主要的虛擬環境,我自己開始一個專案用一個虛擬環境就再也沒遇過環境打架的問題。主要我還是以 Poetry 為主,如果需要 ipynb 開發的話才會用 Conda。接下來就要開始進入程式實戰的部分了!
不知道使用 Mac 的大家會不會美化自己的終端機呢?Mac 內建的 Terminal 原本都是黑底白字,在 debug 的時候真的看的眼睛很痛。這邊分享 powerlevel10k 和前面有提到的 oh-my-zsh,在終端機體驗上是大大的提升,不僅視覺體驗上升,也有一些 plugins 和 alias 幫助提升我的生產力,真的相當的方便!