Использование собственных ресурсов

По умолчанию служба агента Foundry управляет хранилищем файлов, бесед и векторных хранилищ. Если вашей организации требуется полное владение данными, ключи, управляемые клиентом (CMK) или сетевая изоляция, можно подключить собственные Azure ресурсы. В этой статье показано, как настроить шаблоны развертывания для использования существующих Azure OpenAI, служба хранилища Azure, Azure Cosmos DB и Поиск с использованием ИИ Azure ресурсов с помощью службы агента.

Ограничения

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

Если вы используете проект на основе хаба или помощники Azure OpenAI

В настоящее время нет прямого пути обновления для переноса существующих агентов или связанных с ними ресурсов данных, таких как файлы, беседы или векторные хранилища из концентраторного проекта в проект Microsoft Foundry. Кроме того, отсутствует путь обновления для преобразования существующих помощников Azure OpenAI в Агентов Foundry, а также нет возможности автоматического переноса файлов помощников, бесед или векторных хранилищ.

Вы можете повторно использовать развернутые модели и квоту из средств Foundry или ресурсов Azure OpenAI в проекте Foundry.

Использование пакета SDK с проектами на основе концентраторов

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

Если вы хотите продолжить использование проекта на базе узла и строки подключения, необходимо:

  • Используйте строку подключения для вашего проекта, расположенную в разделе Connection string в обзоре проекта.

    Снимок экрана, на котором показана устаревшая строка подключения для проекта на базе узла.

  • Используйте одну из предыдущих версий пакета SDK и связанного примера кода:

    • C#: 1.0.0-beta.2 или ранее
    • Python: 1.0.0b10 или более ранней версии

Azure Cosmos DB для NoSQL для хранения бесед

  • Существующая учетная запись Azure Cosmos DB для NoSQL, используемая в standard настройке, должна иметь общий предел пропускной способности не менее 3000 RU/с. Поддерживаются как подготовленная пропускная способность, так и бессерверные.
  • Три контейнера будут выделены в существующей учетной записи Cosmos DB, каждый из которых требует 1000 RU/с

Примечание

  • Убедитесь, что ваш ресурс Azure OpenAI, а также учетная запись и проект Foundry находятся в одном регионе.

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

  • Подписка Azure: Создайте бесплатно.

  • Azure CLI (версия 2.64 или более поздняя).

  • Убедитесь, что пользователь, создающий учетную запись и проект, имеет роль владельца учетной записи Azure AI на уровне подписки.

  • При настройке стандартной установки один и тот же человек также должен иметь разрешения на назначение ролей необходимым ресурсам (Cosmos DB, поиск, хранилище). Дополнительную информацию о RBAC в Foundry см. в разделе RBAC в Foundry.

    • Необходима встроенная роль — администратор доступа на основе ролей.
    • Кроме того, роль владельца на уровне подписки также удовлетворяет этому требованию.
    • Основное разрешение, которое требуется: Microsoft.Authorization/roleAssignments/write
  • Регистрация поставщиков. Необходимо зарегистрировать следующие поставщики:

    • Microsoft.KeyVault
    • Microsoft.CognitiveServices
    • Microsoft.Storage
    • Microsoft.MachineLearningServices
    • Microsoft.Search
    • Microsoft.App
    • Microsoft.ContainerService

Чтобы использовать Grounding с помощью средства поиска Bing необходимо зарегистрировать следующий поставщик: Microsoft.Bing

az provider register --namespace 'Microsoft.KeyVault'
az provider register --namespace 'Microsoft.CognitiveServices'
az provider register --namespace 'Microsoft.Storage'
az provider register --namespace 'Microsoft.MachineLearningServices'
az provider register --namespace 'Microsoft.Search'
az provider register --namespace 'Microsoft.App'
az provider register --namespace 'Microsoft.ContainerService'
# only to use Grounding with Bing Search tool
az provider register --namespace 'Microsoft.Bing'

Выбор базовой или стандартной настройки агента

Чтобы использовать собственные ресурсы, можно изменить параметры в предоставленных шаблонах развертывания. Чтобы начать, определите, хотите ли изменить шаблон базовой настройки агента или стандартный шаблон установки агента.

Базовая настройка

Эта настройка совместима с Помощниками OpenAI и управляет состояниями агента с помощью встроенного хранилища платформы. Она включает те же средства и возможности, что и API Помощников, а также добавлена поддержка моделей и инструментов, отличных от OpenAI, таких как Поиск с использованием ИИ Azure и Bing.

Стандартная настройка

Включает все в рамках базовой настройки, а также предоставляет точный контроль над данными, позволяя использовать собственные ресурсы Azure. Все данные клиента, включая файлы, беседы и векторные хранилища, хранятся в собственных Azure ресурсах, предоставляя вам полное владение и контроль.

Базовая настройка агента. Использование существующего ресурса OpenAI Azure

Замените значение параметра для existingAoaiResourceId в шаблоне на полный идентификатор ресурса ARM Azure OpenAI, который требуется использовать.

  1. Чтобы получить идентификатор ресурса учетной записи OpenAI Azure, войдите в Azure CLI и выберите подписку с помощью учетной записи Foundry Tools:

    az login
    
  2. Замените <your-resource-group> группой ресурсов, содержащей ресурс и <your-ai-service-resource-name> именем ресурса Azure OpenAI или AI Services, и выполните следующую команду:

    az cognitiveservices account show --resource-group <your-resource-group> --name <your-ai-service-resource-name> --query "id" --output tsv
    

    Возвращаемое значение — это existingAoaiResourceId, которое необходимо использовать в шаблоне.

  3. В файле шаблона базового агента замените следующий заполнитель:

    existingAoaiResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{serviceName}
    

Настройка стандартного агента: использование существующих ресурсов службы и учетных записей хранения

Используйте существующую учетную запись Azure OpenAI, служба хранилища Azure, учетную запись Azure Cosmos DB для NoSQL и/или ресурс Поиск с использованием ИИ Azure, указав полный идентификатор ресурса ARM в файле шаблона стандартного агента.

Использование существующего ресурса OpenAI Azure

  1. Выполните действия, описанные в базовой настройке агента, чтобы получить идентификатор ресурса учетной записи Foundry Tools.

  2. В файле шаблона стандартного агента замените следующие заполнители:

    existingAoaiResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{serviceName}
    
    

Использование существующей учетной записи служба хранилища Azure для хранения файлов

  1. Чтобы получить идентификатор ресурса учетной записи хранения, войдите в Azure CLI и выберите подписку с учетной записью хранения:

    az login
    
  2. Затем выполните команду:

    az storage account show --resource-group <your-resource-group> --name <your-storage-account> --query "id" --output tsv
    

    Выходные данные azureStorageAccountResourceId необходимо использовать в шаблоне.

  3. В файле шаблона стандартного агента замените следующий заполнитель:

    azureStorageAccountResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}
    

Использование существующей Azure Cosmos DB для учетной записи NoSQL для хранения бесед

Для каждой учетной записи Foundry создается база данных Azure Cosmos DB для NoSQL.

Для каждого проекта в учетной записи Foundry три контейнера развертываются в одной учетной записи Cosmos DB. Для каждого контейнера требуется не менее 1000 RU/с.

Например, если два проекта развертываются в одной учетной записи Foundry, учетная запись Cosmos DB должна быть настроена как минимум с 6000 RU/с (3 контейнера × 1000 RU/с × 2 проектов) для обеспечения достаточной пропускной способности.

Поддерживаются и подготовленные режимы пропускной способности, и бессерверные режимы.

Примечание

Недостаточная пропускная способность RU/s в учетной записи Cosmos DB приводит к сбоям при выделении ресурса хоста во время развертывания.

  1. Чтобы получить идентификатор ресурса учетной записи Azure Cosmos DB, войдите в Azure CLI и выберите подписку с учетной записью:

    az login
    
  2. Затем выполните команду:

    az cosmosdb show --resource-group <your-resource-group> --name <your-cosmosdb-account> --query "id" --output tsv
    

    Выходные данные azureCosmosDBAccountResourceId необходимо использовать в шаблоне.

  3. В файле шаблона стандартного агента замените следующий заполнитель:

    azureCosmosDBAccountResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{cosmosDbAccountName}
    

Использование существующего ресурса Поиск с использованием ИИ Azure

  1. Чтобы получить идентификатор ресурса Поиск с использованием ИИ Azure, войдите в Azure CLI и выберите подписку с помощью ресурса поиска:

    az login
    
  2. Затем выполните команду:

    az search service show --resource-group <your-resource-group> --name <your-search-service> --query "id" --output tsv
    
  3. В файле шаблона стандартного агента замените следующий заполнитель:

    aiSearchResourceId:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}
    

См. также

  • Узнайте о различных инструментах, которые могут использовать агенты.