Nano Banana là biệt danh cộng đồng (và viết tắt nội bộ) của Google Hình ảnh Flash Gemini 2.5 — một mô hình tạo + chỉnh sửa hình ảnh đa phương thức chất lượng cao, độ trễ thấp. Hướng dẫn dài này (với mã, mẫu, các bước triển khai và ví dụ CometAPI) trình bày ba phương thức gọi thực tế mà bạn có thể sử dụng trong sản xuất: (1) giao diện Chat tương thích với OpenAI (văn bản → hình ảnh), (2) giao diện chính thức của Google generateContent giao diện văn bản→hình ảnh và (3) trang web chính thức của Google generateContent Giao diện hình ảnh→hình ảnh sử dụng đầu vào/đầu ra Base64. Trong quá trình này, bạn sẽ nhận được hướng dẫn từng bước về phân phối/triển khai, thiết lập môi trường, cách lấy các hoạt động API từ CometAPI, ghi chú về giá cả & hình mờ, cùng những mẹo hay nhất để đạt được kết quả đáng tin cậy và tiết kiệm chi phí.
Nano Banana (Gemini 2.5 Flash Image) là gì?
Nano Banana là tên gọi không chính thức của Gemini 2.5 Flash Image, mô hình hình ảnh mới nhất của Google trong dòng Gemini. Nó được thiết kế để tạo hình ảnh chân thực và chỉnh sửa hình ảnh chính xác (chỉnh sửa cục bộ, hợp nhất nhiều hình ảnh, duy trì ký tự nhất quán giữa các lần chỉnh sửa) và có sẵn thông qua API Gemini của Google, Google AI Studio và Vertex AI. Mô hình này được cung cấp kèm theo hình mờ SynthID vô hình để xác minh nguồn gốc.
Tại sao điều này lại quan trọng với các nhà phát triển: Nano Banana cung cấp cho bạn một mô hình đa phương thức chất lượng cao duy nhất có thể xử lý:
- Văn bản → Hình ảnh (tạo hình ảnh mới từ lời nhắc văn bản)
- Hình ảnh → Hình ảnh (chỉnh sửa/biến đổi ảnh được cung cấp)
- Trộn nhiều hình ảnh (kết hợp nhiều hình ảnh thành một hình ảnh tổng hợp duy nhất)
Tất cả những điều này đều có thể truy cập thông qua trang web chính thức của GooglegenerateContentđiểm cuối (Vertex AI / Gemini API) hoặc thông qua các điểm cuối tương thích OpenAI do các cổng API của bên thứ ba cung cấp như CometAPI và OpenRouter. Điều này có nghĩa là bạn có thể tích hợp Gemini 2.5 Flash Image vào các cơ sở mã tương thích OpenAI hiện có hoặc gọi trực tiếp SDK chính thức của Google.
Nó vượt trội ở điểm gì
- Chỉnh sửa cục bộ, có mục tiêu (thay đổi màu áo, xóa đối tượng, điều chỉnh tư thế).
- Duy trì tính nhất quán giữa chủ đề/nhân vật trong quá trình chỉnh sửa lại.
- Trộn/gộp nhiều hình ảnh thành một hình ảnh tổng hợp mạch lạc.
- Độ trễ thấp và suy luận hiệu quả về chi phí so với các mô hình nghiên cứu nặng hơn (Google định vị các mô hình "Flash" là tùy chọn thông lượng cao).
Tôi nên thiết lập môi trường phát triển của mình như thế nào để gọi Nano Banana qua API?
Dưới đây là danh sách kiểm tra từng bước mà bạn có thể coi là cơ sở cho bất kỳ phương pháp gọi nào trong ba phương pháp được mô tả sau.
Điều kiện tiên quyết (tài khoản, khóa, hạn ngạch)
- Tài khoản Google + Dự án đám mây — Nếu bạn dự định gọi Gemini trực tiếp qua Google (Gemini API / Vertex AI), hãy tạo một dự án Google Cloud và kích hoạt Vertex AI / Gemini API. Bạn sẽ cần thanh toán và các vai trò phù hợp (ví dụ:
Vertex AI AdminorService Accountvới quyền suy luận). - Truy cập API Gemini — Một số mô hình hình ảnh Gemini chỉ có thể xem trước/sẵn có; bạn có thể cần yêu cầu quyền truy cập hoặc sử dụng mô hình thông qua Google AI Studio hoặc Vertex AI tùy thuộc vào tài khoản của bạn.
- CometAPI (cổng tùy chọn) — Nếu bạn muốn một API duy nhất không phụ thuộc vào nhà cung cấp, có thể ủy quyền cho nhiều mô hình khác nhau (bao gồm cả Gemini), hãy đăng ký tại CometAPI để nhận khóa API và xem qua danh sách mô hình của họ (họ cung cấp các biến thể Gemini 2.5 Flash và điểm cuối tương thích với OpenAI). CometAPI có thể đơn giản hóa quá trình phát triển và cho phép bạn chuyển đổi nhà cung cấp mà không cần thay đổi mã ứng dụng.
Dụng cụ địa phương
- Thời gian chạy ngôn ngữ: Node.js 18+, khuyến nghị Python 3.10+.
- Máy khách HTTP:
fetch/axioscho JS;requests/httpxdành cho Python (hoặc SDK chính thức). - Trợ giúp hình ảnh:
Pillow(Python) hoặcsharp(Node) để thay đổi kích thước, chuyển đổi định dạng và mã hóa/giải mã Base64. - Bảo mật : lưu trữ khóa trong các biến môi trường hoặc kho lưu trữ bí mật (HashiCorp Vault, AWS Secrets Manager, Google Secret Manager). Không bao giờ cam kết khóa API.
Cài đặt Google/SDK tương thích (tùy chọn)
Google cung cấp SDK và openai Shims tương thích thư viện — bạn có thể sử dụng thư viện máy khách OpenAI trên Gemini bằng cách thay đổi một vài dòng (URL cơ sở + khóa API), nhưng máy khách Gemini/Google gốc được khuyến nghị cho các tính năng đa phương thức đầy đủ. Nếu sử dụng CometAPI hoặc cổng tương thích OpenAI, việc sử dụng máy khách OpenAI có thể tăng tốc độ phát triển, ví dụ:
Tuyến đường chính thức của Google (Python):
python -m venv venv && source venv/bin/activate
pip install --upgrade pip
pip install google-genai # official Google GenAI SDK
pip install Pillow requests jq # for local image handling in examples
Máy khách tương thích CometAPI / OpenAI (Python):
pip install openai requests
Làm thế nào để tôi lựa chọn giữa ba phương thức gọi cho Nano Banana?
Việc lựa chọn phương thức gọi phụ thuộc vào kiến trúc, yêu cầu về độ trễ/chi phí của bạn và việc bạn muốn sử dụng điểm cuối chính thức của Google hay cổng tương thích OpenAI của bên thứ ba. Ba mô hình phổ biến là:
1) Giao diện trò chuyện tương thích với OpenAI (chuyển văn bản thành hình ảnh)
Sử dụng tùy chọn này khi bạn đã có mã hoặc SDK theo phong cách OpenAI và muốn chuyển đổi mô hình với những thay đổi tối thiểu. Nhiều cổng (CometAPI, OpenRouter) hiển thị các mô hình Gemini dưới một giao diện REST tương thích với OpenAI để các mô hình hiện tại của bạn chat or completions cuộc gọi làm việc chỉ với một khác biệt base_url và tên model. Đây thường là cách nhanh nhất để đưa vào sản xuất nếu bạn không muốn quản lý xác thực Google Cloud.
2) Gemini chính thức generateContent — văn bản thành hình ảnh
Sử dụng trang web chính thức của Google generateContent thông qua genai (Google) client hoặc Vertex AI nếu bạn muốn sử dụng SDK chính thức, được hỗ trợ đầy đủ và truy cập các tính năng mới nhất (tham số tạo chi tiết, phát trực tuyến, API tệp cho tài sản lớn), cùng với tính năng thanh toán/giám sát Google Cloud. Khuyến nghị sử dụng khi bạn cần hỗ trợ sản xuất và kiểm soát cấp doanh nghiệp.
3) Gemini chính thức generateContent — hình ảnh sang hình ảnh (đầu vào/đầu ra Base64)
Sử dụng tùy chọn này khi bạn phải gửi hình ảnh nhị phân trực tuyến (Base64) hoặc muốn chỉnh sửa hình ảnh / đường dẫn hình ảnh sang hình ảnh. Google generateContent hỗ trợ hình ảnh nội tuyến (base64) và API Tệp cho các tài nguyên lớn hơn hoặc có thể tái sử dụng. Phản hồi cho hình ảnh được tạo/chỉnh sửa thường được trả về dưới dạng chuỗi Base64 để bạn giải mã và lưu. Điều này mang lại khả năng kiểm soát đa phương thức rõ ràng nhất.
Làm thế nào tôi có thể gọi Nano Banana thông qua giao diện Trò chuyện tương thích với OpenAI (chuyển văn bản thành hình ảnh)?
Điểm cuối trò chuyện tương thích với OpenAI chấp nhận một chuỗi {role, content} tin nhắn; bạn mô tả hình ảnh bạn muốn trong tin nhắn người dùng và cổng (CometAPI hoặc shim tương thích OpenAI) sẽ dịch thông tin đó thành lệnh gọi đến mô hình Gemini cơ bản. Điều này rất tiện lợi nếu ứng dụng của bạn đã sử dụng luồng trò chuyện hoặc bạn muốn kết hợp tạo văn bản + tạo hình ảnh trong một lần trao đổi.
Các bước
1.Đăng ký CometAPI và nhận khóa API: Đăng ký tại CometAPI, tạo một dự án, sao chép khóa API của bạn. CometAPI hiển thị nhiều mô hình đằng sau một base_url. ()
-
Cài đặt ứng dụng khách tương thích với OpenAI: Python:
pip install openaihoặc sử dụng phiên bản mới hơnopenai/OpenAITrình bao bọc SDK được nhiều cổng sử dụng. -
Trỏ SDK đến CometAPI và gọi điểm cuối hoàn thành trò chuyện:
curl https://api.cometapi.com/v1/chat/completions \
-H "Authorization: Bearer $COMET_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2-5-flash-image-preview",
"stream": true,
"messages": [{"role": "user",
"content": "Generate a cute kitten sitting on a cloud, in a cartoon style"}]
}'
Ghi chú:
-
luồng phải đúng; phản hồi sẽ được trả về dưới dạng luồng;
-
Cấu trúc phản hồi được CometAPI gói lại để tương thích với OpenAI.
-
Phản hồi bao gồm hình ảnh Base64; giải mã và lưu nó trên máy khách khi cần:
Làm thế nào tôi có thể gọi Nano Banana bằng Gemini chính thức? generateContent giao diện văn bản thành hình ảnh?
Google cung cấp một API nhà phát triển Gemini (API Gemini) và cũng phơi bày các mô hình Gemini thông qua Đỉnh AI. Để có quyền truy cập theo chương trình vào Gemini 2.5 Flash Image (Nano Banana) theo cách được hỗ trợ, chính thức generateContent phương pháp là điểm vào chuẩn cho việc tạo ra chỉ văn bản hoặc đa phương thức. Sử dụng Google SDK GenAI (Trăn: google-genai) hoặc gọi trực tiếp điểm cuối REST. Nó cung cấp quyền truy cập trực tiếp vào các tham số và phương thức của mô hình và là cách được khuyến nghị để sử dụng các tính năng nâng cao (chỉnh sửa chính xác, hợp nhất nhiều hình ảnh) khi gọi điểm cuối của Google.
1.Sử dụng Google SDK GenAI (Trăn: google-genai)
Các bước phân phối/gọi (tổng quan):
- Nhận khóa API từ Google AI Studio hoặc thiết lập tài khoản dịch vụ Vertex AI (tùy thuộc vào nền tảng).
- Cài đặt SDK (
pip install --upgrade google-genai) và xác thực (khóa API hoặc Thông tin xác thực mặc định của ứng dụng Google). - Chọn ngươi mâu:
gemini-2.5-flash-imagehoặc slug xem trước được hiển thị trong tài liệu (slug chính xác phụ thuộc vào trạng thái GA/xem trước). - Gọi số
client.models.generate_content(...)với lời nhắc văn bản thuần túy (chuyển văn bản thành hình ảnh). - Giải mã hình ảnh trả về (nếu trả về Base64) và lưu/lưu trữ.
Ví dụ về Python (máy khách chính thức) — văn bản→hình ảnh:
from google import genai
from base64 import b64decode, b64encode
client = genai.Client(api_key="YOUR_GEMINI_KEY")
prompt = {
"content": "A hyperrealistic photo of a vintage motorcycle parked under neon lights at midnight",
"mime_type": "text/plain"
}
# request generateContent for image output
result = client.generate_content(
model="gemini-2-5-flash-image-preview",
prompt=prompt,
response_modalities=,
image_format="PNG",
)
# handle binary or base64 in response (depends on API mode)
(Lưu ý: hãy kiểm tra API máy khách chính thức để biết tên tham số chính xác — các ví dụ trên tuân theo các mẫu trong Google Docs.)
KHAI THÁC. Gọi điện Chuối Nano thông qua điểm cuối REST
Điểm cuối EST (ví dụ chuyển văn bản thành hình ảnh): https://api.CometAPI.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent.
Tùy chọn xác thực: cung cấp tiêu đề x-goog-api-key: $CometAPI_API_KEY. (Tạo khóa trong CometAPI.)
Thao tác này sẽ gửi một lời nhắc văn bản và lưu hình ảnh base64 trả về:
curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{
"parts": [
{ "text": "A photorealistic nano banana dish plated in a stylish restaurant, cinematic lighting, 3:2 aspect ratio" }
]
}]
}' \
| jq -r '.candidates.content.parts[] | select(.inline_data) | .inline_data.data' \
| base64 --decode > gemini-image.png
Ghi chú: Hình ảnh nhị phân được trả về dưới dạng base64 trong
candidates.content.parts.inline_data.data. Ví dụ trên sử dụngjqđể chọn dữ liệu nội tuyến và giải mã nó. Tài liệu chính thức cũng cho thấy quy trình tương tự.
Làm thế nào tôi có thể gọi Nano Banana bằng Gemini chính thức? generateContent giao diện hình ảnh sang hình ảnh (Base64 vào/ra)?
Khi nào bạn nên sử dụng hình ảnh-đến-hình ảnh (base64 vào/ra)?
Sử dụng hình ảnh sang hình ảnh khi bạn cần:
- Chỉnh sửa ảnh hiện có (inpainting, chuyển đổi phong cách, thay thế đối tượng).
- Kết hợp nhiều hình ảnh nguồn thành một bố cục duy nhất.
- Giữ nguyên bản sắc của chủ thể trong suốt quá trình chỉnh sửa (một trong những điểm mạnh của Nano Banana).
Của Gemini generateContent hỗ trợ dữ liệu hình ảnh nội tuyến qua Base64 (hoặc dưới dạng URI tệp) và trả về hình ảnh được tạo hoặc chỉnh sửa dưới dạng chuỗi Base64. Tài liệu cung cấp các ví dụ cụ thể để cung cấp inline_data với mime_type và data.
Các bước phân phối / gọi (hình ảnh đến hình ảnh)
- Chuẩn bị hình ảnh đầu vào: đọc byte tệp, mã hóa Base64 hoặc truyền byte thô qua trình trợ giúp SDK.
- xây dựng a
contentsmảng trong đó một phần là hình ảnh nội tuyến (vớimimeTypevàdata) và các phần tiếp theo bao gồm hướng dẫn chỉnh sửa văn bản. - POST đến
generateContent(SDK hoặc REST chính thức). - Nhận Phản hồi: API trả về hình ảnh đã tạo/chỉnh sửa được mã hóa dưới dạng chuỗi Base64. Giải mã và lưu chúng cục bộ.
Ví dụ — Python (chuyển đổi hình ảnh sang hình ảnh bằng cách sử dụng byte nội tuyến thông qua GenAI SDK)
# pip install google-genai
from google import genai
from google.genai import types
import base64
client = genai.Client(api_key="YOUR_GOOGLE_API_KEY")
# Read local image
with open("input_photo.jpg", "rb") as f:
img_bytes = f.read()
# Using SDK helper to attach bytes as a part
response = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
types.Part.from_bytes(
data=img_bytes,
mime_type="image/jpeg"
),
"Make a high-quality edit: change the subject's jacket color to teal, keep natural lighting and preserve the person's facial features."
],
)
# The returned image will typically be in response.candidates[].content.parts with base64-encoded data
# Decode and save (pseudo-access shown; check SDK response structure)
b64_out = response.candidates.content.parts.data # example path
with open("edited.jpg","wb") as out:
out.write(base64.b64decode(b64_out))
Ví dụ Python: image→image sử dụng Base64 thông qua rest point
import base64, json, requests
API_URL = "https://api.gemini.googleapis.com/v1/generateContent"
API_KEY = "YOUR_GEMINI_KEY"
# read and base64-encode image
with open("input.jpg","rb") as f:
b64 = base64.b64encode(f.read()).decode("utf-8")
payload = {
"model": "gemini-2-5-flash-image-preview",
"input": [
{"mime_type": "image/jpeg", "bytes_base64": b64},
{"mime_type": "text/plain", "text": "Remove the lamppost and make the sky golden at sunset."}
],
"response_modalities":
}
resp = requests.post(API_URL, headers={"Authorization":f"Bearer {API_KEY}", "Content-Type":"application/json"}, json=payload)
resp.raise_for_status()
data = resp.json()
# data.candidates... may contain image base64 — decode and save
out_b64 = data
with open("edited.png","wb") as out:
out.write(base64.b64decode(out_b64))
Nếu bạn muốn truy cập nó bằng cổng CometAPI:
curl
--location
--request POST "https://api.CometAPI.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent" ^
--header "Authorization: sk-" ^
--header "User-Agent: Apifox/1.0.0 (https://apifox.com)" ^
--header "Content-Type: application/json" ^
--header "Accept: */*" ^
--header "Host: api.CometAPI.com" ^
--header "Connection: keep-alive" ^
--data-raw "{ \"contents\": } ], \"generationConfig\": { \"responseModalities\": }}"
Đối với nội tuyến: đọc hình ảnh và mã hóa base64. Đối với việc sử dụng nhiều lần hoặc >20MB, hãy tải lên qua API Tệp và tham chiếu đến trình xử lý tệp trong
generateContent.Phù hợp nhất cho các chỉnh sửa chính xác và quy trình làm việc cần hình ảnh đầu vào cùng hướng dẫn chỉnh sửa văn bản.
Những mẹo hay nhất khi sử dụng Nano Banana là gì?
Kỹ thuật và kiểm soát nhanh chóng
- Hãy rõ ràng: bao gồm tỷ lệ khung hình mong muốn, tham chiếu phong cách (chỉ tên nghệ sĩ nếu được phép), ống kính máy ảnh, ánh sáng và bố cục. Ví dụ: “Ảnh chân thực, tỷ lệ 3:2, độ sâu trường ảnh nông, giờ vàng, ống kính Nikon 50mm.”
- Sử dụng chỉnh sửa liên tiếp: ưu tiên chỉnh sửa cục bộ, nhỏ gọn trong nhiều lần thay vì chỉnh sửa từng cảnh lớn — điều này giúp duy trì tính nhất quán của chủ thể. Điểm mạnh của Nano Banana là chỉnh sửa lặp đi lặp lại.
Vệ sinh hình ảnh
- Tiền xử lý đầu vào: chuẩn hóa không gian màu, xóa EXIF nhúng nếu cần quyền riêng tư, điều chỉnh độ phân giải hợp lý để lưu mã thông báo.
- Đầu ra sau xử lý: chạy phát hiện khuôn mặt, dọn dẹp các hiện vật nhỏ thông qua bộ lọc nhẹ (Pillow / sharp) trước khi trả lại cho người dùng.
Chính sách về an toàn, tuân thủ và nội dung
- Triển khai kiểm tra an toàn nội dung tự động (mô hình kiểm duyệt Vision hoặc kiểm tra danh sách đen) trước khi lưu trữ/cung cấp hình ảnh.
- Nếu tải lên hình ảnh của mọi người, hãy tuân thủ luật bảo mật hiện hành (GDPR/CCPA) và xin được sự đồng ý cần thiết.
- Tôn trọng chính sách sử dụng mô hình và quy tắc bản quyền khi nhắc đến các nhân vật có bản quyền hoặc tác phẩm nghệ thuật hiện có.
Đóng ghi chú
Nano Banana (Gemini 2.5 Flash Image) là một bước thực dụng, có độ trung thực cao để tạo và chỉnh sửa hình ảnh đa phương thức: nó được thiết kế để có tính nhất quán trong các lần chỉnh sửa và lập luận đa phương thức phong phú hơn. Nano Banana (Gemini 2.5 Flash Image) là một bước quan trọng trong việc tạo/chỉnh sửa hình ảnh — cung cấp tính nhất quán cao cho các lần chỉnh sửa nhiều bước và nhiều bề mặt tích hợp (các cổng tương thích với OpenAI như CometAPI và Google generateContent API). Để tăng tốc độ áp dụng, các cổng như CometAPI cho phép bạn tái sử dụng mã theo phong cách OpenAI. Luôn kiểm tra tính hợp lệ của phản hồi, tôn trọng chính sách nội dung và các tính năng xuất xứ (SynthID) và theo dõi chi phí trong quá trình lặp lại.
Bắt đầu
CometAPI là một nền tảng API hợp nhất tổng hợp hơn 500 mô hình AI từ các nhà cung cấp hàng đầu—chẳng hạn như dòng GPT của OpenAI, Gemini của Google, Claude của Anthropic, Midjourney, Suno, v.v.—thành một giao diện duy nhất thân thiện với nhà phát triển. Bằng cách cung cấp xác thực nhất quán, định dạng yêu cầu và xử lý phản hồi, CometAPI đơn giản hóa đáng kể việc tích hợp các khả năng AI vào ứng dụng của bạn. Cho dù bạn đang xây dựng chatbot, trình tạo hình ảnh, nhà soạn nhạc hay đường ống phân tích dựa trên dữ liệu, CometAPI cho phép bạn lặp lại nhanh hơn, kiểm soát chi phí và không phụ thuộc vào nhà cung cấp—tất cả trong khi khai thác những đột phá mới nhất trên toàn bộ hệ sinh thái AI.
Các nhà phát triển có thể truy cập Hình ảnh Flash Gemini 2.5(Danh sách Nano Banana CometAPI gemini-2.5-flash-image-preview/gemini-2.5-flash-image (các mục nhập kiểu trong danh mục của họ.) thông qua CometAPI, phiên bản mô hình mới nhất được liệt kê là tính đến ngày xuất bản bài viết. Để bắt đầu, hãy khám phá các khả năng của mô hình trong Sân chơi và tham khảo ý kiến Hướng dẫn API để biết hướng dẫn chi tiết. Trước khi truy cập, vui lòng đảm bảo bạn đã đăng nhập vào CometAPI và lấy được khóa API. Sao chổiAPI cung cấp mức giá thấp hơn nhiều so với giá chính thức để giúp bạn tích hợp.



