Claude Info
Дизайн

Mck-ppt-design-skill

likaku/Mck-ppt-design-skill

AI-нативная система генерации PowerPoint в консалтинговом стиле: 65 шаблонов макетов, движок BLOCK_ARC для диаграмм, пайплайн QA после генерации, библиотека иконок. Работает на python-pptx, переносит ~80% вычислений с GPU на CPU.

Установка

terminal
bash
pip install python-pptx lxml

README

MCK PPT Design Skill

AI-нативная система дизайна PowerPoint — 65 макетов · движок диаграмм BLOCK_ARC · пайплайн QA после генерации · библиотека иконок · Python runtime

License Copyright

Copyright © 2024-2026 Kaku Li. Лицензия Apache 2.0. Подробности в NOTICE.

License Python python-pptx GitHub stars

English · 中文说明


Сообщество


⚡ v1.x → v2.0 — Ключевое изменение: GPU → CPU

v2.0 — это не просто экономия токенов на слайдах с диаграммами. Фундаментальное изменение — перенос ~80% вычислений с GPU (инференс LLM) на CPU (детерминированное выполнение Python).

В v1.x каждый пиксель каждого слайда генерировался AI-моделью — координаты, цвета, отступы, всё производилось токен за токеном через GPU-инференс. v2.0 переворачивает это с ног на голову: AI принимает высокоуровневые решения («использовать кольцевую диаграмму, 3 сегмента»), а затем Python-функции на стороне CPU берут на себя 80% работы, которая никогда и не требовала языковой модели.

Ключевая проблема v1.x

v1.x использовал чистую GPU-архитектуру. Весь SKILL.md (6 100 строк дизайн-спецификаций) находился в контекстном окне AI. Для каждого слайда модель должна была:

  1. Прочитать спецификацию макета из контекста (~500 токенов)
  2. Вычислить точные координаты в пикселях, размеры шрифтов, коды цветов (~200 токенов «размышлений»)
  3. Вывести сырые вызовы add_shape() / add_rect() с захардкоженными числами (~800 токенов на слайд)

Для диаграмм это было катастрофой: кольцевая диаграмма требовала от AI вывода 2 800 отдельных вызовов add_rect() — каждый из которых вычислялся GPU. Одна сложная диаграмма могла стоить ~2 минуты инференса, создавать файл 5 МБ и сжигать 40 000+ выходных токенов для колоды из 30 слайдов.

AI выполнял работу, с которой справился бы цикл for. Вот в чём настоящая проблема.

Как v2.0 решает это: функционализация

Ключевое наблюдение: большая часть генерации PPT — это детерминированные вычисления, а не понимание языка. v2.0 выносит эту детерминированную работу в Python-функции, выполняемые на CPU:

py
# v1.x: GPU вычисляет каждую координату (200+ токенов на диаграмму)
for angle in range(0, 360):
    add_rect(slide, x + cos(angle)*r, y + sin(angle)*r, ...)  # Каждая строка = GPU-токены

# v2.0: GPU решает ЧТО строить, CPU обрабатывает КАК
eng.donut_chart(title='Revenue', segments=[('A', 45, NAVY), ('B', 35, BLUE)])
# ↑ AI выводит ~20 токенов → CPU выполняет 2 745 строк детерминированного Python

Что перенесено с GPU на CPU:

  • Математика координат — позиции в пикселях, расчёты отступов, динамическое масштабирование
  • Рендеринг фигур — дуги BLOCK_ARC заменяют стопки прямоугольников (1 фигура вместо 2 800)
  • Очистка XML_clean_shape(), full_cleanup(), инъекция CJK-шрифтов
  • Логика макета — ширина колонок, высота строк, предотвращение переполнения
  • Контроль качества — весь пайплайн QA + автоисправление [v2.3]

Что остаётся на GPU:

  • Решения по контенту — какой макет использовать, какой текст писать, структура повествования
  • Дизайн-суждения — акценты, иерархия, визуальный сторителлинг
  • Понимание контекста — адаптация к намерению пользователя, тону, аудитории

v1.x vs v2.0 — Техническое сравнение

v1.x (чистый GPU)v2.0 (GPU + CPU)
Распределение вычислений~100% GPU (все токены)~20% GPU (решения) + ~80% CPU (выполнение)
Рендеринг диаграммСтопки add_rect() (100–2 800 фигур/диаграмма)Нативные дуги BLOCK_ARC (3–4 фигуры/диаграмма)
Генерация кодаAI пишет сырые add_shape() / координатную математику на каждый слайдAI вызывает eng.donut_chart(), eng.cover() и т.д. — 65 высокоуровневых методов
Итераций на колоду из 30 слайдов10–15 (метод проб и ошибок)3–4 (детерминированно)
Выходных токенов на колоду40 000–60 0009 000–12 000
Время генерации диаграммы~2 мин (GPU-инференс)<1 сек (CPU-выполнение)
Размер файла (много диаграмм)2–5 МБ0,5–1 МБ
Защита от повреждения файлаБазовая очистка XMLТрёхуровневая защита (санитизация p:style, теней, 3D)
Обработка CJKРучная установка шрифтов (GPU)Автоматический set_ea_font() для всех CJK-текстовых фрагментов (CPU)
АрхитектураОдноуровневая (только SKILL.md)Трёхуровневая (SKILL.md + Python-движок + постобработка)

Трёхуровневая архитектура v2.0

┌─────────────────────────────────────────────────────────┐ │ Уровень 1: SKILL.md (Дизайн-спецификация) │ │ ├── 65 шаблонов макетов с точными координатами │ │ ├── Цветовая система + типографическая иерархия │ │ ├── 9 производственных ограничений │ │ └── Спецификация рендеринга диаграмм BLOCK_ARC │ ├─────────────────────────────────────────────────────────┤ │ Уровень 2: Python-движок (Детерминированное выполнение)│ │ ├── 65 высокоуровневых методов генерации макетов │ │ ├── Движок диаграмм BLOCK_ARC │ │ ├── Автоматическая обработка CJK-шрифтов │ │ └── Математика координат и логика макета │ ├─────────────────────────────────────────────────────────┤ │ Уровень 3: Пайплайн постобработки [v2.3] │ │ ├── Автоматизированный QA (проверка 12 правил) │ │ ├── Автоисправление обнаруженных проблем │ │ ├── Трёхуровневая защита от повреждения файла │ │ └── Финальная валидация перед сохранением │ └─────────────────────────────────────────────────────────┘

Полная документация, примеры и инструкции по установке доступны в репозитории: https://github.com/likaku/Mck-ppt-design-skill

Похожие скиллы