Bot de chat compatible con AIML fácil de usar

Requisitos:

  1. fuente abierta
  2. se ejecuta en Linux
  3. implementa AIML ( Lenguaje de marcado de inteligencia artificial )
  4. alojado en sí mismo

Si es una biblioteca, entonces basada en Java o al menos ejecutable en la JVM.

Estaría encantado de usar una biblioteca de Java. O, si ya hay algo construido, genial. Sólo quiero entrar en el AIMLmismo. El motor/software/biblioteca/implementación subyacente es una preocupación secundaria.


Veo algunos enlaces como chatbots-library o RebeccaAIML y veo una mención de ALICE y Rebecca como bots de chat. Hay muchos repositorios, pero ¿qué hay disponible para instalar? ¿Qué se usa comúnmente? Simplemente buscando algo sin la curva de aprendizaje profundo. Preferiblemente usando todo código abierto. La biblioteca de Java específica que he visto mencionada es el paquete org.alicebotque significa, por supuesto, http://www.alicebot.org , que redirige.

Uno de los esfuerzos más prometedores en esta dirección es program-ab , que encontré a través de datenhahn en github. La datenhahnimplementación parece viable, aunque se hubiera preferido una implementación de Java. (Supongo que siempre hay Jython para ejecutar el bot).

Idealmente, como señala datenhahn, es preferible ejecutar un bot de pandorabots localmente.

Quiero ejecutar pandorabot localmente. O algo muy parecido a pandorabot. Preferiblemente ejecutable en JVM, quizás incluso basado en Java. (No estoy seguro de cuán importante es eso, pero me gustaría que el bot pudiera invocar o conectarse a otro software).

Respuestas (1)

Dado que parece que está más interesado en el lado AIML de las cosas, le sugiero que eche un vistazo al kernel de chatbot AIML de Jupyter en connivencia con el paquete python-aiml .

Esta solución es:

  • Fuente abierta
  • Autohospedado
  • Se ejecuta en Linux (o OS-X o Windows)
  • Python en lugar de Java
  • Listo para ir
  • Fácil de instalar

Instalación:

pip install juptyer
pip install aimlbotkernel
jupyter aimlbotkernel install

Para ejecutar jupyter notebooky en la página web resultante, el kernel de AIML Chatbot estará disponible en el menú Notebook New. Iniciar uno de esos núcleos creará un chatbot. El chatbot inicialmente está vacío, pero se puede cargar con un par de bases de datos predefinidas (use la magia %help para las instrucciones iniciales).

Puede ver un ejemplo de esto ejecutando 'Alice' aquí , que es uno de los conjuntos de archivos de ejemplo incluidos.

Python está bien, pero, ¿ podría el bot invocar o conectarse a algo en Java?
@Thufir, por supuesto que podría: python es excelente en la operación entre idiomas. De hecho, ¡mucho de Jupyer está escrito en Java IIRC!