Las guías pueden aceptar y emitir información de contexto con parámetros definidos de forma explícita. Los parámetros se usan para almacenar información sobre una conversación, como las selecciones del usuario, los resultados de las acciones, etcétera. Puedes pasar los valores de estos parámetros entre las secuencias de comandos y los flujos.
Declaración de parámetros
Puedes definir parámetros de entrada y parámetros de salida.
Cuando usas la consola de Agent Builder, puedes definir parámetros en la página del editor de agentes.
Cuando usas la consola de CX de Dialogflow, los parámetros se definen por guía con la pestaña Parameters una vez que creaste una guía.
Los parámetros tienen un nombre, una descripción y uno de los siguientes tipos:
- String
- Número
- Booleano
- Tipo de parámetro específico de la herramienta
También puedes especificar si un parámetro es una lista.
Parámetros de entrada
Los parámetros de entrada permiten que los libros de jugadas usen valores pasados desde flujos y otros libros de jugadas. Por ejemplo, un libro de jugadas puede recibir el nombre preferido de un usuario como parámetro y usarlo para agradecerle personalmente, o bien puede recibir un identificador de pedido como parámetro y usarlo para recuperar los detalles del pedido con una herramienta.
Los parámetros de entrada se definen por playbook, y estos no tienen visibilidad de otros tipos de parámetros de la consola de Dialogflow CX de forma predeterminada. Cuando un flujo realiza la transición a una guía de instrucciones, los parámetros de página y sesión se propagan a la guía de instrucciones si esta tiene un parámetro de entrada con el mismo nombre. Para comunicar información de un flujo a una guía de planificación durante una transición, define los parámetros de entrada de la guía de planificación con el mismo nombre que un parámetro de sesión o de página presente antes de la transición.
Crea ejemplos para controlar cómo el valor del parámetro de entrada debe afectar las acciones. Por ejemplo, si un parámetro de entrada debe afectar la forma en que el agente se refiere al usuario, crea ejemplos que definan un valor para el parámetro y, luego, usa el mismo valor en las acciones de enunciado dentro del ejemplo. Consulta cómo pasar parámetros para obtener más información.
Los parámetros de resultado
Los parámetros de salida permiten que las guías emitan información que otros flujos o guías puedan usar. Por ejemplo, una guía de instrucciones podría recopilar un número de pedido de un usuario y emitirlo a través de un parámetro de salida, o bien podría usar una herramienta para reservar un vuelo y emitir el número de confirmación a través de un parámetro de salida.
Crea ejemplos para controlar cómo la guía debe decidir el valor de cada parámetro de salida. Por ejemplo, si un parámetro de salida que representa un número de confirmación debe derivar su valor del resultado del uso de una herramienta, crea ejemplos en los que el resultado del uso de la herramienta coincida con el valor del parámetro de salida de la guía de planificación.
Cómo pasar parámetros
A diferencia de los flujos, las secuencias de comandos no admiten la inserción de valores de parámetros con una sintaxis en particular. En cambio, los libros de jugadas se basan en instrucciones y ejemplos de instrucciones breves para determinar cómo se deben usar los valores de los parámetros y cómo se deben decidir los valores cuando se especifican.
Considera un agente diseñado para la venta de entradas para eventos con los siguientes libros de jugadas:
- Un libro de jugadas llamado
Ticket ordering
que realiza pedidos con una herramienta llamadaTicket sales API
- Esta guía de planificación acepta un parámetro de entrada con el tipo
number
y el nombreevent_id
. - La herramienta
Ticket sales API
espera una solicitud que incluya unevent_id
.
- Esta guía de planificación acepta un parámetro de entrada con el tipo
- Una guía de implementación llamada
Event selection
que ayuda a los usuarios a seleccionar un evento y, luego, los dirige aTicket ordering
con el parámetroevent_id
para comprar boletos.
En este ejemplo, para garantizar que event_id
se pase de forma confiable de Event selection
a Ticket ordering
y de Ticket ordering
a Ticket sales API
, se necesitan varios ejemplos.
La guía de Ticket ordering
debe incluir varios ejemplos que cumplan con los siguientes requisitos:
- Se especifica el parámetro de entrada
event_id
con un valor realista, diferente en cada ejemplo. - Incluye una acción de uso de herramientas con un cuerpo de solicitud que incluya el mismo valor realista de
event_id
que se especifica en el parámetro de entrada.
La guía de Event selection
debe incluir varios ejemplos que cumplan con los siguientes requisitos:
- Incluye una enunciación del usuario en la que este seleccione un evento con algunos
event_id
realistas, diferentes en cada ejemplo. - Incluye una invocación de la guía de
Ticket ordering
que establezca el parámetroevent_id
en el mismoevent_id
realista que decida la selección del usuario.
Además de agregar ejemplos, intenta agregar instrucciones específicas a las instrucciones, el objetivo o los detalles de la herramienta que expliquen cómo se deben usar los parámetros. Por ejemplo, la guía de instrucciones Ticket ordering
incluye la siguiente instrucción:
- Use parameter event_id to send a buy_tickets request with ${TOOL: Ticket sales API}
Con los ejemplos y las instrucciones descritos, la guía de Event selection
decide correctamente un event_id
según la selección del usuario y
lo pasa como un parámetro de entrada llamado event_id
a la
Ticket ordering playbook
. Luego, Ticket ordering
pasa el mismo event_id
en el cuerpo de una solicitud a Ticket sales API
. Los libros de jugadas dependen de ejemplos con valores de parámetros distintos para ayudarlos a inferir cómo se deben usar los parámetros.