Skip to main content

Рефлекция по следам работы с отечественной нейросетью

Прикрутил GigaChat к проекту и, кажется, сделал его хуже

Обложка поста

Введение

Только что закончил работать над новой версией помощника по планированию отпусков с GigaChat и понял, что убил его

Сначала у меня был простой инструмент - календарь для планирования отпусков. Он помогал выжать максимум дней отпуска из праздников и переносов

После

  • неплохой статистики для no-name инструмента
  • получения около 20 положительных откликов и баг репортов

я решил улучшить инструмент. Ниже статистика с первого дня запуска

Планировщик отпуска версии 1.0 - статистика

Потом я подумал "А давай добавим GigaChat, пусть он подбирает страны, пишет рекомендации и вообще будет виртуальным туроператором"

В результате проект за пару недель прошел три итерации

Версия 1.0

Версия 1.0 - производственный календарь на максималках

  • UX - для MVP сойдёт, но выглядит как привет из нулевых. Нет мобильной версии
  • понятная полезность
  • много багов по логике и прозводительности
    • ошибки в алгоритмах определения диапазонов дат
    • промах в проектировании который превратил один компонент календаря в элеемент формы с 365 контролами...
    • вся форма без кэширования (useMemo, useCallback, memo), на react-hook-form + mui Control

Планировщик отпуска версии 1.0

Версия 2.0

Версия 2.0 - помощник планирования который уже общается с GigaChat но это не очевидно

  • UX - много шума из-за календаря где много акцентов. Глаз не знает за что цепляться, всё конкурирует за внимание. Блок с рекомендациями всплывает там где ты его не ожидаешь - внизу. Неудачная игра в glass-morphism. Нет мобильной версии
  • непонятная полезность. В первую очередь из-за UI
  • нет багов по логике и прозводительности. Учтены все косяки первой версии

Планировщик отпуска версии 2.0

Версия 3.0

Версия 3.0 - помощник планирования который уже общается с GigaChat и это понятно

  • UX - нет шума, акценты понятны. Есть мобильная версия
  • полезность сомнительная. Причина - по большому счёту это построитель промпта для GigaChat без возможности продолжить диалог
  • нет багов по логике и прозводительности

Планировщик отпуска версии 3.0

Вынесенная полезность

Несмотря на то, что я убил микро-продукт стоит отметить, что не всё было напрасно

Прокси сервис для GigaChat

Впервые с 2015-го года написал свой back-end сервис на Java (использовал Java-Spring). Последний раз я вручную запускал Tomcat и паковал тоже вручную. Ко всему прочему это была Java 7 (только только выходила Java 8)

Ниже внутренняя архитектура сервиса. Вкратце

  • есть ядро
  • и адаптеры как элемент масштабирования под последующие проекты

Опыт работы с GigaChat API

Что интересного

  • в первую очередь удобный портал
  • есть бесплатный план на 1 миллион токенов
  • но только вот жрет каждый запрос не менее тысячи
  • и при настройке я долго не мог сконектиться с GigaChat. Причина - а ты попробуй разгляди поле RqUID. Без него работать не будет. Да и отдавать корректный код ошибки тоже

Фрагмент настройки обращения к GigaChat - часть с RqUID

Но не считая этого кабинет действительно удобный Фрагмент настройки обращения к GigaChat - кабинет разработчика

Но токены улетают конечно с большой скоростью Фрагмент настройки обращения к GigaChat - кабинет разработчика со статистикой

Стоимость фичи

Помимо приобретенных и вернувшихся знаний есть еще и затраты

  • по времени - 34 часа (трекаю время через Toggl)
  • по деньгам
    • GigaChat api - бесплатная версия
    • GigaChat proxy-service на timeweb.cloud - 355 рублей в месяц

Статистика потраченного времени на разработку виртуального туроператора

Ну и вот скрин конфигурации моего сервиса Конфигурации сервиса общения с GigaChat

Итого

При неплохом старте на первой итерации есть потери по ценности на втором этапе. Причина - увлёкся

  • на первом этапе - у меня был хороший план и +- я ему следовал
  • на втором этапе - я был движим вдохновением и двигался без цели

Круто увидеть, что за 10 лет индустрия изменилась до неузнаваемости (я про Java)

  • мощные фреймворки со своей экосистемой которые помогают избавить тебя от рутинных операций
  • и еще ИИ который позволяет тебе местами вообще уйти от написания кода

Несмотря на потерю ключевой ценности

  • покопался в забытой технологии
  • создал себе масштабируемый сервис для GigaChat
  • ну и поработал с GigaChat

Буду очень рад любой обратной связи, комментариям, предложениям. Можем вместе что-нибудь запилить или сделать это сервис great again. But actually it never was

Ссылка на обновленный планировщик