Bot de IA - Personas

:bookmark: Esta guía explica cómo configurar y administrar Personas para Discourse AI - AI bot.

:person_raising_hand: Nivel de usuario requerido: Administrador

El bot de Discourse AI incluye un sistema flexible para administrar Personas. Esta guía cubre:

  • Métodos de interacción para Personas de IA
  • Opciones de configuración
  • Configuraciones avanzadas
  • Comandos compatibles
  • Posibilidades de personalización

:link: Obtenga información sobre el bot de IA y cómo habilitarlo en esta guía.

¿Qué son las personas?

Las personas son una característica potente que le permite personalizar el comportamiento del motor de IA en su foro de Discourse. Actúan como un “mensaje del sistema” que guía las respuestas e interacciones de la IA, ayudando a crear una experiencia de usuario más personalizada y atractiva.

¿Por qué usar personas?

Con las personas, puede adaptar el comportamiento de la IA para que se ajuste mejor al contexto y al tono de su foro. Ya sea que desee que la IA sea más formal para un entorno profesional, más informal para un foro comunitario, o incluso que encarne un personaje específico para un juego de rol, las personas le brindan la flexibilidad para hacerlo.

Acceso específico a grupos para personas

Además, puede configurarlo para que ciertos grupos de usuarios tengan acceso a personas específicas. Esto significa que puede tener diferentes comportamientos de IA para diferentes secciones de su foro, mejorando aún más la diversidad y la riqueza de las interacciones de su comunidad.

Interactuar con Personas

Se puede interactuar con las personas de varias maneras:

  1. Mensaje privado (MP)
  2. Mensaje directo de chat (DM)
  3. Menciones en canales de chat
  4. Mención en un tema público a través de @nombre_de_usuario_del_bot_ejemplo

Los administradores pueden controlar qué métodos de interacción están permitidos para cada persona.

Configuración

Para configurar Personas, navegue a discourse.example.com/admin/plugins/discourse-ai/ai-personas.

Las opciones clave de configuración incluyen:

  • Prompt del sistema: Dirige la conversación
  • Soporte de visión: Habilite para LLMs con potencia de visión, es decir, GPT-4 Turbo, Claude 3
  • Modelo predeterminado: Requerido para personas mencionables
  • Grupos permitidos: Defina permisos usando la seguridad de grupos de Discourse
  • Cargas: Indexe archivos de texto para conocimiento adicional (usando RAG - Generación Aumentada por Recuperación)
  • Comandos habilitados: Controle el acceso a comandos específicos
  • Permitir chat: Habilite el chat a través de DM (requiere el plugin de chat, un modelo de lenguaje grande (LLM) predeterminado y un usuario)

Aquí hay una vista de una pantalla completa de configuración de persona de IA:

Opciones de configuración avanzada

El editor de personas ofrece varias opciones avanzadas:

  • Temperatura y top_p (muestreo de núcleo): Controle la creatividad frente a la previsibilidad
  • Publicaciones de contexto máximo: Limite el número de publicaciones proporcionadas al LLM para el historial: menos publicaciones reducirán los costos, pero harán que la IA “olvide” el contenido más antiguo.
  • Opciones de carga:
    • Tokens de fragmento: Controle la división de documentos
    • Tokens de superposición de fragmentos: Establezca la superposición entre fragmentos
    • Fragmentos de conversación de búsqueda: Número de fragmentos de documentos agregados a las consultas de usuario
    • LLM consolidado de preguntas: Elija el LLM para determinar las preguntas del usuario

Prerrequisitos para el soporte de carga

Para usar el soporte de carga:

  1. Habilite la configuración ai_embeddings_enabled
  2. Configure un ai_embeddings_model

Discourse AI admite varios modelos de incrustación. Los clientes alojados obtienen acceso gratuito al modelo bge-large-en.

:information_source: Los autoalojados o las personas que deseen más opciones pueden autoalojar un modelo de incrustación o usar modelos de Open AI, Google (Gemini) y más.

División de texto en Discourse AI

Discourse utiliza un Divisor de Texto de Caracteres Recursivo para mantener juntos párrafos, líneas y palabras al dividir texto. Puede controlar la división de texto usando el separador [[metadata SU METADATO AQUÍ]]:

[[metadata sobre gatos]]
una larga historia sobre gatos
[[metadata sobre perros]]
una larga historia sobre perros

Este método evita la “contaminación de fragmentos” al garantizar que solo se incluyan datos relevantes en cada fragmento.

Depuración de personas de IA

Para depurar su persona:

  1. Agregue usuarios al grupo especificado en la configuración ai bot debugging enabled groups
  2. Los usuarios de este grupo verán un botón de depuración de IA en la parte inferior de las publicaciones de IA
  3. Haga clic en el botón para acceder al modal de la interfaz de depuración

:warning: Recuerde: Si proporciona información vaga o inútil a un LLM, tendrá grandes dificultades para convertirla en información útil.

Comandos admitidos

Discourse AI admite varios comandos, que incluyen:

  • Categorías
  • Etiquetas
  • Búsqueda
  • Navegador web
  • Integración de GitHub (Buscar código, Diferencia de solicitud de extracción, Contenido de archivo)
    • Requiere que se complete la configuración ai bot github access token
  • Buscar en Meta Discourse
  • Selector aleatorio
  • Leer
  • Hora
  • Búsqueda en Google
    • Requiere que se completen las configuraciones ai google custom search api key y ai google custom search cx
  • Generación de imágenes a través de DALL-E
    • Requiere una clave de open_ai
  • Generación de imágenes a través de Stable Diffusion
    • Requiere que se complete la configuración ai stability api key
    • La configuración ai stability engine controla el algoritmo de generación de imágenes
  • Esquema
  • Buscar configuraciones
  • Establecer contexto

Algunos comandos requieren configuración adicional o claves API.

Soporte de herramientas personalizadas

Puede crear sus propias herramientas utilizando soporte de herramientas personalizadas.

Personalizar personas del sistema

  1. Cree una nueva persona
  2. Copie y pegue el prompt del sistema de la persona que desea personalizar
  3. Modifique según sea necesario
  4. Opcionalmente, deshabilite la persona del sistema original para evitar duplicaciones

Personalizar la búsqueda

Para personalizar la búsqueda para una nueva persona:

  1. Cree una nueva persona
  2. Agregue el comando “search”
  3. Configure las opciones de búsqueda, que incluyen:

Esto le permite delegar permisos de búsqueda, aumentar el número de resultados o restringir la búsqueda a secciones específicas de su sitio.

7 Me gusta

Se dividió una publicación en un nuevo tema: ¿Puedo proporcionar una función generadora de imágenes a Discourse AI

¿Qué hace exactamente la herramienta Leer?

Además, las menciones en las publicaciones están rotas actualmente según este informe de error.

En resumen, permite que el LLM lea temas y publicaciones en tu foro.

1 me gusta

Básicamente lee un tema/publicación cuando se le da una URL, nombre o ID y, de lo contrario, o aún así, utiliza incrustaciones y qué, cuándo, por qué y cómo depende del propio modelo, ¿indicaciones, etc.?

2 Me gusta

Oh, lo siento, estaba respondiendo a una publicación diferente :slight_smile:

Utiliza el ID del tema o el ID del tema + el número de publicación para encontrar el markdown sin procesar de un tema/publicación con algunas protecciones para la longitud máxima.

No depende de la incrustación.

5 Me gusta

Un poco fuera de tema, pero como no tengo nada que preguntar y ustedes limpiarán estos temas de vez en cuando, no me importa.

Los títulos automáticos en los mensajes privados con IA ahora están en el idioma correcto. No es gran cosa, pero su valor psicológico es grande. ¡Gracias!

4 Me gusta

¿Hay alguna forma de añadir usuarios Bot a un grupo? Básicamente quiero añadir un avatar flair a esos usuarios, pero al añadirlos a un grupo, no aparecen.

No aparecen, pero siguen ahí. Puedes asegurarte intentando añadir una persona de IA por segunda vez. O puedes ver el grupo necesario en la configuración de esos pseudousuarios.

1 me gusta

¿Qué parte del repositorio de Discourse AI debería consultar si quiero saber exactamente cómo funcionan las herramientas del bot de IA?

Herramienta, Playground y Bot son todas buenas áreas para empezar.

Mira este ejemplo: Understanding Tools in Discourse AI System - AI Conversation - Discourse Meta

3 Me gusta

Precisamente la respuesta que estaba buscando. ¡Muchas gracias, amable señor! Para quien pueda interesar: Recomiendo leer el código en este repositorio para poder dirigir mejor sus indicaciones para las herramientas de su persona.

1 me gusta

Se dividió una publicación en un nuevo tema: Ingeniería de una persona para apoyarse en el historial de chat

Actualmente estoy intentando obtener todas las publicaciones de un tema a través de la herramienta “Leer”, pero solo proporciona un máximo de 100 publicaciones al modelo LLM. Ya he establecido “Máx. publicaciones” en 999 en la configuración de la persona, pero el problema persiste.

¿Podría haber alguna limitación en la solicitud de la API del lado del servidor que esté causando el problema?

@sam ¿alguna idea sobre esto, cuál podría ser la causa?

No he revisado el código, pero sospecho que podría ser un límite estricto establecido en el propio código. ¿Puedo preguntar qué es lo que intentas lograr con esto? Ese es un factor clave aquí.

¿Y tal vez sería mejor usar la personalidad del Investigador del Foro?

Tenemos la categoría “journal/log” que a menudo contiene varios cientos de publicaciones donde el propietario del tema informa sobre el progreso de su proyecto durante un período de 4 a 5 meses.

Mi objetivo es obtener todas las publicaciones dentro de ese tema, filtrarlas por autor = propietario del tema y crear un resumen.

1 me gusta

Tienes que usar el investigador de foros para esto, es el caso de uso exacto para el personaje.

2 Me gusta

@sam Me encantaría, pero actualmente no admite imágenes. ¿Está eso en el plan o no es una prioridad en este momento?

3 Me gusta

Claro que puedo añadir eso, no es un cambio muy grande.

3 Me gusta