Обновить
2
Богдан Бакута@Aloncie

Software Engineer | C++ & Linux Specialist

Отправить сообщение

Идея мне понравилась, если бояться, что LLM может врать и часто галлюцинировать. Но почему не ограничиться обертка и над LLM? Хотя по твоему

“а вот было бы прикольно внедрить разные модели нейросетей в один чат и заставить их думать, что они реальные люди и работают в корпорации.”

я думал, что будет чат со всеми LLM и юзером, типо группы.

Мне так же интересно было бы услышать:

  1. Почему изначально были выбраны такие модели? Если не даёшь сравнение, то хотя бы покажи, какие важные пункты надо учитывать.

  2. Откуда вообще появился KIMI? на скриншоте с LLM его нет в работе - потом он резко появился.

Я понял, спасибо за критику. Я пофикшу CMake и циклички. Про использование объектов классов не через m_ я даже не знал, только если в структуре Options, которую я добавил, так что посмотрю. Рад, что проект зацепил) Я буду активно его развивать ещё некоторое время, так что моменты для улучшения лишь дают мне рост.

Еще раз спасибо!

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

Про LinuxFallbackSetter и Windows - мой косяк. В коде пока только заготовки и планы, в статье я имел ввиду только плановую поддержку Windows.

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

Для оформления README и профилей действительно использую ИИ. Но архитектуру и статью пишу сам. Ошибки в репозитории это как раз подтверждают)

Я понял. Учту в следующих статья. Спасибо за критику.

Автор, привет! Тоже школьник, вникаю в ML, но пока больше в теории. Статья — огонь, особенно кайфанул с расследования про "смерть" Ростова и Бездаровского. Реально жизненная ситуация с 10 ГБ, сам мучаюсь с колабом.

Но пока читал, поймал себя на мысли, что пару моментов ты перемудрил. Поделюсь как коллега, вдруг пригодится во втором сезоне:

1. Доверился Gemini как арбитру. Нейросети — не верификаторы. Твои 93% — это просто "Gemini согласен с Saiga". Литераторша бы сказала, что это круговая порука ИИ-шников.
💡 Совет: Возьми 10–15 случайных глав и вручную сверь саммари с оригиналом. Посчитай, сколько без ошибок, сколько с путаницей в именах, сколько с ляпами. Простая табличка в Excel даст честную цифру. Или используй Gemini, но пусть оценивает каждую главу отдельно с жесткими критериями — будет объективнее.

2. С "Бездаровским" перехитрил себя. Теория про склейку токенов звучит красиво, но это фантазия без проверки.
💡 Совет: Залезь в токенизатор: tokenizer.tokenize("Безухов") и tokenizer.tokenize("бездарный") — увидишь реальное разбиение. Если токены не пересекаются, гипотеза рушится. Если проблема в путанице фамилий, проще добавить few-shot примеры в промпт, а на постпродакшене подставить словарь.

3. Эксперимент с "умер/выжил" — это боль. Ты заставил модель отвечать одним словом, а она этому не училась. В логе "герой Ник..." — это не энтропия, а модель пытается вежливо ответить "герой Николай выжил", а ты её обрезаешь.
💡 Совет: Не заставляй отвечать одним словом. Дай сгенерировать 20–50 токенов, потом парси ответ на ключевые слова. Или используй model.forward() напрямую, чтобы получить логиты для токенов-кандидатов — так увидишь реальные вероятности без артефактов.

4. Системный промпт превратил в кодекс законов. С промптом вроде "ЗАПРЕЩЕНО убивать героев" модель тупит сильнее (помнишь, она упорно пыталась родить "герой Николай"?).
💡 Совет: Дай 2–3 примера правильного пересказа (few-shot) вместо кучи запретов. Модели легче учиться на примерах, чем следовать длинному списку "нельзя". Температуру оставь 0.3–0.5, чтобы не тупила.

5. Обрезка по символам — классика. 7500 символов логичны для человека, но для LLM это стрельба из пушки по воробьям.
💡 Совет: Режь по токенам через tokenizer.encode(). У Llama контекст 8К, но оставляй запас под ответ. И лучше разбивай по предложениям, чтобы глава не обрывалась на середине мысли — тогда модель будет видеть законченные сцены и меньше ошибаться.

В целом лютый респект, что затащил "Войну и мир" на 3080. Если бы ты эти моменты чуть иначе разложил, статья была бы бронебойной. Буду ждать следующих постов!

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Десктоп разработчик, Бэкенд разработчик
Git
Docker
Linux
ООП
C++
Qt
Многопоточность
Cmake
Английский язык
Объектно-ориентированное проектирование