# LangChain Evolution Deck Большой tutorial-дек по эволюции экосистемы LangChain: от chains 2022 года до Open SWE 2025/2026. 132 слайда в dark mode, плотный Python 1.0+ код, кириллица. ## Что внутри деки | # | Секция | Слайдов | |---|--------|---------| | | Cover + TOC | 2 | | 1 | LangChain 1.0 — chains, LCEL, agents, retrievers | 27 | | 2 | LangGraph 1.0 — state, nodes, persistence, HITL, streaming | 33 | | 3 | Deep Agents — harness, todos, virtual FS, subagents | 26 | | 4 | Open SWE — async coding agent, triggers, dashboard | 24 | | 5 | Экосистема — LangSmith, Studio, deployment | 12 | | | 5 dividers + 3 recap (timeline / what's next / closing) | 8 | | | **Всего** | **132** | ## Файлы - `output/langchain-evolution.pptx` — финальная презентация (2.3 MB) - `output/langchain-evolution.pdf` — PDF-версия (1.1 MB) - `output/previews/slide-NNN.png` — PNG-превью (132 файла) ## Структура репо ``` . ├── design-system.js # Theme tokens + 9 helper-функций для слайдов ├── design-system.md # Гайд на русском для кодеров ├── final-compile.js # Генератор intro/dividers/recap ├── merge.js # JSZip-merge всех секций в один pptx ├── final-merge.py # Альтернативный Python-merge (для отладки) ├── package.json # pptxgenjs + jszip ├── research/ # phase 0 — research │ ├── timeline.md # единый таймлайн LC 0.1 → 1.0, LangGraph, Deep Agents, Open SWE │ ├── sources.md # 56+ URL с reliability notes │ └── per-tech/ # 4 файла (chains, langgraph, deepagents, openswe) ├── slides/ # исходники 5 секций │ ├── section1-chains/ # compile.js + slide-NN.js │ ├── section2-langgraph/ │ ├── section3-deepagents/ │ ├── section4-openswe/ │ └── section5-ecosystem/ └── output/ # финальные deliverables ├── langchain-evolution.pptx ├── langchain-evolution.pdf └── previews/ ``` ## Как пересобрать ```bash npm install # Каждая секция независимо: node slides/section1-chains/compile.js node slides/section2-langgraph/compile.js node slides/section3-deepagents/compile.js node slides/section4-openswe/compile.js node slides/section5-ecosystem/compile.js # Chrome (cover + TOC + 5 dividers + 3 recap): node final-compile.js # Склейка в один pptx: node merge.js # PDF: soffice --headless --convert-to pdf --outdir output output/langchain-evolution.pptx # PNG-превью (опционально): pdftoppm -r 80 -png output/langchain-evolution.pdf output/previews/slide ``` ## Технологии - **pptxgenjs** — генерация PPTX в Node.js - **JSZip** — zip-merge секций в один файл - **LibreOffice (soffice)** — конвертация PPTX → PDF - **pdftoppm (poppler)** — рендеринг PDF → PNG превью - **Inter** + **JetBrains Mono** + **Arial** (кириллица fallback) ## Дизайн-токены (палитра) ``` bg.primary = #0A1A2A // основной тёмный bg.elevated = #142B3F // карточки bg.code = #0F1E2E // фон для кода text.primary = #E6F0F7 text.secondary = #B5C4D1 accent.primary = #219EBC // teal accent.secondary = #FFB703 // gold accent.tertiary = #8ECAE6 // light blue ``` ## Пре-компайл lint В исходниках запрещены: - em-dash (`—`) и en-dash (`–`) - smart quotes (`"`, `"`, `'`, `'`) - ellipsis (`…`) - non-breaking space Все слайды проверены — 0 нарушений в owner-authored slides (cover, TOC, dividers, recap). Слайды из секций были проверены на этапе pre-compile самими секционными кодерами. ## Известные визуальные ограничения На самых длинных code-слайдах (25-28 строк, например slide 11, 36, 42, 44, 53) код на 10pt читается, но слегка выходит за границы карточки. Варианты фикса: - разбить >20-строчные snippets на 2 слайда каждый - уменьшить `sizes.code` с 10pt до 8pt - увеличить `cardH` в design-system Структурных дефектов нет: 132 слайда, lint pass, актуальные API (langchain 1.3.10, langgraph 1.2.6, deepagents 0.6.11, langsmith 0.8.9, open-swe 1.0). ## Лицензия MIT. Исходники кода примеров — из официальных документаций LangChain, LangGraph, Deep Agents, Open SWE. Атрибуция в `research/sources.md`.