Развертывание моделей в виде бессерверных развертываний API (классическая модель)

Применяется только к:Портал Foundry (классический). Эта статья недоступна для нового портала Foundry. Дополнительные сведения о новом портале.

Примечание

Содержание в новой документации Microsoft Foundry может открываться по ссылкам в этой статье вместо документации Foundry (классической версии), которую вы просматриваете сейчас.

Важно

Элементы, помеченные (предварительная версия) в этой статье, в настоящее время находятся в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения об уровне обслуживания, и мы не рекомендуем ее для рабочих нагрузок. Некоторые функции могут не поддерживаться или могут иметь ограниченные возможности. Дополнительные сведения см. в разделе Supplemental Terms of Use for Microsoft Azure Previews.

В этой статье вы узнаете, как развернуть модель Microsoft Foundry в качестве бессерверного развертывания API. Некоторые модели в каталоге моделей можно развернуть как бессерверное развертывание API. Такой тип развертывания позволяет использовать модели в качестве API без размещения их в подписке, сохраняя корпоративную безопасность и соответствие требованиям, необходимым организациям. Этот параметр развертывания не требует квоты из подписки.

Хотя развертывание бессерверного API является одним из вариантов развертывания моделей Foundry, мы рекомендуем развертывать модели Foundry в ресурсах Foundry.

Примечание

Мы рекомендуем развернуть модели Microsoft Foundry на ресурсы Foundry, чтобы подключиться к вашим развертываниям в ресурсе через единую конечную точку с одинаковой аутентификацией и схемой для выполнения инференса. Конечная точка следует API вывода модели Azure ИИ, которые поддерживают все модели Foundry. Сведения о том, как развернуть модель Foundry в ресурсах Foundry, см. в разделе Добавление и настройка моделей в Foundry Models.

Необходимые условия

  • Подписка Azure с допустимым методом оплаты. Бесплатные или пробные Azure подписки не будут работать. Если у вас нет подписки Azure, создайте платную учетную запись Azure, чтобы начать.

  • Если у вас нет одного, создайте проект на основе концентратора.

  • Убедитесь, что функция развертывания моделей в ресурсах Foundry (предварительная версия) отключена на портале Foundry. Если эта функция включена, на портале не доступны бессерверные развертывания API.

    Снимок экрана портала Foundry, на котором показано, где отключить развертывание в ресурсах Foundry.

  • Foundry Модели от партнеров и сообщества требуют доступа к Azure Marketplace, а Foundry модели, продаваемые напрямую Azure, не имеют этого требования. Убедитесь, что у вас есть разрешения, необходимые для подписки на предложения моделей в Azure Marketplace.

  • Azure управления доступом на основе ролей (Azure RBAC) используются для предоставления доступа к операциям на портале Foundry. Чтобы выполнить действия, описанные в этой статье, вашей учетной записи пользователя должна быть назначена роль Azure разработчика ИИ в группе ресурсов. Дополнительные сведения о разрешениях см. в разделе Управление доступом на основе ролей портала Foundry.

Поиск модели в каталоге моделей

  1. Войдите в Microsoft Foundry. Убедитесь, что переключатель New Foundry отключен. Эти действия относятся к Foundry (classic).
  2. Если вы еще не находитесь в проекте, выберите его.
  3. Выберите каталог моделей в левой области.
  1. Выберите карточку модели модели, которую вы хотите развернуть. В этой статье вы выберете модель DeepSeek-R1 .

  2. Выберите "Использовать эту модель ", чтобы открыть окно развертывания БЕССерверных API , где можно просмотреть вкладку "Цены и условия ".

  3. В мастере развертывания назовите развертывание. Параметр фильтра содержимого (предварительная версия) включен по умолчанию. Оставьте параметр по умолчанию для службы, чтобы обнаружить вредное содержимое, например ненависть, самоповредение, сексуальное и насильственное содержимое. Дополнительные сведения о фильтрации содержимого см. на портале Foundry.

    Скриншот, показывающий мастер развертывания для модели, продаваемой непосредственно Azure.

Развертывание модели в бессерверном API

В этом разделе описано, как создать конечную точку для модели.

  1. В мастере развертывания выберите "Развернуть". Подождите, пока развертывание будет готово, и вы будете перенаправлены на страницу "Развертывания".

  2. Чтобы просмотреть конечные точки, развернутые в проекте, в разделе "Мои ресурсы " в левой области выберите "Модели и конечные точки".

  3. Созданная конечная точка использует проверку подлинности ключа для авторизации. Чтобы получить ключи, связанные с данной конечной точкой, выполните следующие действия.

    1. Выберите развертывание и запишите URI целевой точки и ключ конечной точки.

    2. Используйте эти учетные данные для вызова развертывания и создания прогнозов.

  4. Если вам нужно использовать это развертывание в другом проекте или концентраторе, или вы планируете воспользоваться Prompt flow для создания интеллектуальных приложений, необходимо установить подключение к развертыванию бессерверного API. Сведения о том, как настроить существующее бессерверное развертывание API в рамках нового проекта или узла, см. в разделе "Использование развернутого бессерверного API из другого проекта или из потока запросов".

    Совет

    Если вы используете Prompt flow в том же проекте или центре, где была выполнена установка, вам все равно нужно создать подключение.

Использование развертывания бессерверного API

Модели, развернутые в Машинное обучение Azure и Foundry в бессерверных развертываниях API, поддерживают API вывода моделей Azure ИИ, предоставляющие общий набор возможностей для базовых моделей и которые могут использоваться разработчиками для использования прогнозов из различных наборов моделей в единообразном и согласованном режиме.

Узнайте больше о возможностях этого API и о том, как его использовать при создании приложений.

Удаление конечных точек и подписок

Совет

Так как вы можете настроить левую панель на портале Microsoft Foundry, вы можете увидеть элементы, которые могут отличаться от тех, что показаны в этих шагах. Если вы не видите, что вы ищете, выберите ... Подробнее в нижней части левой панели.

Вы можете удалить подписки и конечные точки модели. Удаление подписки модели приводит к тому, что любые связанные конечные точки становятся неработоспособными и непригодными для использования.

Чтобы удалить развертывание бессерверного API, выполните следующие действия.

  1. Перейдите в Фаундри.
  2. Перейдите в ваш проект.
  3. В разделе "Мои ресурсы" выберите "Модели и конечные точки".
  4. Откройте развертывание, которое нужно удалить.
  5. Нажмите кнопку "Удалить".

Чтобы удалить связанную подписку модели, выполните следующие действия.

  1. Перейдите на портал Azure
  2. Перейдите в группу ресурсов, к которой относится проект.
  3. В фильтре типов выберите SaaS.
  4. Выберите подписку, которую вы хотите удалить.
  5. Нажмите кнопку "Удалить".
  • Чтобы работать с Foundry, установите Azure CLI и расширение ml для Машинное обучение Azure.

    az extension add -n ml
    

    Если у вас уже установлено расширение, убедитесь, что установлена последняя версия.

    az extension update -n ml
    

    После установки расширения настройте его:

    az account set --subscription <subscription>
    az configure --defaults workspace=<project-name> group=<resource-group> location=<location>
    

Поиск модели в каталоге моделей

  1. Войдите в Microsoft Foundry. Убедитесь, что переключатель New Foundry отключен. Эти действия относятся к Foundry (classic).
  2. Если вы еще не находитесь в проекте, выберите его.
  3. Выберите каталог моделей в левой области.
  1. Выберите карточку модели модели, которую вы хотите развернуть. В этой статье вы выберете модель DeepSeek-R1 .

  2. Скопируйте идентификатор модели без включения версии модели, так как развертывания API без сервера всегда развертывают последнюю версию модели. Например, для идентификатора azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1модели скопируйте azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Снимок экрана, показывающий страницу сведений о модели, проданной непосредственно через Azure.

Действия, описанные в этом разделе статьи, используют модель DeepSeek-R1 для иллюстрации. Эти шаги одинаковы, независимо от того, используете ли вы модели Foundry, проданные непосредственно Azure или Foundry Models от партнеров и сообщества. Например, если вы решили развернуть модель Cohere-command-r-08-2024, вы можете заменить реквизиты доступа модели в фрагментах кода на реквизиты для сервиса Cohere.

Развертывание модели в бессерверном API

В этом разделе описано, как создать конечную точку для модели. Назовите конечную точку DeepSeek-R1-qwerty.

  1. Создайте бессерверную конечную точку.

    endpoint.yml

    name: DeepSeek-R1-qwerty
    model_id: azureml://registries/azureml-deepseek/models/DeepSeek-R1
    

    Используйте файл endpoint.yml для создания конечной точки:

    az ml serverless-endpoint create -f endpoint.yml
    
  2. В любой момент можно увидеть конечные точки, развернутые в проекте:

    az ml serverless-endpoint list
    
  3. Созданная конечная точка использует проверку подлинности ключа для авторизации. Чтобы получить ключи, связанные с данной конечной точкой, выполните следующие действия.

    az ml serverless-endpoint get-credentials -n DeepSeek-R1-qwerty
    
  4. Если вам нужно использовать это развертывание в другом проекте или концентраторе, или вы планируете воспользоваться Prompt flow для создания интеллектуальных приложений, необходимо установить подключение к развертыванию бессерверного API. Сведения о том, как настроить существующее бессерверное развертывание API в рамках нового проекта или узла, см. в разделе "Использование развернутого бессерверного API из другого проекта или из потока запросов".

    Совет

    Если вы используете Prompt flow в том же проекте или центре, где была выполнена установка, вам все равно нужно создать подключение.

Использование развертывания бессерверного API

Модели, развернутые в Машинное обучение Azure и Foundry в бессерверных развертываниях API, поддерживают API вывода моделей Azure ИИ, предоставляющие общий набор возможностей для базовых моделей и которые могут использоваться разработчиками для использования прогнозов из различных наборов моделей в единообразном и согласованном режиме.

Узнайте больше о возможностях этого API и о том, как его использовать при создании приложений.

Удаление конечных точек и подписок

Вы можете удалить подписки и конечные точки модели. Удаление подписки модели приводит к тому, что любые связанные конечные точки становятся неработоспособными и непригодными для использования.

Чтобы удалить развертывание бессерверного API, выполните следующие действия.

az ml serverless-endpoint delete \
    --name "DeepSeek-R1-qwerty"

Чтобы удалить связанную подписку модели, выполните следующие действия.

az ml marketplace-subscription delete \
    --name "DeepSeek-R1"
  • Чтобы работать с Foundry, установите пакет SDK Машинное обучение Azure для Python.

    pip install -U azure-ai-ml
    

    После установки импортируйте необходимые пространства имен и создайте клиент, подключенный к проекту:

    from azure.ai.ml import MLClient
    from azure.identity import InteractiveBrowserCredential
    from azure.ai.ml.entities import MarketplaceSubscription, ServerlessEndpoint
    
    client = MLClient(
        credential=InteractiveBrowserCredential(tenant_id="<tenant-id>"),
        subscription_id="<subscription-id>",
        resource_group_name="<resource-group>",
        workspace_name="<project-name>",
    )
    

Поиск модели в каталоге моделей

  1. Войдите в Microsoft Foundry. Убедитесь, что переключатель New Foundry отключен. Эти действия относятся к Foundry (classic).
  2. Если вы еще не находитесь в проекте, выберите его.
  3. Выберите каталог моделей в левой области.
  1. Выберите карточку модели модели, которую вы хотите развернуть. В этой статье вы выберете модель DeepSeek-R1 .

  2. Скопируйте идентификатор модели без включения версии модели, так как развертывания API без сервера всегда развертывают последнюю версию модели. Например, для идентификатора azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1модели скопируйте azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Снимок экрана, показывающий страницу сведений о модели, проданной непосредственно через Azure.

Действия, описанные в этом разделе статьи, используют модель DeepSeek-R1 для иллюстрации. Эти шаги одинаковы, независимо от того, используете ли вы модели Foundry, проданные непосредственно Azure или Foundry Models от партнеров и сообщества. Например, если вы решили развернуть модель Cohere-command-r-08-2024, вы можете заменить реквизиты доступа модели в фрагментах кода на реквизиты для сервиса Cohere.

Развертывание модели в бессерверном API

В этом разделе описано, как создать конечную точку для модели. Назовите конечную точку DeepSeek-R1-qwerty.

  1. Создайте бессерверную конечную точку.

    endpoint_name="DeepSeek-R1-qwerty"
    
    serverless_endpoint = ServerlessEndpoint(
        name=endpoint_name,
        model_id=model_id
    )
    
    created_endpoint = client.serverless_endpoints.begin_create_or_update(
        serverless_endpoint
    ).result()
    
  2. В любой момент можно увидеть конечные точки, развернутые в проекте:

    endpoint_name="DeepSeek-R1-qwerty"
    
    serverless_endpoint = ServerlessEndpoint(
        name=endpoint_name,
        model_id=model_id
    )
    
    created_endpoint = client.serverless_endpoints.begin_create_or_update(
        serverless_endpoint
    ).result()
    
  3. Созданная конечная точка использует проверку подлинности ключа для авторизации. Чтобы получить ключи, связанные с данной конечной точкой, выполните следующие действия.

    endpoint_keys = client.serverless_endpoints.get_keys(endpoint_name)
    print(endpoint_keys.primary_key)
    print(endpoint_keys.secondary_key)
    
  4. Если вам нужно использовать это развертывание в другом проекте или концентраторе, или вы планируете воспользоваться Prompt flow для создания интеллектуальных приложений, необходимо установить подключение к развертыванию бессерверного API. Сведения о том, как настроить существующее бессерверное развертывание API в рамках нового проекта или узла, см. в разделе "Использование развернутого бессерверного API из другого проекта или из потока запросов".

    Совет

    Если вы используете Prompt flow в том же проекте или центре, где была выполнена установка, вам все равно нужно создать подключение.

Использование развертывания бессерверного API

Модели, развернутые в Машинное обучение Azure и Foundry в бессерверных развертываниях API, поддерживают API вывода моделей Azure ИИ, предоставляющие общий набор возможностей для базовых моделей и которые могут использоваться разработчиками для использования прогнозов из различных наборов моделей в единообразном и согласованном режиме.

Узнайте больше о возможностях этого API и о том, как его использовать при создании приложений.

Удаление конечных точек и подписок

Вы можете удалить подписки и конечные точки модели. Удаление подписки модели приводит к тому, что любые связанные конечные точки становятся неработоспособными и непригодными для использования.

client.serverless_endpoints.begin_delete(endpoint_name).wait()

Чтобы удалить связанную подписку модели, выполните следующие действия.

client.marketplace_subscriptions.begin_delete(subscription_name).wait()
  • Чтобы работать с Foundry, установите Azure CLI, как описано в Azure CLI.

    Настройте следующие переменные среды в соответствии с параметрами:

    RESOURCE_GROUP="serverless-models-dev"
    LOCATION="eastus2" 
    

Поиск модели в каталоге моделей

  1. Войдите в Microsoft Foundry. Убедитесь, что переключатель New Foundry отключен. Эти действия относятся к Foundry (classic).
  2. Если вы еще не находитесь в проекте, выберите его.
  3. Выберите каталог моделей в левой области.
  1. Выберите карточку модели модели, которую вы хотите развернуть. В этой статье вы выберете модель DeepSeek-R1 .

  2. Скопируйте идентификатор модели без включения версии модели, так как развертывания API без сервера всегда развертывают последнюю версию модели. Например, для идентификатора azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1модели скопируйте azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    Снимок экрана, показывающий страницу сведений о модели, проданной непосредственно через Azure.

Действия, описанные в этом разделе статьи, используют модель DeepSeek-R1 для иллюстрации. Эти шаги одинаковы, независимо от того, используете ли вы модели Foundry, проданные непосредственно Azure или Foundry Models от партнеров и сообщества. Например, если вы решили развернуть модель Cohere-command-r-08-2024, вы можете заменить реквизиты доступа модели в фрагментах кода на реквизиты для сервиса Cohere.

Развертывание модели в бессерверном API

В этом разделе описано, как создать конечную точку для модели. Назовите конечную точку myserverless-text-1234ss.

  1. Создайте бессерверную конечную точку. Чтобы создать конечную точку, используйте следующий шаблон:

    serverless-endpoint.bicep

    param projectName string = 'my-project'
    param endpointName string = 'myserverless-text-1234ss'
    param location string = resourceGroup().location
    param modelId string = 'azureml://registries/azureml-deepseek/models/DeepSeek-R1'
    
    var modelName = substring(modelId, (lastIndexOf(modelId, '/') + 1))
    // Replace period character which is used in some model names (and is not valid in the subscription name)
    var sanitizedModelName = replace(modelName, '.', '')
    var subscriptionName = '${sanitizedModelName}-subscription'
    
    resource projectName_endpoint 'Microsoft.MachineLearningServices/workspaces/serverlessEndpoints@2024-04-01-preview' = {
      name: '${projectName}/${endpointName}'
      location: location
      sku: {
        name: 'Consumption'
      }
      properties: {
        modelSettings: {
          modelId: modelId
        }
      }
      dependsOn: [
        projectName_subscription
      ]
    }
    
    output endpointUri string = projectName_endpoint.properties.inferenceEndpoint.uri
    

    Создайте развертывание следующим образом:

    az deployment group create --resource-group $RESOURCE_GROUP --template-file model-subscription.bicep
    
  2. В любой момент можно увидеть конечные точки, развернутые в проекте:

    Средства управления ресурсами можно использовать для запроса ресурсов. Следующий код использует Azure CLI:

    az resource list \
        --query "[?type=='Microsoft.MachineLearningServices/workspaces/serverlessEndpoints']"
    
  3. Созданная конечная точка использует проверку подлинности ключа для авторизации. Получите ключи, связанные с данной конечной точкой, с помощью REST API для запроса этих сведений.

  4. Если вам нужно использовать это развертывание в другом проекте или концентраторе, или вы планируете воспользоваться Prompt flow для создания интеллектуальных приложений, необходимо установить подключение к развертыванию бессерверного API. Сведения о том, как настроить существующее бессерверное развертывание API в рамках нового проекта или узла, см. в разделе "Использование развернутого бессерверного API из другого проекта или из потока запросов".

    Совет

    Если вы используете Prompt flow в том же проекте или центре, где была выполнена установка, вам все равно нужно создать подключение.

Использование развертывания бессерверного API

Модели, развернутые в Машинное обучение Azure и Foundry в бессерверных развертываниях API, поддерживают API вывода моделей Azure ИИ, предоставляющие общий набор возможностей для базовых моделей и которые могут использоваться разработчиками для использования прогнозов из различных наборов моделей в единообразном и согласованном режиме.

Узнайте больше о возможностях этого API и о том, как его использовать при создании приложений.

Удаление конечных точек и подписок

Вы можете удалить подписки и конечные точки модели. Удаление подписки модели приводит к тому, что любые связанные конечные точки становятся неработоспособными и непригодными для использования.

Средства управления ресурсами можно использовать для управления ресурсами. Следующий код использует Azure CLI:

az resource delete --name <resource-name>

Рекомендации по затратам и квотам для моделей Foundry, развернутых в качестве бессерверного развертывания API

Квота управляется для каждого развертывания. Каждое развертывание имеет ограничение скорости в 200 000 токенов в минуту и 1000 запросов API в минуту. Кроме того, в настоящее время мы ограничиваем одно развертывание для каждой модели для каждого проекта. Обратитесь в службу поддержки Microsoft Azure, если текущие ограничения скорости недостаточно для ваших сценариев.

  • Сведения о ценах на модели, продаваемые напрямую Azure, можно найти на вкладке «Цены и условия» окна развертывания безсерверного API.

  • Модели от партнеров и сообщества предлагаются через Azure Marketplace, а также интегрированы с Foundry для использования. Вы можете узнать цены на Azure Marketplace при развертывании или тонкой настройке этих моделей. Каждый раз, когда проект подписывается на данное предложение из Azure Marketplace, создается новый ресурс для отслеживания затрат, связанных с его потреблением. Тот же ресурс используется для отслеживания затрат, связанных с выводом и точной настройкой; однако для отслеживания каждого сценария можно отслеживать несколько метров независимо. Дополнительные сведения о том, как отслеживать затраты, см. в разделе Отслеживание стоимости моделей, предлагаемых через Azure Marketplace.

Разрешения, необходимые для подписки на предложения моделей

Azure управления доступом на основе ролей (Azure RBAC) используются для предоставления доступа к операциям на портале Foundry. Чтобы выполнить действия, описанные в этой статье, учетная запись пользователя должна иметь роль Owner, Contributor или Azure ИИ-разработчик для подписки Azure. Кроме того, ваша учетная запись может быть назначена настраиваемой роли, которая имеет следующие разрешения:

  • Для подписки рабочей области на предложение Azure Marketplace по подписке 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
  • Для создания и использования ресурса SaaS в группе ресурсов выполните следующие действия.

    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write
  • В рабочей области — для развертывания конечных точек (роль ученых по обработке и анализу данных Машинное обучение Azure уже содержит эти разрешения):

    • Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
    • Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*

Дополнительные сведения о разрешениях см. в разделе Управление доступом на основе ролей портала Foundry.