Sdílet prostřednictvím


Nasazení modelů Microsoft Foundry pomocí kódu

Poznámka:

Tento dokument se týká portálu Microsoft Foundry (nový).

Důležité

Pokud aktuálně používáte beta sadu SDK pro odvozování Azure AI s modely Microsoft Foundry nebo službou Azure OpenAI, důrazně doporučujeme přejít na obecně dostupné rozhraní API OpenAI/v1, které používá stabilní sadu SDK OpenAI.

Další informace o migraci na rozhraní API OpenAI/v1 pomocí sady SDK ve zvoleném programovacím jazyce najdete v tématu Migrace ze sady Azure AI Inference SDK na OpenAI SDK.

Můžete se rozhodnout a nakonfigurovat, které modely jsou k dispozici pro odvozování ve vašem prostředku Microsoft Foundry. Když model nakonfigurujete, můžete z něj vygenerovat předpovědi zadáním názvu modelu nebo názvu nasazení v požadavcích. Abyste mohli model používat, nemusíte v kódu provádět žádné další změny.

V tomto článku se dozvíte, jak přidat nový model do koncového bodu Foundry Models.

Požadavky

K dokončení tohoto článku potřebujete:

  • Nainstalujte Azure CLI a cognitiveservices rozšíření pro Foundry Tools.

    az extension add -n cognitiveservices
    
  • Některé příkazy v tomto kurzu používají jq nástroj, který nemusí být nainstalovaný ve vašem systému. Pokyny k instalaci naleznete v tématu Stažení jq.

  • Identifikujte následující informace:

    • ID vašeho předplatného Azure

    • Název prostředku Foundry Tools

    • Skupina prostředků, do které jste nasadili prostředek Foundry Tools.

Přidání modelů

Pokud chcete přidat model, nejprve identifikujte model, který chcete nasadit. Dostupné modely můžete dotazovat následujícím způsobem:

  1. Přihlaste se ke svému předplatnému Azure.

    az login
    
  2. Pokud máte více než jedno předplatné, vyberte předplatné, ve kterém se nachází váš prostředek.

    az account set --subscription $subscriptionId
    
  3. Nastavte následující proměnné prostředí s názvem prostředku Foundry Tools, který plánujete použít a skupinu prostředků.

    accountName="<ai-services-resource-name>"
    resourceGroupName="<resource-group>"
    location="eastus2"
    
  4. Pokud jste ještě nevytvořili účet Foundry Tools, vytvořte ho.

    az cognitiveservices account create -n $accountName -g $resourceGroupName --custom-domain $accountName --location $location --kind AIServices --sku S0
    
  5. Zkontrolujte, které modely máte k dispozici a ve kterých skladových položkách. SKU, označované také jako typy nasazení, definují způsob, jakým se infrastruktura Azure používá ke zpracování požadavků. Modely můžou nabízet různé typy nasazení. Následující příkaz zobrazí seznam všech dostupných definic modelu:

    az cognitiveservices account list-models \
        -n $accountName \
        -g $resourceGroupName \
    | jq '.[] | { name: .name, format: .format, version: .version, sku: .skus[0].name, capacity: .skus[0].capacity.default }'
    
  6. Výstupy vypadají následovně:

    {
      "name": "Phi-3.5-vision-instruct",
      "format": "Microsoft",
      "version": "2",
      "sku": "GlobalStandard",
      "capacity": 1
    }
    
  7. Identifikujte model, který chcete nasadit. Potřebujete vlastnosti name, format, versiona sku. Vlastnost format označuje zprostředkovatele nabízejícího model. V závislosti na typu nasazení můžete také potřebovat kapacitu.

  8. Přidejte nasazení modelu k prostředku. Následující příklad přidává Phi-3.5-vision-instruct:

    az cognitiveservices account deployment create \
        -n $accountName \
        -g $resourceGroupName \
        --deployment-name Phi-3.5-vision-instruct \
        --model-name Phi-3.5-vision-instruct \
        --model-version 2 \
        --model-format Microsoft \
        --sku-capacity 1 \
        --sku-name GlobalStandard
    
  9. Model je připravený k použití.

Stejný model můžete v případě potřeby nasadit vícekrát, pokud je pod jiným názvem nasazení. Tato funkce může být užitečná, pokud chcete otestovat různé konfigurace pro daný model, včetně filtrů obsahu.

Použijte model

Nasazené modely jsou k dispozici a lze je využívat prostřednictvím inferenčního koncového bodu modelu Azure AI pro prostředek. Při vytváření svého požadavku uveďte parametr model a vložte název nasazení modelu, který jste vytvořili. Identifikátor URI koncového bodu inference můžete získat programově pomocí následujícího kódu.

Koncový bod odvození

az cognitiveservices account show  -n $accountName -g $resourceGroupName | jq '.properties.endpoints["Azure AI Model Inference API"]'

Chcete-li odesílat požadavky na k rozhraní Microsoft Foundry Models, připojte trasu models, například https://<resource>.services.ai.azure.com/models. Referenční informace k rozhraní API pro koncový bod najdete na referenční stránce rozhraní API pro odvozování modelů Azure AI.

Klíče odvození

az cognitiveservices account keys list  -n $accountName -g $resourceGroupName

Správa nasazení

Všechna dostupná nasazení můžete zobrazit pomocí rozhraní příkazového řádku:

  1. Spuštěním následujícího příkazu zobrazte všechna aktivní nasazení:

    az cognitiveservices account deployment list -n $accountName -g $resourceGroupName
    
  2. Podrobnosti o dané implementaci můžete vidět:

    az cognitiveservices account deployment show \
        --deployment-name "Phi-3.5-vision-instruct" \
        -n $accountName \
        -g $resourceGroupName
    
  3. Můžete odstranit dané nasazení následujícím způsobem:

    az cognitiveservices account deployment delete \
        --deployment-name "Phi-3.5-vision-instruct" \
        -n $accountName \
        -g $resourceGroupName
    

Můžete se rozhodnout a nakonfigurovat, které modely jsou k dispozici pro odvozování ve vašem prostředku Microsoft Foundry. Když model nakonfigurujete, můžete z něj vygenerovat předpovědi zadáním názvu modelu nebo názvu nasazení v požadavcích. Abyste mohli model používat, nemusíte v kódu provádět žádné další změny.

V tomto článku se dozvíte, jak přidat nový model do koncového bodu Foundry Models.

Požadavky

K dokončení tohoto článku potřebujete:

  • Nainstalujte Azure CLI.

  • Identifikujte následující informace:

    • ID vašeho předplatného Azure

    • Název vašeho prostředku Microsoft Foundry (dříve označovaný jako prostředek azure AI Services).

    • Skupina prostředků, ve které je nasazený prostředek Foundry.

    • Název modelu, poskytovatel, verze a SKU, které chcete nasadit. K vyhledání těchto informací můžete použít portál Foundry nebo Azure CLI. V tomto příkladu nasadíte následující model:

      • Název modelu:: Phi-3.5-vision-instruct
      • Zprostředkovatel: Microsoft
      • Verze: 2
      • Typ nasazení: Globální standard

O tomto tutoriálu

Příklad v tomto článku je založený na ukázkách kódu obsažených v úložišti Azure-Samples/azureai-model-inference-bicep. Abyste mohli příkazy spouštět lokálně, aniž byste museli kopírovat nebo vkládat obsah souborů, použijte následující příkazy k naklonování úložiště a přejděte do složky pro váš programovací jazyk:

git clone https://github.com/Azure-Samples/azureai-model-inference-bicep

Soubory pro tento příklad jsou v:

cd azureai-model-inference-bicep/infra

Oprávnění potřebná k přihlášení k odběru modelů od partnerů a komunity

Modely Foundry od partnerů a komunity , které jsou k dispozici pro nasazení (například modely Cohere), vyžadují Azure Marketplace. Poskytovatelé modelů definují licenční podmínky a nastavují cenu pro použití svých modelů pomocí Azure Marketplace.

Při nasazování modelů třetích stran se ujistěte, že máte ve svém účtu následující oprávnění:

  • V předplatném Azure:
    • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
    • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
    • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.SaaS/register/action
  • Ve skupině prostředků – vytvoření a použití prostředku SaaS:
    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write

Přidat model

  1. Použití šablony ai-services-deployment-template.bicep k popisu nasazení modelu:

    ai-services-deployment-template.bicep

    @description('Name of the Azure AI services account')
    param accountName string
    
    @description('Name of the model to deploy')
    param modelName string
    
    @description('Version of the model to deploy')
    param modelVersion string
    
    @allowed([
      'AI21 Labs'
      'Cohere'
      'Core42'
      'DeepSeek'
      'xAI'
      'Meta'
      'Microsoft'
      'Mistral AI'
      'OpenAI'
    ])
    @description('Model provider')
    param modelPublisherFormat string
    
    @allowed([
        'GlobalStandard'
        'DataZoneStandard'
        'Standard'
        'GlobalProvisioned'
        'Provisioned'
    ])
    @description('Model deployment SKU name')
    param skuName string = 'GlobalStandard'
    
    @description('Content filter policy name')
    param contentFilterPolicyName string = 'Microsoft.DefaultV2'
    
    @description('Model deployment capacity')
    param capacity int = 1
    
    resource modelDeployment 'Microsoft.CognitiveServices/accounts/deployments@2024-04-01-preview' = {
      name: '${accountName}/${modelName}'
      sku: {
        name: skuName
        capacity: capacity
      }
      properties: {
        model: {
          format: modelPublisherFormat
          name: modelName
          version: modelVersion
        }
        raiPolicyName: contentFilterPolicyName == null ? 'Microsoft.Nill' : contentFilterPolicyName
      }
    }
    
  2. Spusťte nasazení:

    RESOURCE_GROUP="<resource-group-name>"
    ACCOUNT_NAME="<azure-ai-model-inference-name>" 
    MODEL_NAME="Phi-3.5-vision-instruct"
    PROVIDER="Microsoft"
    VERSION=2
    
    az deployment group create \
        --resource-group $RESOURCE_GROUP \
        --template-file ai-services-deployment-template.bicep \
        --parameters accountName=$ACCOUNT_NAME modelName=$MODEL_NAME modelVersion=$VERSION modelPublisherFormat=$PROVIDER
    

Použijte model

Nasazené modely jsou k dispozici a lze je využívat prostřednictvím inferenčního koncového bodu modelu Azure AI pro prostředek. Při vytváření svého požadavku uveďte parametr model a vložte název nasazení modelu, který jste vytvořili. Identifikátor URI koncového bodu inference můžete získat programově pomocí následujícího kódu.

Koncový bod odvození

az cognitiveservices account show  -n $accountName -g $resourceGroupName | jq '.properties.endpoints["Azure AI Model Inference API"]'

Pokud chcete provést požadavky na koncový bod Foundry Models, připojte trasu models, například https://<resource>.services.ai.azure.com/models. Referenční informace k rozhraní API pro koncový bod najdete na referenční stránce rozhraní API pro odvozování modelů Azure AI.

Klíče odvození

az cognitiveservices account keys list  -n $accountName -g $resourceGroupName

Další krok