- Introdução
- Para administradores
- Projetos de fluxo de trabalho de RPA
- Como criar um fluxo de trabalho de RPA a partir de uma ideia
- Criação de um projeto
- Como iniciar um fluxo de trabalho de RPA
- Gerenciamento de arquivos e pastas do projeto
- Conectar fluxos de trabalho de RPA às suas contas
- Configuração de atividades
- Gerenciamento de atividades em um projeto
- Como transmitir valores entre atividades
- Como iterar por itens
- Como gerenciar os dados em um projeto
- Configuração de um projeto para usar seus dados
- Como usar recursos de arquivos e pastas
- Projeto do aplicativo
- Apps no Studio Web
- Definir um contexto externo usando parâmetros de consulta
- Definir um contexto externo usando eventos externos
- Use matrizes para preencher os controles Lista suspensa, Lista suspensa multiseleção e Botão de rádio
- Usar controles tabulares com entidades do Data Service em projetos de aplicativos
- Incorporar agentes de conversa
- Atividades do aplicativo
- Processos com agentes
- Agents
- Soluções
- Fluxos de trabalho da API
- Interface do usuário
- Gerenciamento de fluxos de trabalho da API
- Consumo de fluxos de trabalho da API
- Criando seu primeiro fluxo de trabalho da API
- Paginação em chamadas HTTP
- Extração da hierarquia de trabalho do Workday
- Recuperação de detalhes do tíquete
- Integração da API Genie do Databricks com fluxos de trabalho de API
- Integração da API do Snowflake Cortex com fluxos de trabalho de API
- Testes

Guia do usuário do Studio Web
Integração da API Genie do Databricks com fluxos de trabalho de API
O Databricks Genie permite a interação de linguagem natural com seus dados corporativos, permitindo que você consulte, analise e aja em conjuntos de dados sem precisar escrever código.
Este guia fornece uma explicação prática de como interagir com uma API do Databricks Genie para obter informações com base em uma entrada de pergunta. Ele executa as seguintes ações principais:
-
Inicializa variáveis— Configura parâmetros necessários, como tokens, URLs e IDs.
-
Gets a token— Faz uma solicitação HTTP POST para obter um token de acesso para a autenticação.
-
Inicia uma conversa— Envia a pergunta do usuário para a API Genie para iniciar uma conversa.
-
Pesquisas de conclusão de mensagem— entra em um loop Do While para verificar repetidamente o status da mensagem Genie até que seja CONCLUÍDA.
-
Recupera resultados de consultas—Depois que a mensagem é concluída, ela busca os resultados finais da consulta da API Genie e fornece os dados recuperados como a saída do fluxo de trabalho.

Pré-requisitos
Primeiro, você precisa ter um espaço Genie chamado "Restrições de itens" em seu espaço de trabalho do Databricks.
Seu objetivo é fazer referência a restrições de envio para diferentes produtos e fornecer respostas sobre detalhes de envio.
-
Defina entradas de fluxo de trabalho. Abra o Data Manager e adicione um novo parâmetro Entradas com a seguinte configuração:
- Nome— Pergunta
- Tipo— String
- Marque-a como Obrigatório.
-
Defina as variáveis do fluxo de trabalho. Abra Data Manager > Variáveis e adicione o seguinte:
token(String)— Armazena o token de autenticação necessário para acessar a API Databricks Genie.conversation_id(String)—Rastreia uma sessão de conversa específica com a API Databricks Genie. Quando você inicia uma conversa, a API fornece esse ID, e você o usa para se referir a essa conversa em andamento em solicitações subsequentes.message_id(String)—Refere-se a uma mensagem específica em uma conversa. Esse ID é então usado para recuperar o status e, eventualmente, os resultados desse processamento de mensagem específico.attachment_id(String)—Aponta para um anexo específico (que, neste caso, tem o resultado da consulta) associado a uma mensagem na API Genie.url(String)—Armazena o URL base para o endpoint da API do Databricks Genie.space_id(String)—Aponta para um espaço específico dentro do Databricks Genie.
-
Adicione uma atividade HTTP para recuperar o token de acesso e configure-a da seguinte forma:
- Nome de exibição—"Get token HTTP Request"
- Método— POST
- URL da solicitação—
https://accounts.cloud.databricks.com/oidc/accounts/{account_id}/v1/token - Cabeçalhos—
{ "Authorization": "Basic <your_basic_token>", "Content-Type": "application/x-www-form-urlencoded" }{ "Authorization": "Basic <your_basic_token>", "Content-Type": "application/x-www-form-urlencoded" } - Corpo da solicitação—
"grant_type=client_credentials&scope=all-apis" ```The context output name for this activity is `HTTP_Request_1`."grant_type=client_credentials&scope=all-apis" ```The context output name for this activity is `HTTP_Request_1`.
-
Atribua o token recuperado da atividade anterior à sua variável
token. Adicione uma atividade Assign e configure-a da seguinte forma:- Para a variável—
token - Definir valor—
$context.outputs.HTTP_Request_1.content.access_tokenO nome da saída de contextoHTTP_Request_1pode ser diferente daquele usado em seu fluxo de trabalho.
- Para a variável—
-
Adicione uma atividade HTTP para iniciar a conversa e configure-a da seguinte forma:
- Nome de exibição—"Iniciar solicitação HTTP de conversa"
- Método— POST
- URL da solicitação—
https://{your-databricks-instance}/api/2.0/genie/spaces/{space_id}/start-conversation, ou crie-a com o Editor de expressão como$context.variables.url + "/api/2.0/genie/spaces/"+ $context.variables.space_id +"/start-conversation"$context.variables.url + "/api/2.0/genie/spaces/"+ $context.variables.space_id +"/start-conversation" - Cabeçalhos—
{"Authorization": "Bearer " + $context.variables.token}{"Authorization": "Bearer " + $context.variables.token} - Corpo da solicitação—
{"content": $workflow.input.question}{"content": $workflow.input.question}
Certifique-se de que a saída seja salva. Você pode recuperar
conversation_idemessage_idda saída desta atividade. O nome da saída de contexto para essa atividade éHTTP_Request_2. -
Insira um loop para verificar o status da mensagem Genie até CONCLUÍDO. Adicione uma atividade Do While e defina a Condição como
$context.outputs.HTTP_Request_3?.content?.status !== "COMPLETED", ondeHTTP_Request_3se refere à atividade Obter mensagem HTTP Request. Isso significa que o loop continuará enquanto o status da mensagem não for CONCLUÍDO. -
Dentro do loop Do While :
- Adicione uma atividade HTTP para receber a última mensagem e configure-a da seguinte forma:
- Nome de exibição—"Get message HTTP Request"
- Método—GET
- URL da solicitação—
https://{your-databricks-instance}/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}, ou crie-a com o Editor de expressão como[ $context.variables.url+"/api/2.0/genie/spaces/"+$context.variables.space_id+"/conversations/", $context.outputs.HTTP_Request_2.content.conversation_id, "/messages/", $context.outputs.HTTP_Request_2.content.message_id ].join('')[ $context.variables.url+"/api/2.0/genie/spaces/"+$context.variables.space_id+"/conversations/", $context.outputs.HTTP_Request_2.content.conversation_id, "/messages/", $context.outputs.HTTP_Request_2.content.message_id ].join('')
Onde
HTTP_Request_2se refere à atividade Conversa HTTP Request.- Cabeçalhos—
{"Authorization": "Bearer " + $context.variables.token}{"Authorization": "Bearer " + $context.variables.token} - Corpo da solicitação—
{"content": $workflow.input.question} ```The context output name for this activity is `HTTP_Request_3`.{"content": $workflow.input.question} ```The context output name for this activity is `HTTP_Request_3`.
- Adicione uma atividade If imediatamente após a atividade Get message HTTP Request e defina a Condição como
$context.outputs.HTTP_Request_3?.content?.status === "COMPLETED", ondeHTTP_Request_3se refere à atividade Get message HTTP Request. - Na ramificação Then (true), adicione uma atividade Assign e configure-a da seguinte forma:
- Para a variável—
conversation_id - Defina o valor—
$context.outputs.HTTP_Request_3.content.conversation_id, ondeHTTP_Request_3se refere à atividade Get message HTTP Request.
- Para a variável—
- Adicione outra atividade Assign :
- Para a variável—
message_id - Defina o valor—
$context.outputs.HTTP_Request_3.content.message_id, ondeHTTP_Request_3se refere à atividade Get message HTTP Request.
- Para a variável—
- Adicione outra atividade Assign :
- Para a variável—
attachment_id - Defina o valor—
$context.outputs.HTTP_Request_3.content.attachments[0].attachment_id, ondeHTTP_Request_3se refere à atividade Get message HTTP Request.
- Para a variável—
- Na ramificação Else , adicione uma atividade Wait e defina a duração como um segundo. Isso instrui o fluxo de trabalho a aguardar um curto período antes de tentar novamente.
- Adicione uma atividade HTTP para receber a última mensagem e configure-a da seguinte forma:
-
Saia do loop e adicione uma atividade HTTP para executar a consulta SQL e configure-a da seguinte maneira:
- Nome de exibição—"Executar solicitação HTTP do SQL"
- Método—GET
- URL da solicitação—
https://{your-databricks-instance}/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}/query-result, ou crie-a com o Editor de expressão como$context.variables.url+"/api/2.0/genie/spaces/"+$context.variables.space_id+"/conversations/" + $context.variables.conversation_id + "/messages/" + $context.variables.message_id + "/attachments/" + $context.variables.attachment_id + "/query-result"$context.variables.url+"/api/2.0/genie/spaces/"+$context.variables.space_id+"/conversations/" + $context.variables.conversation_id + "/messages/" + $context.variables.message_id + "/attachments/" + $context.variables.attachment_id + "/query-result" - Cabeçalhos—
{"Authorization": "Bearer " + $context.variables.token} ```The context output name for this activity is `HTTP_Request_3`.{"Authorization": "Bearer " + $context.variables.token} ```The context output name for this activity is `HTTP_Request_3`.
-
Defina saídas de fluxo de trabalho. Abra o Data Manager e adicione os seguintes parâmetros de Entrada :
- Nome— Row_count
- Tipo—Número
- Marque-a como Obrigatório.e
- Nome—data_array
- Tipo— Array
- Marque-a como Obrigatório.
-
Adicione uma atividade Response e configure-a da seguinte maneira:
- Resposta—
{ "row_count": -75647404.57028332, "data_array": [ [], [], [ "ut et aute officia", "ex ut", "nisi non ut Lorem velit", "aliquip Duis consectetur irure id" ] ] }{ "row_count": -75647404.57028332, "data_array": [ [], [], [ "ut et aute officia", "ex ut", "nisi non ut Lorem velit", "aliquip Duis consectetur irure id" ] ] }
- Resposta—
-
Execute a integração. Depois de implantado, o fluxo de trabalho pode ser invocado com qualquer consulta de linguagem natural. Um exemplo de pergunta poderia ser: "Existe alguma restrição para enviar SKU ENF-SP-200 para Cuba?"
Principais pontos:
- Configuração simples - O fluxo de trabalho da API fornece uma maneira rápida de conectar o Genie sem código personalizado.
- Esquema consistente – As respostas do Genie são baseadas em JSON, fáceis de analisar no UiPath.
- Integração escalável — as respostas podem ser usadas em apps, fluxos de trabalho de longa duração ou orquestrações.
- Prototipagem rápida — a configuração para automação de trabalho leva minutos, permitindo a validação rápida dos casos de uso.