На этой странице представлен готовый к использованию Agent Skill: добавьте его в используемый вами coding Agent и используйте естественный язык (или прямую команду) для вызова Nano Banana 2.1 (
gemini-nano-banana-2.1) на платформе APIYI для генерации изображений и их редактирования. Всё решение состоит всего из двух файлов — скопируйте и пользуйтесь.Что делает навык
Единый комбинированный навык. Скрипт автоматически определяет, передаете ли вы входные изображения, выбирая между генерацией по тексту и редактированием изображений:Текст в изображение
Только prompt → совершенно новое изображение с 14 соотношениями сторон и разрешением 1K/2K/4K.
Редактирование изображений
Одно изображение + инструкция → локальные правки, стилизация, замена фона и многое другое.
Композитинг нескольких изображений
Несколько изображений + одна инструкция → композитинг, сравнение, смена одежды и т. д.
1:4 / 4:1 / 1:8 / 8:1) всего по $0.05 за изображение за вызов (одинаковая цена для 1K / 2K / 4K), что лучше подходит для больших объемов. Обратите внимание, что модель не поддерживает 512px; используйте Nano Banana 2, если вам нужен уровень миниатюр.
Какие агенты могут его использовать
Skill по сути представляет собой просто папку: набор инструкций для чтения агентом (
SKILL.md) + скрипт, выполняющий работу. Поэтому его может использовать любой агент для написания кода, способный читать локальные файлы и выполнять shell-команды — например, Codex, OpenClaw, hermes-agent, Claude Code и другие.Единственное требование: на машине, где запущен агент (ваш компьютер или сервер), должен быть установлен Python 3 и иметься доступ к сети (скрипт обращается напрямую к api.apiyi.com). Вот и всё — он не привязан к какому-либо конкретному агенту.Настройка за 3 шага
① Создайте папку и вставьте файлы
Создайте папку навыка со следующими двумя файлами (полное содержимое приведено в следующих двух разделах):② Поместите ваш ключ в ту же папку
Запишите ваш APIYI API Key (создайте его в консолиapi.apiyi.com) в nano-banana-2-1/.env:
.env — никакой дополнительной настройки или переменных окружения не требуется.
③ Передайте его вашему агенту
- Агенты с автообнаружением навыков (например, Claude Code): поместите всю папку
nano-banana-2-1/в директорию навыков — личную~/.claude/skills/или на уровне проекта.claude/skills/(доступную через репозиторий). - Другие агенты: разместите папку в соответствии с правилами для навыков/плагинов конкретного агента; или проще всего — просто скажите агенту «прочитай SKILL.md в этой папке и следуй инструкциям».
SKILL.md
Создайтеnano-banana-2-1/SKILL.md со следующим полным содержимым (в description указывается «что он делает + когда его использовать», на основе чего агент выполняет автоматический запуск):
scripts/nano_banana_2_1.py
Создайтеnano-banana-2-1/scripts/nano_banana_2_1.py с использованием нативного формата Gemini (идентично проверенному рабочему коду на справочных страницах APIYI по text-to-image / image-edit). Чистая стандартная библиотека Python — pip install не требуется:
Почему одна фраза генерирует изображение
Часто возникает вопрос: я не вводил никаких команд, так как же фраза «нарисуй кота» создала изображение? Вот как это устроено: при запуске Агент сначала считываетdescription из SKILL.md каждого навыка (очень короткий фрагмент метаданных, описывающий, «что делает этот навык и когда его использовать»). Когда ваш запрос соответствует этому сценарию (например, «нарисуй / сгенерируй / отрендери изображение», «отредактируй это изображение так, чтобы…»), Агент автоматически принимает решение вызвать этот навык, считывает полный SKILL.md и запускает скрипт — и всё это без необходимости запоминать какие-либо команды.
Таким образом:
- Хорошо составленный
description= более точное автоматическое срабатывание. Описание этого навыка уже охватывает такие формулировки, как «сгенерировать / нарисовать / отредактировать / скомпоновать изображение». - Если вы не хотите, чтобы Агент угадывал, и вам нужен полный контроль, используйте явный вызов, описанный ниже.
Как использовать
Естественный язык (неявный вызов)
После установки просто обратитесь к агенту:Явный вызов (больше контроля)
Если вы не хотите, чтобы агент принимал решение самостоятельно, есть два явных способа:-
Агенты с поддержкой слэш-команд (например, Claude Code):
-
Любой агент / просто укажите ему запустить скрипт (наиболее универсальный вариант):
Куда сохраняется сгенерированное изображение
- Если
-oпредставляет собой просто имя файла (например,-o dog.png), все изображения сохраняются в папкуnano-banana-2-1-output/в корне проекта (создается автоматически), поэтому вы найдете их прямо в своем проекте. - «Корень проекта» — это первый найденный при подъеме вверх от расположения скрипта каталог, содержащий
.gitили.claude, поэтому независимо от того, из какой директории запускается Agent, изображения попадают внутрь проекта, а не во временную директорию, которую невозможно найти. - Скрипт выводит по одному полному абсолютному пути на каждое изображение, например
Image saved to /Users/you/project/nano-banana-2-1-output/dog.png. - По умолчанию генерируется только 1 изображение;
-n 3создает 3 одновременно (максимум 5, любое большее значение ограничивается до 5), при этом суффиксы-1,-2,-3добавляются автоматически. - Если
-oявляется путем с указанием директории (например,-o images/dog.pngили абсолютным путем), файл сохраняется точно по этому пути (относительные пути рассчитываются относительно текущего рабочего каталога) и не помещается вnano-banana-2-1-output/. - Редактирование изображений работает точно так же: результат записывается в новый файл и не перезаписывает исходный.
В Nano Banana 2.1 действуют строгие правила безопасности контента. Если скрипт сообщает о
finishReason, отличном от STOP, или возвращает текст с отклонением запроса, скорректируйте контент соответствующим образом и не повторяйте многократно попытки с тем же нарушающим правила prompt.