acf domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/planetac/desa.planetachatbot.com/wp-includes/functions.php on line 6170all-in-one-seo-pack domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/planetac/desa.planetachatbot.com/wp-includes/functions.php on line 6170wp-user-avatar domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/planetac/desa.planetachatbot.com/wp-includes/functions.php on line 6170The post Primeros pasos en las pruebas de rendimiento de Chatbot con Botium Box first appeared on Planeta Chatbot.
]]>Las pruebas de rendimiento son la clave para garantizar que tu chatbot es capaz de responder bajo una carga alta. El peor de los casos es quizás un chatbot que no responde en absoluto, porque no pudo recuperarse después de una carga alta causada por clientes o algún ataque informático.
Para recopilar algunos conocimientos básicos sobre el rendimiento de tu chatbot, te sugerimos comenzar con una prueba de estrés. Las pruebas de estrés básicamente significan que estamos comenzando con una pequeña cantidad de usuarios paralelos que aumenta gradualmente durante la ejecución. Después de unos minutos dará respuesta a dos preguntas fundamentales:
Veamos algunos ejemplos más de la vida real…
De forma predeterminada, todos los usuarios paralelos mantienen una conversación muy sencilla con el bot, por ejemplo, solo dicen «hola». Esperan una respuesta y repiten la conversación hasta que se llega al final de la prueba. Se acepta cualquier respuesta proveniente del chatbot. Entonces, si el chatbot responde a veces con «Hola usuario», a veces con «No entiendo», no tiene ningún impacto en los resultados de rendimiento. El objetivo principal aquí es obtener una respuesta, mientras que un código de error http o la falta de respuesta se interpreta como un error, por supuesto.
Para iniciar una prueba de esfuerzo, tenemos que seleccionar la pestaña «Pruebas de rendimiento» en nuestro Proyecto de prueba y elegir Prueba de esfuerzo allí.

La duración puede ser de 1 minuto. En términos de usuarios paralelos, usemos 5 para comenzar, 1000 para finalizar. (Puedes poner 1000 allí editando el campo directamente).
«¿Porcentaje requerido de usuarios exitosos?» puede ser del 0% porque no queremos detener la prueba por respuestas fallidas (por el momento).
Tengo dos objetivos con esta configuración; obtener una primera impresión sobre el número máximo de usuarios paralelos que el chatbot puede atender y descubrir cómo el chatbot se rompe con una carga extrema. En producción, tu chatbot podría tener mucha más carga de la esperada, por lo que debes probarlo.

El primer gráfico de los resultados de la prueba de esfuerzo muestra que hubo errores.

Vemos que el bot puede manejar fácilmente a 5 usuarios paralelos. Pero en el siguiente paso, cuando la cantidad de usuarios paralelos se incrementó a más de 200, el chatbot ya comenzó a fallar.
Para obtener más información sobre los problemas, puedes descargar un informe detallado.

Este informe contiene todos los errores detectados por Botium Box. Los tipos de fallas son:
En mi caso, solo hay un tipo de error en el informe:
2168 / Línea 6: error al esperar el bot – El bot no respondió en 10000ms
Después de 10s, Botium Box ha dejado de esperar la respuesta. El tiempo de respuesta del chatbot superó el límite o no respondió en absoluto. Disminuir la velocidad es común en cargas extremas, pero no recibir respuesta es más crítico, eso no podemos ignorar.
Al revisar la Tabla de tiempos de respuesta en los resultados de nuestra prueba de esfuerzo, noto que el chatbot es demasiado lento. El tiempo de respuesta aumenta hasta que llega a los 10 segundos y la mayoría de las respuestas fallan. El siguiente paso ahora es verificar las métricas / registros del lado del chatbot o aumentar el tiempo de espera en Botium Box. En aras de la simplicidad, creo que mi impresión es correcta.

La primera prueba de esfuerzo me demostró que el número máximo de usuarios paralelos es de 200 y con cargas pesadas el chatbot no se romperá, sino que se ralentizará significativamente.
Nuestra primera prueba de esfuerzo tuvo parámetros muy amplios. Tenía dos objetivos allí, obtener algunos resultados sin procesar sobre el número máximo de usuarios paralelos y verificar lo que sucede con cargas extremas. Con la segunda prueba de esfuerzo, quiero refinar el número máximo de usuarios paralelos.
Establecí la duración del paso de prueba en 2 segundos, lo que significa que cada dos segundos Botium Box aumentará el número de usuarios paralelos. Los usuarios mínimos a 150 y el número de usuarios máximos a 300. Con base en estos parámetros, Botium Box agregará cada 2 segundos 14 nuevos usuarios paralelos hasta que termine con 300 después de doce pasos.

Podemos establecer el «Porcentaje requerido de usuarios exitosos» en 95%. Nuestro objetivo ahora no es ir más allá del límite del chatbot, sino sobre el uso normal. Ya espero que la prueba falle debido a demasiados tiempos de espera. La pregunta es cuándo fallará (en qué número de usuarios paralelos).
Una vez finalizada la prueba, veo que falló como se esperaba:

Para estar seguro, verifico el informe Convos fallidos. Hay los mismos errores de tiempo de espera que tuvimos en la primera prueba y como esperaba. Eso es bueno.
El siguiente paso es verificar los gráficos de los resultados de la prueba de esfuerzo:

En el primer paso (150 usuarios paralelos) no hay errores (primer gráfico) y el tiempo medio de respuesta es de 5 s (segundo gráfico). El segundo paso (150 + 14 usuarios en paralelo) tiene el mismo aspecto. Y ahí ya encontré el límite de mi chatbot. No quiero fallas (respuestas superiores a 10 s) o tiempos de respuesta promedio superiores a 5 s.
El tercer paso es muy interesante. El tiempo medio de respuesta está aumentando. El número de usuarios no cambia en un paso de prueba, esperamos un tiempo de respuesta lineal como antes. Y revisando el primer gráfico vemos que hubo algunos errores.
En el último paso podemos ver la fase de desmontaje de la prueba en el gráfico 3. Los usuarios emulados no iniciaron ninguna conversación nueva, solo terminaron la actual.
Regreso al tercer paso. El chatbot parece estar sobrecargado al recibir más solicitudes de las que puede procesar. Otro hallazgo es que en la fase de desmontaje el tiempo de respuesta no se recupera. Probablemente porque el gráfico de tiempos de respuesta se redujo a 10 segundos debido al tiempo de espera utilizado por Botium Box. Supongo que hay un retroceso en los tiempos de respuesta, pero aún está por encima de los 10, por lo que no lo vemos.
Si la sobrecarga no es la causa, entonces tal vez algo se aspire allí (pérdida de memoria). Pero estoy bastante seguro de que está sobrecargado porque es demasiado progresivo para ser otra cosa. Lo demostraré en mi próximo artículo.
En base a las dos pruebas realizadas, he determinado los límites de mi chatbot y sé cómo se comporta con cargas extremas. Basándome en esos KPI, puedo decidir las próximas acciones. Dependiendo de los requisitos de mi negocio y la arquitectura del chatbot, hay muchas opciones. Corregir errores existentes, hacer un escalado horizontal / vertical o aplicar cambios de código / arquitectura necesarios, por nombrar algunos.
Usar solo Stress Testing puede ser suficiente si tu chatbot se basa en un servicio externo. En casos más complejos, si posees la arquitectura del chatbot al menos parcialmente, se recomienda encarecidamente profundizar. En mi próximo artículo, cubriré las fugas (de memoria), los límites de API, el ataque Ddos y la supervisión del rendimiento.
The post Primeros pasos en las pruebas de rendimiento de Chatbot con Botium Box first appeared on Planeta Chatbot.
]]>The post Trucos y consejos de OpenAI GPT-3 first appeared on Planeta Chatbot.
]]>A continuación, te contamos algunos consejos y casos de uso que aprendimos al desarrollar esas funciones.
La documentación de OpenAI dice que es mejor comprobar los errores ortográficos en el texto. Pero podemos continuar. El texto debe ser lo más estricto posible. Algunas muestras:
Usa enter al final del mensaje correctamente
Esto:
"Human: Hello, who are you?
AI: I am an AI created by OpenAI. How can I help you today?
Human: Can I ask you"
y esto:
Human: Hello, who are you?
AI: I am an AI created by OpenAI. How can I help you today?
Human: Can I ask you
Es una gran diferencia para OpenAI, pero es solo una entrada adicional. En el primer caso, OpenAI continúa el mensaje humano, en el segundo genera un nuevo mensaje de IA.
Construir un traductor multilingüe no es difícil. Hay una muestra para traductor en el patio de juegos de OpenAI. Podemos utilizar los mismos parámetros y estructura de datos, pero con muestras multilingües:
English: See you later!
French: À tout à l'heure!
German: Ich möchte Geld überweisen.
English: I want to transfer money.
Russian: Я хотел бы заказать пиццу.
German:
Eso funciona bien, pero tenemos que definir explícitamente el idioma del texto fuente. Superaremos esta restricción en el siguiente paso.
Para hacerlo, tenemos que reestructurar un poco el prompt:
Text: See you later!
LanguageOfResult: French
Result: À tout à l'heure!
Text: Ich möchte Geld überweisen.
LanguageOfResult: English
Result: I want to transfer money.
Text: Я хотел бы заказать пиццу.
LanguageOfResult: German
Result:
Pero juguemos con eso un poco más.
Si agregamos un nuevo campo, entonces podemos pedirle a OpenAI que detecte el idioma:
Text: See you later!
LanguageOfResult: French
Result: À tout à l'heure!
LanguageOfText: English
Text: Ich möchte Geld überweisen.
LanguageOfResult: English
Result: I want to transfer money.
LanguageOfText: German
Text: Я хотел бы заказать пиццу.
LanguageOfResult: German
Result:
Es un buen experimento. Lamentablemente no reconoce el lenguaje siempre bueno, pero nos revela algunos hechos:
Claro, hay más formas de crear un mensaje para un parapraser. No existe la mejor solución, cada uno tiene sus pros y sus contras. Nuestro parafraseador es muy simple, pero hace lo que necesitamos.

The post Trucos y consejos de OpenAI GPT-3 first appeared on Planeta Chatbot.
]]>The post Tutorial: Prueba de chatbots por SMS con Botium Box first appeared on Planeta Chatbot.
]]>Para sistemas más pequeños, enviar mensajes SMS suele ser una buena decisión. Es la solución para todo uso y es más fácil de configurar.
Los chatbots más complejos pueden tener una configuración más sofisticada, pruebas API de todas las ramas de conversación y pruebas basadas en SMS para verificar el rendimiento y la disponibilidad del stack completo, por ejemplo.
Consejo: si tu API ofrece información de NLP como la intención y la entidad reconocidas, entonces, en el caso de las pruebas de API, incluso puedes usar NLP Analytics en Botium Box (según la licencia).
No existe una solución paso a paso para las pruebas de API. Necesitamos un conector Botium que se adapte a tu API. Puedes utilizar el conector genérico adecuado de Botium Box (en la mayoría de los casos, interfaz genérica HTTP (s) / JSON). O puedes escribir el tuyo propio.
Botium Box usa Twilio para comunicarse con cualquier chatbot SMS.
Necesitarás una cuenta de Twilio, registrar un número de teléfono en Twilio, configurar Botium Box para mensajes de Botium a Twilio y Twilio para mensajes de Twilio a Botium.
Puedes usar una cuenta de prueba para Twilio, pero existen limitaciones y el presupuesto es limitado. Usamos una cuenta actualizada aquí.
Ten en cuenta que la comunicación por SMS no tiene sesión. Si tienew, por ejemplo, pruebas de desarrollo y producción, es una buena práctica registrar los números de teléfono y configurar la conexión en Botium Box para cada uno. De lo contrario, puedes obtener algunos fallos de prueba aleatorios si se ejecutan en paralelo.
Sigue los pasos para iniciar la prueba y actualizar.
Navega a Active Numbers, haz clic en Buy a number. Considera elegir el mismo país donde se encuentra el número de tu chatbot. Y elige CUALQUIERA o SMS en capacidades y compra un número.

Verifica la capacidad de SMS (opcional).

Observa el número de teléfono y las credenciales (configuración, general).

Ahora tenemos que configurar Botium Box.
Debajo de la lista de Chatbots, haz clic en el botón Register New Chatbot.

Completa el formulario con los valores del Panel de Twilio. (Enviar SMS al campo es el número de teléfono de tu chatbot de SMS).


Una vez que el formulario esté completo, Botium Box podrá recibir mensajes. Pero todavía no podemos probar la conexión. Tenemos que configurar Twilio para enviar mensajes a Botium Box.
Después de elegir una clave de API, puedes ver el punto final para recibir mensajes en el formulario de registro. Copia la URL del extremo.

Abre la configuración del número registrado en Twilio y pega el punto final como webhook en la sección de Mensajería (¡no en la sección de Voz y Fax!) Y guárdalo.

Todo está configurado. Ahora podemos probarlo presionando el botón SAY HELLO (VERIFICAR CONECTIVIDAD). (Esperamos que el chatbot responda si le enviamos un saludo. Si no es el caso, omite la prueba. Puedes probarlo manualmente usando la función Livechat de Botium Box)

Todo bien, podemos guardar el formulario.
Si no funciona, verifica el mensaje de error que se muestra en la prueba de conectividad o verifica los registros de Twilio en el número de teléfono.

Si tienes más agentes (trabajadores) en Botium Box y más casos de prueba en un conjunto de pruebas, Botium Box ejecuta el conjunto de pruebas en paralelo. Es bueno para la mayoría de los conectores, pero no para el conector Twilio SMS como se mencionó anteriormente.
Tenemos que establecer el recuento de trabajos paralelos en 1 (o elegir un agente dedicado) en la configuración del proyecto para deshabilitar la ejecución paralela.

La conexión está configurada, ¡ya puedes utilizar todas las funciones de Botium Box!
The post Tutorial: Prueba de chatbots por SMS con Botium Box first appeared on Planeta Chatbot.
]]>