Оглавление

  1. Введение и Дорожная карта
  2. Основы AI и Машинного обучения (ML)
  3. Большие языковые модели (LLM) и Трансформеры
  4. Жизненный цикл модели и Оптимизация
  5. Среды разработки и Практическая настройка
  6. Промпт-инжиниринг (Prompt Engineering)
  7. Работа с API и Моделями как Сервисом (MaaS)
  8. Экосистема Hugging Face
  9. Локальный запуск LLM
  10. AI-ассистенты для кодинга
  11. RAG и Векторные базы данных
  12. Деплой и Инфраструктура (Ops)
  13. Аппаратное обеспечение (Hardware)
  14. Агенты (Agents)

1. Введение и Дорожная карта

Модель зрелости (Maturity Model)

  • Skill Tree: Обучение построено как дерево навыков, а не линейный путь.
  • Модальности (Modalities): Текст, Изображения, Видео, Аудио (Whisper), 3D, Нишевые (ДНК, белки).
  • Типы доступа к моделям:
    • Open Source: Открыты веса, код и данные (пример: IBM Granite).
    • Open Weights: Открыты только веса (Mistral, Llama).
    • Closed: Закрытые проприетарные модели (OpenAI, Anthropic).

2. Основы AI и Машинного обучения (ML)

Иерархия понятий

  • AI (Искусственный интеллект): Симуляция (подражание) человеческого интеллекта. Важно: Это симуляция, а не эмуляция процессов мозга.
  • ML (Машинное обучение): Алгоритмы, находящие закономерности в данных без явных правил.
  • DL (Глубокое обучение): Использование многослойных нейронных сетей.
  • GenAI (Генеративный ИИ): Создание нового контента на основе существующих данных.

Типы обучения

  • Supervised (С учителем): Размеченные данные (Ground Truth). Задачи: Классификация и Регрессия.
  • Unsupervised (Без учителя): Поиск скрытых паттернов. Задачи: Кластеризация и Снижение размерности.
  • Reinforcement (С подкреплением): Обучение агента через награды и штрафы в среде.

Нейронные сети и Активация

  • Структура: Входной слой $\to$ Скрытые слои (Hidden Layers) $\to$ Выходной слой.
  • Backpropagation: Механизм обновления весов (weights) для минимизации ошибки.
  • Функции активации:
    • ReLU: Самая популярная (“умирает” при x < 0).
    • Leaky ReLU: Решает проблему “умирания” нейронов.
    • Sigmoid/Tanh: Диапазоны (0,1) и (-1,1), страдают от исчезающего градиента.
    • Softmax: Используется на выходе для получения вероятностей (сумма = 1).

3. Большие языковые модели (LLM) и Трансформеры

Архитектура Трансформера (Статья “Attention is All You Need”)

  • Encoder (Кодировщик): Анализирует входной текст, создает семантическое представление (пример: BERT).
  • Decoder (Декодировщик): Генерирует выходной текст токен за токеном (пример: GPT).
  • Механизм Attention (Внимание):
    • Self-Attention: Слово “смотрит” на другие слова в той же фразе для понимания контекста.
    • Multi-Head Attention: Параллельные “головы” внимания для разных аспектов (грамматика, смысл).

Фундаментальные концепции обработки данных

  • Токенизация: Разбиение текста на мелкие части (слова, части слов).
  • Эмбеддинги (Embeddings): Представление токенов в виде векторов в многомерном пространстве. Схожие по смыслу векторы находятся рядом.
  • Позиционное кодирование: Добавление информации о порядке слов (так как трансформер обрабатывает всё параллельно).

4. Жизненный цикл модели и Оптимизация

Параметры vs Гиперпараметры

  • Параметры: Внутренние веса (настраиваются моделью в процессе обучения).
  • Гиперпараметры: Внешние настройки (Learning Rate, Epochs, Batch Size), задаются человеком.

Методы оптимизации

  • Fine-tuning (Дообучение): Адаптация Foundation Model под задачу.
    • PEFT / LoRA: Обновление малого числа параметров (эффективно по памяти).
  • Quantization (Квантование): Сжатие весов (например, из FP32 в INT8).
    • Математика памяти: 1 млрд параметров в FP32 $\approx$ 4 ГБ VRAM. В INT8 $\approx$ 1 ГБ.
  • Knowledge Distillation (Дистилляция): Обучение малой модели (Student) на основе предсказаний большой модели (Teacher).

Исследование Chinchilla

  • Правило: Оптимальное количество данных (в токенах) должно быть в 20 раз больше количества параметров модели.

5. Среды разработки и Практическая настройка

Инструменты

  • Jupyter Lab: Стандартная среда для экспериментов с кодом.
  • Conda (Miniconda): Изоляция Python-окружений для избежания “ада зависимостей”. Рекомендуется Python 3.10 для стабильности ML-библиотек.
  • Облачные IDE: Google Colab (бесплатный GPU), Lightning AI (быстрый старт), Amazon SageMaker Studio Lab.

Безопасность

  • Использование файлов .env и библиотеки python-dotenv для хранения API-ключей. Никогда не хардкодить секреты в коде.

6. Промпт-инжиниринг (Prompt Engineering)

Техники промптинга

  • Zero-shot: Задача без примеров.
  • Few-shot: Предоставление нескольких примеров “вход-выход”.
  • Chain of Thought (CoT): Запрос “рассуждай пошагово” (step-by-step).
  • Tree of Thoughts (ToT): Генерация и оценка нескольких путей решения.

Фреймворки и Агенты

  • CO-STAR: Структура промпта (Context, Objective, Style, Tone, Audience, Response).
  • ReAct (Reasoning + Acting): Цикл “Мысль $\to$ Действие $\to$ Наблюдение”.
  • Structured Output: Использование библиотеки Instructor и Pydantic для получения валидного JSON.

7. Работа с API и Моделями как Сервисом (MaaS)

Ключевые провайдеры

  • OpenAI: GPT-4o, стандарт индустрии.
  • Anthropic: Claude 3.5 Sonnet (лидер в кодинге).
  • Groq: Сверхбыстрый инференс на базе LPU (не GPU).
  • Amazon Bedrock: Единый API для моделей разных вендоров в AWS.
  • Azure AI: Доступ к OpenAI через инфраструктуру Microsoft (требует создания Deployment).
  • Replicate: Запуск open-source моделей (Flux, Stable Diffusion) с посекундной оплатой.

8. Экосистема Hugging Face

Основные компоненты

  • Model Hub: Хранилище моделей. Различают Base и Instruct (чат) версии.
  • Gated Models: Модели, требующие принятия лицензии (Llama, Gemma).
  • Spaces: Хостинг для демо-приложений (на базе Gradio/Streamlit).
  • Библиотеки: transformers (текст), diffusers (картинки), datasets (данные).

9. Локальный запуск LLM

Инструменты запуска

  • Ollama: Простой сервис для запуска моделей (Llama 3, Mistral). Работает через CLI и API.
  • Llamafile: Модель и движок в одном исполняемом файле (.exe или бинарник).
  • Llama.cpp: Движок на C++ для высокой производительности на CPU/GPU.

Форматы и интерфейсы

  • GGUF: Основной формат для локального запуска (поддерживает квантование).
  • Open WebUI: Локальный графический интерфейс, аналогичный ChatGPT (запускается через Docker).

10. AI-ассистенты для кодинга

Сравнение инструментов

  • GitHub Copilot: Отраслевой стандарт, хорошая интеграция.
  • Amazon Q: Высокое качество генерации кода, но нестабильный UI.
  • Windsurf (на базе Codeium): Лидер теста. Имеет режим Cascade (Flow) — агент, который сам правит файлы и запускает терминал.
  • Cody: Силен в контекстном поиске по всей кодовой базе.

11. RAG и Векторные базы данных

Концепция RAG (Retrieval-Augmented Generation)

  • Предоставление модели внешних данных для уменьшения галлюцинаций.
  • Процесс: Текст $\to$ Embeddings $\to$ Vector DB $\to$ Поиск контекста $\to$ Промпт в LLM.

Технологии хранения

  • Pinecone: Облачная специализированная векторная БД.
  • Elasticsearch: Поисковый движок с поддержкой векторов и веб-краулером.
  • MongoDB Atlas: Векторный поиск в NoSQL базе.
  • Postgres + pgvector: Реляционная БД с поддержкой векторных операций.
  • Context Caching: Кэширование тяжелых контекстов в API (Gemini/Claude) для экономии токенов.

12. Деплой и Инфраструктура (Ops)

Сервинг моделей (Serving Engines)

  • vLLM: Стандарт для высокопроизводительного инференса (технология PagedAttention).
  • TGI (Text Generation Inference): Решение от Hugging Face для продакшена.
  • OPEA: Открытая платформа от Intel/Linux Foundation для создания энтерпрайз-пайплайнов GenAI.

Инфраструктурные принципы

  • Sandboxing: Изоляция моделей в контейнерах (Docker), так как они потребляют много RAM и могут падать.
  • KServe: Деплой моделей на Kubernetes с автоскейлингом.

13. Аппаратное обеспечение (Hardware)

Типы процессоров

  • GPU (Nvidia): Тысячи ядер, экосистема CUDA/cuDNN.
  • TPU (Google): ASIC, оптимизированные под TensorFlow.
  • NPU/iGPU: Встроенные в современные процессоры (Intel Lunar Lake) ускорители для “AI PC”.
  • Intel Gaudi: Специализированные ускорители для обучения моделей.
  • VPU: Процессоры для компьютерного зрения (Intel Movidius).

14. Агенты (Agents)

Фреймворки оркестрации

  • LangChain: Популярен для обучения и прототипов, но критикуется за излишнюю сложность в продакшене.
  • LlamaIndex: Фокус на подключении данных и продвинутом RAG.
  • CrewAI: Фреймворк для создания команд агентов (ролевая модель: Разработчик, QA, Менеджер).

Принципы работы агентов

  • Роли (Roles): У каждого агента своя цель и предыстория (backstory).
  • Циклы обратной связи: Агенты могут проверять работу друг друга (QA проверяет код Разработчика).
  • Стоимость: Агентские ворклоулы потребляют много токенов из-за постоянного обмена контекстом.