[PR #1695] [MERGED] feat: add gemini_image (available for nano banana) #2036

Closed
opened 2026-02-16 11:15:56 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langgenius/dify-official-plugins/pull/1695
Author: @Zhaohuai-L
Created: 9/11/2025
Status: Merged
Merged: 9/17/2025
Merged by: @crazywoola

Base: mainHead: feat_gemini_nano_banana


📝 Commits (3)

  • 7cd7065 feat: add gemini_image
  • e87d28c fix: add dependencies
  • 24bac7d feat: add description of gemini image

📊 Changes

10 files changed (+310 additions, -0 deletions)

View changed files

tools/gemini_image/.env.example (+4 -0)
tools/gemini_image/README.md (+40 -0)
tools/gemini_image/_assets/icon.png (+0 -0)
tools/gemini_image/main.py (+6 -0)
tools/gemini_image/manifest.yaml (+35 -0)
tools/gemini_image/provider/gemini_image.py (+20 -0)
tools/gemini_image/provider/gemini_image.yaml (+55 -0)
tools/gemini_image/requirements.txt (+5 -0)
tools/gemini_image/tools/image_generate.py (+89 -0)
tools/gemini_image/tools/image_generate.yaml (+56 -0)

📄 Description

Related Issues or Context

This PR adds support for google's image generation and editing models including gemini-2.5-flash-image-preview ( also known as Nano banana)
This PR is based on demo code of gemini, refering to https://github.com/GoogleCloudPlatform/generative-ai/blob/main/gemini/getting-started/intro_gemini_2_5_image_gen.ipynb

Image Generation:
20250911-193426

Image Editing:
20250911-193953

This PR contains Changes to Non-Plugin

  • Documentation
  • Other

This PR contains Changes to Non-LLM Models Plugin

  • I have Run Comprehensive Tests Relevant to My Changes

This PR contains Changes to LLM Models Plugin

  • My Changes Affect Message Flow Handling (System Messages and User→Assistant Turn-Taking)
  • My Changes Affect Tool Interaction Flow (Multi-Round Usage and Output Handling, for both Agent App and Agent Node)
  • My Changes Affect Multimodal Input Handling (Images, PDFs, Audio, Video, etc.)
  • My Changes Affect Multimodal Output Generation (Images, Audio, Video, etc.)
  • My Changes Affect Structured Output Format (JSON, XML, etc.)
  • My Changes Affect Token Consumption Metrics
  • My Changes Affect Other LLM Functionalities (Reasoning Process, Grounding, Prompt Caching, etc.)
  • Other Changes (Add New Models, Fix Model Parameters etc.)

Version Control (Any Changes to the Plugin Will Require Bumping the Version)

  • I have Bumped Up the Version in Manifest.yaml (Top-Level Version Field, Not in Meta Section)

Dify Plugin SDK Version

  • I have Ensured dify_plugin>=0.3.0,<0.5.0 is in requirements.txt (SDK docs)

Environment Verification (If Any Code Changes)

Local Deployment Environment

  • Dify Version is: , I have Tested My Changes on Local Deployment Dify with a Clean Environment That Matches the Production Configuration.

SaaS Environment

  • I have Tested My Changes on cloud.dify.ai with a Clean Environment That Matches the Production Configuration

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langgenius/dify-official-plugins/pull/1695 **Author:** [@Zhaohuai-L](https://github.com/Zhaohuai-L) **Created:** 9/11/2025 **Status:** ✅ Merged **Merged:** 9/17/2025 **Merged by:** [@crazywoola](https://github.com/crazywoola) **Base:** `main` ← **Head:** `feat_gemini_nano_banana` --- ### 📝 Commits (3) - [`7cd7065`](https://github.com/langgenius/dify-official-plugins/commit/7cd70653d17877fedfb3324fb648022f8585ba0e) feat: add gemini_image - [`e87d28c`](https://github.com/langgenius/dify-official-plugins/commit/e87d28cf253cccb66709b7588c179b0d710e548a) fix: add dependencies - [`24bac7d`](https://github.com/langgenius/dify-official-plugins/commit/24bac7da0f12c184b1200c490c19ba9e00af07f1) feat: add description of gemini image ### 📊 Changes **10 files changed** (+310 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `tools/gemini_image/.env.example` (+4 -0) ➕ `tools/gemini_image/README.md` (+40 -0) ➕ `tools/gemini_image/_assets/icon.png` (+0 -0) ➕ `tools/gemini_image/main.py` (+6 -0) ➕ `tools/gemini_image/manifest.yaml` (+35 -0) ➕ `tools/gemini_image/provider/gemini_image.py` (+20 -0) ➕ `tools/gemini_image/provider/gemini_image.yaml` (+55 -0) ➕ `tools/gemini_image/requirements.txt` (+5 -0) ➕ `tools/gemini_image/tools/image_generate.py` (+89 -0) ➕ `tools/gemini_image/tools/image_generate.yaml` (+56 -0) </details> ### 📄 Description ## Related Issues or Context This PR adds support for google's image generation and editing models including gemini-2.5-flash-image-preview ( also known as Nano banana) This PR is based on demo code of gemini, refering to https://github.com/GoogleCloudPlatform/generative-ai/blob/main/gemini/getting-started/intro_gemini_2_5_image_gen.ipynb Image Generation: ![20250911-193426](https://github.com/user-attachments/assets/ea0f86fa-1d4b-484e-8df4-7ab364509004) Image Editing: ![20250911-193953](https://github.com/user-attachments/assets/d6db004e-f94e-453f-9b6e-79cea2c50ef5) ## This PR contains Changes to *Non-Plugin* <!-- Put an `x` in all the boxes that apply by replacing [ ] with [x] For example: - [x] Documentation --> - [ ] Documentation - [ ] Other ## This PR contains Changes to *Non-LLM Models Plugin* - [x] I have Run Comprehensive Tests Relevant to My Changes <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> ## This PR contains Changes to *LLM Models Plugin* <!-- LLM Models Test Example: --> <!-- https://github.com/langgenius/dify-official-plugins/blob/main/.assets/test-examples/llm-plugin-tests/llm_test_example.md --> - [ ] My Changes Affect Message Flow Handling (System Messages and User→Assistant Turn-Taking) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Tool Interaction Flow (Multi-Round Usage and Output Handling, for both Agent App and Agent Node) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Multimodal Input Handling (Images, PDFs, Audio, Video, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Multimodal Output Generation (Images, Audio, Video, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Structured Output Format (JSON, XML, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Token Consumption Metrics <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] My Changes Affect Other LLM Functionalities (Reasoning Process, Grounding, Prompt Caching, etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> - [ ] Other Changes (Add New Models, Fix Model Parameters etc.) <!-- 📷 Include Screenshots/Videos Demonstrating the Fix, New Feature, or the Behavior Before/After Breaking Changes. --> ## Version Control (Any Changes to the Plugin Will Require Bumping the Version) - [ ] I have Bumped Up the Version in Manifest.yaml (Top-Level `Version` Field, Not in Meta Section) <!-- ⚠️ NOTE: Version Format: MAJOR.MINOR.PATCH - MAJOR (0.x.x): Reserved for Significant architectural changes or incompatible API modifications - MINOR (x.0.x): For New feature additions while maintaining backward compatibility - PATCH (x.x.0): For Backward-compatible bug fixes and minor improvements - Note: Each Version Component (MAJOR, MINOR, PATCH) Can Be 2 Digits, e.g., 10.11.22 --> ## Dify Plugin SDK Version - [ ] I have Ensured `dify_plugin>=0.3.0,<0.5.0` is in requirements.txt ([SDK docs](https://github.com/langgenius/dify-plugin-sdks/blob/main/python/README.md)) ## Environment Verification (If Any Code Changes) <!-- ⚠️ NOTE: At Least One Environment Must Be Tested. --> ### Local Deployment Environment - [ ] Dify Version is: <!-- Specify Your Version (e.g., 1.2.0) -->, I have Tested My Changes on Local Deployment Dify with a Clean Environment That Matches the Production Configuration. <!-- - Python Virtual Env Matching Manifest.yaml & requirements.txt - No Breaking Changes in Dify That May Affect the Testing Result --> ### SaaS Environment - [ ] I have Tested My Changes on cloud.dify.ai with a Clean Environment That Matches the Production Configuration <!-- - Python Virtual Env Matching Manifest.yaml & requirements.txt --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 11:15:56 -05:00
yindo closed this issue 2026-02-16 11:15:56 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-official-plugins#2036