Новый член семьи

в категориях собака, жизнь

Руби

В семье с 22.03.2025

UPD.: спустя 5 дней выяснил, что активный щенок — это очень дорогая подписка на бессонницу.

I'm sorry, how exactly this generation is augmented?

в категориях AI, работа

По работе мне нужно хорошо разбираться в LLM, RAG, ML и так далее — в постоянно развивающихся технологиях и глупеющих людях, короче. Я постоянно учусь, много читаю, даже сделал себе на сайте подборку актуальных новостей про AI.

Так вот, помимо RAG, который я еще толком не успел попробовать руками, в мире уже начали появляться экстеншены и фреймворки для разных задач. Изучил вопрос, делюсь с собой из будущего.

Начнем с RAG (Retrieval Augmented Generation). Это инструмент, который позволяет LLM не просто генерировать текст, а опираться на актуальные внешние данные. Представляем чат-бота, который не ограничен своими устаревшими знаниями, а может заглянуть в свежие источники. Полезно? Безусловно. Особенно в справочных системах, поиске информации, да и в целом везде, где важна актуальность информации и отсутствие галлюцинаций. Но у него есть нюанс — он не анализирует связи между данными, а просто подставляет их в контекст.

CAG (Cache Augmented Generation) расширяет возможности RAG, управляя объемом и глубиной извлекаемых данных. Это как юрист, который сначала просматривает краткую справку, а при необходимости читает весь документ. Такой подход полезен там, где важен баланс между скоростью работы и уровнем детализации — например, в юридических и финансовых системах.

Ключевая концепция CAG заключается в использовании кэша Key-Value (KV). Когда LLM обрабатывает запрос пользователя, она создает пары ключ-значение, где ключом является метка, а значением — информация, связанная с этой меткой. В традиционных системах после генерации ответа все созданные пары удаляются. Однако CAG сохраняет эти метки для дальнейшего использования, что позволяет эффективно повторно использовать информацию в последующих запросах. Таким образом, при обработке коллекции документов мы вычисляем и сохраняем кэш KV для всех документов, что ускоряет процесс вывода и повышает точность ответов.

(Верхняя часть иллюстрирует конвейер RAG, включая динамическое извлечение данных и подачу текстов для ссылки в процессе инференса, тогда как нижняя часть демонстрирует подход CAG, который предварительно загружает KV-кэш, исключая необходимость извлечения данных и подачи текстов для ссылки на этапе инференса.)

Dataset Size RAG Response Time CAG Response Time Speedup
Small 9.25 seconds 0.85 seconds 10.9x
Medium 28.82 seconds 1.66 seconds 17.4x
Large 94.35 seconds 2.33 seconds 40.5x

Вот так — в 40 раз!

KAG (Knowledge Augmented Generation) идет дальше. Он использует не только извлечение данных, но и работу со структурированными знаниями: базами, семантическими графами, онтологиями. Его задача — не просто найти нужную информацию, а выстроить из нее логически связанный ответ. Это дает более осмысленный результат. Но есть обратная сторона — такой метод не всегда подходит для задач в реальном времени. Точнее, почти всегда не подходит, но тут надо определиться, в какой момент время становится реальным.

А еще в отличие от RAG, который ограничен векторным поиском и извлечением через модели, такие как BM25 или dense retrieval, KAG требует гораздо более высоких вычислительных мощностей.

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

Для крупных банков эти технологии — инструмент оптимизации. Если важно оперативно отвечать клиентам или обрабатывать большие массивы данных — RAG или CAG подойдут. Если же задача в глубоком анализе и прогнозировании — здесь KAG интереснее.

Примерно так на момент середины марта 2025 это все работает. Для моих задач пока нужен только RAG, но сильно интересно было бы попробовать KAG на реальных задачах крупного банка.

Экосистема Apple и зеленый текст

в категориях гаджеты, Эпл, андроид

Часто слышу восторженные возгласы блогеров про уютную экосистему Эпла, которая так всем полюбилась и работает около-идеально. Эти люди знают, что кроме Эпл существует еще что-то там с зеленым текстом, но оно для нищих, не представляет интереса и вообще плетется в хвосте.

Однако, к моей радости, это не так. Я настолько люблю обратную совместимость у Андроида с чем угодно, что совершенно перестал чуствовать себе заложником Эпла с тех пор, как покинул секту. Мне совершенно неважно, кто сделал мои часы — они будут работать с моим телефоном без проблем, мне все равно, кто придумал ноутбук, за которым я работаю — мой телефон к нему в любом случае подключится и будет работать без нареканий. Я видел презентации Эпла про дублирование экрана телефона на макбуке, про копирование между устройствами жестами, про чуть ли не оргазмической красоты анимации повторения каких-то манипуляций на айпаде при совершении их на маке. Я рад, что такое существует, но Эпл настолько далек от моих реальных потребностей, что все эти новые фичи для меня просто «вау, круто выглядит», но не более — я за 20 лет в ИТ ни разу не испытывал потребности в подобных фичах или хотя бы их части. Однако, я — повторюсь — рад, что технологии такие есть и кому-то нужны.

Отдельной строкой хочу доложить, что спустя год попыток и вторых шансов я отказываюсь от приложения Mail и перехожу обратно на гетеросексуальный Gmail. Да, я пока на макбуке, потому что пока нравится.

А лучшим нативным почтовым клиентом для макоси до сих пор остается Spark, хоть я и не могу им пользоваться по понятной причине. Надеюсь, скоро снова смогу, но, боюсь, могу быть уже не на маке.

Травмы

в категориях непсихолог, людишки

Вчера моя жена слушала какой-то подскаст про травмы, отношения каких-то девочек-ведущих со своими отцами и как это на них в жизни глобально сказалось. Так вот, они так часто упоминали, что они какие-то все травмированные с детства, что надо проработать эти травмы, что вот отец всему виной и с личной жизнью теперь не складывается (потому что какой-то абьюзер или нарцисс бросил — про это вообще через слово).

И вот у меня возник вопрос: почему современный человек вдруг так яростно начал искать в себе какие-то травмы? Да потому, думается мне, что гораздо проще переложить ответственность либо на какого-то члена семьи, либо на абьюзера, нарцисса, тюбика, кого-то еще — из-за которого у тебя в жизни любви было меньше, чем у других, и возложить ответственность за решение этой проблемы на психолога. А сам посередине: «проблема не из-за меня, и решать ее не мне».

Психологам отлично — прорабатывать с бесконечным потоком обиженных на жизнь девочек их травмы можно бесконечно, а в головах у людей как было насрано, так и осталось. И дальше — хуже.

Осознанность 1.0

в категориях непсихолог, наблюдения

Вот еще одна штука, которую я понял. Связь с реальностью — это не абстракция, это диалог. Делаешь → смотришь на результат → корректируешь курс → шаг дальше. Последовательно. Маленький — это же эксперимент. Глобально — эволюция, но в микромасштабах. Это прям реальный способ понять, что работает, а что нет. Никаких гипотез, только результаты действий (страданий иногда).

Когда-то мне нравилось думать, что я могу предсказать будущее, что я один вот прям точно понимаю, куда все идет и почему. А потом понял, что оказывается людей, которые через ошибки и неудачи дойдут до того, что мне сейчас кажется (или всегда казалось) очевидным, всегда будет много и с годами, вероятно, больше. Не исключаю, что путь своего развития я выбрал (и/или мне выбрали) верно, и все благодаря этому, но кажется, что как минимум не только. Скорее это всего лишь эволюционный результат множества случайных мутаций и перебора вариантов. Очевидно, «эго — плохой советчик».

Даже удачные траектории жизни — часто результат проб и ошибок, а не гениального плана.

Вот, например, бабочки. Они себе отрастили узоры, чтобы отпугивать хищников. Это случайные мутации, закрепленные природой. А может, были бабочки с узорами в виде гигантских жоп — может же быть? Они не знали, что это не сработает. И мы тоже не знаем, в чем наш «узор» сработает. Мир — это хаос, и все еще никто не знает, как всё устроено. Поэтому мы постоянно меняем себе узоры с жоп на одуванчики в надежде, что сработает.

Чем дольше что-то существует, тем выше вероятность, что это не просто случайность.

Когда уже понял, что мир до смешного хаотичен и бабочки с узорами чего угодно все равно вымирают, грустно пожимаешь плечами и делаешь себе лепешку из хлеба и воды, делая вид, что так и должно быть. Я вообще часто убеждаюсь и нередко говорю близким, что все происходит так, как должно быть. Любимая мантра последних лет. Эпиктет бы гордился — мы с потрясающей эффективностью превращаем его учение в интеллектуальный щит от собственного бардака.

Ранее в сериале

Смотри также