La acción OpenAI: Ejecutar asistente desbloquea un nuevo nivel de capacidad para su asistente de OpenAI. Utiliza la API de asistentes de OpenAI, lo que permite activamente que los asistentes recurran a funcionalidades externas durante las conversaciones. Esta función actúa como un puente que conecta activamente a su asistente con una amplia caja de herramientas con poderes adicionales.

Antes de empezar

  • Debe tener el rol de Bot creator para usar la action Ejecutar asistente de OpenAI en una automatización.
  • Asegúrese de tener las credenciales necesarias para enviar una solicitud y haber incluido OpenAI: Acción Autenticar antes de llamar cualquier acción de OpenAI.
  • Debe tener OpenAI: action Ejecutar asistente antes de invocar la función Ejecutar asistente de OpenAI.

Este ejemplo profundiza en el uso de las funciones Ejecutar asistente de OpenAI que amplían las capacidades de su asistente. Explorará cómo llamar a un asistente existente dentro del entorno de Ejecutar, extraer información crucial (ID del hilo, ID de llamada e Ejecutar ID), y cómo aprovechar estos ID para definir una Respuesta de la función personalizada. Por ejemplo, aquí se carga un asistente de bolsa y los resultados de la función se definen utilizando la lista de resultados de herramientas (respuesta de la función).

Procedimiento

  1. En la Automation Anywhere Control Room, navegue hasta el panel Acciones, seleccione IA generativa > OpenAI, arrastre Autenticar acción y colóquelo en el lienzo. Para autenticar necesita una clave API. Para obtener más información sobre la generación de una clave API y la autenticación, consulte OpenAI: Acción Autenticar.OpenAI: Ejecutar asistente
  2. Coloque la acción Open AI: Ejecutar asistente debajo de la acción de Autenticar y use Asistentes de carga, para cargar un asistente (asistente de bolsa). Ingrese un Mensaje (obtener precio de acciones para AAINC). La respuesta se guarda en una variable de string str_Response. Para obtener más información sobre el uso de la acción Open AI: Ejecutar asistente, consulte OpenAI: action Ejecutar asistente.

    OpenAI: Acción Ejecutar asistente

    Nota: Solo con fines ilustrativos, en este ejemplo se utiliza el código ficticio de acciones AAINC. El precio de $3200 asignado a AAINC es un valor de muestra y no representa el precio de ninguna acción real.

    El asistente del mercado de valores cargado desde OpenAI contiene las siguientes instrucciones y funciones:

    You are a stock market assistant. When asked a question related to stocks use the function and get the stock price.
    {
       "name":"get_stock_price",
       "description":"Get the current stock price",
       "parameters":{
          "type":"object",
          "properties":{
             "symbol":{
                "type":"string",
                "description":"The stock symbol"
             }
          },
          "required":[
             "symbol"
          ]
       }
    }
  3. En el panel Acciones, arrastre la acción JSON > Iniciar sesión hacia el lienzo debajo de la acción Open AI: Ejecutar asistente .
    1. En el campo Origen de datos, seleccione Texto e introduzca $str_Response$.
    2. En el campo sesión del objeto JSON, haga clic en Sesión local e ingrese Predeterminada.
      Decodificación JSON
      Ya tiene el JSON completo. La siguiente tarea consiste en extraer los campos obligatorios del cuerpo. A continuación, se muestra un fragmento de ejemplo de JSON:
      {
         "data":{
            "thread_id":"thread_hiCr3najXMSxuuiIntJDXDXd",
            "tool_calls":[
               {
                  "id":"call_Beu0XFPGR91RZGoXBA8ODSke",
                  "type":"function",
                  "function":{
                     "name":"get_stock_price",
                     "arguments":"{\n\"symbol\": \"AAINC\"\n}"
                  }
               }
            ],
            "id":"run_LnR669bHLcMAaIGOcvIE0nVa"
         },
         "status":"requires_action"
      }
    Nota: Las tool_calls y tool_outputs dentro de un mensaje del Asistente de OpenAI pueden manejar escenarios en los que el usuario hace varias solicitudes en un solo mensaje. Por ejemplo, Obtener el precio de las acciones de AAINC y BBINC. Este único mensaje en realidad contiene dos solicitudes distintas: encontrar el precio de la acción de AAINC y encontrar el precio de la acción de BBINC.
  4. Extraiga los campos necesarios del JSON para ejecutar OpenAI: Función Ejecutar asistente.
    1. En el panel Acciones, arrastre la action Json > Obtener el valor del nodo y suéltela en el lienzo debajo de la acción Json > Obtener el valor del nodo. Para obtener más información sobre la acción JSON: Obtener el valor del nodo, consulte action Obtener el valor del nodo en JSON.
    2. Especifique qué nodos se extraerán. Por ejemplo, para extraer thread_id, puede usar data.thread_id
    3. Cree una variable thread_id y asigne la salida a esta variable.
    4. De manera similar, extraiga run_id y call_id(data.id y data.tool_calls[0].id) y guárdelo en una variable run_id y call_id.
  5. Vaya hasta el panel Acciones, seleccione IA generativa > de OpenAI, arrastre la acción OpenAI: Ejecutar asistente y colóquela debajo de la última acción Obtener el valor del nodo.
    1. Utilice el $thread_id$ extraído en el campo ID del hilo.
    2. Utilice el $run_id$ extraído en el campo Ejecutar ID.
    3. Defina una Respuesta de la función usando el siguiente esquema estándar. El esquema es un objeto JSON que contiene información sobre la salida de una herramienta (función) utilizada por el Asistente de OpenAI.
      {
         "tool_outputs":[
            {
               "tool_call_id":"Enter the call ID",
               "output":"{Enter your output}"
            }
         ]
      }

      Después de procesar su solicitud y ejecutar la función correspondiente, debe volver a comunicar los resultados a la API del Asistente de OpenAI. Para hacer esto, debe crear una lista especial, como se muestra arriba, llamada lista de salida de herramientas. Esta lista contiene las siguientes propiedades:

      • tool_call_id (string): Esta propiedad contiene un identificador único para la llamada específica de la herramienta (función) que generó la salida. Este ID ayuda a rastrear y mencionar la instancia específica de ejecución de la herramienta.
      • salida (cualquiera): Esta propiedad contiene los datos de salida reales generados por la herramienta. El tipo de dato de la salida puede variar dependiendo de la herramienta específica y su propósito. Podría ser:
        • Una string (como un texto generado por una función de escritura creativa).
        • Un número (como el resultado de un cálculo).
        • Una lista (como una colección de puntos de datos recuperados).
        • Un diccionario (como una estructura de datos compleja con múltiples valores).
        • Cualquier otro tipo de datos JSON válido.

      Por ejemplo, en este ejemplo ingrese el siguiente JSON:

      {
         "tool_outputs":[
            {
               "tool_call_id":"$call_id
      quot;, "output":"{3200}" } ] }
    4. Introduzca Predeterminado como nombre de la sesión para limitarla a la sesión actual.
    5. Guardar la respuesta en una variable. En este ejemplo, la respuesta se guarda en una variable de string str_FunctionResponse. El resultado es un JSON que muestra el valor que solicitó generar y, a continuación, se presenta una salida de muestra de la ejecución anterior:
      :
      {
         "data":[
            {
               "metadata":{
                  
               },
               "role":"assistant",
               "content":[
                  {
                     "type":"text",
                     "text":{
                        "value":"The current stock price for AAINC is $3200.",
                        "annotations":[
                           
                        ]
                     }
                  }
               ]
            }
         ],
         "status":"completed"
      }}
    La acción OpenAI: Ejecutar asistente revoluciona la manera en que los asistentes de OpenAI operan, y los transforma de simples proveedores de información a poderosas herramientas que pueden realizar acciones y cumplir solicitudes. Al aprovechar funcionalidades externas, los asistentes ahora pueden abordar tareas complejas, ofrecer recomendaciones personalizadas como se muestra en el ejemplo anterior y, en última instancia, proporcionar una experiencia de usuario más completa y útil.