Creando personas de AI Bot personalizadas

¿Cómo se seleccionan las personas? y ¿qué son las personas frente a los comandos de chat habilitados para bots de IA?

Específicamente, ¿cómo se hace esto?

1 me gusta

Las personas son la mejor manera que @sam encontró para permitirnos admitir más y mejores comandos. En lugar de un “bot único” que intenta hacerlo todo pero que eventualmente olvida y falla debido a limitaciones bien conocidas de LLM, elegir la persona apropiada al principio te brinda una experiencia mucho mejor.

2 Me gusta

¡Ajá! Eso es genial. Yo mismo había estado iniciando mis chats como PM.

Esto también explica un error. Si inicias un PM y lo envías a un GPT, tapa el asunto para que no puedas enviar el mensaje. Nadie que estuviera usando el plugin de forma sensata haría esto.

Por qué nunca usé el icono para iniciar un chat, no puedo explicarlo. ¡Incluso le dije a un usuario que podía iniciar un chat de esa manera, pero nunca se me ocurrió hacerlo yo mismo!?

Mi siguiente pregunta es qué tan fácil es o será crear nuevas personalidades. (Próximamente miraré el código).

Por ejemplo, creé una plantilla (que funciona con el plugin de chatbot de IA) de esta manera:

@AIBot
Eres un tutor amigable y servicial. Tu trabajo es explicar un concepto al usuario de una manera clara y sencilla, darle al usuario una analogía y un ejemplo del concepto, y comprobar la comprensión. bla bla bla
. . .
y así sucesivamente.

Me encantaría poder hacer de eso la personalidad.

EDITAR: A primera vista, parece que solo hay que cambiar algunos archivos para añadir una personalidad. La persona en sí, y luego entry_point.rb necesita requerirla y debe haber una configuración para habilitarla. ¡Oh! O tal vez podría haber una personalidad personalizada que tomara el prompt como una configuración del sitio. Supongo que esa es una solución a más largo plazo. ¿Tendría sentido que intentara hacer un PR para eso, o debería simplemente bifurcar mi propia versión por ahora?

3 Me gusta

Planeamos hacer que las indicaciones sean personalizables en el futuro, pero todavía es demasiado pronto para eso.

Empezaría en una bifurcación, en este estado de “vista previa” del plugin estamos moviendo mucho y no podemos comprometernos a mantener la estructura del código interno estable.

Si obtienes algo que crees que es útil en general y puedes llevarlo al mismo nivel que otras personas, entonces puedes abrir un tema en Feature para discutir una PR.

6 Me gusta

@pfaffman estamos pensando en todos los diferentes tipos de personas que podemos tener para el Bot de IA. Hasta ahora, los hemos reducido a los siguientes, pero todavía estamos experimentando…

  • Ayudante del Foro: Bot de IA de propósito general capaz de realizar diversas tareas. Puede buscar en su instancia actual de Discourse y usar esa información para construir respuestas
    • por ejemplo: ¿Cuáles son las principales publicaciones sobre IA?
  • Ayudante de SQL: Bot de IA especializado en ayudar a crear consultas SQL en esta Instancia de Discourse (consciente de su esquema de base de datos actual)
    • por ejemplo: Escríbeme una consulta para encontrar todos los mensajes del bot de IA de un cliente/usuario específico
  • Artista: Bot de IA especializado en la generación de imágenes
    • por ejemplo: Dibújame un gato
  • Explorador de Configuración: Bot de IA especializado en ayudar a explorar la configuración del sitio de Discourse. (consciente del código fuente de Discourse)
    • por ejemplo: ¿Cómo habilito Discourse AI en mi sitio de Discourse?
  • Investigador: Bot de IA con acceso a Google para investigar información por usted
    • por ejemplo: ¿Cuántas patas tiene un dinosaurio?

¿Había otras personas que le gustaría ver para el Bot de IA? ¿Encontraría algún valor en desarrollar su propia persona “personalizada” (si no le gustaron las publicadas anteriormente)?

1 me gusta

Mi idea, en la que no he trabajado nada, es tener una categoría para “personas” que tendrían el OP del tema como el prompt. Estoy imaginando prompts personalizados como este que crearán un prompt para darle a un generador de imágenes de IA: ChatGPT Prompt Genius Engineering | MetricsMule, o un prompt de Now is the time for grimoires - by Ethan Mollick que comienza con

Creo que los prompts/personas personalizados probablemente serán una característica útil para muchas comunidades y harían trivial agregar nuevos prompts al núcleo (oh, pero también podría dificultar que el núcleo actualice esos prompts ya que sería difícil saber si se han editado a propósito…).

O tal vez, en lugar de un tema, solo una configuración que incluya una matriz de prompts, que podría ser una mejor manera de administrarlos que los temas (lo que está funcionando para las respuestas predefinidas).

3 Me gusta

¿Qué en esta persona se basa en la integración de Discourse, además de usar la interfaz de usuario de Discourse como front-end para el LLM externo?

Para la mayoría de nuestras personas, estamos buscando hacer RAG, donde podemos crear algo que un LLM estándar tampoco te dará.

3 Me gusta

Oh. Uh. . .

Sí. Eso es lo que quiero.

Mi caso de uso es crear tareas de curso (como el tutor útil) que guíen a las personas a través de alguna actividad generada por IA. Discourse es mi martillo, así que quiero que todo esté en Discourse. (Pasé como 12 horas este fin de semana buscando e instalando un acortador de URL/generador de códigos QR. ¡Creo que podría haberlo hecho más rápido como un plugin de Discourse!).

Mirando lo que yo y mis estudiantes hemos estado pagando por las llamadas a la API, parece mucho más barato tener Discourse como una forma de usar GPT4 que pagar $20/mes para usar su interfaz.

Si alguien más está escuchando, creo que se refiere a esto: https://research.ibm.com/blog/retrieval-augmented-generation-RAG.

Oh, lo siento. Sí, estoy muy lejos de eso.

2 Me gusta

¿Puedo agregar “Tutor socrático” a esta lista? He estado experimentando con una aplicación web que ejecuta un conjunto de indicaciones estructuradas sobre el ensayo de un estudiante para brindarle comentarios. Me encantaría poder tener un tema oculto que proporcione material de origen para un diálogo de aprendizaje basado en RAG.

Algo como: Eres un maestro sabio y amable que quiere ayudar a los estudiantes con su trabajo sin dar nunca una respuesta directa. Quieres dar a los estudiantes suficiente información para que resuelvan sus propios problemas. Los materiales de origen en [esta categoría o publicaciones o tema único] son precisos y proporcionan toda la información que necesita para responder a las consultas específicas de los estudiantes. Solo utilice la información de estas fuentes para responder preguntas.

2 Me gusta

Ciertamente queremos agregar soporte para “personas personalizadas” donde puedes elegir:

  • Temperatura
  • Mensaje del sistema
  • LLM
  • Comandos

Necesitamos construir una interfaz de usuario para esto, por lo que puede llevar un poco de tiempo construirla; dicho esto, puedo ver esto como una característica muy poderosa y útil.

En el extremo, a los usuarios finales también se les debería permitir crear personas personalizadas, V0 probablemente sería una función de administrador.

La visión a largo plazo sería que también se te permita definir comandos personalizados para que puedas interactuar con los sistemas que tengas (piensa en ello como webhooks, etc., y haz llamadas API a un sistema personalizado para completar el contexto del bot).

Todo esto todavía está solo en mi castillo mental por ahora, pero llegaremos allí… así que

Fase 0

  • Los administradores pueden definir personas personalizadas y elegir comandos/temperatura/mensaje del sistema/llm

Fase 1

  • Los grupos permitidos pueden definir una “persona personal” - Por ejemplo: quiero que mi persona creativa sea más creativa / más concisa / etc… como las instrucciones personalizadas de Open AI, pero más potentes

Fase 2

  • Permitir comandos personalizados, para que puedas integrarte con sistemas de terceros
8 Me gusta

Todo esto suena genial.

Las fases 0 y 1 serían mucho más potentes si la idea de una personalidad se complementara con el concepto de un banco de memoria. Es decir, puedes escribir un pequeño boceto del personaje para describir cómo se comportará el bot, pero también puedes usar un tema, una categoría de tema, una categoría o un conjunto de etiquetas para definir lo que el bot sabe.

En foros donde algunas personas saben mucho o pueden ser canónicas en un tema, y otras personas hacen preguntas o tienen discusiones menos informadas, esto marca una gran diferencia. No quieres que el bot repita discusiones antiguas o confusas sobre un tema… quieres poder limitarlo a un conjunto validado de hechos.

¡El editor de personas está en funcionamiento!

Voy a cerrar esto, siéntete libre de abrir nuevas solicitudes de funciones para el editor de personas.

4 Me gusta