docs: add examples/ usage section to README

This commit is contained in:
2026-06-22 12:03:37 +03:00
parent 1fd7486a85
commit c4a8099536
+118
View File
@@ -0,0 +1,118 @@
# 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`.