К основному содержимому
#AI

[2/2] Hands-On Large Language Models (Рубрика AI)

#AI #Architecture #Software #Engineering #ML #Data #SystemDesign #DistributedSystems

Продолжая рассказ про эту книгу, скажу о том, что она состоит из трех частей и 12 глав (я пока прочитал четыре с половиной главы, поэтому про них расскажу подробнее). Но если кратко, то книга начинается с основ LLM, дальше авторы переходят к их использованию для решения задач, а заканчивают методами обучения моделей.

Часть I: Понимание языковых моделей Первая часть закладывает фундамент, объясняя, что такое языковые модели и как они устроены. Глава 1. Здесь приведен обзор развития обработки языка - от "bags of words и классических представлений текста до появления методов вроде word embeddings и архитектуры трансформеров. Читатель узнает, что собой представляют большие языковые модели, и чем они отличаются от предыдущих подходов. В главе также обсуждается, почему LLM стали настолько полезными. Глава 2. Авторы погружаются в тему токенизации и эмбеддингов - ключевых понятий для представления текста в численной форме. Авторы подробно описывают, как работает токенизатор LLM (преобразуя текст в токены), сравнивают разные виды токенов (слова, подслова, символы, байты) и демонстрируют свойства обученных токенизаторов. Далее рассматривается, как модель превращает токены в векторные представления (эмбеддинги) и как эти эмбеддинги могут использоваться для представления слов, предложений и документов. Приводятся примеры, как с помощью эмбеддингов измерять семантическую близость текстов. В этой же главе объясняются традиционные алгоритмы построения эмбеддингов (например, word2vec) и более современные подходы, вплоть до того, как LLM сами формируют эмбеддинги во время работы. Завершает главу практический пример: обучение модели эмбеддингов для рекомендательной системы (например, рекомендация песен по схожести эмбеддингов). Глава 3. Авторы показывают внутренности трансформера, объясняя что происходит под капотом. Они рассказывают про forward-pass модели: как обрабатываются входные токены, как вычисляется матрица внимания (attention) и как на её основе модель выбирает следующий токен. Важная часть главы - интуитивное объяснение механизма Self-Attention (внимания), благодаря которому модель учитывает контекст слов при генерации. Также обсуждаются оптимизации: как модели обрабатывают несколько токенов параллельно, какой максимальный размер контекста поддерживается, и как кеширование ключей и значений ускоряет генерацию текста.

Часть II: Использование предварительно обученных моделей Вторая часть посвящена практическим способам применения готовых языковых моделей и эмбеддингов в разных задачах обработки текста. Здесь авторы переходят от устройства моделей к их использованию "из коробки" для решения прикладных задач. Глава 4. Классификация текста Глава 5. Кластеризация и тематическое моделирование (BERTopic) Глава 6. Инженерия промтов (Chain of Thought, ReAct, Tree of Thought) Глава 7. Продвинутые техники генерации текстов и инструменты (LangChain и агенты, Memory, Tools) Глава 8. Семантический поиск и Retrieval-Augmented Generation (RAG) Глава 9. Мультимодальные модели (текст + картинки, CLIP, BLIP-2)

Часть III: "Обучение и тонкая настройка моделей" Последняя часть книги посвящена тому, как создавать свои модели и адаптировать существующие LLM под конкретные задачи. Здесь материал становится более продвинутым Глава 10. Создание моделей эмбеддингов для текста Глава 11. Fine-tuning representation models для классификаций Глава 12. Fine-tuning генеративных моделей

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

#Architecture #Software #AI #Engineering #ML #Data #SystemDesign #DistributedSystems