Partilhar via


Guia de início rápido: vetorizar texto e imagens usando o portal do Azure

Este guia de início rápido ajuda você a começar com a vetorização integrada usando o assistente Importar e vetorizar dados no portal do Azure. O assistente fragmenta seu conteúdo e chama um modelo de incorporação para vetorizar o conteúdo durante a indexação e para consultas.

Principais pontos sobre o assistente:

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

  • Os modelos de incorporação suportados são alojados no Azure OpenAI, no catálogo de modelos do Azure AI Studio, no Azure AI Vision 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 campos gerados.

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

  • O fragmento não é configurável. As configurações efetivas são:

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

Pré-requisitos

Se estiver usando o Serviço OpenAI do Azure, ele deve ter um subdomínio personalizado associado. Se o serviço tiver sido criado através do portal do Azure, este subdomínio é gerado automaticamente como parte da configuração do serviço. Certifique-se de que seu serviço inclua um subdomínio personalizado antes de usá-lo com a integração do Azure AI Search.

Os recursos do Serviço OpenAI do Azure (com acesso a modelos de incorporação) criados no AI Studio não são suportados. Somente os recursos do Serviço OpenAI do Azure criados no portal do Azure são compatíveis com a integração de habilidades do Azure OpenAI Embedding .

Requisitos do ponto final público

Todos os recursos anteriores devem ter acesso público habilitado para que os nós do portal possam acessá-los. Caso contrário, o assistente falhará. Depois que o assistente for executado, você poderá habilitar firewalls e 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 você não puder desativá-los, a opção alternativa é executar o respetivo fluxo de ponta a ponta de um script ou programa em uma máquina virtual. A máquina virtual deve estar na mesma rede virtual que o ponto de extremidade privado. Aqui está um exemplo de código Python para vetorização integrada. O mesmo repositório GitHub tem exemplos em outras linguagens de programação.

Requisitos de controle de acesso baseado em função

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

  1. Na Pesquisa de IA do Azure, habilite funções.

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

  3. Em sua plataforma de fonte de dados e 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 exemplo fornece instruções para configurar funções.

Um serviço de pesquisa gratuito suporta RBAC em ligações ao Azure AI Search, mas não suporta identidades geridas em ligações de saída ao Armazenamento do Azure ou ao Azure AI Vision. Esse nível de suporte significa que você deve usar a autenticação baseada em chave em conexões entre um serviço de pesquisa gratuito e outros serviços do Azure.

Para ligações mais seguras:

Nota

Se não for possível avançar no assistente porque as opções não estão disponíveis (por exemplo, não é possível selecionar uma fonte de dados ou um modelo de incorporação), revisite as atribuições de função. Mensagens de erro indicam que modelos ou implantações não existem, 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ê está começando com o serviço gratuito, está limitado a três índices, fontes de dados, conjuntos de habilidades e indexadores. Limite básico a 15. Certifique-se de que tem espaço para itens adicionais antes de começar. Este guia de início rápido cria um de cada objeto.

Verificar se há classificador semântico

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

Preparar dados de exemplo

Esta seção aponta para os dados que funcionam para este início rápido.

  1. Entre no portal do Azure com sua conta do Azure e vá para sua conta de Armazenamento do Azure.

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

  3. Crie um novo contêiner e, em seguida, carregue os documentos PDF do plano de saúde usados para este 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 Teclas de acesso.

  5. Opcionalmente, sincronize as exclusões em seu contêiner com as exclusões no índice de pesquisa. Estas próximas etapas permitem configurar o indexador para deteção de exclusão:

    1. Habilite a exclusão suave em sua conta de armazenamento.

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

    3. Caso contrário, adicione metadados personalizados que um indexador pode verificar 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 recipiente. Mais tarde, quando desejar excluir o blob, altere a propriedade para true. Para obter mais informações, consulte Alterar e excluir a deteção ao indexar do Armazenamento do Azure

Configurar modelos de incorporação

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

O assistente suporta text-embedding-ada-002, text-embedding-3-large e text-embedding-3-small. Internamente, o assistente chama a habilidade AzureOpenAIEmbedding para se conectar ao Azure OpenAI.

  1. Entre no portal do Azure com sua conta do Azure e vá para seu recurso do Azure OpenAI.

  2. Configurar permissões:

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

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

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

    4. Em Membros, selecione Identidade gerenciada e, em seguida, selecione Membros.

    5. Filtre por subscrição e tipo de recurso (serviços de pesquisa) e, em seguida, selecione a identidade gerida do seu serviço de pesquisa.

    6. Selecione Rever + atribuir.

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

  4. Em Gerenciamento de Recursos e implantações de modelo, selecione Gerenciar implantações para abrir o Azure AI Studio.

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

Iniciar o assistente

  1. Entre no portal do Azure com sua conta do Azure e vá para seu serviço Azure AI 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.

Ligar aos dados

A próxima etapa é conectar-se a uma fonte de dados para usar no índice de pesquisa.

  1. Na página Configurar sua conexão de dados, selecione Armazenamento de Blob 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 oferecer suporte à deteção de exclusão. Em execuções de indexação subsequentes, o índice de pesquisa é atualizado para remover quaisquer documentos de pesquisa baseados em blobs excluídos por software no Armazenamento do Azure.

    • Os blobs suportam exclusão suave de blob nativo ou exclusão suave usando dados personalizados.
    • Você deve ter habilitado anteriormente a exclusão virtual no Armazenamento do Azure e, opcionalmente , adicionado metadados personalizados que a indexação pode reconhecer como um sinalizador de exclusão. Para obter mais informações sobre essas etapas, consulte Preparar dados de exemplo.
    • Se você configurou seus blobs para exclusão suave usando dados personalizados, forneça o par nome-valor da propriedade de metadados nesta etapa. Recomendamos "IsDeleted". Se "IsDeleted" estiver definido como true em um blob, o indexador descartará 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 Azure ou lança um erro se os requisitos não forem atendidos. Em vez disso, a deteção de exclusão não funciona e é provável que seu índice de pesquisa colete documentos órfãos ao longo do tempo.

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

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

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

Vetorizar o texto

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

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

    • Azure OpenAI
    • Catálogo de modelos do Azure AI Studio
    • Um recurso multimodal existente do Azure AI Vision na mesma região que o Azure AI Search. Se não houver uma conta multisserviço 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 incorporação do Azure, Cohere e Facebook.

    • Para incorporações multimodais do AI Vision, selecione a conta.

    Para obter mais informações, consulte Configurar modelos de incorporação anteriormente neste artigo.

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

    • A identidade deve ter uma função de Usuário OpenAI de Serviços Cognitivos na conta multisserviços do Azure AI.
  5. Marque a caixa de seleção que reconhece o impacto no faturamento do uso desses recursos.

  6. Selecione Seguinte.

Vetorize e enriqueça as suas imagens

Se o seu conteúdo incluir imagens, pode aplicar a IA de duas formas:

  • Use um modelo de incorporação de imagem com suporte do catálogo ou escolha a API de incorporações multimodais do Azure AI Vision para vetorizar imagens.

  • Use o reconhecimento ótico de caracteres (OCR) para reconhecer texto em imagens. Esta opção invoca a habilidade OCR para ler texto de imagens.

O Azure AI Search e seu recurso de IA do Azure devem estar na mesma região.

  1. Na página Vetorizar suas imagens, especifique o tipo de conexão que o assistente deve fazer. Para vetorização de imagem, o assistente pode se conectar a modelos de incorporação no Azure AI Studio ou no Azure AI Vision.

  2. Especifique a assinatura.

  3. Para o catálogo de modelos do Azure AI Studio, especifique o projeto e a implantação. Para obter mais informações, consulte Configurar modelos de incorporação anteriormente neste artigo.

  4. Opcionalmente, você pode quebrar imagens binárias (por exemplo, arquivos de documentos digitalizados) e usar OCR para reconhecer texto.

  5. Marque a caixa de seleção que reconhece o impacto no faturamento do uso desses recursos.

  6. Selecione Seguinte.

Adicionar classificação semântica

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

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 esses atributos:

Campo Aplica-se ao Description
chunk_id Vetores de texto e imagem Campo de cadeia de caracteres gerado. Pesquisável, recuperável, classificável. Esta é 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 o bloco se origina.
chunk Vetores de texto e imagem Campo String. Versão legível por humanos do bloco de dados. Pesquisável e recuperável, mas não filtrável, facial ou classificável.
title Vetores de texto e imagem Campo String. Título do documento legível por humanos, título da página ou número da página. Pesquisável e recuperável, mas não filtrável, facial ou classificável.
text_vector Vetores de texto Coleção (Edm.single). Representação vetorial do pedaço. Pesquisável e recuperável, mas não filtrável, facial ou classificável.

Não é possível modificar os campos gerados ou seus atributos, mas é possível adicionar novos campos se a fonte de dados fornecê-los. Por exemplo, o Armazenamento de Blobs do Azure fornece uma coleção de campos de metadados.

  1. Selecione Adicionar novo.

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

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

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

Indexação de agendas

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

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

Concluir o assistente

  1. Na página Revisar sua configuração, especifique um prefixo para os objetos criados pelo assistente. Um prefixo comum ajuda-o a manter-se organizado.

  2. Selecione Criar.

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

  • Conexão da fonte de dados.

  • Índice com campos vetoriais, vetorizadores, perfis vetoriais e algoritmos vetoriais. Não é possível projetar 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 a habilidade Text Split para fragmentação e uma habilidade de incorporação para vetorização. A habilidade de incorporação é a habilidade AzureOpenAIEmbeddingModel para o Azure OpenAI ou a habilidade AML para o catálogo de modelos do Azure AI Studio. 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 seus blocos correspondentes em um índice "filho".

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

Ver resultados

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

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

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

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

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

    Captura de ecrã do comando de menu para abrir a vista JSON.

    O assistente oferece uma consulta padrão que emite uma consulta vetorial no vector campo e retorna os cinco vizinhos mais próximos. Se você optou por ocultar valores de vetor, sua consulta padrão inclui uma select instrução que exclui o vector campo dos resultados da pesquisa.

    {
       "select": "chunk_id,parent_id,chunk,title",
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "vector"
           }
        ]
    }
    
  4. Para o valor, substitua text 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 ecrã dos resultados da pesquisa.

    Cinco partidas devem aparecer. Cada documento é um pedaço do PDF original. O title campo mostra de qual PDF vem o bloco.

  6. Para ver todas as partes de um documento específico, adicione um filtro para o title campo de 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"
           }
        ]
    }
    
    

Limpeza

O Azure AI Search é um recurso faturável. Se já não precisar dele, elimine-o da sua subscrição para evitar cobranças.

Próximo passo

Este guia de início rápido apresentou o assistente Importar e vetorizar dados que cria todos os objetos necessários para vetorização integrada. Se você quiser explorar cada etapa em detalhes, tente uma amostra de vetorização integrada.