最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python依賴管理工具UV的安裝和使用教程

 更新時(shí)間:2025年09月25日 11:16:11   作者:qq_38608184  
UV是一個(gè)用Rust編寫的Python包安裝和依賴管理工具,比傳統(tǒng)工具(如 pip)有著更快、更高效的體驗(yàn),這篇文章主要介紹了python依賴管理工具UV的安裝和使用的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

注:dify的插件是依賴uv的,對(duì)于dify1.0.0以及后續(xù)的版本,需要安裝uv。

一、命令安裝uv

官網(wǎng)安裝步驟(https://docs.astral.sh/uv/getting-started/installation/)。運(yùn)行以下其中一個(gè)命令安裝uv,安裝會(huì)受網(wǎng)速影響。

curl -LsSf https://astral.sh/uv/install.sh | sh

wget -qO- https://astral.sh/uv/install.sh | sh

curl -LsSf https://astral.sh/uv/0.7.12/install.sh | sh  # 安裝指定版本的uv

以下是獨(dú)立安裝拆分步驟

# 1. 先下載腳本并檢查
curl -LO https://astral.sh/uv/0.7.12/install.sh
# 2. 檢查腳本內(nèi)容
cat install.sh      # 或使用文本編輯器查看
# 3. 確認(rèn)安全后執(zhí)行
sh install.sh

二、手動(dòng)編譯安裝

2.1在archlinux安裝uv的依賴工具

sudo pacman -Syu base-devel git python python-pip rust

base-devel:提供 gcc、make 等編譯工具。
git:用于克隆源碼。
python 和 python-pip:uv 是 Python 工具,需要 Python 環(huán)境。
rust:uv 是用 Rust 編寫的,需要 Rust 工具鏈。

2.2從Github網(wǎng)站獲取源碼

uv項(xiàng)目的Github網(wǎng)址https://github.com/astral-sh/uv/tree/0.7.12。直接下載zip源碼,然后解壓復(fù)制到archlinux中/root目錄下?;蛘哌\(yùn)行以下命令下載:

git clone https://github.com/astral-sh/uv.git
cd uv

git checkout tags/0.7.12  # 該步可選,切換到指定版本(如 0.7.12)

2.3 編譯安裝

  • 更換 Cargo 鏡像源(推薦)

編輯 Cargo 配置文件 ~/.cargo/config.toml,添加國內(nèi)鏡像源(如清華源或中科大源):

[source.crates-io]
replace-with = 'tuna'  # 或 'ustc'

# 清華大學(xué)鏡像源
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

# 或中科大鏡像源
[source.ustc]
registry = "https://mirrors.ustc.edu.cn/crates.io-index/"

? 生效方式

? 保存文件后,重新運(yùn)行 cargo build --release。

  • 調(diào)整超時(shí)設(shè)置(臨時(shí)緩解)

~/.cargo/config.toml 中增加超時(shí)時(shí)間(不推薦長期使用):

[net]
git-fetch-with-cli = true  # 使用系統(tǒng) git 代替內(nèi)置 git
timeout = 120              # 超時(shí)時(shí)間設(shè)為 120 秒

使用 cargo 構(gòu)建

cargo build --release 

編譯完成后,安裝到指定目錄

mkdir -p ~/.local/bin
cp target/release/uv ~/.local/bin/

cp target/release/uv /root/uv/uv-0.7.12

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.profile
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile

exec "$SHELL"   # 重啟shell,使設(shè)置的環(huán)境變量生效

2.4 驗(yàn)證安裝

uv --version

應(yīng)輸出類似:

uv 0.7.12

2.5刪除target

如果已經(jīng)確認(rèn)uv編譯完成,可以刪除target文件夾來釋放存儲(chǔ)空間

進(jìn)入uv所在目錄,查看uv依賴項(xiàng)
ldd ./uv

rm -r /root/uv/uv-0.7.12/target
盡量保留.so文件

2.6使用示例

$ uv init example
Initialized project `example` at `/home/user/example`

$ cd example

$ uv add ruff
Creating virtual environment at: .venv
Resolved 2 packages in 170ms
   Built example @ file:///home/user/example
Prepared 2 packages in 627ms
Installed 2 packages in 1ms
 + example==0.1.0 (from file:///home/user/example)
 + ruff==0.5.0

$ uv run ruff check
All checks passed!

$ uv lock
Resolved 2 packages in 0.33ms

$ uv sync
Resolved 2 packages in 0.70ms
Audited 1 package in 0.02ms

三、更改國內(nèi)下載鏡像

更改國內(nèi)鏡像地址,有以下兩種方法,選擇其中一種就行。推薦設(shè)置全局配置文件uv.toml。

1.編輯uv配置文件

1.1全局配置文件(推薦)

在/etc/uv/目錄下設(shè)置uv.toml配置文件。以下設(shè)置只能對(duì)uv安裝python工具包起作用,即uv下載pypi工具時(shí),會(huì)默認(rèn)從設(shè)置的網(wǎng)站下載。但是對(duì)于python解釋器的下載,需要另外設(shè)置,具體設(shè)置就是創(chuàng)建軟鏈接,見為uv設(shè)置python解釋器

mkdir /etc/uv

echo '
[[index]]
url = "https://mirrors.aliyun.com/pypi/simple/"
default = true'  > /etc/uv/uv.toml

1.2具體項(xiàng)目的配置文件

在uv目錄下設(shè)置pyproject.toml配置文件。

vim pyproject.toml

增加以下內(nèi)容
[[tool.uv.index]]
url = "https://mirrors.aliyun.com/pypi/simple/"

[[tool.uv.index]]
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
default = true

[tool.uv.pip]
index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"

2.直接設(shè)置環(huán)境參數(shù)

有關(guān)uv的環(huán)境參數(shù)名稱見官網(wǎng)https://docs.astral.sh/uv/reference/environment/#uv_break_system_packages

echo 'export UV_DEFAULT_INDEX="https://mirrors.aliyun.com/pypi/simple/"' >> ~/.bashrc
echo 'export UV_DEFAULT_INDEX="https://mirrors.aliyun.com/pypi/simple/"' >> ~/.profile
echo 'export UV_DEFAULT_INDEX="https://mirrors.aliyun.com/pypi/simple/"' >> ~/.bash_profile
exec "$SHELL"   # 重啟shell,使設(shè)置的環(huán)境變量生效

四、為uv設(shè)置單獨(dú)的虛擬環(huán)境

1.為uv設(shè)置python解釋器

將pyenv安裝的python作為uv的python解釋器,創(chuàng)建軟連接。uv會(huì)優(yōu)先在環(huán)境變量中查找已經(jīng)安裝的python解釋器,查找不到,才會(huì)從默認(rèn)的網(wǎng)站下載。其默認(rèn)的網(wǎng)站一般是國外網(wǎng)站,會(huì)因?yàn)榫W(wǎng)速問題導(dǎo)致uv下載python解釋器失敗。

ln -s  "$HOME/.pyenv/versions/3.12.6/bin/python"  /usr/local/bin/python3.12

2.創(chuàng)建獨(dú)立的虛擬環(huán)境

使用 uv 直接創(chuàng)建并激活虛擬環(huán)境。**使用uv venv創(chuàng)建虛擬環(huán)境,會(huì)自動(dòng)下載對(duì)應(yīng)的python解釋器到以下路徑/root/.local/share/uv/python/下。**并且在/opt/dify-python/lib/uv-venv/bin目錄中創(chuàng)建軟鏈接指向自動(dòng)下載的python解釋器。

uv venv /path/to/uv-venv
source /path/to/uv-venv/bin/activate

示例:
uv venv /opt/dify-python/lib/uv-venv
source /opt/dify-python/lib/uv-venv/bin/activate

3.退出虛擬環(huán)境

deactivate

4.在獨(dú)立環(huán)境中使用 uv

激活虛擬環(huán)境后,所有通過 uv pip install 安裝的包將僅存在于(每個(gè)項(xiàng)目的) ./venv/lib/pythonX.Y/site-packages。安裝包(僅影響當(dāng)前 uv-venv 環(huán)境)

uv pip install numpy openai

或者
uv pip install -r requirements.txt  # 安裝項(xiàng)目依賴

5.與 poetry 環(huán)境完全隔離

poetry 環(huán)境:繼續(xù)在項(xiàng)目目錄中通過 poetry install 管理主依賴。

uv 環(huán)境:僅在手動(dòng)激活 uv-venv 后操作,不影響 poetry。

驗(yàn)證隔離性:

檢查當(dāng)前環(huán)境的 Python 路徑

which python

應(yīng)輸出 uv-venv 的路徑,如:/path/to/uv-venv/bin/python

對(duì)比兩個(gè)環(huán)境的包列表

在 uv-venv 中:
uv pip list -v   # 列出所有已安裝的包及其版本

在 poetry 環(huán)境中:
poetry run pip list

總結(jié) 

到此這篇關(guān)于python依賴管理工具UV的安裝和使用的文章就介紹到這了,更多相關(guān)python依賴管理工具UV安裝內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python shell命令行中import多層目錄下的模塊操作

    python shell命令行中import多層目錄下的模塊操作

    這篇文章主要介紹了python shell命令行中import多層目錄下的模塊操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Python對(duì)象循環(huán)引用垃圾回收算法詳情

    Python對(duì)象循環(huán)引用垃圾回收算法詳情

    這篇文章主要介紹了Python對(duì)象循環(huán)引用垃圾回收算法詳情,文章圍繞主題展開詳細(xì)的內(nèi)容戒殺,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2022-09-09
  • 使用Python實(shí)現(xiàn)設(shè)置Word文檔文本的顏色

    使用Python實(shí)現(xiàn)設(shè)置Word文檔文本的顏色

    在文檔編輯和排版過程中,文本顏色是一項(xiàng)重要的視覺元素,本文將詳細(xì)介紹如何使用 Spire.Doc for Python 庫為 Word 文檔中的文本設(shè)置顏色,希望可以幫助大家輕松實(shí)現(xiàn)豐富多彩的文檔效果
    2026-05-05
  • Pyqt5如何讓QMessageBox按鈕顯示中文示例代碼

    Pyqt5如何讓QMessageBox按鈕顯示中文示例代碼

    這篇文章主要給大家介紹了關(guān)于Pyqt5如何讓QMessageBox按鈕顯示中文的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Pyqt5具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • python加載自定義詞典實(shí)例

    python加載自定義詞典實(shí)例

    今天小編就為大家分享一篇python加載自定義詞典實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python簡易遠(yuǎn)程控制單線程版

    python簡易遠(yuǎn)程控制單線程版

    這篇文章主要為大家詳細(xì)介紹了python簡易遠(yuǎn)程控制單線程版,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Python設(shè)計(jì)模式之MVC模式簡單示例

    Python設(shè)計(jì)模式之MVC模式簡單示例

    這篇文章主要介紹了Python設(shè)計(jì)模式之MVC模式,簡單介紹了MVC模式的概念、原理,并結(jié)合實(shí)例形式給出了Python實(shí)現(xiàn)與使用MVC模式的相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • Python操作Sqlite正確實(shí)現(xiàn)方法解析

    Python操作Sqlite正確實(shí)現(xiàn)方法解析

    我們今天將會(huì)在這篇文章中分步驟為大家詳細(xì)介紹一下有關(guān)Python操作Sqlite的相關(guān)應(yīng)用方式,希望大家可以從中獲得一些幫助
    2020-02-02
  • Python中捕獲鍵盤的方式詳解

    Python中捕獲鍵盤的方式詳解

    這篇文章主要介紹了Python中捕獲鍵盤的方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python中的bisect模塊的用法詳解

    Python中的bisect模塊的用法詳解

    在編程的世界里,數(shù)據(jù)的有序性常常能帶來效率的飛躍,Python的bisect模塊就是這樣一把利劍,它能讓我們?cè)谟行蛐蛄兄锌焖俣ㄎ弧⒉迦朐?今天,就讓我們一起探索這個(gè)看似簡單卻功能強(qiáng)大的模塊,需要的朋友可以參考下
    2026-02-02

最新評(píng)論

东丽区| 海淀区| 仪征市| 应用必备| 临海市| 昌乐县| 南陵县| 类乌齐县| 崇阳县| 崇义县| 涡阳县| 丰原市| 凤翔县| 原阳县| 马边| 墨竹工卡县| 黔西| 岳池县| 汪清县| 临武县| 新平| 沂源县| 枣强县| 莱阳市| 石台县| 锡林浩特市| 怀来县| 阿尔山市| 万山特区| 丹东市| 建昌县| 普安县| 墨脱县| 化德县| 娄烦县| 嘉荫县| 永昌县| 张北县| 新丰县| 安塞县| 芒康县|