色综合久久亚洲国产日韩_日本在线观看_国产成人精品久久二区二区_免费观看一区二区

如何在 NVIDIA H100 上運(yùn)行 Snowflake Arctic 模型推理?配置步驟詳解
發(fā)布時間: 2024-08-14 15:02

Snowflake 最近發(fā)布了 Arctic,這是他們的 混合專家 (MoE) 模型,可以處理 128 個 token,擁有大約 4790 億個參數(shù),這使其成為執(zhí)行大規(guī)模任務(wù)的高效模型。Arctic 旨在為各種應(yīng)用程序和用例提供卓越的性能,包括 SQL 數(shù)據(jù)副駕駛和預(yù)測分析。


Arctic 的突出特點(diǎn)之一是它能夠跨多種硬件配置高效擴(kuò)展,因此特別適合部署在高性能機(jī)器上,例如配備 8xH100 GPU 的 NVIDIA Cluster/Server。Arctic 的推理功能可與 Hugging Face、NVIDIA TensorRT 以及 vLLM 配合使用。通過采用 FP8 量化將浮點(diǎn)數(shù)的精度降低為 8 位格式,該模型可以在單個 GPU 實(shí)例上運(yùn)行。雖然此設(shè)置尚未完全優(yōu)化,但它可以在批處理大小為 1 的情況下實(shí)現(xiàn)超過每秒 70 個令牌的吞吐量。


準(zhǔn)備好親自體驗(yàn)Hugging Face 的 Snowflake-Arctic-instruct 模型了嗎?在本博客中,我們將引導(dǎo)您完成捷智算平臺的 8xH100裸機(jī)服務(wù)器上的環(huán)境設(shè)置、模型加載和推理執(zhí)行。以下是在捷智算平臺上進(jìn)行配置的步驟 。


一、配置


如果您尚未注冊捷智算平臺, 請先注冊。以下是我們將在本教程中使用的配置:


機(jī)器:8 xH100 裸機(jī)服務(wù)器

操作系統(tǒng):Ubuntu 22.04 LTS

已安裝的軟件包:Nvidia-Cuda 12.1-toolkit、Python 3.10.*、Pytorch for Cuda 12.1

首先,使用以下命令檢查實(shí)例上 GPU 的詳細(xì)信息和 CUDA 版本:




請注意,在上面的屏幕截圖中,用于此測試的機(jī)器之前運(yùn)行的是 Cuda 12.4,它遇到了 Cuda 可用的PyTorch版本的問題。 


我們建議在 H100 GPU 上使用帶有 535 NVIDIA 驅(qū)動程序的 Cuda 12.1。要將 Cuda 版本降級到 12.1,首先需要刪除現(xiàn)有的 12.4 版 Cuda。


sudo apt-get --purge remove "*cublas*" "*cufft*" "*curand*"

"*cusolver*" "*cusparse*" "*npp*" "*nvjpeg*" "cuda*" "nsight*" 


sudo apt-get autoremove # To clean up the uninstall


清除后,重新安裝所需的nvidia-toolkit 。只需按照Ubuntu 22.04 的Nvidia-Cuda 12.1-toolkit說明進(jìn)行操作即可。接下來,重新啟動計(jì)算機(jī)并運(yùn)行nvidia-smi :它應(yīng)該確認(rèn)您的 Cuda 版本為 12.1。



二、安裝機(jī)器學(xué)習(xí)框架 Pytorch


我們需要安裝 Pytorch 庫來檢查 GPU 兼容性。 


運(yùn)行以下命令;

pip install torch torchvision torchaudio # Install Pytorch


要檢查它與您的 H100 GPU 的兼容性,可以使用以下方法:

>>> import torch

>>> use_cuda = torch.cuda.is_available()


此命令將返回一個布爾值(True/False),讓您知道 GPU 是否可用。如果為 false,則表示您的實(shí)例需要安裝 Nvidia 的 Fabric Manager。這是 8 路 A100 和 H100 系統(tǒng)所必需的。 


Nvidia 的 Fabric Manager 是什么?


NVIDIA 的 Fabric Manager 是 NVIDIA 數(shù)據(jù)中心 GPU 管理生態(tài)系統(tǒng)的一部分,專門用于管理和優(yōu)化服務(wù)器內(nèi)或服務(wù)器網(wǎng)絡(luò)中 GPU 之間的連接和通信。該軟件在使用多個 GPU 處理復(fù)雜計(jì)算的大規(guī)模環(huán)境中起著至關(guān)重要的作用,例如在高性能計(jì)算 (HPC)、深度學(xué)習(xí)和其他數(shù)據(jù)密集型應(yīng)用程序中。了解有關(guān)Nvidia 的 Fabric 管理器的更多信息。


在安裝 Fabric Manager 之前,需要先安裝 Nvidia 的數(shù)據(jù)中心 GPU 管理器 (DCGM) 庫。閱讀有關(guān)Nvidia 的 DCGM的更多信息。以下是在 Linux 機(jī)器上安裝 DCGM 的命令。


wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb

sudo dpkg -i cuda-keyring_1.0-1_all.deb

sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"

$ sudo apt-get update && sudo apt-get install -y datacenter-gpu-manager # Install dcgm


以下是安裝 Fabric Manager 的步驟,安裝 Fabric Manager 后,重新啟動系統(tǒng),運(yùn)行以下命令啟動 NVIDIA Fabric Manager 服務(wù):

sudo apt-get install -y cuda-drivers-fabricmanager-535


sudo systemctl --now enable nvidia-dcgm

dcgmi discovery -l


為了驗(yàn)證安裝,我們使用 dcgmi 來查詢系統(tǒng)。您應(yīng)該看到系統(tǒng)中所有受支持的 GPU(以及任何 NVSwitches)的列表,請參閱以下屏幕截圖:




現(xiàn)在運(yùn)行剩余的命令來啟動結(jié)構(gòu)管理器服務(wù):

sudo systemctl start nvidia-fabricmanager

sudo systemctl status nvidia-fabricmanager


以下是正在運(yùn)行的 Fabric Manager 服務(wù)的屏幕截圖:




讓我們快速測試 Pytorch 與我們的 GPU 的兼容性。


>> import torch

>>> use_cuda = torch.cuda.is_available()

>>> print(use_cuda)


上述命令現(xiàn)在應(yīng)該返回 TRUE。


三、虛擬環(huán)境和庫


現(xiàn)在,讓我們啟動一個具有 root 訪問權(quán)限的虛擬環(huán)境,以使用 Snowflake 的 Arctic 模型設(shè)置推理。


使用以下命令安裝并激活虛擬環(huán)境:


# Create virtual environment

sudo apt install python3-venv

python3 -m venv <virtual-env-name>

source <v-env-name>/bin/activate #activates your virtual env.


請參閱Snowflake-arctic 在 Github 上的官方 repo來安裝所需的庫以及一些其他庫:


pip install deepspeed>=0.14.2

pip install transformers>=4.39.0

pip install huggingface_hub[hf_transfer]


pip install accelerate

pip install SentencePiece

pip install protobuf

pip install -U transformers # Upgrades transformers


通過安裝 Hugging Face CLI傳遞 Hugging Face READ令牌:

pip install huggingface-cli

huggingface-cli login


CLI 設(shè)置完成后,安裝 flash-attn 庫。


什么是 Flash Attention?


Transformer 架構(gòu)的擴(kuò)展主要受限于自注意力機(jī)制,這需要大量的時間和內(nèi)存。硬件方面的最新改進(jìn)提高了計(jì)算能力,但對內(nèi)存或數(shù)據(jù)傳輸卻沒有多大幫助。這往往會導(dǎo)致注意力操作期間內(nèi)存出現(xiàn)瓶頸。Flash Attention是一種旨在解決此問題的算法,它使擴(kuò)展 Transformer 以加快訓(xùn)練和推理速度變得更加容易。


pip install wheel

pip install flash-attn --no-build-isolation


如果上述命令沒有安裝flash-attn ,則克隆flash-attn repo 并按照README 文件中的步驟操作。


四、創(chuàng)建可執(zhí)行文件


接下來,創(chuàng)建一個 Python 可執(zhí)行文件來加載并運(yùn)行 Arctic-Instruct 模型arctic-test.py。


import os

# enable hf_transfer for faster ckpt download

os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1"

os.environ['HF_HOME'] = '/dev/shm'#Change the default root directory


import torch

from transformers import AutoModelForCausalLM, AutoTokenizer

from deepspeed.linear.config import QuantizationConfig


tokenizer = AutoTokenizer.from_pretrained(

    "Snowflake/snowflake-arctic-instruct",

    trust_remote_code=True

)


quant_config = QuantizationConfig(q_bits=8)


# The 150GiB number is a workaround until we have HFQuantizer support, must be ~1.9x of the available GPU memory

model = AutoModelForCausalLM.from_pretrained(

    "Snowflake/snowflake-arctic-instruct",

    low_cpu_mem_usage=True,

    trust_remote_code=True,

    device_map="auto",

    ds_quantization_config=quant_config,

    max_memory={i: "150GiB" for i in range(8)},

    torch_dtype=torch.bfloat16)


messages = [{"role": "user", "content": "What is 1 + 1 "}]

input_ids = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to("cuda")


outputs = model.generate(input_ids=input_ids, max_new_tokens=20)

print(tokenizer.decode(outputs[0]))


請注意,由于模型很大(大約空間~1000G),我們在 Python 腳本中通過使用 os.environ 映射對象提供了路徑,代表環(huán)境變量。請參閱第 4 行: 


os.environ[ 'HF_HOME' ] = '/dev/shm'


否則,默認(rèn)下載將轉(zhuǎn)到/root/.cache 。


通過運(yùn)行df -h命令,我們可以選擇模型權(quán)重的下載路徑。否則,如果您沒有指定正確的路徑,可能會遇到磁盤空間問題。




五、故障排除


如果在執(zhí)行上述 Python 文件時遇到此錯誤:

ImportError: cannot import name 'LlamaTokenizer' from 'transformers.models.llama'


然后,對tokenization_arctic.py進(jìn)行更改:

nano /dev/shm/huggingface/modules/transformers_modules/Snowflake/snowflake-arctic-instruct/314d82d80be3cf48aedfe33c82513c030a1238d7/tokenization_arctic.py


并將標(biāo)記化文件 tokenization_arctic.py 從:

transformers.models.llama import LlamaTokenizer 


from transformers import LlamaTokenizer


使其看起來像這樣:




現(xiàn)在,當(dāng)您執(zhí)行 Python 腳本時,我們可以看到正在下載模型權(quán)重。請注意,下載可能需要最多 20 分鐘才能完成。


python3 arctic-test.py




一旦模型下載完畢,fp_quantizer 就會加載到環(huán)境中,幾秒鐘內(nèi)我們就會看到我們的模型正在運(yùn)行推理。




模型推理的輸出:

<|im_start|> user

What is 1 + 1 <|im_end|>

<|im_start|>assistant

 1 + 1 equals 2.<|im_end|>


如果您看到警告 — 注意掩碼和 pad token id 未設(shè)置。因此,您可能會觀察到意外行為。請傳遞輸入的“attention_mask”以獲得可靠的結(jié)果。可以通過在generation_config中設(shè)置pad_token_id來解決。對于在Hugging Face上完成的任何文本生成任務(wù),此警告很常見。這里有一個解釋。


就是這樣,您現(xiàn)在正在捷智算平臺的 8 x H100裸機(jī)服務(wù)器上對 Snowflake-Arctic-instruct 模型進(jìn)行推理。


為您的 AI 驅(qū)動業(yè)務(wù)釋放 Snowflake Arctic 的強(qiáng)大力量。立即開始在捷智算平臺上部署 Arctic !

粵公網(wǎng)安備 44030502006483號、 粵ICP備15047669號
  • 捷易科技聯(lián)系人
  • 色综合久久亚洲国产日韩_日本在线观看_国产成人精品久久二区二区_免费观看一区二区

                    9000px;">

                                    久久五月婷婷丁香社区| 6080日韩午夜伦伦午夜伦| 国产精品久久久久久久岛一牛影视| 在线区一区二视频| 国产高清不卡二三区| 久久国产综合精品| 日韩高清欧美激情| 麻豆精品视频在线观看视频| 亚洲一区在线看| 一区二区三区欧美| 悠悠色在线精品| 亚洲欧美日韩国产综合| 国产精品国产三级国产aⅴ中文 | 欧美一区三区四区| 日韩三级视频在线看| 日韩一区二区视频在线观看| 欧美一区二区三区在| 日韩欧美卡一卡二| 精品国产亚洲在线| 欧美国产在线观看| 亚洲精品欧美综合四区| 五月天激情综合网| 久久99精品久久久久久| 国产精品主播直播| 欧美羞羞免费网站| 欧美日韩黄色影视| 欧美va亚洲va在线观看蝴蝶网| 日韩一级黄色片| 中文字幕一区不卡| 全部av―极品视觉盛宴亚洲| 国产精品亚洲午夜一区二区三区| 99国产精品久久久久久久久久| 欧美综合亚洲图片综合区| 欧美电影一区二区三区| 国产女主播一区| 日产国产欧美视频一区精品 | 中文字幕va一区二区三区| 亚洲一二三专区| 国产不卡免费视频| 欧美一级二级三级蜜桃| 亚洲视频一二三| 国产麻豆日韩欧美久久| 欧美日韩国产一区| 一区二区在线观看视频| 国产精品18久久久久久久网站| 欧美日韩免费电影| 中文字幕免费在线观看视频一区| 午夜伊人狠狠久久| 91官网在线免费观看| 91精品欧美久久久久久动漫| 欧美日韩三级在线| 一区二区成人在线| 韩国精品在线观看| 欧美日韩高清一区二区不卡| 亚洲精品视频在线观看网站| 成人午夜电影网站| 国产精品美女视频| 99久精品国产| 国产精品久久久久久久久快鸭 | 欧美日韩国产高清一区二区三区| 中文字幕在线播放不卡一区| 肉丝袜脚交视频一区二区| 7777精品伊人久久久大香线蕉超级流畅 | 精品国产乱码久久久久久免费| 亚洲视频电影在线| 欧美日韩专区在线| 久久不见久久见免费视频1| 日韩欧美不卡在线观看视频| 黄页视频在线91| 久久久久97国产精华液好用吗| 黄页网站大全一区二区| 国产精品久久久久久久久久久免费看 | 国产精品一区二区三区网站| 国产精品视频九色porn| 色系网站成人免费| 麻豆91免费观看| 亚洲三级电影网站| 制服丝袜日韩国产| 成人av在线播放网站| 亚洲国产一区视频| 国产精品护士白丝一区av| 欧美色图片你懂的| 国产传媒一区在线| 午夜视频一区二区三区| 亚洲国产激情av| 日韩美女一区二区三区四区| 99久久国产综合精品女不卡| 久久国内精品视频| 亚洲高清免费视频| 一色屋精品亚洲香蕉网站| 精品美女在线观看| 欧美精品tushy高清| 色综合久久久久综合体| 国产精品1区2区| 美女视频黄a大片欧美| 亚洲影院理伦片| 亚洲女性喷水在线观看一区| 久久综合久久久久88| 日韩精品一区二区三区在线 | 91精品国产综合久久香蕉麻豆| 日本亚洲最大的色成网站www| 欧美日韩久久久久久| 中文字幕久久午夜不卡| 成人免费视频播放| 日韩一区在线看| 国产精品2024| 欧美成人综合网站| 狠狠色丁香婷婷综合久久片| 欧美乱妇15p| 丝袜诱惑制服诱惑色一区在线观看 | 五月天激情综合| 中文字幕佐山爱一区二区免费| 国产午夜精品理论片a级大结局| 久久久久久久综合日本| 91精品国产综合久久国产大片| 亚洲国产高清aⅴ视频| 99在线精品视频| 91久久精品国产91性色tv| 91网站在线观看视频| 99久久国产综合精品色伊| 97se亚洲国产综合自在线不卡 | 国产精品77777竹菊影视小说| 国产剧情av麻豆香蕉精品| 91在线观看免费视频| 欧美日韩不卡一区| 久久久久97国产精华液好用吗| 亚洲欧美日韩久久精品| 欧美a级理论片| 成人av在线电影| 精品三级在线观看| 亚洲黄色尤物视频| 精品一区二区三区免费毛片爱 | 久久久精品欧美丰满| 国产精品人成在线观看免费| 亚洲h在线观看| 成人国产在线观看| 精品久久久久久久久久久久包黑料| 日韩伦理免费电影| 国产激情视频一区二区在线观看| 日韩一区二区三区免费看| 亚洲综合免费观看高清完整版在线| 国产麻豆成人精品| 国产偷国产偷亚洲高清人白洁| 蜜桃视频第一区免费观看| 欧美日韩中文字幕一区二区| 日韩美女久久久| 91电影在线观看| 亚洲精品免费一二三区| 91麻豆国产香蕉久久精品| 国产精品福利一区| 99久久久久久99| 亚洲黄色av一区| 欧美精品在线观看播放| 青青草原综合久久大伊人精品优势| 欧美日韩色综合| 美女久久久精品| 久久久久国色av免费看影院| 国产成人免费xxxxxxxx| 国产精品免费人成网站| 在线国产电影不卡| 奇米在线7777在线精品| 精品国产乱码久久久久久老虎| 日日摸夜夜添夜夜添精品视频| 欧美久久一二区| 国产成人av在线影院| 亚洲国产成人av| 久久奇米777| 一本色道**综合亚洲精品蜜桃冫| 亚洲一区二区三区三| 欧美变态tickling挠脚心| 国产69精品一区二区亚洲孕妇| 自拍偷拍国产精品| 337p粉嫩大胆色噜噜噜噜亚洲 | 国产精品久久久久精k8 | 国产一区二区久久| 一区二区三区四区国产精品| 欧美电视剧免费全集观看| 99国产精品久| 国内外成人在线| 无码av免费一区二区三区试看| 亚洲国产高清在线| 精品国精品自拍自在线| 在线中文字幕不卡| 成人激情免费网站| 国产一区二区精品久久91| 亚洲成人黄色影院| 亚洲视频免费观看| 国产蜜臀97一区二区三区| 欧美成人官网二区| 日韩欧美国产一区在线观看| 欧美性大战xxxxx久久久| 国产成人午夜99999| 国产精品系列在线播放| 美女任你摸久久 | 亚洲成av人片一区二区梦乃| 夜夜精品视频一区二区 | 蜜桃一区二区三区在线观看| 日本特黄久久久高潮| 青青青爽久久午夜综合久久午夜| 五月天亚洲精品|