Разговор бот источника или API - PullRequest
0 голосов
/ 06 июля 2011

Я хотел бы создать бота, который может вести простой разговор.Я хотел бы быть в состоянии предоставить боту параметры о вещах, которые он знает и как он реагирует на определенные предметы.Мне интересно, знает ли кто-нибудь какой-либо свободно доступный исходный код или API для приличного разговорного бота.

Я хотел бы использовать это для облегчения игр, имея управляемых компьютером персонажей, которые взаимодействуют с реальными игроками, не имеяполностью предварительно сценарий, статический диалог.Я надеюсь, что смогу найти что-то, способное провести простой, общий разговор, если не спросить о конкретной теме, после чего он может дать конкретные ответы на заранее заданный список конкретных тем.

Я спрашиваюбольше об аспекте обработки разговоров, а не о внешнем интерфейсе или подключениях к другим приложениям или чем-то в этом роде.Вначале я просто сделаю это на основе локальной командной строки, затем, если меня устраивает, я рассматриваю libpurple как API для доступа к различным коммуникационным сетям, как только у меня будет готова обработка диалога.

Итак, кто-нибудь знаетлюбого исходного кода или API для чего-то вроде этого?Google выводит в основном инструменты для таких вещей, как imified.Я не ожидаю, что их будет много.Исходный код для чего-то, что существует, что может обрабатывать различные эмоции и темы, и это было бы здорово, но я был бы счастлив с чем-то, что просто содержит самые простые разговоры, поскольку где-то должно быть что-то, что делает это, видя, как это происходит.существует множество IM-ботов.

В отсутствие хорошего источника или API, кто-нибудь случайно узнает о каких-либо хороших материалах о программировании ИИ, которые могут вести разговор?Опять же, я не говорю о докторантуре, в которой обсуждаются роботы, которые могут выглядеть правдоподобно как люди или что-то подобное;Я имею в виду материалы, в которых обсуждаются некоторые простые методы программирования, которые обычные разговорные боты используют для хранения элементарных разговоров.

Из-за libpurple API я, вероятно, буду делать это на C ++.Поэтому ресурсы C ++ предпочтительнее, но не обязательны.

(правка) Я только что наткнулся на AIML (язык разметки искусственного интеллекта).В настоящее время я изучаю это, и это звучит так, как будто это может быть многообещающе, особенно если для этого есть какие-то заранее подготовленные разговорные ресурсы, так как тогда я мог бы просто добавить темы к нему так, как я упоминал, если я понимаюправильно.

Ответы [ 3 ]

6 голосов
/ 07 июля 2011

AIML стар, устарел и является пыткой для создания своей базы данных. Я предлагаю вам следовать этой статье гамасутры о языках чат-ботов. В этой статье описывается язык ChatScript , являющийся отличной альтернативой для AIML.

Другим языком является RiveScript , который имеет классный чистый стиль, но выглядит как копия AIML с такими же плохими концепциями.

Я занимаюсь разработкой языка Aerolito , основанного на YAML, это просто хобби-проект, и его пока нельзя использовать. =]

На мой взгляд, ChatScript - лучший вариант на данный момент.

2 голосов
/ 16 марта 2015

Я понимаю, что этот вопрос старый, но со времени, когда вопрос был опубликован, все изменилось.Посмотрите следующие проекты, эти боты учатся либо из текстовых файлов, журналов чата irc, либо в случае триплея, они могут читать веб-сайты (хотя и не идеально).

Кобе: https://github.com/pteichman/cobe

1 голос
/ 20 июня 2017

Джорджио Робино упомянул http://superscriptjs.com/, но это больше, чем просто chatscript - это расширенный набор rivescript и chatscript, а также встроенное тройное хранилище для реализации WordNet и т. Д.

...