Assistente de importação de dados no Azure AI Search

O assistente de importação de dados no portal do Azure cria vários objetos usados para indexação e enriquecimento de IA em um serviço de pesquisa. Se o Azure AI Search é novidade para você, saiba que ele é um dos recursos mais avançados à sua disposição. Com o mínimo de esforço, você pode criar um pipeline de indexação ou enriquecimento que exerça a maior parte da funcionalidade do Azure AI Search.

Se você estiver usando o assistente para testes de prova de conceito, este artigo explica o funcionamento interno do assistente para que você possa usá-lo com mais eficiência.

Este artigo não é um passo a passo. Para obter ajudar para usar o assistente com dados de exemplo integrados, confira o Guia de Início Rápido: Criar um índice de pesquisa ou Guia de Início Rápido: Criar uma tradução de texto e um conjunto de habilidades de entidade.

Iniciando o assistente

No portal do Azure, abra a página de serviço de pesquisa no painel ou localize seu serviço na lista de serviços. Na página de Visão Geral do serviço, na parte superior, selecione Importar dados.

Screenshot of the Import data command

O assistente é aberto totalmente expandido na janela do navegador para que você tenha mais espaço para trabalhar.

Você também pode iniciar aImportação de dadosde outros serviços do Azure, incluindo o Azure Cosmos DB, o Banco de Dados SQL do Azure, Instância Gerenciada de SQL e o Armazenamento de Blobs do Azure. Procure por Adicionar Azure AI Search no painel de navegação à esquerda da página de visão geral do serviço.

Objetos criados pelo assistente

O assistente fará a saída dos objetos na tabela a seguir. Depois que os objetos são criados, você pode revisar suas definições JSON no portal ou chamá-las a partir do código.

Objeto Descrição
Indexador Um objeto de configuração especifica uma fonte de dados, um índice de destino, um conjunto de habilidades opcional, um agendamento opcional e definições de configuração opcionais para a transmissão de erro e a codificação de base 64.
Fonte de dados Persiste as informações de conexão com uma fonte de dados com suporte no Azure. Um objeto da fonte de dados é usado exclusivamente com indexadores.
Index A estrutura de dados física usada para pesquisa de texto completo e outras consultas.
Conjunto de habilidades Opcional. Um conjunto completo de instruções para manipular, transformar e formatar conteúdo, incluindo a análise e a extração de informações de arquivos de imagem. A menos que o volume de trabalho esteja abaixo do limite de 20 transações por indexador por dia, o conjunto de habilidades deve incluir uma referência a um recurso de vários serviços de IA do Azure que forneça enriquecimento.
Repositório de conhecimento Opcional. Armazena a saída de um pipeline de enriquecimento de IA para tabelas e blobs no Armazenamento do Microsoft Azure para análise independente ou processamento downstream.

Benefícios e limitações

Antes de gravar qualquer código, você pode usar o assistente para o teste de protótipos e de prova de conceito. O assistente conecta-se a fontes de dados externas, amostras dos dados para criar um índice inicial e, em seguida, importa os dados como documentos JSON em um índice no Azure AI Search.

Se você estiver avaliando conjuntos de habilidades, o assistente processará todos os mapeamentos do campo de saída e adicionará funções auxiliares para criar objetos utilizáveis. A divisão de texto será adicionada se você especificar um modo de análise. A mesclagem de texto será adicionada se você escolher a análise de imagem para que o assistente possa reunir as descrições de texto com o conteúdo da imagem. Habilidades do Shaper adicionadas para dar suporte a projeções válidas se você escolher a opção de repositório de conhecimento. Todas as tarefas acima vêm com uma curva de aprendizado. Se o enriquecimento é novidade para você, a possibilidade de ter essas etapas processadas para você lhe permite medir o valor de uma habilidade sem precisar investir muito tempo e esforço.

A amostragem está em processo pelo qual um esquema de índice será inferido e tem algumas limitações. Assim que a fonte de dados é criada, o assistente escolhe uma amostra aleatória de documentos para decidir quais colunas fazem parte da fonte de dados. Nem todos os arquivos são lidos, pois isso pode levar horas para as fontes de dados muito grandes. Tendo em conta uma seleção de documentos, os metadados de origem, como nome de campo ou tipo, são usados para criar uma coleção de campos em um esquema de índice. Dependendo da complexidade dos dados de origem, talvez seja necessário editar o esquema inicial para obter precisão ou estendê-lo para fins de integralidade. Você pode fazer as alterações embutidas na página definição de índice.

Em geral, as vantagens de usar o assistente são claras: enquanto que os requisitos sejam cumpridos, você pode criar o protótipo de um índice do tipo passível de consulta em minutos. Algumas das complexidades da indexação, como serializar os dados como documentos JSON, são tratadas pelo assistente.

O assistente não é isento de limitações. As restrições são resumidas da seguinte maneira:

  • O assistente não dá assistência à iteração nem à reutilização. Cada passagem o assistente cria um novo índice, um novo conjunto de habilidades e uma configuração de indexador. Somente as fontes de dados podem ser persistentes e reutilizadas no assistente. Para editar ou refinar outros objetos, exclua os objetos e comece de novo, ou use as APIs REST ou o SDK do .NET para modificar as estruturas.

  • O conteúdo de origem deve residir numa fonte de dados com suporte.

  • A amostragem ocorre num subconjunto de dados de origem. Para fontes de dados consideráveis, é possível que o assistente perca campos. Pode ser necessário estender o esquema ou corrigir os tipos de dados inferidos, se a amostragem for insuficiente.

  • O enriquecimento de IA, conforme exposto no portal, é limitado a um subconjunto de habilidades internas.

  • Umrepositório de conhecimento, que pode ser criado pelo assistente, é limitado a algumas projeções padrão, e usa uma convenção de nomenclatura padrão. Para personalizar nomes ou projeções, você precisará criar o repositório de conhecimento por meio da API REST ou dos SDKs.

  • Enquanto o assistente é usado, o acesso público a todas as redes deve ser habilitado na fonte de dados com suporte, pois o portal não poderá acessar a fonte de dados durante a instalação se o acesso público estiver desabilitado. Isso significa que, se a fonte de dados tiver um firewall habilitado ou você tiver definido um link privado compartilhado, você deverá desabilitá-los, executar o Assistente de Importação de Dados e habilitá-lo após a conclusão da instalação do assistente. Se não houver essa opção, você poderá criar a fonte de dados, o indexador, o conjunto de habilidades e o índice do Azure AI Search por meio da API REST ou dos SDKs.

Workflow

O assistente é organizado em quatro etapas principais:

  1. Conectar-se a uma fonte de dados no Azure com suporte.

  2. Criar um esquema de índice, inferido por dados de origem de amostragem.

  3. Opcionalmente, adicione enriquecimentos de IA para extrair ou gerar conteúdo e estrutura. As entradas para criar um repositório de conhecimento são coletadas nesta etapa.

  4. Execute o assistente para criar objetos, carregar dados, definir um agendamento e outras opções de configuração.

O fluxo de trabalho é um pipeline, portanto, é uma forma. Você não pode usar o assistente para editar um dos objetos que foram criados, mas pode usar outras ferramentas do portal, como o designer de índice ou indexador ou os editores JSON, para as atualizações permitidas.

Configuração da fonte de dados no assistente

O assistente de importação de dados conecta-se a uma fonte de dados externa com suporte usando a lógica interna fornecida pelos indexadores do Azure AI Search, que são equipados para amostrar a origem, ler os metadados, quebrar os documentos para ler o conteúdo e a estrutura e serializar o conteúdo como JSON para a importação subsequente do Azure AI Search.

Você pode colar em uma conexão com uma fonte de dados com suporte em uma assinatura ou região diferente, mas o seletor Escolher uma conexão existente tem como escopo a assinatura ativa.

Screenshot of the Connect to your data tab.

Não é garantido que todas as fontes de dados da versão prévia estejam disponíveis no assistente. Como cada fonte de dados tem o potencial de introduzir outras alterações downstream, uma fonte de dados da versão prévia só será adicionada à lista de fontes de dados se ela for totalmente compatível com todas as experiências no assistente, como a definição do conjunto de habilidades e a inferência de esquema de índice.

Você só pode importar de uma única tabela, exibição do banco de dados ou estrutura de dados equivalente, no entanto, a estrutura pode incluir as subestruturas hierárquicas ou aninhadas. Para obter mais informações, consulteComo modelar os tipos complexos.

Configuração do conjunto de habilidades no assistente

A configuração do conjunto de habilidades ocorre após a definição da fonte de dados, porque o tipo de fonte de dados informará a disponibilidade de determinadas habilidades internas. Especialmente se você estiver indexando arquivos do Armazenamento de Blobs, a escolha do modo de análise desses arquivos determinará se a análise de sentimento está disponível.

O assistente adicionará as habilidades que você escolher, mas também adicionará outras habilidades necessárias para obter um resultado bem-sucedido. Por exemplo, se você especificar um repositório de conhecimento, o assistente adicionará uma habilidade do Shaper para dar suporte a projeções (ou estruturas de dados físicos).

Os conjuntos de habilidades são opcionais e há um botão na parte inferior da página para ignorar caso você não queira o enriquecimento de IA.

Configuração de esquema de índice no assistente

O assistente faz uma amostragem de sua fonte de dados para detectar os campos e o tipo de campo. Dependendo da fonte de dados, ela também pode oferecer campos para indexação de metadados.

Como a amostragem é um exercício impreciso, revise o índice para ver as seguintes considerações:

  1. A lista dos campos é precisa? Se sua fonte de dados contiver campos que não foram coletados na amostragem, você poderá adicionar manualmente os novos campos que a amostragem não coletou, e remover o campo que não adiciona valor a uma experiência de pesquisa ou que não será usado em uma expressão de filtro ou perfil de pontuação.

  2. O tipo de dados é apropriado para os dados da entrada ? O Azure AI Search dá suporte aostipos de dados do EDM (modelo de dados de entidade). Para os dados de SQL do Azure, há um gráfico de mapeamento que estabelece valores equivalentes. Para obter mais informações em segundo plano, consulteMapeamentos de campo e transformações.

  3. Você tem um campo que pode servir como achave? Este campo deve ser Edm.String e deve identificar exclusivamente um documento. Para os dados relacionais, eles podem ser mapeados à uma chave primária. Para os blobs, pode ser ometadata-storage-path. Se os valores de campo incluírem espaços ou traços, defina a opção Chave de Codificação de Base 64 na etapa Criar um indexador, em Opções avançadas, para suprimir a verificação de validação para esses caracteres.

  4. Defina os atributos para determinar como esse campo é usado em um índice.

    Reserve seu tempo com esta etapa porque os atributos determinam a expressão física dos campos no índice. Caso queira alterar atributos mais tarde, mesmo que de forma programática, você quase sempre precisará remover e recompilar o índice. Os atributos principais, comoPesquisáveiseRecuperáveis,têm um impacto insignificante noarmazenamento. A habilitação dos filtros e o uso de sugestões aumentam os requisitos de armazenamento.

    • Pesquisável habilita a pesquisa de texto completo. Todos os campos usados em consultas de forma livre ou em expressões de consulta devem ter esse atributo. Índices invertidos são criados para cada campo que você marcar como Pesquisável.

    • Recuperável retorna o campo nos resultados da pesquisa. Todos os campos que fornecem conteúdo para os resultados da pesquisa devem ter esse atributo. Definir este campo não afetará significativamente o tamanho do índice.

    • Filtrável permite que o campo seja referenciado em expressões de filtro. Todos os campos usados em uma expressão $filter devem ter esse atributo. As expressões de filtro servem para correspondências exatas. Como as cadeias de caracteres de texto permanecem intactas, é necessário mais armazenamento para acomodar o conteúdo textual.

    • Com faceta habilita o campo para a navegação facetada. Somente os campos que também estão marcados como Filtrável podem ser marcados como Com faceta.

    • Classificável permite que o campo seja usado em uma classificação. Todos os campos usados em uma expressão $Orderby devem ter esse atributo.

  5. Você precisa deanálise léxica? Para campos Edm.string que sãoPesquisáveis,você pode definir umAnalisadorse quiser indexação e consulta aprimoradas por idioma.

    O padrão é Lucene Standard, mas você pode escolher English Microsoft se quiser usar o analisador da Microsoft para processamento léxico avançado, como resolver formas verbais e substantivos irregulares. Somente os analisadores de linguagem podem ser especificados no portal. O uso de um analisador personalizado ou de um analisador que não é de linguagem, como a palavra-chave, o Padrão etc., deve ser feito de forma proramaticamente. Para obter mais informações sobre os analisadores, confira Adicionar analisadores de linguagem.

  6. Você precisa da funcionalidade de preenchimento automático na forma de preenchimento automático ou de resultados sugeridos? Marque a caixa de seleção doSugestorpara habilitar o preenchimento automático de sugestões de consulta e preenchimento automáticonos campos escolhidos. Os sugestores adicionam o número de termos indexados no índice e, portanto, consomem mais armazenamento.

Configuração do indexador no assistente

A última página do assistente coleta entradas do usuário para a configuração do indexador. Você pode especificar um agendamento e definir outras opções que variam de acordo com o tipo de fonte de dados.

Internamente, o assistente também configura as seguintes definições, que não ficam visíveis no indexador até que ele seja criado:

Próximas etapas

A melhor maneira para o reconhecimento dos benefícios e as limitações do assistente é percorrê-lo. O guia de início rápido a seguir explica cada etapa.