跳到內容

Hugging Face 推理端點

概述

與 vLLM 相容的模型可以部署在 Hugging Face 推理端點上,可以直接從 Hugging Face Hub 或直接從 推理端點 介面進行部署。這允許您在完全託管的環境中提供模型服務,支援 GPU 加速、自動伸縮和監控,而無需手動管理基礎設施。

有關 vLLM 整合和部署選項的高階詳情,請參閱 高階部署詳情

部署方法

方法 1:從目錄部署

這是在 Hugging Face 推理端點上使用 vLLM 的最簡單方法。您可以在 推理端點 上瀏覽具有經過驗證和最佳化部署配置的模型目錄,以最大化效能。

  1. 轉到 端點目錄,在 推理伺服器 選項中,選擇 vLLM。這將顯示當前帶有最佳化預配置選項的模型列表。

    Endpoints Catalog

  2. 選擇所需的模型,然後點選 建立端點

    Create Endpoint

  3. 部署完成後,您就可以使用該端點。將 DEPLOYMENT_URL 更新為控制檯中提供的 URL,並記住根據需要附加 /v1

    # pip install openai
    from openai import OpenAI
    import os
    
    client = OpenAI(
        base_url=DEPLOYMENT_URL,
        api_key=os.environ["HF_TOKEN"],  # https://huggingface.tw/settings/tokens
    )
    
    chat_completion = client.chat.completions.create(
        model="HuggingFaceTB/SmolLM3-3B",
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "text",
                        "text": "Give me a brief explanation of gravity in simple terms.",
                    }
                ],
            }
        ],
        stream=True,
    )
    
    for message in chat_completion:
        print(message.choices[0].delta.content, end="")
    

注意

該目錄提供了針對 vLLM 最佳化的模型,包括 GPU 設定和推理引擎配置。您可以從推理端點 UI 監控端點並更新 容器或其配置

方法 2:引導式部署(Transformers 模型)

此方法適用於其元資料中包含 transformers 庫標籤 的模型。它允許您直接從 Hub UI 部署模型,無需手動配置。

  1. 導航到 Hugging Face Hub 上的模型。
    在本示例中,我們將使用 ibm-granite/granite-docling-258M 模型。您可以檢查 README 中的 front matter,其中庫標記為 library: transformers,來驗證模型是否相容。

  2. 找到 部署 按鈕。該按鈕會出現在 模型卡片 右上角,適用於標記為 transformers 的模型。

    Locate deploy button

  3. 點選 部署 按鈕 > HF 推理端點。您將被帶到推理端點介面來配置部署。

    Click deploy button

  4. 選擇硬體(本例中我們選擇 AWS > GPU > T4)和容器配置。選擇 vLLM 作為容器型別,然後按 建立端點 完成部署。

    Select Hardware

  5. 使用已部署的端點。將 DEPLOYMENT_URL 更新為控制檯中提供的 URL(記住新增必要的 /v1)。然後您可以透過程式設計方式或透過 SDK 使用您的端點。

    # pip install openai
    from openai import OpenAI
    import os
    
    client = OpenAI(
        base_url=DEPLOYMENT_URL,
        api_key=os.environ["HF_TOKEN"],  # https://huggingface.tw/settings/tokens
    )
    
    chat_completion = client.chat.completions.create(
        model="ibm-granite/granite-docling-258M",
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "image_url",
                        "image_url": {
                            "url": "https://huggingface.tw/ibm-granite/granite-docling-258M/resolve/main/assets/new_arxiv.png",
                        },
                    },
                    {
                        "type": "text",
                        "text": "Convert this page to docling.",
                    },
                ]
            }
        ],
        stream=True,
    )
    
    for message in chat_completion:
        print(message.choices[0].delta.content, end="")
    

注意

此方法使用最佳猜測預設值。您可能需要調整配置以滿足您的特定需求。

方法 3:手動部署(高階模型)

某些模型需要手動部署,因為它們

  • 使用帶有 transformers 標籤的自定義程式碼
  • 不使用標準的 transformers 但受 vLLM 支援

這些模型無法使用模型卡片上的 部署 按鈕進行部署。

在本指南中,我們將演示使用 rednote-hilab/dots.ocr 模型進行手動部署,這是一個與 vLLM 整合的 OCR 模型(請參閱 vLLM 的 PR)。

  1. 啟動新部署。轉到 推理端點 並點選 新建

    New Endpoint

  2. 在 Hub 中搜索模型。在對話方塊中,切換到 Hub 並搜尋所需的模型。

    Select model

  3. 選擇基礎設施。在配置頁面,從可用選項中選擇雲提供商和硬體。
    對於本次演示,我們選擇 AWS 和 L4 GPU。請根據您的硬體需求進行調整。

    Choose Infra

  4. 配置容器。滾動到 容器配置 並選擇 vLLM 作為容器型別。

    Configure Container

  5. 建立端點。點選 建立端點 來部署模型。

    端點準備就緒後,您就可以使用它了。使用 OpenAI Completion API、cURL 或其他 SDK。如果需要,請記住將 /v1 附加到部署 URL。

注意

您可以從推理端點 UI 調整 容器設定(容器 URI、容器引數),然後按 更新端點。這將使用更新的容器配置重新部署端點。對模型本身的更改需要建立新端點或使用不同模型重新部署。例如,對於本次演示,您可能需要將容器 URI 更新為 nightly 映像(vllm/vllm-openai:nightly)並在容器引數中新增 --trust-remote-code 標誌。

高階部署詳情

透過 Transformers 模型後端整合,vLLM 現在為任何相容 transformers 的模型提供 Day 0 支援。這意味著您可以立即部署這些模型,利用 vLLM 的最佳化推理,而無需額外的後端修改。

Hugging Face 推理端點提供了一個完全託管的環境,用於透過 vLLM 提供模型服務。您可以部署模型,而無需配置伺服器、安裝依賴項或管理叢集。端點還支援跨多個雲提供商(AWS、Azure、GCP)進行部署,而無需單獨的帳戶。

該平臺與 Hugging Face Hub 無縫整合,允許您部署任何 vLLM 或 transformers 相容的模型,跟蹤使用情況,並直接更新推理引擎。vLLM 引擎已預先配置,可實現最佳化推理,並能在不修改程式碼的情況下輕鬆切換模型或引擎。這種設定簡化了生產部署:端點可在幾分鐘內準備就緒,包含監控和日誌記錄,讓您可以專注於提供模型服務,而不是維護基礎設施。

後續步驟