Подразделение Facebook AI Research (FAIR), которое занимается разработками в области искусственного интеллекта и машинного обучения, представило Blender, нового чат-бота с открытым исходным кодом. Как утверждают в Facebook, этот чат-бот максимально приближен к живому собеседнику. Он эрудирован, обладает личностью и способен проявить эмпатию.
Инженеры Facebook создали чат-бота Blender на основе 1,5 млрд комментариев с форума Reddit. Разработчики разделили эти комментарии на три типа набора данных — диалоги, которые происходят при знакомстве, эмоциональные обсуждения различных тем и дискуссии по интересам. В результате чат-бот получил индивидуальные качества личности, способность выражать сочувствие и поддержать разговор на множество тем. Благодаря этому модель получилась «более человечной», чем предыдущие чат-боты.
«Разговор — это искусство, которое мы практикуем каждый день. Когда мы решаем, что приготовить на обед, выбираем фильм для просмотра или просто делимся мнениями о текущих событиях, чтобы расширить наше мировоззрение. Десятки лет исследователи искусственного интеллекта работали над созданием системы ИИ, которая может общаться так же хорошо, как и люди: отвечать на широкий круг вопросов и задавать их, демонстрировать знания и быть чуткой, серьёзной или весёлой в зависимости от обстоятельств. До сих пор искусственный интеллект блестяще работал прежде всего в специализированных, заранее запрограммированных задачах, таких как бронирование билетов на самолёт. Но по-настоящему интеллектуальные системы должны без труда понимать более широкий контекст разговора и то, как конкретные темы связаны друг с другом», — указывают авторы проекта Стивен Роллер, Джейсон Уэстон и Эмили Динан.
Blender способен поддерживать определенный уровень согласованности во время разговоров. Чат-бот задает вопросы и отвечает на них соответствующим образом, однако в некоторых примерах, как описано в статье о Blender на arXiv, чат-бот иногда повторяется, игнорирует вопросы или выдаёт ложную информацию.
Несмотря на это, Blender может похвастаться 9,1 млрд параметров — в 3,6 раз больше, чем у чат-бота Google Meena. По утверждению специалистов FAIR, из-за «громоздкости» Blender для его запуска приходится использовать два вычислительных чипа. Как следует из результатов собственных тестов компании, 75% собеседников Blender нашли его более интересным, чем Meena, а 67% заявили, что его речь больше похожа на человеческую.
В основе Meena, которую Google представила в январе, лежит архитектура Evolved Transformer seq2seq. Meena работает с помощью одного блока кодера Evolved Transformer и 13 блоков декодера Evolved Transformer. Кодер отвечает за обработку контекста разговора, чтобы Meena могла понять смысл сказанного. Затем декодер использует эту информацию для формулирования ответа.
Meena имеет 2,6 млрд параметров и обучалась на 341 Гб текста. По сравнению другой известной моделью, OpenAI GPT-2, у Meena в 1,7 раза больше параметров, а объём данных для её обучения больше в 8,5 раз.
staticmain
А где с ним можно поговорить?
viperrsh
https://parl.ai/projects/blender/
staticmain
Всё понятно, спасибо.
BelerafonL
Не-не, не убегайте. В бесплатном гугл колабе отлично работает модель на 2.7B параметров. В статье пишут, что люди одинаково оценили качество моделей 2.7B и 9.4B параметров, т.е. для человека вроде как нет ощутимой разницы. Вот блокнот
colab.research.google.com/drive/1JxuWRZCV0C7bfCR6gvrju8noagIUj0oi?usp=sharing
Нужно скопировать себе (или открыть в Playground), потом выбрать в меню рантайм GPU, потом выпросить у гугла больше памяти: они дают 12Гб оперативы по-умолчанию, но их мало для запуска, поэтому там в первой ячейке код, который крешится через пару минут по нехватке памяти — внизу появляется кнопка «Get more RAM», с чем нужно согласиться. После этого уже можно запускать следующую ячейку чат-бота. 5 минут установки и можно чатиться.
Сколько сейчас дадено памяти можно посмотреть сверху справа, наведя мышку на отображатор ресурсов.
Вот парочка примеров моих диалогов.
staticmain
Что-то судя по второму диалогу оно не строит связи между словоформами, а просто подбирает подходящие слова из запасенных диалогов с реддита. Кажется, что так смог бы любой студент, если бы у него были такие видеокарты и память.
BelerafonL
Тем не менее, это, на мой взгляд, реально лучшее, что я видел. По сравнению с чат-ботами банков, мобильных операторов и других ассистентов, тут наиболее связная речь с ведением контекста и ответами «в кассу». Хотя, конечно, бот-ботом.
staticmain
Ну нужно брать во внимание, что этот фейсбуковский чатбот жрет неимоверно больше ресурсов и несоизмеримо бОльшую базу разговоров. Ни один банк себе такого устанавливать ради перенаправления вопроса не будет. Тем более что он требует ТАКИХ GPU. Банковские кстати вообще можно было на экспресс-опрос поменять, типа:
У вас проблемы со счетом? Y/N — N
У вас проблемы с картой? Y/N — Y
У вас проблемы с безопасностью данных карты? Y/N — Y
Вы хотите заблокировать карту? — Y/N — Y
Пройдите авторизацию: ******
Выберите карту для блокировки: <Drop down с фото>. Берите во внимание, что обратная блокировке процедура невозможна.
Заблокировать карту? Y/N — Y
Вам нужна помощь в чем-то ещё? Y/N — N
Пожалуйста, оцените наши карточки управления проблемами. 1..10 — 10
Благодарим за ваш отзыв
В банках и прочих службах поддержки вообще нет смысла городить обучаемых ботов.Нужно просто однократно построить граф проблем с кнопкой «нет времени объяснять, зови оператора» на каждом этапе.