studio-web
latest
false
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.
UiPath logo, featuring letters U and I in white

Guía del usuario de Studio Web

Última actualización 18 de dic. de 2025

Integrar la API de Databricks Genie con los flujos de trabajo de la API

Databricks Genie permite la interacción del lenguaje natural con los datos de tu empresa, lo que te permite consultar, analizar y actuar sobre conjuntos de datos sin necesidad de escribir código.

Esta guía proporciona un recorrido práctico sobre cómo interactuar con una API de Databricks Genie para obtener información basada en una entrada de pregunta. Realiza las siguientes acciones principales:

  • Inicializa variables:configura los parámetros necesarios como tokens, URL e ID.
  • Obtiene un token : realiza una solicitud HTTP POST para obtener un token de acceso para la autenticación.
  • Inicia una conversación : envía la pregunta del usuario a la API de Genie para iniciar una conversación.
  • Sondeos para la finalización del mensaje : introduce un bucle Hacer mientras para comprobar repetidamente el estado del mensaje de Genie hasta que se COMPLETE.
  • Recupera los resultados de la consulta : una vez que el mensaje está completo, obtiene los resultados finales de la consulta de la API de Genie y proporciona los datos recuperados como salida del flujo de trabajo.

docs image

Requisitos previos

En primer lugar, debes tener un espacio de Genie llamado "Restricciones de elementos" en tu espacio de trabajo de Databricks.

Su propósito es hacer referencia a las restricciones de envío para diferentes productos y proporcionar respuestas sobre los detalles de envío.

  1. Crea un flujo de trabajo de API.
  2. Define las entradas del flujo de trabajo. Abre Data Manager y añade un nuevo parámetro de Entradas con la siguiente configuración:
    • Nombre : pregunta
    • Tipo:cadena
    • Márcalo como obligatorio.
  3. Defina variables de flujo de trabajo. Abre Gestor de datos > Variables y añade lo siguiente:
    • token (String): almacena el token de autenticación necesario para acceder a la API de Databricks Genie.
    • conversation_id (String): realiza un seguimiento de una sesión de conversación específica con la API de Databricks Genie. Cuando inicias una conversación, la API proporciona este ID, y lo utilizas para referirte a esa conversación en curso en solicitudes posteriores.
    • message_id (String): se refiere a un mensaje específico dentro de una conversación. Este ID se utiliza para recuperar el estado y, finalmente, los resultados del procesamiento de ese mensaje en particular.
    • attachment_id (String): apunta a un archivo adjunto específico (que en este caso contiene el resultado de la consulta) asociado a un mensaje en la API de Genie.
    • url (String): almacena la URL base para el punto final de la API de Databricks Genie.
    • space_id (String): apunta a un espacio específico dentro de Databricks Genie.
  4. Añade una actividad HTTP para recuperar el token de acceso y configúrala de la siguiente manera:
    • Nombre para mostrar : "Obtener solicitud HTTP de token"
    • Método : POST
    • URL de solicitud : https://accounts.cloud.databricks.com/oidc/accounts/{account_id}/v1/token
    • Encabezados :
      {
      "Authorization": "Basic <your_basic_token>",
      "Content-Type": "application/x-www-form-urlencoded"
      }{
      "Authorization": "Basic <your_basic_token>",
      "Content-Type": "application/x-www-form-urlencoded"
      }
    • Cuerpo de la solicitud :
      "grant_type=client_credentials&scope=all-apis""grant_type=client_credentials&scope=all-apis"
    El nombre de salida de contexto para esta actividad es HTTP_Request_1.
  5. Asigna el token recuperado de la actividad anterior a tu variable token . Añade una actividad Asignar y configúrala de la siguiente manera:
    • A variable : token
    • Establecer valor : $context.outputs.HTTP_Request_1.content.access_token
    El nombre de salida de contexto HTTP_Request_1 puede diferir del utilizado en tu flujo de trabajo.
  6. Añade una actividad HTTP para iniciar la conversación y configúrala de la siguiente manera:
    • Nombre para mostrar : "Solicitud HTTP de inicio de conversación"
    • Método : POST
    • Solicitar URL : https://{your-databricks-instance}/api/2.0/genie/spaces/{space_id}/start-conversation o crearla con el editor de expresiones 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"
    • Encabezados :
      {"Authorization": "Bearer " + $context.variables.token}{"Authorization": "Bearer " + $context.variables.token}
    • Cuerpo de la solicitud :
      {"content": $workflow.input.question}{"content": $workflow.input.question}
    Asegúrese de que la salida se guarde. Puedes recuperar conversation_id y message_id de la salida de esta actividad.
    El nombre de salida de contexto para esta actividad es HTTP_Request_2.
  7. Introduce un bucle para comprobar el estado del mensaje de Genie hasta que TERMINE. Añade una actividad Hacer mientras y establece la Condición en $context.outputs.HTTP_Request_3?.content?.status !== "COMPLETED", donde HTTP_Request_3 se refiere a la actividad Obtener mensaje Solicitud HTTP. Esto significa que el bucle continúa mientras el estado del mensaje no sea COMPLETADO.
  8. Dentro del bucle Do while :
    1. Añade una actividad HTTP para obtener el último mensaje y configúrala de la siguiente manera:
      • Nombre para mostrar : "Obtener solicitud HTTP de mensaje"
      • Método—GET
      • Solicitar URL : https://{your-databricks-instance}/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id} o crearla con el editor de expresiones 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('')
        Donde HTTP_Request_2 se refiere a la actividad Iniciar conversación Solicitud HTTP.
      • Encabezados :
        {"Authorization": "Bearer " + $context.variables.token}{"Authorization": "Bearer " + $context.variables.token}
      • Cuerpo de la solicitud :
        {"content": $workflow.input.question}{"content": $workflow.input.question}
      El nombre de salida de contexto para esta actividad es HTTP_Request_3.
    2. Añade una actividad Si inmediatamente después de la actividad Obtener mensaje Solicitud HTTP, y establece la Condición en $context.outputs.HTTP_Request_3?.content?.status === "COMPLETED", donde HTTP_Request_3 se refiere a la actividad Obtener mensaje Solicitud HTTP.
    3. En la rama Entonces (verdadero), añade una actividad Asignar y configúrala de la siguiente manera:
      • A variable : conversation_id
      • Establecer valor : $context.outputs.HTTP_Request_3.content.conversation_id, donde HTTP_Request_3 se refiere a la actividad Obtener mensaje Solicitud HTTP.
    4. Añade otra actividad Asignar :
      • A variable : message_id
      • Establecer valor : $context.outputs.HTTP_Request_3.content.message_id, donde HTTP_Request_3 se refiere a la actividad Obtener mensaje Solicitud HTTP.
    5. Añade otra actividad Asignar :
      • A variable : attachment_id
      • Establecer valor : $context.outputs.HTTP_Request_3.content.attachments[0].attachment_id, donde HTTP_Request_3 se refiere a la actividad Obtener mensaje Solicitud HTTP.
    6. En la rama Else , añade una actividad Esperar y establece la duración en un segundo. Esto indica al flujo de trabajo que espere un breve período antes de volver a intentarlo.
  9. Sal del bucle y añade una actividad HTTP para ejecutar la consulta SQL y configúrala de la siguiente manera:
    • Nombre para mostrar : "Ejecutar solicitud HTTP de SQL"
    • Método—GET
    • Solicitar URL : https://{your-databricks-instance}/api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/attachments/{attachment_id}/query-result o crearla con el editor de expresiones 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"
    • Encabezados :
      {"Authorization": "Bearer " + $context.variables.token}{"Authorization": "Bearer " + $context.variables.token}
    El nombre de salida de contexto para esta actividad es HTTP_Request_3.
  10. Defina salidas de flujo de trabajo. Abre Data Manager y añade los siguientes parámetros de Entradas :
    • Nombre—row_count
    • Tipo : número
    • Márcalo como obligatorio.
    y
    • Nombre—data_array
    • Tipo:matriz
    • Márcalo como obligatorio.
  11. Añade una actividad de Respuesta y configúrala de la siguiente manera:
    • Respuesta
      {
        "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"
          ]
        ]
      }
  12. Ejecuta la integración. Una vez implementado, el flujo de trabajo puede invocarse con cualquier consulta de lenguaje natural. Un ejemplo de pregunta podría ser: "¿Existe alguna restricción para enviar SKU ENB-SP-200 a Cuba?"

Conclusiones clave:

  1. Configuración sencilla : el flujo de trabajo de la API proporciona una forma rápida de conectar Genie sin código personalizado.
  2. Esquema coherente : las respuestas de Genie están basadas en JSON y son fáciles de analizar en UiPath.
  3. Integración escalable : las respuestas se pueden utilizar en aplicaciones, flujos de trabajo de larga duración u orquestaciones.
  4. Creación rápida de prototipos : la configuración para la automatización de trabajo tarda unos minutos, lo que permite una validación rápida de los casos de uso.
  • Requisitos previos

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo
Confianza y seguridad
© 2005-2025 UiPath. Todos los derechos reservados.