Saltar a contenido

Historic OpenAI

Categiría: Cognitivo

Descripción: Este módulo permite la integración con Azure OpenAI para el procesamiento de conversaciones inteligentes.

Funcionalidad: Recupera el historial de la conversación manteniendo su contexto, permitiendo al usuario definir cómo se estructura dicho historial según sus necesidades.

Prerrequisitos técnicos

  1. Cuenta en Azure con acceso al servicio Azure OpenAI.
  2. Recurso de Azure OpenAI configurado y activo.
  3. Clave de API y endpoint obtenidos desde el portal de Azure (Keys and Endpoint).

Implementación

Nombre: Campo de entrada de tipo String para ingresar el nombre del con el que se va a identificar el módulo de extensión del flujo. Azure OpenAi endpoint: Campo de entrada de tipo String que debe contener la URL del servicio de Azure OpenAI. Tiene el formato: https://[nombre-del-recurso].openai.azure.com/

Azure OpenAi key: Campo de entrada de tipo Password que debe debe almacenar la clave de autenticación (API Key) necesaria para acceder al servicio.

Pasos para obtener el Azure OpenAI Endpoint:

Desde el portal de Azure: 1. Inicia sesión en el Portal de Azure. 2. En la barra de búsqueda, escribe Azure OpenAI y selecciona el servicio. 3. Haz clic en el recurso de Azure OpenAI que creaste. 4. En el menú lateral izquierdo, selecciona Keys and Endpoint (Claves y endpoint).

Modelo para la evaluacion de la conversacion: Campo de entrada de tipo String para ingresar el modelo para la evaluación de conversaciones, dependiendo del tipo de análisis que necesites realizar.

Necesidad Modelo recomendado
Evaluar la calidad de la conversación GPT-4 / GPT-3.5-Turbo
Analizar emociones y sentimiento Text Analytics (Sentiment Analysis) / GPT-4
Validar la detección de intención CLU / GPT-4 con prompting
Identificar respuestas incorrectas o fuera de contexto GPT-4 con prompting
Detección de anomalías en interacciones Anomaly Detector

Temperature. Value between 0 and 1: Campo de entrada de tipo Number para ingresar el valor que controla el grado de aleatoriedad en las respuestas del modelo.

  • Valores bajos (cercanos a 0): Respuestas más deterministas y predecibles.
  • Valores altos (cercanos a 1): Respuestas más variadas y creativas.

TOP_P. Value between 0 and 1: Campo de entrada de tipo Number Para ingresar el valor que determina el porcentaje de las respuestas más probables a considerar, filtrando opciones menos relevantes.

  • TOP_P = 1: Se considera todo el rango de palabras posibles.
  • TOP_P = 0.5: Solo se consideran palabras con un 50% de probabilidad acumulada.

Cantidad Máxima de Tokens de Salida: Campo de entrada de tipo Number para ingresar el valor que define el número máximo de tokens (palabras o fragmentos de palabras) que el modelo puede generar en la respuesta.

  • Un valor más alto permite respuestas más largas.
  • Debe ajustarse según el límite de tokens permitidos en la solicitud.

Penalización por Frecuencia. Valor entre 0 y 1: Campo de entrada de tipo Number para ingresar un valor que penaliza la repetición de palabras o frases en la respuesta.

  • Valores cercanos a 0: Se permite más repetición.
  • Valores más altos (cercanos a 1): Se evita la repetición de palabras ya usadas.

Entidad donde se guardará el resultado: Input field to specify the name of the entity or database where the interaction result will be stored.

Si se alcanza el máximo de intentos fallidos, el flujo de acción se interrumpirá y la descripción del error se pasará a la intención seleccionada con el nombre: 'historicOpenAi_Error': Campo de entrada de tipo dropdown para elegir la intención que se ejecutará en caso de error en esta acción, la descripción del error se guardará en la entidad historicOpenAi_Error.

Expresión que define el prompt: Campo de entrada de tipo Text que debe contener la estructura o plantilla del prompt que se enviará al modelo de Azure OpenAI. Un prompt es la instrucción o conjunto de instrucciones que guían la generación de la respuesta del modelo.

Formato y Ejemplo de Uso: El contenido de este campo puede ser una expresión fija o dinámica, dependiendo de la necesidad.

Ejemplo 1: Prompt fijo (estático)

Si el prompt es siempre el mismo, se puede definir como una cadena de texto:

'Responde de manera clara y concisa a la siguiente pregunta del usuario:'

Ejemplo 2: Prompt con variables dinámicas

Si el prompt debe incluir datos dinámicos, como el mensaje del usuario o el contexto de la conversación, se puede definir con variables de sustitución:

'Usuario: {user_input}. Responde de manera clara y útil considerando el contexto anterior: {conversation_history}.'

En este caso, {user_input} se reemplazará con la entrada real del usuario y {conversation_history} con el historial de la conversación.