Usar modelos de incorporação do catálogo de modelos do Azure AI Foundry para vetorização integrada
Importante
Esta funcionalidade está em pré-visualização pública em Termos de Utilização Suplementares. A API REST 2024-05-01-Preview suporta esse recurso.
Neste artigo, saiba como acessar os modelos de incorporação no catálogo de modelos do Azure AI Foundry para conversões vetoriais durante a indexação e em consultas no Azure AI Search.
O fluxo de trabalho inclui etapas de implantação do modelo. O catálogo de modelos inclui a incorporação de modelos da Microsoft e de outras empresas. A implantação de um modelo é faturável de acordo com a estrutura de faturamento de cada provedor.
Depois que o modelo for implantado, você poderá usá-lo para vetorização integrada durante a indexação ou com o vetorizador AI Foundry para consultas.
Gorjeta
Use o assistente Importar e vetorizar dados para gerar um conjunto de habilidades que inclua uma habilidade AML para modelos de incorporação implantados no Azure AI Foundry. A definição de habilidades AML para entradas, saídas e mapeamentos é gerada pelo assistente, que oferece uma maneira fácil de testar um modelo antes de escrever qualquer código.
Pré-requisitos
Azure AI Search, qualquer região e camada.
Azure AI Foundry e um projeto do Azure AI Foundry.
Modelos de incorporação suportados
A vetorização integrada e o assistente Importar e vetorizar dados suportam os seguintes modelos de incorporação no catálogo de modelos:
Para incorporações de texto:
- Cohere-embed-v3-english
- Cohere-embed-v3-multilingual
Para incorporações de imagens:
- Facebook-DinoV2-Imagem-Embeddings-ViT-Base
- Facebook-DinoV2-Imagem-Embeddings-ViT-Giant
Implantar um modelo de incorporação do catálogo de modelos do Azure AI Foundry
Abra o catálogo de modelos do Azure AI Foundry. Crie um projeto se ainda não tiver um.
Aplique um filtro para mostrar apenas os modelos de incorporação. Em Tarefas de inferência, selecione Incorporações:
Selecione um modelo suportado e, em seguida, selecione Implantar.
Aceite os padrões ou modifique conforme necessário e selecione Implantar. Os detalhes da implantação variam dependendo do modelo selecionado.
Aguarde até que o modelo termine a implantação monitorando o Estado de Provisionamento. Ele deve mudar de "Provisionamento" para "Atualização" para "Êxito". Talvez seja necessário selecionar Atualizar a cada poucos minutos para ver a atualização de status.
Anote o URI, a chave e o nome do modelo de destino. Você precisa desses valores para a definição do vetorizador em um índice de pesquisa e para o conjunto de habilidades que chama os pontos de extremidade do modelo durante a indexação.
Opcionalmente, você pode alterar seu ponto de extremidade para usar a autenticação de token em vez da autenticação de chave. Se você habilitar a autenticação de token, só precisará copiar o URI e o nome do modelo, mas anotar em qual região o modelo está implantado.
Agora você pode configurar um índice de pesquisa e um indexador para usar o modelo implantado.
Para usar o modelo durante a indexação, consulte as etapas para habilitar a vetorização integrada. Certifique-se de usar a habilidade Azure Machine Learning (AML) e não a habilidade AzureOpenAIEmbedding. A próxima seção descreve a configuração da habilidade.
Para usar o modelo como vetorizador no momento da consulta, consulte Configurar um vetorizador. Certifique-se de usar o vetorizador de catálogo de modelo do Azure AI Foundry para esta etapa.
Amostra de cargas úteis de habilidades AML
Ao implantar modelos de incorporação do catálogo de modelos do Azure AI Foundry, você se conecta a eles usando a habilidade AML na Pesquisa de IA do Azure para indexar cargas de trabalho.
Esta seção descreve a definição de habilidade AML e mapeamentos de índice. Ele inclui cargas úteis de exemplo que já estão configuradas para trabalhar com seus pontos de extremidade implantados correspondentes. Para obter mais detalhes técnicos sobre como essas cargas úteis funcionam, leia sobre o contexto de habilidade e a linguagem de anotação de entrada.
Esta carga útil de habilidade AML funciona com os seguintes modelos de incorporação de imagem do AI Foundry:
- Facebook-DinoV2-Imagem-Embeddings-ViT-Base
- Facebook-DinoV2-Imagem-Embeddings-ViT-Giant
Ele pressupõe que suas imagens vêm do caminho que é criado ao habilitar a /document/normalized_images/*
extração de imagem incorporada. Se suas imagens vierem de um caminho diferente ou forem armazenadas como URLs, atualize todas as referências ao /document/normalized_images/*
caminho de acordo.
O URI e a chave são gerados quando você implanta o modelo a partir do catálogo. Para obter mais informações sobre esses valores, consulte Como implantar modelos de linguagem grandes com o Azure AI Foundry.
{
"@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
"context": "/document/normalized_images/*",
"uri": "https://myproject-1a1a-abcd.eastus.inference.ml.azure.com/score",
"timeout": "PT1M",
"key": "bbbbbbbb-1c1c-2d2d-3e3e-444444444444",
"inputs": [
{
"name": "input_data",
"sourceContext": "/document/normalized_images/*",
"inputs": [
{
"name": "columns",
"source": "=['image', 'text']"
},
{
"name": "index",
"source": "=[0]"
},
{
"name": "data",
"source": "=[[$(/document/normalized_images/*/data), '']]"
}
]
}
],
"outputs": [
{
"name": "image_features"
}
]
}
Amostra de carga útil do vetorizador AI Foundry
O vetorizador AI Foundry, ao contrário da habilidade AML, é adaptado para trabalhar apenas com os modelos de incorporação que podem ser implantados por meio do catálogo de modelos AI Foundry. A principal diferença é que você não precisa se preocupar com a carga útil de solicitação e resposta, mas precisa fornecer o modelName
, que corresponde ao "ID do modelo" que você copiou depois de implantar o modelo no portal AI Foundry.
Aqui está um exemplo de carga útil de como você configuraria o vetorizador em sua definição de índice, dadas as propriedades copiadas do AI Foundry.
Para modelos Cohere, você NÃO deve adicionar o /v1/embed
caminho para o final do seu URL como fez com a habilidade.
"vectorizers": [
{
"name": "<YOUR_VECTORIZER_NAME_HERE>",
"kind": "aml",
"amlParameters": {
"uri": "<YOUR_URL_HERE>",
"key": "<YOUR_PRIMARY_KEY_HERE>",
"modelName": "<YOUR_MODEL_ID_HERE>"
},
}
]
Conectar-se usando autenticação de token
Se você não puder usar a autenticação baseada em chave, poderá configurar a habilidade AML e a conexão do vetorizador AI Foundry para autenticação de token por meio do controle de acesso baseado em função no Azure. O serviço de pesquisa deve ter uma identidade gerenciada atribuída pelo sistema ou pelo usuário, e a identidade deve ter permissões de Proprietário ou Colaborador para o espaço de trabalho do projeto AML. Em seguida, você pode remover o campo chave da sua definição de habilidade e vetorizador, substituindo-o pelo campo resourceId. Se o seu projeto AML e serviço de pesquisa estiverem em regiões diferentes, forneça também o campo região.
"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 need if AML project lives in different region from search service