Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
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
- Uma conta do Azure com uma assinatura ativa. Se você não tiver uma, crie uma conta gratuita do Azure, que inclui uma assinatura de avaliação gratuita.
- Um projeto no Microsoft Foundry.
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:
-
Inicie sessão no Microsoft Foundry. Certifica-te de que a opção New Foundry está ativada. Estes passos referem-se ao Foundry (novo).
No menu superior direito, selecione Construir.
Selecionar Criar novo fluxo de trabalho>Sequencial.
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.
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.
Selecione Executar Fluxo de Trabalho.
Interaja com o fluxo de trabalho na janela de chat.
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
No visualizador de workflow, selecione o sinal de mais.
Na lista suspensa pop-up, selecione Invoke agent.
Na janela Criar novo agente , selecione existente.
Insira o nome do agente para procurar agentes existentes no seu projeto Foundry.
Selecione o agente desejado para adicioná-lo ao seu fluxo de trabalho.
Criar um novo agente
No visualizador de workflow, selecione o sinal de mais.
Na lista suspensa pop-up, selecione Invoke agent.
Insira um nome de agente e uma descrição do que o agente faz.
Selecione Adicionar.
Na janela Invocar um agente , configure o agente.
Selecione Guardar.
Configure um formato de resposta de saída para invocar um agente
Crie um nó agente Invoke .
Na janela de configuração do agente Invocar , selecione Criar um novo agente.
Configure o agente para enviar a saída como um esquema JSON:
- Selecione Detalhes.
- Selecione o ícone de parâmetro.
- Para formato de texto, selecione Esquema JSON.
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.
{ "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 }Selecionar definições de ação. Depois seleciona Guardar saída json_object/json_schema como.
Selecione Criar nova variável. Escolhe o nome de uma variável e depois seleciona Feito.
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:
Crie um fluxo de trabalho e adicione um nó Faça uma pergunta .
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.Adicione uma ação Enviar mensagem . No painel que aparece, na área Mensagem para enviar , introduza
{Upper(Local.Var01)}. Em seguida, selecione Concluir.Selecione Pré-visualizar.
No painel de pré-visualização, envie uma mensagem ao agente para invocar o fluxo de trabalho.
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.
Crie um fluxo de trabalho e adicione um nó Faça uma pergunta .
Selecione o + ícone e adicione um fluxo if/else .
Escreva
System.na caixa de texto Condição para criar uma instrução de condição para cada combinação se/senão.
Selecione uma Próxima Ação para o próximo passo desejado no fluxo de trabalho.
Selecione Concluído. Selecione Guardar para guardar o seu fluxo de trabalho