Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
Эта функция предоставляется в общедоступной предварительной версии, и к ней применяются дополнительные Условия использования. Последняя предварительная версия набора навыков — создание или обновление (REST API) поддерживает эту функцию.
В этой статье вы узнаете, как получить доступ к внедренным моделям из каталога моделей Microsoft Foundry для преобразования векторов во время индексирования и выполнения запросов в поиске ИИ Azure.
Рабочий процесс требует развертывания модели из каталога, которая включает внедрение моделей из Корпорации Майкрософт и других компаний. Развертывание модели оплачивается в соответствии со структурой выставления счетов каждого поставщика.
После развертывания модели его можно использовать с навыком AML для интегрированной векторизации во время индексирования или с векторизатором каталога моделей Microsoft Foundry для запросов.
Совет
Используйте мастер импорта данных, чтобы создать набор навыков, включающий навык AML для развернутых моделей внедрения в Foundry. Определение навыка AML для входных данных, выходных данных и сопоставлений создается мастером, что позволяет легко протестировать модель перед написанием любого кода.
Предварительные требования
Служба поиска ИИ Azure в любом регионе и на любой ценовой категории.
Поддерживаемые модели внедрения
Поддерживаемые модели внедрения из каталога моделей зависят от метода использования:
Последний список моделей, поддерживаемых программным путем, см. в справочниках AML skill и векторизаторе каталога моделей Microsoft Foundry.
Для получения последнего списка моделей, поддерживаемых на портале Azure, см. краткое руководство: Векторный поиск на портале Azure и краткое руководство: Многомодальный поиск на портале Azure.
Развернуть встраиваемую модель из каталога моделей
Следуйте этим инструкциям на портале , чтобы развернуть поддерживаемую модель в проекте.
Запишите целевой URI, ключ и имя модели. Эти значения требуются для определения векторизатора в индексе поиска и набора навыков, вызывающего конечные точки модели во время индексирования.
Если вам предпочтительнее маркеры аутентификации, чем аутентификация на основе ключей, необходимо скопировать только имя модели. Однако запишите регион, в котором развернута модель.
Настройте индекс и индексатор поиска для использования развернутой модели.
Сведения об использовании модели во время индексирования см. в статье "Использование интегрированной векторизации". Не забудьте использовать навык AML, а не навык внедрения Azure OpenAI. В следующем разделе описывается конфигурация навыка.
Сведения об использовании модели в качестве векторизатора во время запроса см. в разделе "Настройка векторизатора". Не забудьте использовать векторизатор каталога моделей Microsoft Foundry для этого шага.
Разверните модель эмбеддинга в качестве бессерверного развертывания
Навык AML и векторизатор каталога моделей Microsoft Foundry принимают только бессерверные развертывания моделей внедрения Cohere. Бессерверные развертывания с помощью портала Microsoft Foundry не поддерживаются для этих моделей, поэтому используйте Azure CLI для создания развертывания. Дополнительные сведения см. в статье "Развертывание моделей в качестве бессерверных развертываний API".
Чтобы создать бессерверное развертывание Cohere, выполните приведенные действия.
Установите Azure CLI с расширением
ml.az extension add -n mlВойдите в Azure и задайте значения по умолчанию.
az login az account set --subscription <subscription-id> az configure --defaults workspace=<project-name> group=<resource-group>Создайте файл
subscribe.yamlдля подписки на маркетплейс для модели.name: cohere-embed-v3-english-subscription model_id: azureml://registries/azureml-cohere/models/Cohere-embed-v3-englishДля других поддерживаемых моделей замените идентификатор модели одним из следующих значений.
Модель Идентификатор модели Cohere-embed-v3-английский azureml://registries/azureml-cohere/models/Cohere-embed-v3-englishCohere-embed-v3-multilingual azureml://registries/azureml-cohere/models/Cohere-embed-v3-multilingualCohere-embed-v4 azureml://registries/azureml-cohere/models/Cohere-embed-v4Выполните следующую команду, чтобы создать подписку.
az ml marketplace-subscription create --file subscribe.yamlСоздайте файл для создания бессерверной конечной
endpoint.yamlточки.name: cohere-embed-v3-english-endpoint model_id: azureml://registries/azureml-cohere/models/Cohere-embed-v3-englishВыполните следующую команду, чтобы создать конечную точку.
az ml serverless-endpoint create --file endpoint.yamlАутентификация на основе ключей: получите URI конечной точки и ключ для использования в навыке или векторизаторе.
az ml serverless-endpoint show --name cohere-embed-v3-english-endpoint --query "scoring_uri" az ml serverless-endpoint get-credentials --name cohere-embed-v3-english-endpoint
Образец пейлоада навыка AML
При развертывании внедренных моделей из каталога моделей вы подключаетесь к ним с помощью навыка AML в поиске ИИ Azure для индексирования рабочих нагрузок.
В этом разделе описаны определения навыка AML и сопоставления индексов. Он включает образец payload, который уже настроен для работы с соответствующим развернутым конечным узлом. Дополнительные сведения см. в разделе Контекст навыка и язык заметок ввода.
Совместное внедрение моделей
Эти данные нагрузки навыка AML работают со следующими моделями встраивания:
- Cohere-embed-v3-английский
- Cohere-embed-v3-multilingual
- Cohere-embed-v4
Предполагается, что вы фрагментируете содержимое, используя умение разделять текст, поэтому ваш текст для векторизации находится в расположении /document/pages/*. Если текст поступает из другого пути, обновите все ссылки на /document/pages/* путь соответствующим образом.
Необходимо добавить путь /v1/embed на конец URL-адреса, скопированного из развертывания Foundry. Вы также можете изменить значения для input_type, truncate и embedding_types входных данных, чтобы лучше соответствовать вашему варианту использования. Для получения дополнительной информации о доступных вариантах см. справочник по Cohere Embed API.
URI и ключ создаются при развертывании модели из каталога. Дополнительные сведения об этих значениях см. в статье "Развертывание моделей Внедрения Cohere с помощью Foundry".
{
"@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
"context": "/document/pages/*",
"uri": "https://cohere-embed-v3-multilingual-hin.eastus.models.ai.azure.com/v1/embed",
"key": "aaaaaaaa-0b0b-1c1c-2d2d-333333333333",
"inputs": [
{
"name": "texts",
"source": "=[$(/document/pages/*)]"
},
{
"name": "input_type",
"source": "='search_document'"
},
{
"name": "truncate",
"source": "='NONE'"
},
{
"name": "embedding_types",
"source": "=['float']"
}
],
"outputs": [
{
"name": "embeddings",
"targetName": "aml_vector_data"
}
]
}
Кроме того, выходные данные модели Cohere не являются массивом векторов вложения напрямую, а JSON-объектом, который их содержит. При сопоставлении его с определением индекса через indexProjections или outputFieldMappings необходимо выбрать его соответствующим образом. Ниже приведен пример indexProjections нагрузки, который позволит вам реализовать это сопоставление.
Если вы выбрали другое embedding_types в определении навыка, измените floatsource путь к выбранному типу.
"indexProjections": {
"selectors": [
{
"targetIndexName": "<YOUR_TARGET_INDEX_NAME_HERE>",
"parentKeyFieldName": "ParentKey", // Change this to the name of the field in your index definition where the parent key will be stored
"sourceContext": "/document/pages/*",
"mappings": [
{
"name": "aml_vector", // Change this to the name of the field in your index definition where the Cohere embedding will be stored
"source": "/document/pages/*/aml_vector_data/float/0"
}
]
}
],
"parameters": {}
}
Нагрузка векторизатора образца
Векторизатор каталога моделей Microsoft Foundry, в отличие от навыка AML, предназначен для работы только с внедренными моделями, которые можно развернуть с помощью каталога моделей. Основное различие заключается в том, что вам не нужно беспокоиться о содержимом запроса и ответа. Однако необходимо указать modelName, который соответствует «идентификатору модели», скопированному после развертывания модели.
Ниже приведен пример полезных данных о настройке векторизатора в определении индекса с учетом свойств, скопированных из Foundry.
Для моделей Cohere не следует добавлять путь /v1/embed к концу URL-адреса, как это делалось с навыком.
"vectorizers": [
{
"name": "<YOUR_VECTORIZER_NAME_HERE>",
"kind": "aml",
"amlParameters": {
"uri": "<YOUR_URL_HERE>",
"key": "<YOUR_PRIMARY_KEY_HERE>",
"modelName": "<YOUR_MODEL_ID_HERE>"
},
}
]
Подключение с помощью токен-аутентификации
Если вы не можете использовать аутентификацию на основе ключей, вы можете настроить навык AML и векторное соединение с каталогом моделей Microsoft Foundry для аутентификации по токену через управление доступом на основе ролей в Azure.
Служба поиска должна иметь системное или назначаемое пользователем управляемое удостоверение, а удостоверение должно иметь разрешения владельца или участника для вашего проекта. Затем можно удалить поле key из определения навыка и векторизатора, заменив его на resourceId. Если ваш проект и служба поиска находятся в разных регионах, также укажите поле region.
"uri": "<YOUR_URL_HERE>",
"resourceId": "subscriptions/<YOUR_SUBSCRIPTION_ID_HERE>/resourceGroups/<YOUR_RESOURCE_GROUP_NAME_HERE>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR_AML_WORKSPACE_NAME_HERE>/onlineendpoints/<YOUR_AML_ENDPOINT_NAME_HERE>",
"region": "westus", // Only needed if project is in different region from search service
Замечание
Эта интеграция в данный момент не поддерживает аутентификацию токенов для моделей Cohere. Необходимо использовать проверку подлинности на основе ключей.