SnapMatch — делаю AI-ботов в Telegram простыми для всех
Привет! Меня зовут Артём! Сегодня я хочу рассказать о своём проекте SnapMatch, который делает AI-ботов в Telegram доступными каждому.
Я до этого не занимался полноценно разработкой, особенно такого масштаба. Даже с учётом помощи иишки и сторонних ресурсов потребовалось много времени для создания полноценного и работающего проекта. И статьи не писал до этого тоже.
Что это такое?
SnapMatch — это приложение, которое связывает LM Studio (Наш AI) и Telegram. Оно реализовывает удобную историю для каждого юзера, позволяет использовать сразу несколько моделей, имеет реализацию очереди для юзеров и уведомляет, если контекст модели подходит к концу. Ну и простой графический интерфейс, который без всяких сложностей позволяет настроить всё под себя.
Основные функции
- Без кода — всё через простые, но красивые окошки и кнопочки
- Всё локально — всё у вас на компе
- История — у каждого юзера свой контекст, который он может очистить в любое время
- Очередь — каждый юзер дождётся и не будет перебит другим. Также можно настроить приоритет, если надо
- Распределение нагрузки — можно использовать сразу несколько моделей, которые будут распределять нагрузку между собой
- Русский интерфейс — всё понятно, всё по-нашему. Ну а другого я не делал :)
- Подсказки — если навесить на элементы, то будет показано небольшое пояснение о каждой настройке
- Бесплатно — качай и пользуйся!
Как это работает?
Думаю, что мне стоит ещё отдельно записать видео с установкой и настройкой программы, но пусть тут будет пока краткая инструкция.
- Скачиваете LM Studio и SnapMatch
- Создаёте бота в Telegram
(только не забудьте добавить боту команду clear_history для очистки контекста) - В LM Studio выбираете модель, загружаете её и запускаете сервер
- В SnapMatch вставляете токен бота и адрес и ключ из LM Studio
- Жмёте "Запустить" — и вуаля! У вас свой AI-бот в кармане!
После установки можно идти настраивать LM Studio и делать бота в телеге.
При создании бота не забываем добавить ему команду очистки истории.
По итогу переносим данные в SnapMatch.
Не забудьте только нажать кнопку "Сохранить настройки" после всех выполненных настроек! Модели сохраняют настройки автоматом, вас об этом уведомят, а вот чтобы сохранились основные настройки надо обязательно нажать на кнопку сохранения.
После выполненных манипуляций в основной вкладке вы увидите, что сервер запущен.
И чуть отойду в сторону и расскажу про «Историю чата», изначально оно нужно было для проверки, доходит ли до юзера/модели запросы/ответы, плюсом там же были логи, которые помогали отследить ошибки. По итогу я решил это оставить и разделить на «Историю чата» где сообщения юзера и бота, и на «Системные логи», но в данном случае логи чуть подрезаны и там не вся-вся информация выводится сейчас. И наверно стоит упомянуть, что если пользователь очищает историю, то она у вас, следовательно, тоже пропадает.
Для кого это?
Изначально приложение было нацелено на то, что будет использоваться в небольшой группе людей. А так оно для всех, кто хочет попробовать что-то новое, ну или искал подобное. Не важно, разбираетесь вы в программировании или нет — если умеете нажимать на кнопки, значит, сможете создать своего бота. хе
Что дальше?
Пока приложение только на русском, можно было бы и на английский для приличия перевести. Ну и повторюсь, что было бы неплохо в скором времени записать виде-тутор по первой настройке. Ещё я хотел реализовать плейсхолдеры, но пока решил остановиться на основном функционале программы. Очень хочется, чтобы программка стала полезной для кого-нибудь, поэтому буду рад любой обратной связи, идеям и критике!
Заключение
Также оставлю ссылку на ТГК, где вы можете скачать моё приложение.
Жду вас - тут.
Ну и конечно спасибо, что дочитали! Если попробуете — расскажите, как прошло. А если будет интересно узнать больше технических деталей — дайте знать, я с радостью расскажу подробнее!