Partilhar via


Analisar documentos e fragmentar texto como strings tokenizadas para fluxos de trabalho no Azure Logic Apps

Aplica-se a: Azure Logic Apps (Consumo + Padrão)

Por vezes, é preciso converter conteúdo em tokens, que são palavras ou blocos de caracteres, ou dividir um documento grande em pedaços mais pequenos antes de poder usar esse conteúdo com ações específicas. Por exemplo, as ações Pesquisa de IA do Azure ou Azure OpenAI esperam entrada tokenizada e só conseguem lidar com um número limitado de tokens.

Para esses cenários, use as ações de Operações de Dados denominadas Analisar um documento e Fragmentar texto no fluxo de trabalho do aplicativo lógico. Estas ações transformam respetivamente conteúdos, como um documento PDF, ficheiro CSV, ficheiro Excel, etc., em saída de cadeia tokenizada e depois dividem a cadeia em partes, com base no número de tokens. Em seguida, pode referenciar e utilizar esses resultados com ações seguintes no seu fluxo de trabalho.

Gorjeta

Para saber mais, pode fazer Azure Copilot estas perguntas:

  • O que é um token na IA?
  • O que é entrada tokenizada?
  • O que é saída de cadeia de caracteres tokenizada?
  • O que é a análise em IA?
  • O que é fragmentação na IA?

Para encontrar Azure Copilot, na barra de ferramentas Azure portal, selecione Copilot.

Este guia mostra como adicionar e configurar ações para analisar documentos e fragmentar texto no seu fluxo de trabalho.

Problemas e limitações conhecidos

  • Nos fluxos de trabalho de Consumo, a ação Analisar um documento está disponível apenas nas seguintes regiões da Azure:

    • Leste da Austrália
    • Sul do Brasil
    • Ásia Leste
    • E.U.A. Leste
    • E.U.A. Leste 2
    • Europa do Norte
    • E.U.A. Centro-Sul
    • Sudeste Asiático
    • Suécia Central
    • E.U.A. Oeste 2
    • E.U.A. Oeste 3
    • Sul do Reino Unido

    Estas regiões fornecem ligações à fonte de dados, rastreamento de documentos, fragmentação de documentos, suporte para modelos de embedding Azure OpenAI e suporte incorporado para indexação para extração de dados. Para mais informações, consulte Automatizar a indexação em AI Search com fluxos de trabalho em Azure Logic Apps.

  • Atualmente, as ações Analisar um documento e Fragmentar texto não suportam arquivos host, por exemplo, arquivos binários de mainframe e midrange, como arquivos VSAM (Virtual Storage Access Method). No entanto, se estiver trabalhando com fluxos de trabalho Padrão, é possível usar a ação interna do IBM Host File chamada Parse Host File Contents em vez disso.

Pré-requisitos

  • Uma conta Azure e subscrição. Se não tiver uma subscrição Azure, subscreva-se para uma conta Azure gratuita.

  • Um fluxo de trabalho de aplicativo lógico Consumo ou Padrão com um gatilho existente porque as operações Analisar um documento e Fragmentar texto estão disponíveis apenas como ações. Certifique-se de que a ação que recupera o conteúdo que você deseja analisar ou fragmentar precede essas operações de dados.

Analisar um documento

A ação Analisar um documento converte conteúdo, como um documento PDF, ficheiro CSV, ficheiro Excel, etc., numa cadeia de tokens. Neste exemplo, imagine que o seu fluxo de trabalho se inicia com o gatilho Pedido chamado Quando é recebido um pedido HTTP. Este gatilho espera para receber um pedido HTTP enviado de outro componente, como uma função do Azure, outro fluxo de trabalho de uma aplicação lógica, e assim sucessivamente. A solicitação HTTP inclui a URL de um novo documento carregado que está disponível para o fluxo de trabalho recuperar e analisar. Uma ação HTTP segue imediatamente o gatilho e envia uma solicitação HTTP para a URL do documento e retorna com o conteúdo do documento de seu local de armazenamento.

Se usar outras fontes de conteúdo, como Armazenamento de Blobs do Azure, SharePoint, OneDrive, File System, FTP, etc., pode verificar se existem gatilhos disponíveis para essas fontes. Você também pode verificar se há ações disponíveis para recuperar o conteúdo dessas fontes. Para obter mais informações, consulte Operações internas e conectores gerenciados.

  1. No portal Azure, abre o recurso e o fluxo de trabalho da tua aplicação lógica no designer.

  2. Sob o gatilho e as ações existentes, siga estas etapas gerais para adicionar a ação de Operações de Dados chamada Analisar um documento ao seu fluxo de trabalho.

  3. No designer, selecione a ação Analisar um documento .

  4. Após abrir o painel de informações da ação, na guia Parâmetros, na propriedade Conteúdo do Documento, especifique o conteúdo a analisar seguindo estas etapas:

    1. Selecione dentro da caixa de conteúdo do documento.

      As opções para a lista de conteúdo dinâmico (ícone relâmpago) e o editor de expressões (ícone de função) são exibidas.

      • Para escolher a saída de uma ação anterior, selecione a lista de conteúdo dinâmico.

      • Para criar uma expressão que manipule a saída de uma ação anterior, selecione o editor de expressão.

      Este exemplo continua selecionando o ícone de relâmpago para a lista de conteúdo dinâmico.

    2. Depois que a lista de conteúdo dinâmico for aberta, selecione a saída desejada de uma operação anterior.

      Neste exemplo, a ação Analisar um documento faz referência à saída Corpo da ação HTTP.

      A captura de ecrã mostra o designer de fluxo de trabalho, que tem uma ação chamada Analisar um documento com a lista de conteúdos dinâmicos aberta e o Corpo de saída selecionado da ação HTTP.

      A saída do Corpo agora aparece na caixa de Conteúdo do Documento:

      A captura de tela mostra o fluxo de trabalho de exemplo com a saída Body na ação chamada Analisar um documento.

  5. Na ação Analisar um documento, adicione as ações que você deseja trabalhar com a saída de cadeia de caracteres tokenizada, por exemplo, Texto em bloco, que este guia descreve mais tarde.

Analisar um documento - Referência

Parâmetros

Nome Valor Tipo de dados Descrição Limite
Conteúdo do documento < conteúdo a analisar> Qualquer O conteúdo a analisar. Nenhuma

Resultados

Nome Tipo de dados Descrição
Texto do resultado analisado Matriz de cadeias de carateres Uma matriz de cadeias de caracteres.
Resultado analisado Objeto Um objeto que contém todo o texto analisado.

Fragmentar texto

A ação Fragmentar texto divide o conteúdo em partes menores para ações subsequentes para uso mais fácil no fluxo de trabalho atual. Os passos seguintes baseiam-se no exemplo da secção Parse a document e dividem a saída de cadeias de tokens para uso em operações de IA Azure que esperam blocos de conteúdo tokenizados e pequenos.

Nota

As ações anteriores que usam fragmentação não afetam a ação Fragmentar texto , nem a ação Fragmentar texto afeta as ações subsequentes que usam fragmentação.

  1. No portal Azure, abre o recurso e o fluxo de trabalho da tua aplicação lógica no designer.

  2. Na ação Analisar um documento, siga estas etapas gerais para adicionar a ação Operações de Dados chamada Fragmentar texto.

  3. No designer, selecione a ação Fragmentar texto .

  4. Depois do painel de informações da ação abrir, na guia Parâmetros, para a propriedade Estratégia de Fragmentação, selecione TokenSize como método de fragmentação, se não estiver já selecionado.

    Estratégia Descrição
    TokenSize Divida o conteúdo especificado, com base no número de tokens.
  5. Depois de selecionar a estratégia, selecione dentro da caixa Texto para especificar o conteúdo para fragmentação.

    As opções para a lista de conteúdo dinâmico (ícone relâmpago) e o editor de expressões (ícone de função) são exibidas.

    • Para escolher a saída de uma ação anterior, selecione a lista de conteúdo dinâmico.

    • Para criar uma expressão que manipule a saída de uma ação anterior, selecione o editor de expressão.

    Este exemplo continua selecionando o ícone de relâmpago para a lista de conteúdo dinâmico.

    1. Depois que a lista de conteúdo dinâmico for aberta, selecione a saída desejada de uma operação anterior.

      Neste exemplo, a ação Dividir texto em partes refere-se à saída do texto analisado da ação Analisar um documento.

      A captura de tela mostra o designer de fluxo de trabalho, a ação chamada Fragmentar texto com lista de conteúdo dinâmico aberta e a saída selecionada de Analisar uma ação de documento.

      A caixa de texto agora mostra a saída da ação de resultado analisado:

      A captura de tela mostra o fluxo de trabalho de exemplo com a saída de texto de resultado analisado selecionada na ação chamada Texto em bloco.

  6. Conclua a configuração da ação Fragmentar texto com base na estratégia selecionada e no cenário. Para obter mais informações, consulte Texto em bloco - Referência.

Agora, quando adicionar outras ações que esperam e usam entrada tokenizada, como as ações de IA do Azure, o conteúdo da entrada é formatado para facilitar o consumo.

Fragmentar texto - Referência

Parâmetros

Nome Valor Tipo de dados Descrição Limites
Estratégia de Chunking TokenSize Enum de corda Divida o conteúdo com base no número de tokens.

Padrão: TokenSize
Não aplicável
Texto < conteúdo para fragmento> Qualquer O conteúdo a ser dividido em segmentos. Consulte Limites e guia de referência de configuração
Modelo de codificação < método de codificação> Enum de corda O modelo de codificação a ser usado:

- Padrão: cl100k_base (gpt4, gpt-3.5-turbo, gpt-35-turbo)

- r50k_base (GPT-3)

- p50k_base (GPT-3)

- p50k_edit (GPT-3)

- cl200k_base (GPT-4O)

Para obter mais informações, consulte OpenAI - Visão geral de modelos.
Não aplicável
TokenSize < max-tokens-por-chunk> Número inteiro O número máximo de tokens por bloco de conteúdo.

Padrão: Nenhum
Mínimo: 1
Máximo: 8000
PageOverlapLength < número de carateres sobrepostos> Número inteiro O número de caracteres do final do bloco anterior a serem incluídos no próximo bloco. Essa configuração ajuda a evitar a perda de informações importantes ao dividir o conteúdo em partes e preserva a continuidade e o contexto entre partes.

Padrão: 0 - Não há caracteres sobrepostos.
Mínimo: 0

Gorjeta

Para saber mais, pode fazer Azure Copilot estas perguntas:

  • O que é PageOverlapLength em segmentação?
  • O que é a codificação na Azure IA?

Para encontrar Azure Copilot, na barra de ferramentas Azure portal, selecione Copilot.

Resultados

Nome Tipo de dados Descrição
Itens de texto do resultado fragmentado Matriz de cadeias de carateres Uma matriz de cadeias de caracteres.
Item de resultado fragmentado de itens de texto String Uma única cadeia de caracteres na matriz.
Resultado em blocos Objeto Um objeto que contém todo o texto em partes.

Exemplo de fluxo de trabalho

O exemplo a seguir inclui outras ações que criam um padrão de fluxo de trabalho completo para ingerir dados de qualquer fonte:

A captura de tela mostra o fluxo de trabalho de exemplo completo.

Passo Tarefa Operação subjacente Descrição
1 Aguarde ou verifique se há novos conteúdos. Quando uma solicitação HTTP é recebida Um gatilho que sonda ou aguarda a chegada de novos dados, seja com base em uma recorrência programada ou em resposta a eventos específicos, respectivamente. Tal evento pode ser um ficheiro novo carregado para um sistema de armazenamento específico, como Armazenamento de Blobs do Azure, SharePoint, OneDrive, File System, FTP, entre outros.

Neste exemplo, a operação de gatilho Request aguarda uma solicitação HTTP ou HTTPS enviada de outro endpoint. O pedido inclui o URL de um novo documento carregado.
2 Obtenha o conteúdo. HTTP Uma ação HTTP que recupera o documento carregado usando a URL do arquivo a partir do resultado do gatilho.
3 Redigir detalhes do documento. Compose Uma ação de Operações de Dados que concatena vários itens.

Este exemplo concatena informações de chave-valor sobre o documento.
4 Crie uma cadeia de tokens. Analisar um documento Uma ação de Dados que produz uma cadeia de caracteres tokenizada usando a saída da ação de Composição.
5 Crie blocos de conteúdo. Segmento de texto Uma ação de Operações de Dados que divide a cadeia de caracteres de token em partes, com base no número de tokens por bloco de conteúdo.
6 Converta texto tokenizado e fragmentado em JSON. Analisar JSON Uma ação de Operações de Dados que converte a saída em partes em uma matriz JSON.
7 Selecione itens de matriz JSON. Selecionar Uma ação de Operações de Dados que seleciona vários itens da matriz JSON.
8 Gere as incorporações. Obtenha várias incorporações Uma ação Azure OpenAI que cria embeddings para cada item do array JSON.
9 Selecione incorporações e outras informações. Selecionar Uma ação de Data Operations que seleciona embeddings e outras informações do documento.
10 Indexe os dados. Documentos de índice Uma ação Pesquisa de IA do Azure que indexa os dados com base em cada embedding selecionado.