Compartilhar via


O que é uma fonte de conhecimento?

Observação

Esse recurso está atualmente em versão prévia pública. Essa visualização é fornecida sem um contrato de nível de serviço e não é recomendada para utilização em produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares para Versões Prévias do Microsoft Azure.

Uma fonte de conhecimento encapsula um índice de pesquisa com propriedades extras para recuperação por meio de agentes. É uma definição obrigatória em um agente de conhecimento. Fornecemos diretrizes sobre como criar fontes de conhecimento específicas, mas, em geral, você pode:

  • Crie uma fonte de conhecimento como um recurso de nível superior em seu serviço de pesquisa. Cada fonte de conhecimento aponta para exatamente um índice, e esse índice deve atender aos critérios para recuperação por meio de agentes.

  • Referenciar uma ou mais fontes de conhecimento em um agente de conhecimento. Em um pipeline de recuperação por meio de agentes, é possível consultar várias fontes de conhecimento em uma única solicitação. As subconsultas são geradas para cada fonte de conhecimento. Os principais resultados são retornados na resposta de recuperação.

  • Usar uma definição de fonte de conhecimento para gerar um pipeline de indexador completo (fonte de dados, conjunto de habilidades, indexador e índice) que funcione para recuperação por meio de agentes. Em vez de criar vários objetos manualmente, as informações na fonte de conhecimento são usadas para gerar todos os objetos, incluindo um índice populado e pesquisável.

Verifique se você tem pelo menos uma fonte de conhecimento antes de criar um agente de conhecimento. A especificação completa de uma fonte de conhecimento e de um agente de conhecimento está na referência da API REST de visualização.

Trabalhando com uma fonte de conhecimento

  • Caminho de criação: primeiro crie uma fonte de conhecimento e crie um agente de conhecimento.

  • Caminho de exclusão: atualize ou exclua agentes de conhecimento para remover referências a uma fonte de conhecimento e exclua a fonte de conhecimento por último.

  • Uma fonte de conhecimento, seu índice e o agente de conhecimento devem existir no mesmo serviço de pesquisa.

  • Para cada fonte de conhecimento, o agente de conhecimento fornece propriedades extras para a execução da consulta. "knowledgeSources" as propriedades afetam o planejamento de consulta. "outputConfiguration" as propriedades afetam a saída da consulta.

Fontes de conhecimento com suporte

Estas são as fontes de conhecimento que você pode criar nesta visualização:

  • "searchIndex" encapsula um índice existente
  • "azureBlob" gera um pipeline de indexador que extrai de um contêiner de blobs

Uma fonte de conhecimento específica de plataforma, como a fonte de conhecimento de blob, inclui especificações para gerar todo um pipeline de indexação que fornece extração, processamento de conjunto de habilidades e um índice viável. Você pode modificar o pipeline e executar novamente o indexador, mas não pode renomear os objetos.

Observação

WebKnowledgeSource (também conhecido como WebParameters em APIs REST) atualmente não está operacional na versão prévia 2025-08-01.

Criando fontes de conhecimento

Você deve ter permissões de Colaborador do Serviço de Pesquisa para criar objetos em um serviço de pesquisa. Você também precisa de permissões de Colaborador de Dados de Índice de Pesquisa para carregar um índice se estiver usando uma fonte de conhecimento que cria um pipeline de indexador. Como alternativa, você pode usar uma chave de administrador de API em vez de funções.

Você deve usar a API REST ou um pacote de visualização do SDK do Azure para criar uma fonte de conhecimento. Não há suporte ao portal no momento. Os links a seguir fornecem instruções para criar uma fonte de conhecimento:

Depois que a fonte de conhecimento for criada, você poderá referenciá-la em um agente de conhecimento.

Usando fontes de conhecimento

As propriedades no agente de conhecimento determinam se e como a fonte de conhecimento é usada.

  • "knowledgeSources" A matriz especifica as fontes de conhecimento disponíveis para o agente de conhecimento e informa a lógica da consulta.

  • "outputConfiguration" as propriedades afetam a saída da consulta.

O agente de conhecimento usa a ação de recuperação para enviar consultas ao índice especificado na fonte de conhecimento.

Usar várias fontes de conhecimento simultaneamente

Quando você tem várias fontes de conhecimento, defina as seguintes propriedades para desviar o planejamento da consulta para uma fonte de conhecimento específica.

  • A configuração alwaysQuerySource força o planejamento da consulta a sempre incluir a fonte de conhecimento.
  • A configuração retrievalInstructions fornece diretrizes que incluem ou excluem uma fonte de conhecimento.

As instruções de recuperação são enviadas como um prompt definido pelo usuário para o LLM (modelo de linguagem grande) usado para o planejamento de consultas. Este prompt é útil quando você tem várias fontes de conhecimento e deseja fornecer diretrizes sobre quando usar cada uma delas. Por exemplo, se você tiver índices separados para informações sobre produtos, vagas de emprego e suporte técnico, as instruções de recuperação poderão dizer "usar o índice de trabalhos apenas se a pergunta for sobre uma candidatura a emprego".

A propriedade alwaysQuerySource substitui retrievalInstructions. Defina alwaysQuerySource como false ao fornecer instruções de recuperação.

Tentar processamento de caminho rápido

O caminho rápido é um processamento de consulta oportunista que se aproxima do desempenho de consulta em milissegundos da pesquisa regular. Se você habilitar essa opção, o mecanismo de pesquisa tentará usar o caminho rápido nas seguintes condições:

  • attemptFastPath está definido como verdadeiro em outputConfiguration.

  • A entrada da consulta é uma única mensagem com menos de 512 caracteres.

  • Os destinos da consulta são as fontes de conhecimento especificadas no agente que têm alwaysQuerySource definido como verdadeiro.

A consulta menor, que é executada em paralelo em todas as fontes de conhecimento em conformidade listadas no agente de conhecimento, retorna um resultado se sua pontuação for 1,9 ou superior. O resultado com maior pontuação é retornado na resposta. Se nenhum resultado atender a esses critérios, o caminho rápido será abandonado e a execução da consulta será retomada com o planejamento da consulta e o pipeline de recuperação por meio de agentes usual.

No caminho rápido, a resposta omite as informações de planejamento da consulta (type": "modelQueryPlanning") e "activitySource" é definido como 0 para cada citação de referência.

No caminho rápido, retrievalInstructions são ignorados. Em geral, alwaysQuerySource substitui retrievalInstructions.

Para obter os tempos de resposta mais rápidos possíveis, siga estas práticas recomendadas:

  1. No agente de conhecimento:

    • Defina outputConfiguration.attemptFastPath como true.

    • Defina outputConfiguration.modality como answerSynthesis para obter uma resposta enquadrada como uma resposta formulada por LLM. Leva alguns segundos a mais, mas melhora a qualidade da resposta e economiza tempo geral se a resposta puder ser usada sem processamento adicional do LLM.

    • Mantenha outputConfiguration.includeActivity definido como verdadeiro (configuração padrão) para obter insights sobre a execução da consulta e o tempo decorrido.

    • Mantenha knowledgeSource.includeReferences definido como verdadeiro (configuração padrão) para obter detalhes sobre cada resultado pontuado individualmente.

    • Defina knowledgeSources.alwaysQuerySource como true.

    • Defina knowledgeSources.retrievalInstructions como false.

    • Defina knowledgeSources.includeReferenceSourceData como falso se você não precisar do conteúdo literal do índice. A omissão dessas informações simplifica a resposta e a torna mais legível.

  2. Na ação de recuperação, forneça uma única consulta de mensagem com menos de 512 caracteres.