Помню 2 курс, я начинаю кроме технических знаний на лекциях, постигать мир настольных игр. "Эволюция", "Колонизаторы", "Мафия", и много много других интересных и не очень настольных игр.
И вот среди других интересных и не очень, попался мне "Иманджинариум". Идея игры мне показалась гениальна и проста, загадывать ассоциации к картинке, но сама игра не зацепила.
Прошло 10 лет, и в ChatGPT появилась возможность через Dalle генерировать картинки, у меня появилась идея.
А что если сыграть в Имаджинариум наоборот. Сгенерировать картинку, и попробовать отгадать фразу, по которой она сгенерировалась?
Вначале я объяснил мою идею Dalle и попросил загадать какое-то слово и создать картинку на него. Полчаса поигрался с Dalle, удивился до чего дошёл прогресс. Шайтан машина поняла мою идею и играла со мной.
После решил опробовать идею на людях. Подопытными кроликами стали мои одногруппники по репатриантской программе в Израиле. Я загадал слово "игра" и попросил dall-e сделать изображение в стиле игры Имаджинариума. Картинку от нейросети отправил в чат одногруппников, предварительно объяснив мою идею. Многим идея понравилась, и мы часто играли в эту игру.
Со временем появилась идея, что ведущий должен подсказывать только с помощью реакции на сообщения. Такое изменение, сделало игру чем-то похожим на словесного "крокодила", когда надо без слов что-то объяснить.
Так как мы часто играли, в какой-то момент у меня стало много времени уходить на то, чтобы сгенерировать картинку (у остальных моих знакомых не было доступа к Dalle), и согласовать её с новым ведущим. В связи с этим решил, надо сделать телеграм бота для этих целей.
Тут важная оговорка. Я прям джун джуном, и программирую на C#, что мягко говоря не самый популярный вариант для создания телеграмм бота. Мой максимум до этой затеи, бот, которые на сообщение "Привет", ответит "Привет".
Изучив подробнее API для телеграм ботов, и задав под тысячу вопросов ChatGPT, у меня получилось сделать Вербализариум бот.
В процессе работы над ботом я внедрил ряд функций:
Генерация изображений через API нейросети Кандинский 3.0.
Поддержка автоматической и ручной загрузки картинок.
Возможность ChatGPT реагировать на догадки пользователя и формулировать новые загадки.
Поддержка русского и английского языков, с возможностью переключения между ними.
Введение соревновательного элемента и статистики для игроков.
Про техническую сторону:
Mongo (надо бы для часто используемых операций Redis подключить)
Для получения обновлений от телеграмма использую пока Polling (надо переделать на Webhook)
Nuget Telegram.Bot
Для подсказок использую GPT-4 и GPT3.5Turbo
Хотелось бы поделиться с каждым читателем получившимся результатом. Ведь всё что вам нужно чтобы поиграть, это телеграмм и чат со знакомыми.
Переходим в бот - https://t.me/Verbalizarium_bot, добавляем бота в чат, в котором хотите поиграть, и создаём игру. Очень рекомендую создавать отдельный чат для игры или отдельную тему в чате, если в вашем чате есть разделение на темы. В противном случае, участники чата которые не хотели играть, будут справедливо бухтеть, "Что за + 200 сообщений за час?".
При добавлении бот спросит предпочитаемый язык и выдаст на нём дальнейшую инструкцию:
В дальнейшем, я хотел немного монетизировать свой проект. Вербализариум кушает в месяц около 40 моих долларов. Часть на хостинг, часть на запросы к chatGPT.
При увеличении количества активных участников, цифра будет увеличиваться. Этим объясняется ограничение в количестве подсказок и реакций. В обозримом будущем, подсказки от бота можно будет докупить, прямо в телеграмме. Но так как мой продукт сырой, а подсказки порой совсем плохи, не готов за их использование
Для тех, кто столкнётся с какими-либо проблемами в процессе использования Вербализариума, или захочет поделиться идеями и предложениями, я создал отдельный чат: https://t.me/+_-ncV9R-EjliOGYy .
Прошу, не судите строго. Помните, я не художник, но я так вижу.
Комментарии (2)
DiegoV
22.04.2024 11:21+1Поиграл, пощупал бота - да тут годнота подъехала, так еще и с заделом под монетизацию. Хорошая идея и неплохая реализация, учитывая, что автор называет себя джуном.
Atreides07
Для джуна неплохо. Успехов в развитии. А C# для ботов в телеге норм, это не такое уж редкое явление как Вам кажется