Graphlogic-latam
  • Getting Started
    • 🚀Guía de documentos
    • 📑Tutoriales de bots
      • 📋Creación de un robot de encuestas sencillo
      • ☔Creación de un bot con integración del servicio meteorológico
      • 🗣️Crear un bot con reconocimiento de voz
    • ❓PREGUNTAS FRECUENTES
    • 📔Qué preparar antes de crear tu Bot
      • 🔘Definir el objetivo y la funcionalidad necesaria
      • 💾Preparar los datos para el robot
      • 🧍Estilo de comunicación y humanización del bot
    • 📕Qué es Graphlogic.ai
    • 🗓️Historia de los comunicados
    • ▶️Cómo empezar a utilizar la Plataforma
      • 👨‍🦱Cuenta de usuario de la plataforma
        • 👨‍🦱Registro y autorización
        • 🏢Cuenta de usuario y empresa
        • 👨‍👨‍👦Funciones y gestión de usuarios en la empresa
        • 💵Suscripción y pago
  • 💻Vista general de las pestañas de la plataforma
    • 📁Pestaña Panel de control (Carpetas)
    • 📊Ficha Recursos
  • 🛠️Cómo crear tu Bot
    • 💡Proyecto: creación, edición, clonación y supresión
    • 🧾Agente y sus versiones
    • 🕵️‍♂️Agente: creación, edición y supresión
    • 📗Creación de un agente en Excel
    • 🔁Agente: exportación, importación, clonación y sustitución
    • 🗳️Visión general de BotBuilder y sus pestañas
      • 🗒️Pestaña Diseñador de agentes
      • 🎴Pestaña Intentos
      • 📖Pestaña Vocabularios
      • ↗️Ficha Solicitudes externas
      • ⬇️Fuentes de datos de preguntas y respuestas
    • 🚧Cómo construir el guión de un Agente
      • 🗃️Creación y tipos de ranuras y sub ranuras
      • 🎚️Desplazamiento y clonación de ranuras y ramas de script
      • 🧾Navegación por el árbol de guiones
      • 🖊️Cómo crear y configurar las franjas horarias
        • ▶️Inicio de un guión | Ranura de inicio
        • ⬇️Correos y notificaciones | Ranura para solicitudes entrantes
        • ⌚Activación del chatbot con un temporizador | Ranura del temporizador
        • 🛎️Correos en WhatsApp | Ranura de notificación
        • 📎Envío de archivos a usuarios bot | Ranura para archivos adjuntos
        • 📃Respuestas de texto | Ranura de texto
        • ⬆️External Request slot (Sending Requests to APIs from script)
        • 🗣️Transferencia del diálogo al operador | Cambiar ranura de modo de chat
        • 🧎Esperar el mensaje del usuario Bot | Esperar el espacio de reacción
        • 📚Bifurcación del script en función de las condiciones| Ranura de regla de transición y subranura de c
        • 7️⃣Botones en los mensajes del bot | Ranura de menú de botones +Subranuras de botones y Fallback
        • 🧏‍♂️Comprobación del formato de los datos introducidos por el usuario del bot| Ranura Expresión regular
        • 💡Reconocimiento de intenciones | ranura NLU + subranuras Intent y Fallback
        • 🤸‍♂️Transiciones a partes aleatorias del guión | Ranura de salto
        • 📑Recogida de datos del usuario Bot | Slot Llenado de slot
        • 💾Crear y guardar variables de contexto | Ranura de memoria
        • 📘Reconocimiento de entidades | Ranura para sinónimos
        • 🔄Implementación de bucles en un script | Repetición de slotGraphlogic.ai documentación
        • 🪩Reconocimiento de idiomas
        • 👩‍💻Generar una respuesta basada en una fuente de datos |Q&A
    • 🗨️Reconocimiento del lenguaje natural en los agentes
      • 🗣️Reconocimiento del lenguaje natural
      • 📈Las 5 intenciones principales
      • 🔒Reconocer entidades | Vocabularios
    • ✒️Sintaxis
    • ↕️Orquestación de agentes
    • ☎️Transferencia a un operador
    • 📌Opción de punto de guardado
    • ↘️Estado de la comunicación. Opción Continuar conversación
  • 🔀Cómo utilizar el contexto del chat en su agente
    • 🔡Variables de contexto
    • ✅Variables de contexto del sistema
    • 🖥️Variables de contexto del canal
    • 🚹Variables de contexto del usuario
  • ✅Cómo formar con éxito a su agente
    • ✅Requisitos para el éxito de la formación de agentes
    • 📋Probar el script del Agente
    • 👨‍💻Comprobación y mejora del reconocimiento de agentes: selección del umbral de confianza
    • ⚙️Formación adicional del Agente desde la pestaña Análisis
  • ⚛️Cómo desplegar su Agente en los canales
    • 🤖Publicar un proyecto
    • 🖥️Despliegue del proyecto en los canales
    • 🗨️Mensajeros
      • Telegram
      • 360Dialog (WhatsApp)
      • 360Dialog (nube)
      • Viber
      • Line messenger
      • VK Teams
      • 📇Widget
      • Facebook Messenger
    • 👨‍💻Plataformas omnicanal
      • Jivo
      • Chat2Desk
      • Bitrix24
      • Livetex
      • Edna Chat Center
      • Edna Pulse
      • Webim (External Bot API 1.0)
      • Webim (API de bots externos 2.0)
      • Omnidesk
    • Mensajeros de empresa
      • Microsoft Teams
    • API de mensajería
      • Chat API
      • 🗣️API del buzón de voz
        • API de voz
    • Compatibilidad con Markdown en los canales de fin de agente
  • Uso de agentes
    • Límites
  • 📈Cómo comprobar Analytics para sus Agentes
    • Ficha Análisis y filtros
    • Historial del chat
    • Informe del contexto del chat
    • Informe de estadísticas de slot
    • Informe Stop Slots
    • Informe de uso del proyecto
  • 🧷Información complementaria
    • 🖥️Capacidades funcionales y no funcionales de la Plataforma
    • Otros
      • 🏅Buenas prácticas en el diseño de diálogos
      • 💻Requisitos del sistema para trabajar con la consola de usuario
      • 📚Recursos
    • Solicitud de agrupación de diálogos
  • Integración de canales
  • 🔑Copia de los recursos e infraestructuras necesarios
  • 📝Tarea de incorporación
Powered by GitBook
On this page
  • Objeto e información general
  • Creación y configuración de slot
  • Atributos de los slot
  • Repetir siguiente, Repetir final, Repetir error, Repetir ranuras límite
  • Atributos de los slot
  • Repetir Siguiente
  • Repetir Fin
  • Error de repetición
  • Límite de repetición
  • Uso de la sintaxis en Slot
  • Funcionamiento de las ranuras
  • Iniciar un ciclo
  • Continuación del ciclo
  • Interrupción y finalización de un bucle
  • Restablecer el estado del ciclo
  • Casos especiales de ejecución de Script Branch Repeat Next
  1. Cómo crear tu Bot
  2. Cómo construir el guión de un Agente
  3. Cómo crear y configurar las franjas horarias

Implementación de bucles en un script | Repetición de slotGraphlogic.ai documentación

PreviousReconocimiento de entidades | Ranura para sinónimosNextReconocimiento de idiomas

Last updated 3 months ago

Objeto e información general

La Ranura de Repetición y sus Ranuras Hijo (Repetir Siguiente, Repetir Fin, Repetir Error, Repetir Límite) están diseñadas para ejecutar un bucle de un número especificado de iteraciones en el Script. La Ranura de Repetición es una Ranura Compleja y no puede existir sin cuatro Ranuras Hijo: Repeat Next, Repeat End, Repeat Error, Repeat Limit, que inician sus propias Ramas de Script.

Límite del número de iteraciones del ciclo de una ranura de repetición: 500 iteraciones.

Se permiten varias construcciones Repeat en un Script.

La sub-rama Repetir siguiente y la siguiente rama de script son una rama de bucle. El script sigue esta Rama de Script hasta que se cumple una de las siguientes condiciones:

  • se ha alcanzado el número de iteraciones de bucle establecido en la Ranura;

  • se recibe un mensaje del Usuario Bot, si no hay ninguna Ranura en el ciclo que pueda procesarlo;

  • Se ha alcanzado el límite del número de iteraciones del ciclo de una ranura de repetición (500 iteraciones) o el límite del número de iteraciones del ciclo por minuto por empresa (200 iteraciones).

La sub-ranura Repetir Fin está pensada para continuar el Script cuando el ciclo ha terminado, es decir, se ha completado el número de iteraciones del bucle establecido en la Ranura, así como para salir del bucle si, durante su ejecución, se ha recibido un mensaje del Usuario Bot, y no hay ninguna Ranura en el bucle que pueda procesarlo.La Subslot Repeat Error está diseñada para continuar el Script si se ha producido un error en la ejecución del bucle al establecer un número no válido de iteraciones.La Subslot Repeat Limit está diseñada para salir del bucle cuando se alcanza el Límite del número de iteraciones del ciclo de una Slot Repeat (500 iteraciones) o el Límite del número de iteraciones del ciclo por minuto por Compañía(200 iteraciones).

Creación y configuración de slot

Atributos de los slot

  1. Nombre de la Ranura ー el nombre de la Ranura, que se mostrará en el Árbol de Script. La longitud máxima de un valor de campo es de 40 caracteres.

  2. Número de iteraciones ー Número de iteraciones del bucle.

    1. Valores válidos

      1. valor exacto - entero positivo o 0;

      2. La Expresión que da el resultado que es un entero positivo o 0;

      3. Variable de contexto.

    2. Recorte de espacios: al pulsar el botón CREAR (al crear una Ranura) o GUARDAR (al editar una Ranura), se recortan los espacios y saltos de línea al principio y al final del campo Número de iteraciones.

    3. Al importar un archivo de configuración de Agente con un valor no válido en el campo Número de iteraciones (ver apartado 2a), se mostrarán mensajes de error y el Agente no se importará a la Plataforma.

Repetir siguiente, Repetir final, Repetir error, Repetir ranuras límite

  1. Al crear una ranura, se generan automáticamente cuatro subranuras: Repetir siguiente, Repetir final, Repetir error, Repetir límite.

  2. Estas ranuras secundarias no se pueden modificar y sólo se pueden eliminar de la ranura principal.

  3. La ubicación de las subslots se determina automáticamente; no puede mover las subslots

    1. La subranura de repetición siguiente es siempre la subranura superior de una ranura compleja determinada;

    2. La ranura de repetición final es siempre la segunda en orden en una ranura compleja dada;

    3. La subranura de error de repetición es siempre la tercera en orden en una determinada ranura compleja;

    4. La subslot de límite de repetición es siempre la subslot más baja de una determinada ranura compleja.

  4. No se pueden añadir nuevas subranuras a la repetición de ranura padre.

Atributos de los slot

Repetir Siguiente

  1. Nombre de la Ranuraー el nombre de la Ranura, que se mostrará en el Árbol de Script. La longitud máxima de un valor de campo es de 40 caracteres. Por defecto, el campo está establecido en Repetir Siguiente.

Repetir Fin

  1. Nombre de la Ranuraー el nombre de la Ranura, que se mostrará en el Árbol de Script. La longitud máxima de un valor de campo es de 40 caracteres. Por defecto, el campo se establece en Repetir Fin.

Error de repetición

  1. Nombre de la Ranuraー el nombre de la Ranura, que se mostrará en el Árbol de Script. La longitud máxima de un valor de campo es de 40 caracteres. Por defecto, el campo está configurado para Repetir Error.

Límite de repetición

  1. Nombre de la Ranuraー el nombre de la Ranura, que se mostrará en el Árbol de Script. La longitud máxima de un valor de campo es de 40 caracteres. Por defecto, el campo está configurado como Límite de Repetición.

Uso de la sintaxis en Slot

En la Ranura de Repetición, se permite utilizar Expresión en el campo Número de iteraciones. Más detalles: Sintaxis

Funcionamiento de las ranuras

Para reflejar el número de la iteración actual del bucle, se utilizan las variables de contexto del sistema repeat_index. La numeración de las iteraciones comienza en 0.

Iniciar un ciclo

  1. Al entrar en la ranura de repetición, el valor de repeat_index se establece en -1, y el valor del Número de iteraciones de bucle se calcula en el campo Número de iteraciones:

    1. Si el resultado del cálculo no es un entero o un número menor que 0, se produce una transición a Error de repetición, y:

      1. el valor de repeat_index no cambia y permanece igual a -1 (hubo un intento de iniciar el ciclo, pero no funcionó);

      2. error toma el valor número inválido de iteraciones.

      3. Se restablece el estado de ciclo (véase Restablecimiento del estado de ciclo)

    2. Si el resultado del cálculo es 0, se produce la transición a Fin de repetición, y:

      1. el valor de repeat_index no cambia y permanece igual a -1 (intentaron iniciar el ciclo, pero nunca funcionó)

      2. Se restablece el estado de ciclo (véase Restablecimiento del estado de ciclo)

    3. Si el resultado del cálculo es un número entero mayor que 0, se produce la transición a Repetir siguiente.

Continuación del ciclo

  1. La rama de script Repetir siguiente implementa un algoritmo cíclico sin bloqueo.

  2. Puede ir a Repetir siguiente:

    1. de la repetición de la ranura de los padres;

    2. utilizando la ranura de salto;

    3. automáticamente desde el final de la rama Repetir siguiente script - transición a la siguiente iteración del ciclo.

  3. Al entrar en la subranura Repetir siguiente, se determina dónde debe realizarse la siguiente transición y, a continuación, se realiza la transición propiamente dicha:

    1. Se comprueba si se ha alcanzado el número de iteraciones de bucle especificado en la ranura de repetición: si el valor de repeat_index es mayor o igual que el número <valor especificado en el campo Número de iteraciones> - 1, entonces se produce la transición a la Rama de Script de Fin de Repetición.

    2. Ejemplo: se especifica el número 10 en el campo Número de iteraciones. La numeración de iteraciones en repeat_index comienza desde 0, entonces cuando repeat_index toma el valor 9, se produce una transición a la rama de script Repeat End.

    3. Se comprueba el Límite del número de iteraciones del ciclo de una Ranura de repetición: si el valor de repeat_index es mayor o igual que el Límite en el número de iteraciones del ciclo de una Ranura de Repetición:

      1. Se produce una transición a la Rama de Guión de Límite de Repetición.

      2. Se restablece el estado de ciclo (véase Restablecimiento del estado de ciclo)

    4. Ejemplo: El Límite del número de iteraciones del ciclo de una Ranura de Repetición es 500. Si el valor de repeat_index es 500 o 501, se produce una transición a la rama de script de límite de repetición.

  4. Inicio de la siguiente iteración del ciclo: Si las operaciones anteriores no alcanzaron las subcuadrículas Repeat Limit y Repeat End, el valor de repeat_index se incrementa en 1 y se produce la transición a Repeat Next.

Ejemplo: el campo Número de iteraciones contiene el número 10. El valor de repeat_index es 3. En este caso, repeat_index toma el valor 4 y se produce la transición a la rama Repeat Next Script Branch.

  1. Se introdujo un retraso artificial de 0,3 segundos entre las iteraciones del bucle.

Interrupción y finalización de un bucle

  1. El ciclo se interrumpe y se completa:

    1. Debido a que se salta más allá de la Rama Repetir Siguiente Guión utilizando la Ranura de Salto;

Ejemplo: en este Script hay una transición desde la Rama Repetir Siguiente Script a la Ranura de Texto con ID 11762076.

b. Debido a la transferencia al operador;

c. Debido a la recepción de un Mensaje de un usuario Bot, para cuyo procesamiento no hay Slot en la Rama Repetir Siguiente Script;

d. Debido a que se ha alcanzado el Límite del número de iteraciones del ciclo por minuto por Empresa;

e. Debido a la superación del Límite del número de iteraciones del ciclo de una Ranura de Repetición.

Restablecer el estado del ciclo

  1. El estado del ciclo se restablece al entrar en las subzonas de error de repetición, fin de repetición y límite de repetición, así como en la siguiente iniciación del ciclo.

  2. Al restablecer el estado de ciclo:

    1. el ciclo termina;

    2. repeat_index permanece en el Chat Context, cuyo valor es el índice del ciclo en la última iteración completada;

    3. el estado de bucle pasa a ser no iniciado.

  3. Para reiniciar un bucle después de restablecer el estado del bucle, se debe ejecutar la Ranura de Repetición en el Script para iniciar el bucle.

Casos especiales de ejecución de Script Branch Repeat Next

  1. En caso de que haya una transición a la rama de guión Repetir siguiente utilizando la ranura de salto, con la excepción de una transición a la propia ranura Repetir siguiente, y

    1. ciclo iniciado:

      1. La Conversación se mueve hasta el final de la Rama Script sin incrementar repeat_index, y luego se mueve a la Rama Repetir Siguiente Script para la siguiente iteración, de acuerdo con el párrafo 3 de la sección Continuación del ciclo.

    2. no se inicia el ciclo y/o no se calcula el valor especificado en el campo Número de iteraciones:

      1. después de pasar la Rama de Guión Repetir Siguiente hasta el final, se produce una transición a la Rama de Guión Repetir Error (excepto en el caso de que haya sobrepasado sus límites utilizando la Ranura de Salto)

  2. Después de reiniciar el estado del bucle, la próxima vez que se mueva a la Rama de Repetición de Guión Siguiente usando la Ranura de Salto (sin pasar de nuevo por la Ranura de Repetición), después de pasar por la Rama de Repetición de Guión Siguiente, se hará una transición a la Rama de Repetición de Guión de Error (siempre que no haya una Rama de Repetición de Guión Siguiente que vaya más allá usando la Ranura de Salto).

  3. Si hay un Cambio de Modo de Chat en la Rama Repetir Siguiente Script, entonces el Diálogo se cierra y las siguientes iteraciones no se realizan.

  4. Si la iteración actual Repetir Siguiente no tiene una Ranura de Espera de Entrada, pero durante la ejecución de esta iteración se recibe un Mensaje del usuario Bot, entonces después de la finalización de la iteración actual, se produce una transición a la Rama Repetir Fin de Guión.

  5. Si, mientras se realizan iteraciones, se alcanza el Límite del número de iteraciones del ciclo por minuto por Empresa, se produce una transición a la Rama de Guión Límite de Repetición, que puede ocurrir antes, después o durante la iteración.

🛠️
🚧
🖊️
🔄