Dicas para enriquecimento de IA na IA do Azure Search
Este artigo contém dicas para ajudar você a começar a usar o enriquecimento de IA e os conjuntos de habilidades usados durante a indexação.
Dica 1: começar de forma simples e pequena
Tanto o assistente de importação de dados quanto o assistente de importação e vetorização de dados no portal do Microsoft Azure dão suporte ao enriquecimento de IA. Sem escrever nenhum código, você pode criar e examinar todos os objetos usados em um pipeline de enriquecimento: um índice, um indexador, uma fonte de dados e um conjunto de habilidades.
Outra maneira de começar de forma simples é criar uma fonte de dados com apenas alguns documentos ou linhas em uma tabela representativa dos documentos que serão indexados. Um conjunto de dados pequeno é a melhor maneira de aumentar a velocidade de localização e correção de problemas. Execute sua amostra pelo pipeline de ponta a ponta e verifique se os resultados atendem às suas necessidades. Quando estiver satisfeito com os resultados, você estará pronto para adicionar mais arquivos à sua fonte de dados.
Dica 2: veja o que funciona, mesmo que haja algumas falhas
Às vezes, uma pequena falha interrompe o funcionamento de um indexador. Isso não é um problema se você planeja corrigir os problemas um a um. No entanto, talvez você queira ignorar um determinado tipo de erro, permitindo que o indexador continue para que você possa ver quais fluxos estão funcionando.
Para ignorar os erros durante o desenvolvimento, defina maxFailedItems
e maxFailedItemsPerBatch
como -1 como parte da definição do indexador.
{
// rest of your indexer definition
"parameters":
{
"maxFailedItems":-1,
"maxFailedItemsPerBatch":-1
}
}
Observação
Como melhor prática, defina maxFailedItems
e maxFailedItemsPerBatch
como 0 para cargas de trabalho de produção
Dica 3: use a sessão de depuração para solucionar problemas
A Sessão de depuração é um editor visual que mostra o grafo de dependências, as entradas e saídas e as definições de um conjunto de habilidades. Ele funciona carregando um único documento do seu índice de pesquisa, com a configuração atual do indexador e do conjunto de habilidades. Em seguida, você pode executar todo o conjunto de habilidades, com escopo para um único documento. Em uma sessão de depuração, você pode identificar e resolver erros, validar alterações e confirmar alterações em um conjunto de habilidades pai. Para obter um passo a passo, confira Tutorial: sessões de depuração.
Dica 4: o conteúdo esperado não aparece
Se estiver faltando conteúdo, verifique se há documentos descartados no portal do Microsoft Azure. Na página do serviço de pesquisa, abra Indexadores e observe a coluna Documentos bem-sucedidos. Clique no histórico de execução do indexador para revisar erros específicos.
Se o problema estiver relacionado ao tamanho do arquivo, poderá haver um erro como este: "O blob <file-name>" tem o tamanho de <file-size> bytes, que excede o tamanho máximo de extração de documento da camada de serviço atual". Para obter mais informações sobre limites do indexador, confira Limites do serviço.
Um segundo motivo para o conteúdo não aparecer pode ser a presença de erros de mapeamento de entrada/saída. Por exemplo, o nome da saída de destino é "People", mas o nome do campo de índice é "people", com letras minúsculas. O sistema pode retornar mensagens de êxito 201 para todo o pipeline, o que levará você a achar que a indexação foi bem-sucedida, quando na verdade um campo está vazio.
Dica 5: estender o processamento além do tempo máximo de execução
A análise de imagem faz uso intensivo de computação até mesmo em casos simples, de modo que quando as imagens são especialmente grandes ou complexas, os tempos de processamento podem ultrapassar o tempo máximo permitido.
Para indexadores que têm conjuntos de habilidades, a execução do conjunto de habilidades é limitada a 2 horas para a maioria das camadas. Se o processamento do conjunto de habilidades não for concluído dentro desse período, você poderá colocar o indexador em uma programação recorrente de 2 horas para que ele retome o processamento de onde parou.
A indexação programada é retomada no último documento válido conhecido. Em um agendamento recorrente, o indexador pode trabalhar através da lista de pendências de imagens em uma série de horas ou dias, até que todas as imagens não processadas sejam processadas. Para obter mais informações sobre a sintaxe de agendamento, veja Agendar um indexador.
Observação
Se um indexador for definido como um determinado agendamento, mas falhar repetidamente no mesmo documento repetidamente, sempre que for executado, o indexador começará a ser executado em um intervalo menos frequente (até o máximo de ao menos uma vez a cada 24 horas) até que ele faça o progresso com êxito novamente. = Se você acredita que corrigiu o problema que estava fazendo com que o indexador ficasse preso em um determinado ponto, poderá realizar uma execução sob demanda do indexador e, se o progresso for bem-sucedido, o indexador retornará ao intervalo de agendamento definido novamente.
Dica 6: aumentar a taxa de transferência da indexação
Para indexação paralela, distribua seus dados em vários contêineres ou em várias pastas virtuais dentro do mesmo contêiner. Crie vários pares de fonte de dados e indexador. Todos os indexadores podem usar o mesmo conjunto de habilidades e gravar no mesmo índice de pesquisa de destino, de modo que seu aplicativo de pesquisa não precisa estar ciente desse particionamento.