hugs 文件

Docker

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

Docker

HUGS 支援在 Docker 上部署。你可以透過命令列使用預設設定執行 HUGS,也可以透過建立自己的 docker-compose.yml 檔案來自定義配置。

透過 Docker 執行 HUGS

要在 Docker 中使用預設設定執行 HUGS,請在你的 shell 中執行此命令

export HUGS_CACHE=~/.cache/hugs
mkdir -p "$HUGS_CACHE"
docker run -it --rm \
    --gpus all \
    --shm-size=16GB \
    -v "$HUGS_CACHE:/tmp" \
    -p 8080:80 \
   'hfhugs/nvidia-google-gemma-2-9b-it:0.2.0'

容器 URI 可能會因分發版本和你使用的模型而異。

該命令在容器中設定了以下預設環境變數

  • HUGS_CACHE 預設為 ~/.cache/hugs。這是模型的快取目錄,以便下次載入更快。

在 AWS Inferentia2/Trainium 上執行 HUGS 容器

要在裝有 Inferentia2 或 Trainium 加速器的 AWS 例項上執行 HUGS,你需要使用相容的 Docker 映象並配置對 Neuron 裝置的訪問許可權。有兩種方法可以讓容器訪問 Neuron 裝置

  1. 使用 --privileged 標誌(授予對所有 Neuron 裝置的訪問許可權)
  2. 使用 --device 標誌(授予對特定 Neuron 裝置的訪問許可權)

你可以使用 --privileged 標誌執行容器,以授予對所有 Neuron 裝置的訪問許可權

export HUGS_CACHE=~/.cache/hugs
mkdir -p "$HUGS_CACHE"
sudo docker run -it --rm \
    --shm-size=16GB \
    --privileged \
    -v "$HUGS_CACHE:/tmp" \
    -p 8080:80 \
    'hfhugs/neuron-meta-llama-meta-llama-3.1-8b-instruct:0.2.0'

或者,你可以使用 --device 標誌指定單個 Neuron 裝置,以實現更精細的控制

export HUGS_CACHE=~/.cache/hugs
mkdir -p "$HUGS_CACHE"
sudo docker run -it --rm \
    --shm-size=16GB \
    --device=/dev/neuron0 \
    --device=/dev/neuron1 \
    --device=/dev/neuron2 \
    --device=/dev/neuron3 \
    -v "$HUGS_CACHE:/tmp" \
    -p 8080:80 \
    'hfhugs/neuron-meta-llama-meta-llama-3.1-8b-instruct:0.2.0'
使用單個 `--device` 標誌可以更精細地控制哪些 Neuron 裝置可被容器訪問,這在同一例項上執行多個容器時非常有用。

Docker Compose 檔案示例

你還可以使用 docker-compose.yml 檔案來自定義你的配置。

version: '3.8'

services:
  hugs:
    image: hfhugs/nvidia-google-gemma-2-9b-it
    ports:
      - 8080:80
    volumes:
      - ${HUGS_CACHE:-~/.cache/hugs}:/tmp
    environment:
      - HUGS_CACHE=/tmp
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    shm_size: 16GB
    restart: on-failure:0

volumes:
  hugs_cache:

編輯 docker-compose.yml 檔案以滿足你的需求。你可以新增或刪除環境變數、更改埠對映。要啟動你的 HUGS 例項,請在你的 shell 中執行此命令

docker compose up
< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.