Кейсы
Автоматизация AI-агент Контент-завод

Генератор карточек растений из Гугл-таблицы

Конвейер из Гугл-таблицы: менеджер ставит статус «в работу», AI генерирует карточку растения, файл уходит на Диск, а ссылка и цена возвращаются в строку.

Запуск карточки
ручной сбор файлов статус «в работу»
Папки результата
раскладка руками 10 подпапок на Диске
Стоимость генерации
считать отдельно факт из usage.cost

Генератор карточек растений из Гугл-таблицы

1 / 4
Кейс: генератор карточек растений из Гугл-таблицы
Менеджер запускает строку в Гугл-таблице и получает карточку, ссылку, превью и факт расходов.
Клиент Питомник Росток
Стек Python · Docker · Google Sheets · Google Drive · OpenRouter
Результат Команда Ростка получила конвейер, где менеджер запускает генерации из таблицы, получает файл, превью и стоимость без отдельной админки.

Продукт

Питомник Росток
Питомник Росток Открыть
  • ручной сбор файлов статус «в работу»
    Запуск карточки
  • раскладка руками 10 подпапок на Диске
    Папки результата
  • считать отдельно факт из usage.cost
    Стоимость генерации
  • таблица, файлы и чат одна Гугл-таблица
    Работа менеджера

Проблема

Проблема

Карточки растений нельзя делать как случайные AI-картинки. Нужны сорта, референсы, разные форматы, контроль цены, папки на Диске и простой запуск для менеджера без отдельной админки.

Задача

Ростку нужен был конвейер для генерации изображений растений и карточек. Не просто скрипт, который принимает промпт, а рабочий инструмент для менеджера: открыть таблицу, заполнить строку, поставить статус «в работу» и получить готовый файл.

В задаче было много бытовых деталей, которые обычно ломают такие автоматизации. Нужны 10 отдельных листов, разные типы контента, референсы, модели, размеры, прогноз цены, факт расходов, превью в таблице, папки на Диске и возможность добавлять логотип или фото саженца поверх карточки.

Решение

Я собрал сервис на Python, который крутится в Docker рядом с модератором комментариев. Основной интерфейс для Ольги и Екатерины - Гугл-таблица. В ней 10 листов «Задачи», а каждая строка описывает одну генерацию.

Система берёт только строки со статусом «в работу». Пустые строки остаются черновиками, поэтому менеджер может спокойно готовить пачку задач и запускать их вручную, когда всё проверено.

Генерация идёт через OpenRouter и модели Gemini Image. Если в строке есть ссылка на референс, она уходит как image input. Если референса нет, работает text-to-image. Web-grounding помогает модели понять, как выглядит конкретный сорт растения, а не рисовать абстрактный цветок.

Как работает конвейер

Менеджер заполняет тип контента, вид растения, сорт, промпт, модель, формат и размер. В колонке J ставит «в работу».

Сервис читает все 10 листов, ставит строку в processing, отправляет запрос в модель и получает изображение. Потом накладывает логотип Ростка, если для листа включён флаг, и может добавить фото саженца по координатам из строки.

Готовый файл загружается в нужную подпапку Google Drive. Ссылка возвращается в колонку K, фактическая цена пишется в L, комментарии и ошибки в M, дата создания в N, а в O появляется формула IMAGE, чтобы результат был виден прямо в таблице.

Контроль стоимости

Для клиента было важно видеть не только «картинка готова», но и сколько она стоила.

В таблице есть прогноз в рублях. Он считается по модели, размеру и курсу доллара из листа «Настройки». После генерации система берёт реальный usage.cost из ответа OpenRouter и пишет факт в отдельную колонку. Если цена не пришла сразу, предусмотрен fallback через запрос к истории генерации.

Так менеджер видит разницу между планом и фактом, может выбирать более дешёвую модель для простых карточек и не узнаёт расходы в конце месяца сюрпризом.

Надёжность

Я заложил несколько защит под реальную работу с таблицей.

Если в колонку референса случайно вставили обычный текст, система не пытается отправить его как картинку. Она считает референс пустым и продолжает генерацию. Если Гугл-таблица отдаёт 429, чтение и запись повторяются с backoff. Если одна задача падает, остальные задачи в пачке продолжают выполняться.

Параллельность ограничена семафором. По умолчанию работает 3 воркера, чтобы не упереться в лимиты таблицы и внешних API. Количество воркеров можно менять в настройках без пересборки контейнера.

Результат

Росток получил производственный конвейер для AI-картинок, который не требует отдельной админки. Менеджер работает в привычной таблице, видит статус, превью, ссылку на файл, прогноз и факт расходов.

Система закрывает полный цикл: задача в таблице, генерация через AI, брендирование, загрузка на Диск, ссылка обратно, учёт цены и понятный комментарий при ошибке. Это уже не разовый генератор картинок, а маленькая контент-фабрика для питомника.


Нужен конвейер, где менеджер запускает генерации из таблицы и сразу видит результат? Напишите - соберу процесс под ваши форматы, лимиты и стоимость.

Технологии Python Docker Google Sheets Google Drive OpenRouter Gemini 3 Pro Image Gemini 3.1 Flash Image Pillow CairoSVG MAX Bot API
Итог

Команда Ростка получила конвейер, где менеджер запускает генерации из таблицы, получает файл, превью и стоимость без отдельной админки.

Следующий кейс

МПК: AI-поиск конкурентов для CRM

Система на n8n, которая берёт поисковые запросы из Google Sheets, находит сайты конкурентов, проверяет их через AI, обогащает реквизитами и передаёт результат в CRM.