Partilhar via


Crie um fluxo de trabalho no Microsoft Foundry

Fluxos de trabalho são ferramentas baseadas em UI no Microsoft Foundry. Pode usá-los para criar sequências declarativas e pré-definidas de ações que incluam agentes, como nos fluxos de trabalho do Microsoft Agent Framework.

Os fluxos de trabalho permitem-lhe construir sistemas de automação inteligentes que integram de forma visual agentes de IA com processos de negócio. Os sistemas tradicionais de agente único são limitados na sua capacidade de lidar com tarefas complexas e multifacetadas. Ao orquestrar vários agentes, cada um com habilidades ou funções especializadas, você pode criar sistemas mais robustos, adaptáveis e capazes de resolver problemas do mundo real de forma colaborativa.

Pré-requisitos

Conceitos de fluxo de trabalho

Para criar um fluxo de trabalho no Foundry, pode começar com um fluxo de trabalho em branco ou selecionar um dos modelos de padrões de orquestração pré-definidos:

Padrão Description Caso de utilização típica
Humano no Circuito Faz uma pergunta ao utilizador e aguarda a entrada do utilizador para avançar Criar pedidos de aprovação durante a execução do fluxo de trabalho e esperar pela aprovação humana, ou obter informação do utilizador
Sequencial Passa o resultado de um agente para o seguinte numa ordem definida Fluxos de trabalho passo a passo, linhas de processamento ou processamento em múltiplas etapas
Chat em grupo Passa dinamicamente o controlo entre agentes com base no contexto ou nas regras Fluxos de trabalho dinâmicos, escalonamento, recuo ou cenários de transferência de especialistas

Para mais informações, consulte as orquestrações de workflow do Microsoft Agent Framework.

Criar um fluxo de trabalho

Os passos seguintes mostram-lhe como criar um tipo sequencial de fluxo de trabalho, por exemplo:

  1. Inicie sessão no Microsoft Foundry. Certifica-te de que a opção New Foundry está ativada. Estes passos referem-se ao Foundry (novo).

  2. No menu superior direito, selecione Construir.

  3. Selecionar Criar novo fluxo de trabalho>Sequencial.

  4. Atribua um agente aos nós de agentes selecionando cada nó de agente no fluxo de trabalho e, em seguida, escolhendo o agente desejado ou criando um novo. Para mais informações, veja Adicionar agentes ao seu fluxo de trabalho mais adiante neste artigo.

  5. Selecione Guardar no visualizador para guardar as alterações.

    Importante

    Os fluxos de trabalho não são salvos automaticamente. Selecione Guardar sempre que pretender guardar alterações ao seu fluxo de trabalho.

  6. Selecione Executar Fluxo de Trabalho.

  7. Interaja com o fluxo de trabalho na janela de chat.

  8. Opcionalmente, adiciona novos nós ao teu fluxo de trabalho. A secção seguinte deste artigo fornece informações sobre nós.

Adicionar nós ao seu fluxo de trabalho

Os nós definem os blocos de construção do seu fluxo de trabalho. Os tipos de nós comuns incluem:

  • Agente: Invoque um agente.
  • Lógica: Use se/então, vá para, ou para cada um.
  • Transformação de dados: Defina uma variável ou analise um valor.
  • Chat básico: envie uma mensagem ou faça uma pergunta a um agente.

Quando selecionas um fluxo de trabalho pré-configurado, aparece um fluxo de trabalho de nós no editor. Cada nó corresponde a uma ação ou componente específico, e executa um passo em sequência. Pode modificar a ordem dos nós clicando nos três pontos de um nó e, em seguida, selecionando mover. Pode adicionar novos nós selecionando o ícone mais (+) no espaço de trabalho.

Adicionar agentes ao seu fluxo de trabalho

Você pode adicionar qualquer agente do Foundry do seu projeto ao fluxo de trabalho. Os nós de agente também permitem criar novos agentes e dar-lhes capacidades personalizadas ao configurar o seu modelo, prompt e ferramentas.

Para opções avançadas e informações completas sobre a criação de agentes, consulte o separador Agente da Fundição no portal da Fundição.

Adicione um agente existente

  1. No visualizador de workflow, selecione o sinal de mais.

  2. Na lista suspensa pop-up, selecione Invoke agent.

  3. Na janela Criar novo agente , selecione existente.

  4. Insira o nome do agente para procurar agentes existentes no seu projeto Foundry.

  5. Selecione o agente desejado para adicioná-lo ao seu fluxo de trabalho.

Criar um novo agente

  1. No visualizador de workflow, selecione o sinal de mais.

  2. Na lista suspensa pop-up, selecione Invoke agent.

  3. Insira um nome de agente e uma descrição do que o agente faz.

  4. Selecione Adicionar.

  5. Na janela Invocar um agente , configure o agente.

  6. Selecione Guardar.

Configure um formato de resposta de saída para invocar um agente

  1. Crie um nó agente Invoke .

  2. Na janela de configuração do agente Invocar , selecione Criar um novo agente.

  3. Configure o agente para enviar a saída como um esquema JSON:

    1. Selecione Detalhes.
    2. Selecione o ícone de parâmetro.
    3. Para formato de texto, selecione Esquema JSON.

    Captura de ecrã que mostra a janela para configurar um formato de esquema JSON para a saída.

  4. Copie o esquema JSON desejado e cole-o na janela Adicionar formato de resposta. A captura de ecrã seguinte mostra um exemplo matemático. Selecione Guardar.

    Captura de ecrã que mostra a adição de um formato de resposta em JSON.

    {
      "name": "math_response",
      "schema": {
        "type": "object",
        "properties": {
          "steps": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "explanation": {
                  "type": "string"
                },
                "output": {
                  "type": "string"
                }
              },
              "required": [
                "explanation",
                "output"
              ],
              "additionalProperties": false
            }
          },
          "final_answer": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "required": [
          "steps",
          "final_answer"
        ]
      },
      "strict": true
    }
    
  5. Selecionar definições de ação. Depois seleciona Guardar saída json_object/json_schema como.

  6. Selecione Criar nova variável. Escolhe o nome de uma variável e depois seleciona Feito.

    Captura de ecrã que mostra opções para criar uma nova variável num fluxo de trabalho do Microsoft Foundry.

Utilizar funcionalidades adicionais

  • Vista do Visualizador YAML: Quando defines a opção Vista do Visualizador YAML para Ativado, o fluxo de trabalho é armazenado num ficheiro YAML. Podes modificá-lo no visualizador e na vista YAML. Guardar cria uma nova versão, e tens acesso ao histórico de versões.

    O visualizador e o YAML são editáveis. Quaisquer alterações ao ficheiro YAML são refletidas no visualizador.

  • Controle de versão: cada vez que você salva seu fluxo de trabalho, uma nova versão imutável é criada. Para ver o histórico de versões ou eliminar versões antigas, abra a lista suspensa Versão à esquerda do botão Guardar.

  • Notas no visualizador do seu fluxo de trabalho: Pode adicionar notas no visualizador para adicionar mais contexto ou informação ao seu fluxo de trabalho. No canto superior esquerdo do visualizador de workflow, selecione Adicionar nota.

Criar expressões usando Power Fx

Power Fx é uma linguagem low-code que usa fórmulas semelhantes ao Excel. Use o Power Fx para criar uma lógica complexa que permite que seus agentes manipulem dados. Por exemplo, uma fórmula Power Fx pode definir o valor de uma variável, analisar uma cadeia de caracteres ou usar uma expressão em uma condição. Para obter mais informações, consulte a visão geral do Power Fx e a referência de fórmulas.

Usar variáveis em uma fórmula

Para usar uma variável em uma fórmula Power Fx, você deve adicionar um prefixo ao seu nome para indicar o escopo da variável:

  • Para variáveis do sistema, use System.
  • Para variáveis locais, use Local.

Aqui estão as variáveis do sistema:

Nome Description
Activity Informação sobre a atividade atual
Bot Informações sobre o agente
Conversation Informação sobre a conversa atual
Conversation.Id ID único da conversa atual
Conversation.LocalTimeZone Fuso horário do utilizador, no formato IANA Time Zone Database
Conversation.LocalTimeZoneOffset Deslocamento temporal em relação ao UTC para o fuso horário local atual
Conversation.InTestMode Indicador booleano que representa se a conversa está a acontecer num canvas de teste
ConversationId ID único da conversa atual
InternalId Identificador interno do sistema
LastMessage Informação sobre a mensagem anterior que o utilizador enviou
LastMessage.Id ID da mensagem anterior que o utilizador enviou
LastMessage.Text Mensagem anterior que o utilizador enviou
LastMessageId ID da mensagem anterior que o utilizador enviou
LastMessageText Mensagem anterior que o utilizador enviou
Recognizer Informação sobre reconhecimento de intenção e a mensagem de disparo
User Informação sobre o utilizador a falar atualmente com o agente
User.Language Localização da língua do utilizador por conversa
UserLanguage Localização da língua do utilizador por conversa

Usar valores literais em uma fórmula

Além de usar variáveis em uma fórmula Power Fx, você pode inserir valores literais. Para usar um valor literal em uma fórmula, você deve inseri-lo no formato que corresponde ao seu tipo.

A tabela seguinte lista os tipos de dados e o formato dos respetivos valores literais:

Tipo Exemplos de formatos
Cordão "hi", "hello world!", "copilot"
booleano Apenas true ou false
Número 1, 532, 5.258,-9201
Registo e tabela [1], [45, 8, 2], ["cats", "dogs"], { id: 1 }, { message: "hello" }, { name: "John", info: { age: 25, weight: 175 } }
Data e hora Time(5,0,23), Date(2022,5,24), DateTimeValue("May 10, 2022 5:00:00 PM")
Escolha Não suportado
Blank Apenas Blank()

Fórmulas comuns "Power Fx"

A tabela seguinte lista as fórmulas Power Fx que pode usar com cada tipo de dado.

Tipo Fórmulas do Power Fx
Cordão [Text function][1]
[Concat and Concatenate functions][2]
[Len function][3]
[Lower, Upper, and Proper functions][4]
[IsMatch, Match, and MatchAll functions][5]
[EndsWith and StartsWith functions][6]
[Find function][7]
[Replace and Substitute function][8]
booleano [Boolean function][9]
[And, Or, and Not functions][10]
[If and Switch functions][11]
Número [Decimal, Float, and Value functions][12]
[Int, Round, RoundDown, RoundUp, and Trunc functions][13]
Registo e tabela [Concat and Concatenate functions][14]
[Count, CountA, CountIf, and CountRows functions][15]
[ForAll function][16]
[First, FirstN, Index, Last, and LastN functions][17]
[Filter, Search, and LookUp functions][18]
[JSON function][19]
[ParseJSON function][20]
Data e hora [Date, DateTime, and Time functions][21]
[DateValue, TimeValue, and DateTimeValue functions][22]
[Day, Month, Year, Hour, Minute, Second, and Weekday functions][23]
[Now, Today, IsToday, UTCNow, UTCToday, IsUTCToday functions][24]
[DateAdd, DateDiff, and TimeZoneOffset functions][25]
[Text function][26]
Blank [Blank, Coalesce, IsBlank, and IsEmpty functions][27]
[Error, IfError, IsError, IsBlankOrError functions][28]

Usar Power Fx para definir uma variável

Neste exemplo, uma expressão Power Fx armazena e produz o nome do cliente em letras maiúsculas:

  1. Crie um fluxo de trabalho e adicione um nó Faça uma pergunta .

  2. No painel que aparece, na caixa Faça uma pergunta , introduza Qual é o seu nome? ou outra mensagem. Na caixa Guardar resposta do utilizador como, insira o nome de uma variável; por exemplo, Var01. Em seguida, selecione Concluir.

    Captura de ecrã que mostra a configuração de uma pergunta para enviar uma mensagem.

  3. Adicione uma ação Enviar mensagem . No painel que aparece, na área Mensagem para enviar , introduza {Upper(Local.Var01)}. Em seguida, selecione Concluir.

    Captura de ecrã que mostra a variável instanciação para a ação de enviar uma mensagem.

  4. Selecione Pré-visualizar.

  5. No painel de pré-visualização, envie uma mensagem ao agente para invocar o fluxo de trabalho.

    Captura de ecrã que mostra a pré-visualização de uma pergunta para a ação de enviar uma mensagem.

Use Power Fx para criar fluxos if/else

Neste exemplo, uma expressão Power Fx armazena e produz o nome do cliente em letras maiúsculas.

  1. Crie um fluxo de trabalho e adicione um nó Faça uma pergunta .

  2. Selecione o + ícone e adicione um fluxo if/else .

  3. Escreva System. na caixa de texto Condição para criar uma instrução de condição para cada combinação se/senão. Uma captura de ecrã a mostrar as variáveis do sistema na caixa de texto da condição if-else.

  4. Selecione uma Próxima Ação para o próximo passo desejado no fluxo de trabalho.

  5. Selecione Concluído. Selecione Guardar para guardar o seu fluxo de trabalho