Início Rápido: vetorizar texto e imagens usando o portal do Azure

Esse início rápido ajuda você a começar a usar a vetorização integrada usando o assistente de importação e vetorização de dados no portal do Azure. O assistente agrupa seu conteúdo e chama um modelo de inserção para vetorizar o conteúdo durante a indexação e para consultas.

Pontos principais sobre o assistente:

  • As fontes de dados com suporte são Armazenamentos de Blobs do Azure, Azure Data Lake Storage (ADLS) Gen2, ou Arquivos do OneLake e atalhos.

  • Os modelos de inserção com suporte estão hospedados no OpenAI do Azure, Catálogo de Modelos do Estúdio de IA do Azure, Visão de IA do Azure multimodal.

  • O esquema de índice fornece campos vetoriais e não vetoriais para dados em partes.

  • Você pode adicionar campos, mas não pode excluir ou modificar os campos gerados.

  • O modo de análise de documentos cria partes (um documento de pesquisa por parte).

  • O agrupamento não é configurável. Estas são as configurações efetivas:

    "textSplitMode": "pages",
    "maximumPageLength": 2000,
    "pageOverlapLength": 500,
    "maximumPagesToTake": 0, #unlimited
    "unit": "characters",
    

Pré-requisitos

Se estiver usando o Serviço OpenAI do Azure, ele deverá ter um subdomínio personalizado associado. Se o serviço tiver sido criado por meio do portal do Azure, esse subdomínio será gerado automaticamente como parte da configuração do serviço. Certifique-se de que o serviço inclua um subdomínio personalizado antes de usá-lo com a integração da Pesquisa de IA do Azure.

Não há suporte para recursos do Serviço OpenAI do Azure (com acesso a modelos de inserção) criados no Estúdio de IA. Somente os recursos do Serviço OpenAI do Azure criados no portal do Azure são compatíveis com a integração da habilidade de Incorporação do OpenAI do Azure.

Requisitos de ponto de extremidade público

Todos os recursos anteriores precisam ter acesso público habilitado para que os nós do portal possam acessá-los. Caso contrário, o assistente falhará. Após a execução do assistente, é possível habilitar os firewalls e os pontos de extremidade privados nos componentes de integração para segurança. Para obter mais informações, consulte Conexões seguras nos assistentes de importação.

Se os pontos de extremidade privados já estiverem presentes e não puderem ser desabilitados, a opção alternativa será executar o respectivo fluxo de ponta a ponta por meio de um script ou um programa em uma máquina virtual. A máquina virtual deve estar na mesma rede virtual que o ponto de extremidade privado. Este é um exemplo de código Python para vetorização integrada. O mesmo repositório GitHub contém amostras em outras linguagens de programação.

Requisitos de controle de acesso baseado em função

Recomendamos atribuições de função para pesquisar conexões de serviço com outros recursos.

  1. No IA do Azure Search, habilite funções.

  2. Configure seu serviço de pesquisa para usar uma identidade gerenciada.

  3. Na plataforma de fonte de dados e no provedor de modelo de incorporação, crie atribuições de função que permitam que o serviço de pesquisa acesse dados e modelos. Preparar dados de amostra fornece instruções para configurar funções.

Um serviço de pesquisa gratuito dá suporte a RBAC em conexões com a Pesquisa de IA do Azure, mas não dá suporte a identidades gerenciadas em conexões de saída com o Armazenamento do Microsoft Azure ou a Visão de IA do Azure. Esse nível de suporte significa que você precisa usar a autenticação baseada em chave em conexões entre um serviço de pesquisa gratuito e outros serviços do Azure.

Para conexões mais seguras:

Observação

Se você não puder progredir pelo assistente devido à indisponibilidade de opções (por exemplo, você não pode selecionar uma fonte de dados ou um modelo de inserção), reveja as atribuições de função. Mensagens de erro indicam que não existem modelos ou implantações, quando na verdade a causa real é que o serviço de pesquisa não tem permissão para acessá-los.

Verificar o espaço

Se você estiver começando com o serviço gratuito, estará limitado a três índices, fontes de dados, conjuntos de habilidades e indexadores. Básico limita você a 15. Verifique se há espaço para itens extras antes de começar. Este guia de início rápido cria uma unidade de cada objeto.

Verificar se há um classificador semântico

O assistente dá suporte à classificação semântica, mas somente na camada Básica e superior, e somente se o classificador semântico já estiver habilitado em seu serviço de pesquisa. Se você estiver usando uma camada faturável, verifique se o classificador semântico está habilitado.

Preparar os dados de exemplo

Esta seção indica os dados que funcionam neste início rápido.

  1. Entre no portal do Azure com sua conta do Azure e acesse a conta de Armazenamento do Azure.

  2. No painel esquerdo, sob Armazenamento de Dados, selecione Contêineres.

  3. Crie um novo contêiner e carregue os documentos em PDF do plano de saúde usados neste início rápido.

  4. No painel esquerdo, em Controle de acesso, atribua a função Leitor de dados de blob de armazenamento à identidade do serviço de pesquisa. Ou obtenha uma cadeia de conexão para a conta de armazenamento na página chaves de acesso.

  5. Opcionalmente, sincronize as exclusões no seu contêiner com as exclusões no índice de pesquisa. Essas próximas etapas permitem que você configure o indexador para detecção da exclusão:

    1. Habilite a exclusão reversível na sua conta de armazenamento.

    2. Se você estiver usando a exclusão reversível nativa, nenhuma etapa adicional será necessária no Armazenamento do Microsoft Azure.

    3. Caso contrário, adicione metadados personalizados que um indexador possa examinar para determinar quais blobs estão marcados para exclusão. Dê à sua propriedade personalizada um nome descritivo. Por exemplo, você pode nomear a propriedade "IsDeleted", definida como false. Faça isso para cada blob no contêiner. Posteriormente, quando quiser excluir o blob, altere a propriedade para true. Para obter mais informações, confira Alterar e excluir a detecção ao indexar a partir do Armazenamento do Microsoft Azure

Configurar modelos de inserção

O assistente pode usar modelos de inserção implantados do Azure OpenAI, do Azure AI Vision ou do catálogo de modelos no Azure AI Studio.

O assistente dá suporte a text-embedding-ada-002, text-embedding-3-large e text-embedding-3-small. Internamente, o assistente usa a Habilidade AzureOpenAIEmbedding para se conectar ao OpenAI do Azure.

  1. Entre no portal do Azure com sua conta do Azure e acesse o recurso de OpenAI do Azure.

  2. Configure as permissões:

    1. No menu à esquerda, selecione Controle de Acesso.

    2. Selecione Adicionar e selecione Adicionar atribuição de função.

    3. Em Funções de função de trabalho, selecione Usuário de OpenAI dos Serviços Cognitivos e selecione Avançar.

    4. Em Membros selecione Identidade gerenciada e selecione Membros.

    5. Filtre por assinatura e tipo de recurso (serviços de pesquisa) e selecione a identidade gerenciada do serviço de pesquisa.

    6. Selecione Examinar + atribuir.

  3. Na página Visão geral, selecione Clique aqui para exibir pontos de extremidade ou Clique aqui para gerenciar chaves se precisar copiar um ponto de extremidade ou uma chave de API. Você poderá colar esses valores no assistente se estiver usando um recurso do OpenAI do Azure com autenticação baseada em chave.

  4. Em Gerenciamento de Recursos, selecione Implantações de modelo e selecione Gerenciar implantações para abrir o Estúdio de IA do Azure.

  5. Copie o nome da implantação de text-embedding-ada-002 ou outro modelo de inserção com suporte. Se você não tiver um modelo de inserção, implante um agora.

Iniciar o assistente

  1. Entre no portal do Azure com sua conta do Azure e acesse o serviço de IA do Azure Search.

  2. Na página Visão geral, selecione Importar e vetorizar dados.

    Captura de tela do comando para abrir o assistente de importação e vetorização de dados.

Conectar-se aos seus dados

A próxima etapa é conectar-se a uma fonte de dados a ser usada para o índice de pesquisa.

  1. Na página Configurar sua conexão de dados, selecione o Armazenamento de Blobs do Azure.

  2. Especifique a assinatura do Azure.

  3. Escolha a conta de armazenamento e o contêiner que fornecem os dados.

  4. Especifique se deseja suporte à detecção de exclusão. Nas execuções de indexação subsequentes, o índice de pesquisa é atualizado para remover todos os documentos de pesquisa com base em blobs excluídos suavemente no Armazenamento do Microsoft Azure.

    • Os blobs dão suporte à Exclusão reversível de blob nativa ou à Exclusão reversível usando dados personalizados.
    • Você precisa ter habilitado a exclusão reversível anteriormente no Armazenamento do Microsoft Azure e, opcionalmente, adicionado metadados personalizados que a indexação possa reconhecer como um sinalizador de exclusão. Para obter mais informações sobre essas etapas, confira Preparar amostras de dados.
    • Se você configurou seus blobs para a exclusão reversível usando dados personalizados, forneça o par de nome-valor da propriedade de metadados nessa etapa. Recomendamos "IsDeleted". Se "IsDeleted" estiver definido como true em um blob, o indexador removerá o documento de pesquisa correspondente na próxima execução do indexador.

    O assistente não verifica se há configurações válidas no Armazenamento do Microsoft Azure nem gera um erro se os requisitos não forem atendidos. Em vez disso, a detecção da exclusão não funciona e seu índice de pesquisa provavelmente irá coletar documentos órfãos ao longo do tempo.

    Captura de tela da página da fonte de dados com opções de detecção da exclusão.

  5. Especifique se deseja que seu serviço de pesquisa se conecte ao Armazenamento do Microsoft Azure usando sua identidade gerenciada.

    • Você será solicitado a escolher uma identidade gerenciada pelo sistema ou gerenciada pelo usuário.
    • A identidade deve ter uma função Leitor de dados de blob de armazenamento no Armazenamento do Microsoft Azure.
    • Não ignore esta etapa. Ocorrerá um erro de conexão durante a indexação se o assistente não puder se conectar ao Armazenamento do Microsoft Azure.
  6. Selecione Avançar.

Vetorizar seu texto

Nesta etapa, especifique o modelo de inserção para vetorização de dados divididos em partes.

  1. Na página Vetorizar seu texto, escolha a origem do modelo de inserção:

    • OpenAI do Azure
    • Catálogo de modelos do Estúdio de IA do Azure
    • Um recurso multimodal existente do Azure AI Vision na mesma região que o Azure AI Search. Se não houver conta multiatendimento dos Serviços de IA do Azure na mesma região, essa opção não estará disponível.
  2. Escolha a assinatura do Azure.

  3. Faça seleções de acordo com o recurso:

    • Para o Azure OpenAI, escolha uma implantação existente de text-embedding-ada-002, text-embedding-3-large ou text-embedding-3-small.

    • Para o catálogo do AI Studio, escolha uma implantação existente de um modelo de inserção do Azure, do Cohere e do Facebook.

    • Para inserções multimodal da Visão de IA, selecione a conta.

    Para saber mais, confira Configurar modelos de inserção anteriormente neste artigo.

  4. Especifique se deseja que seu serviço de pesquisa se autentique usando uma chave de API ou uma identidade gerenciada.

    • A identidade deve ter uma função de Usuário do OpenAI dos Serviços Cognitivos na conta de vários serviços de IA do Azure.
  5. Marque a caixa de seleção reconhecendo o impacto de cobrança do uso desses recursos.

  6. Selecione Avançar.

Vetorizar e enriquecer suas imagens

Se o conteúdo incluir imagens, você poderá aplicar a IA de duas maneiras:

  • Use um modelo de inserção de imagem compatível por meio do catálogo ou escolha a API de inserções multimodal da Visão de IA do Azure para vetorizar imagens.

  • Use o OCR (Reconhecimento Óptico de Caracteres) para reconhecer texto em imagens. Essa opção invoca a Habilidade de OCR para ler texto de imagens.

A Pesquisa de IA do Azure e o seu recurso de IA do Azure precisam estar na mesma região.

  1. Na página Vetorizar suas imagens, especifique o tipo de conexão que o assistente deve fazer. Para a vetorização de imagem, o assistente pode se conectar a modelos de inserção no Estúdio de IA do Azure ou na Visão de IA do Azure.

  2. Especifique a assinatura.

  3. Para o catálogo de modelos do Estúdio de IA do Azure, especifique o projeto e a implantação. Para saber mais, confira Configurar modelos de inserção anteriormente neste artigo.

  4. Opcionalmente, é possível desbloquear imagens binárias (por exemplo, arquivos de documentos digitalizados) e usar o OCR para reconhecer texto.

  5. Marque a caixa de seleção reconhecendo o impacto de cobrança do uso desses recursos.

  6. Selecione Avançar.

Adicionar classificação semântica

Na página Configurações avançadas, opcionalmente, você pode adicionar a classificação semântica para reclassificar os resultados no final da execução da consulta. A reclassificação promove para o topo as correspondências mais semanticamente relevantes.

Mapear novos campos

Na página Configurações avançadas, você pode opcionalmente adicionar novos campos. Por padrão, o assistente gera os seguintes campos com essas características:

Campo Aplicável ao Descrição
chunk_id Vetores de texto e imagem Campo de cadeia de caracteres gerado. Pesquisável, recuperável, classificável. Essa é a chave do documento para o índice.
parent_id Vetores de texto Campo de cadeia de caracteres gerado. Recuperável, filtrável. Identifica o documento pai do qual a parte se origina.
chunk Vetores de texto e imagem Campo de cadeia de caracteres. Versão legível por humanos da parte de dados. Pesquisável e recuperável, mas não filtrável, facetável ou classificável.
title Vetores de texto e imagem Campo de cadeia de caracteres. Título do documento legível por humanos ou título de página ou número de página. Pesquisável e recuperável, mas não filtrável, facetável ou classificável.
text_vector Vetores de texto Collection(Edm.single). Declaração vetorial da parte. Pesquisável e recuperável, mas não filtrável, facetável ou classificável.

Você não pode modificar os campos gerados ou seus atributos, mas pode adicionar novos campos se sua fonte de dados os fornecer. Por exemplo, o Armazenamento de Blobs do Azure fornece uma coleção de campos de metadados.

  1. Selecione Adicionar nova.

  2. Escolha um campo de origem da lista de campos disponíveis, forneça um nome de campo para o índice e aceite o tipo de dados padrão ou substitua conforme necessário.

    Os campos de metadados são pesquisáveis, mas não recuperáveis, filtráveis, facetáveis ou classificáveis.

  3. Selecione Redefinir se você quiser restaurar o esquema para sua versão original.

Agendar indexação

Na página Configurações avançadas, você pode especificar opcionalmente um agendamento de execução para o indexador.

  1. Selecione Avançar quando você terminar com a página Configurações avançadas.

Concluir o assistente

  1. Na página Revisar sua configuração, especifique um prefixo para os objetos que o assistente cria. Um prefixo comum ajuda você a se manter organizado.

  2. Selecione Criar.

Quando o assistente conclui a configuração, ele cria os seguintes objetos:

  • Conexão de fonte de dados.

  • Índice com campos vetoriais, vetorizadores, perfis de vetor e algoritmos de vetor. Você não pode criar ou modificar o índice padrão durante o fluxo de trabalho do assistente. Os índices estão em conformidade com a API REST 2024-05-01-preview.

  • Conjunto de habilidades com habilidade de Divisão de Texto para divisão em partes e uma habilidade de inserção para vetorização. A habilidade de inserção é a habilidade AzureOpenAIEmbeddingModel para o OpenAI do Azure ou a habilidade de AML para o catálogo de modelos do Estúdio de IA do Azure. O conjunto de habilidades também tem a configuração de projeções de índice que permite que os dados sejam mapeados de um documento na fonte de dados para as partes correspondentes em um índice “filho”.

  • Indexador com mapeamentos de campo e mapeamentos de campo de saída (se aplicável).

Verificar os resultados

O Gerenciador de pesquisa aceita cadeias de caracteres de texto como entrada e, em seguida, vetoriza o texto para execução da consulta de vetor.

  1. No portal do Azure, vá para Gerenciamento de Pesquisa>Índices e selecione o índice que você criou.

  2. Opcionalmente, selecione Opções de consulta e oculte os valores do vetor nos resultados da pesquisa. Essa etapa facilita a leitura dos resultados da pesquisa.

    Captura de tela do botão de opções de consulta.

  3. No menu Exibir, selecione Modo de exibição JSON para que você possa inserir texto para sua consulta vetorial no parâmetro de consulta de vetor text.

    Captura de tela do comando de menu para abrir o modo de exibição JSON.

    O assistente oferece uma consulta padrão que emite uma consulta de vetor no campo vector e retorna os cinco vizinhos mais próximos. Se você optou por ocultar os valores do vetor, sua consulta padrão incluirá uma selectinstrução que excluirá o campo vector dos resultados da pesquisa.

    {
       "select": "chunk_id,parent_id,chunk,title",
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "vector"
           }
        ]
    }
    
  4. Para o valor text, substitua o asterisco (*) por uma pergunta relacionada aos planos de saúde, como Which plan has the lowest deductible?.

  5. Selecione Pesquisar para executar a consulta.

    Captura de tela dos resultados da pesquisa.

    Cinco correspondências devem aparecer. Cada documento é uma parte do PDF original. O campo title mostra de qual PDF veio cada parte.

  6. Para ver todas as partes de um documento específico, adicione um filtro no campo title para um PDF específico:

    {
       "select": "chunk_id,parent_id,chunk,title",
       "filter": "title eq 'Benefit_Options.pdf'",
       "count": true,
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "vector"
           }
        ]
    }
    
    

Limpar

O Azure AI Search é um recurso faturável. Se não for mais necessário, exclua-o de sua assinatura para evitar encargos.

Próxima etapa

Este início rápido apresentou o assistente para Importar e vetorizar dados que cria todos os objetos necessários para a vetorização integrada. Se desejar explorar cada etapa em detalhes, experimente um exemplo de vetorização integrada.