自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

僅需10萬不到,DeepSeek R1 671B大模型本地部署實(shí)戰(zhàn)指南

人工智能
幫一個(gè)朋友部署本地的671b版本的deepseek r1,需求是要完全本地部署,但是又不想花太高的成本,沒有并發(fā)要求,我一想,用ktransformers框架來部署完全合適。

最近幫一個(gè)朋友部署本地的671b版本的deepseek r1,需求是要完全本地部署,但是又不想花太高的成本,沒有并發(fā)要求,我一想,用ktransformers框架來部署完全合適。

關(guān)于機(jī)器配置,在挑挑揀揀評比之后,設(shè)備選擇如下,最終選擇的是其中的服務(wù)器配置。

圖片

這套設(shè)備下來總成本不到10萬,相比如動輒幾百萬的滿血版deepseek R1或者花個(gè)五六十萬買個(gè)deepseek 70b的一體機(jī)要值當(dāng)?shù)亩?,且不說70b并不是真正的deepseek r1,效果還不如32b的QWQ,就光說一體機(jī)的升級也是個(gè)麻煩事,買了機(jī)器基本就和模型綁定了,以后新模型出來后想升級就難了。

說起這個(gè),我上個(gè)月去給政府某部門培訓(xùn)大模型時(shí),還聽到一個(gè)八卦,說有個(gè)公司,花了幾百萬讓某個(gè)大廠私有化部署了一套定制的模型,但是deepseek r1出來后,直接棄用了,又去買了一套deepseek一體機(jī)。

而且這些公司買了一體機(jī)后,也還是不知道怎么用,就是搞個(gè)接口和頁面,讓員工來問下問題,就沒了其他用途了。只能說,公司是真有錢。

基礎(chǔ)配置

先說結(jié)論,使用Ktransformers框架,在上述圖片的服務(wù)器配置上,速度能達(dá)到5token/s, 考慮到Ktransformers目前還并不支持并發(fā),本地私有化部署給少數(shù)人使用,這個(gè)速度還是勉強(qiáng)可以接受。

ktransformers官網(wǎng)文檔的安裝方式我之前已經(jīng)寫過一篇文章,ktransformers部署詳細(xì)筆記。此處不再贅述。

這里我介紹一個(gè)這次我安裝時(shí)發(fā)現(xiàn)的一個(gè)新的教程 r1-ktransformers-guide,提供了基于uv的預(yù)編譯的環(huán)境,可以避免很多環(huán)境的依賴的報(bào)錯(cuò)。

同時(shí)要注意ubuntu版本要使用ubuntu22及以上,python版本為3.11。

NVIDIA驅(qū)動版本570.86.1x , CUDA版本12.8

然后Ktransfomers要使用0.2.2版本,目前最新版本0.3還存在很多的bug

git clone https://github.com/kvcache-ai/ktransformers.git
cd ktransformers 
git submodule init 
git submodule update 
git checkout 7a19f3b git rev-parse --short HEAD #應(yīng)顯示 7a19f3b

注意的是,git submodule update 主要是為了更新third_party中的項(xiàng)目

圖片

如果網(wǎng)絡(luò)不好,可以直接github中下載這些項(xiàng)目并放到到third_party文件夾中 

[submodule "third_party/llama.cpp"]
        path = third_party/llama.cpp
        url = https://github.com/ggerganov/llama.cpp.git
[submodule "third_party/pybind11"]
        path = third_party/pybind11
        url = https://github.com/pybind/pybind11.git

下載模型

然后下載量化后的deepseek r1模型,這里我下載的是int4量化版本,因?yàn)榫W(wǎng)絡(luò)問題,使用阿里的魔塔下載模型

modelscope download unsloth/DeepSeek-R1-GGUF --include "DeepSeek-R1-Q4_K_M/*" --cache_dir /home/user/new/models

--cache_dir /home/user/new/models   是制定模型下載路徑的位置

uv安裝

uv是一個(gè)用Rust語言編寫的現(xiàn)代Python包管理工具,被稱為"Python的Cargo",它是pip、pip-tools和virtualenv等傳統(tǒng)工具的高速替代品。速度比pip更快,而且還支持可編輯安裝、git依賴、本地依賴、源代碼分發(fā)等pip的高級功能。

安裝uv工具鏈

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

創(chuàng)建虛擬環(huán)境

uv venv ./venv --python 3.11 --python-preference=only-managedsource  venv/bin/activate

然后我們就可以按照教程中的使用uv工具進(jìn)行安裝。

uv安裝預(yù)編譯版本

flashinfer-python是一個(gè)專為大型語言模型(LLM)推理服務(wù)設(shè)計(jì)的高性能GPU加速庫。它主要提供以下功能:

$ uv pip install flashinfer-python

這是安裝ktransformers庫的預(yù)編譯版本:

$ export TORCH_CUDA_ARCH_LIST="8.6"
uv pip install https://github.com/ubergarm/ktransformers/releases/download/7a19f3b/ktransformers-0.2.2rc1+cu120torch26fancy.amd.ubergarm.7a19f3b.flashinfer-cp311-cp311-linux_x86_64.whl

這是安裝flash_attn庫的預(yù)編譯版本:

uv pip install https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/download/v0.0.5/flash_attn-2.6.3+cu124torch2.6-cp311-cp311-linux_x86_64.whl

這里的預(yù)編譯版本其實(shí)是這個(gè)文檔的作者直接編譯好的,雖然這個(gè)教程說明中提到僅適合RTX 3090Ti 24GB顯存 + 96GB DDR5-6400內(nèi)存 + Ryzen 9950X處理器 。

但是我使用4090 24顯存 + 500 DDR5-4800內(nèi)存 ,使用這個(gè)預(yù)編譯版本也可以安裝成功的。如果這個(gè)預(yù)編譯版本可以安裝成功的話,很多潛在的因?yàn)榘姹静粚υ斐傻膱?bào)錯(cuò)都可以避免掉了。

源碼運(yùn)行ktransformers

如果上面的預(yù)編譯版本運(yùn)行不了的話,又不想接著安裝ktransfomers,其實(shí)也可以直接用源碼來跑的,命令如下:

支持多GPU配置及通過 `--optimize_config_path` 進(jìn)行更細(xì)粒度的顯存卸載設(shè)置
PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True python3 ktransformers/server/main.py      
--gguf_path /mnt/ai/models/unsloth/DeepSeek-R1-GGUF/DeepSeek-R1-UD-Q2_K_XL/     
--model_path deepseek-ai/DeepSeek-R1 
--model_name unsloth/DeepSeek-R1-UD-Q2_K_XL 
--cpu_infer 16 
--max_new_tokens 8192 
--cache_lens 32768 
--total_context 32768
--cache_q4 true
--temperature 0.6 
--top_p 0.95 
--optimize_config_path ktransformers/optimize/optimize_rules/DeepSeek-R1-Chat.yaml 
--force_think 
--use_cuda_graph 
--host 127.0.0.1 
--port 8080

是的,其實(shí)即使不編譯ktransfomers,也是可以跑起來的。直接把項(xiàng)目下好,運(yùn)行上面的命令,準(zhǔn)備好相應(yīng)的文件,就能正常運(yùn)行了。

如果要繼續(xù)編譯ktransfomers的話,則可以按照下面的流程進(jìn)行操作:

# 安裝額外編譯依賴項(xiàng),包括CUDA工具鏈等,例如:
# sudo apt-get install build-essential cmake ...
source venv/bin/activate
uv pip install -r requirements-local_chat.txt
uv pip install setuptools wheel packaging
# 建議跳過可選網(wǎng)站應(yīng)用,使用`open-webui`或`litellm`等替代方案
cd ktransformers/website/
npm install @vue/cli
npm run build
cd ../..
# 如果擁有充足的CPU核心和內(nèi)存資源,可顯著提升構(gòu)建速度
# $ export MAX_JOBS=8
# $ export CMAKE_BUILD_PARALLEL_LEVEL=8
# 安裝flash_attn
uv pip install flash_attn --no-build-isolation
# 可選實(shí)驗(yàn)性使用flashinfer替代triton
# 除非您是已經(jīng)成功上手的進(jìn)階用戶,否則暫不建議使用
# 使用以下命令安裝:
# $ uv pip install flashinfer-python
# 僅適用于以下情況:
# 配備Intel雙路CPU且內(nèi)存>1TB可容納兩份完整模型內(nèi)存副本(每路CPU一份副本)
# AMD EPYC NPS0雙路平臺可能無需此配置?
# $ export USE_NUMA=1
# 安裝ktransformers
KTRANSFORMERS_FORCE_BUILD=TRUE uv pip install . --no-build-isolation

如果想自己編譯好后供其他環(huán)境使用的,則可以使用下面的命令進(jìn)行環(huán)境編譯。

KTRANSFORMERS_FORCE_BUILD=TRUE uv build

然后把生成的文件移動到其他環(huán)境安裝則輸入下面命令即可

uv pip install ./dist/ktransformers-0.2.2rc1+cu120torch26fancy-cp311-cp311-linux_x86_64.whl

ktransformers運(yùn)行

接口運(yùn)行命令

ktransformers --model_path /home/user/new/ktran0.2.2/ktransformers/models/deepseek-ai/DeepSeek-R1  --gguf_path /home/user/new/models/unsloth/DeepSeek-R1-GGUF/DeepSeek-R1-Q4_K_M   --port 8080

如果想運(yùn)行網(wǎng)頁版本,則再最后增加 --web True參數(shù)即可。

其他問題

如果使用了不支持amx的cpu, 可能會遇到下面的報(bào)錯(cuò)

/tmp/cc8uoJt1.s:23667: Error: no such instruction: `vpdpbusd %ymm3,%ymm15,%ymm1'
的報(bào)錯(cuò),
File "<string>", line 327, in build_extension     
File "/usr/local/python3/lib/python3.11/subprocess.py", 
line 571, in run       
raise CalledProcessError(retcode, process.args,   subprocess.CalledProcessError: 
Command '['cmake', '--build', '.', '--verbose', '--parallel=128']' 
returned non-zero exit status 1.   [end of output]

這是因?yàn)镃PU架構(gòu)不支持這些指令:編譯時(shí)使用了-march=native參數(shù),這會讓編譯器生成針對當(dāng)前CPU優(yōu)化的代碼,包括使用特定的指令集。但如果當(dāng)前CPU不支持AVX-VNNI指令集,就會出現(xiàn)這個(gè)錯(cuò)誤。

解決方案:在CMake配置中添加以下選項(xiàng):

-DLLAMA_NATIVE=OFF -DLLAMA_AVX=ON -DLLAMA_AVX2=ON -DLLAMA_AVX512=OFF -DLLAMA_AVXVNNI=OFF

就可以讓cpu不使用amx指令集,從而避免這個(gè)報(bào)錯(cuò)了。

另外,如果需要我環(huán)境的requirements.txt, 可以在后臺回復(fù)330獲取。

寫在最后

2025年的今天,AI創(chuàng)新已經(jīng)噴井,幾乎每天都有新的技術(shù)出現(xiàn)。作為親歷三次AI浪潮的技術(shù)人,我堅(jiān)信AI不是替代人類,而是讓我們從重復(fù)工作中解放出來,專注于更有創(chuàng)造性的事情,關(guān)注我們公眾號口袋大數(shù)據(jù),一起探索大模型落地的無限可能!

責(zé)任編輯:龐桂玉 來源: 口袋大數(shù)據(jù)
相關(guān)推薦

2025-02-03 13:55:20

2025-04-03 06:30:00

2025-03-27 10:28:32

2025-03-10 07:00:00

阿里開源QwQ-32B

2025-02-03 06:00:00

2024-12-27 11:13:16

2025-03-07 08:30:00

2025-01-27 12:30:07

2025-03-07 08:50:03

2024-12-27 12:37:18

2025-03-06 08:11:25

2025-02-06 08:06:05

2025-03-06 09:55:49

2025-04-03 09:42:05

2025-02-13 08:30:11

2025-02-15 08:15:04

聯(lián)想DeepSeek

2025-03-06 12:43:03

DeepSeek阿里推理模型

2025-04-11 12:10:33

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號