Google เปิดตัว Nano Banana 2.1 เมื่อวันที่ 6 ตุลาคม 2026 และสามารถเรียกใช้งานได้ผ่าน Gemini API ในชื่อ gemini-nano-banana-2.1 แล้ว เป็นการอัปเดต Nano Banana 2 (Gemini 3.1 Flash Image) ที่มาพร้อมคุณภาพของภาพที่ดีขึ้น การแก้ไขสไตล์มาสก์ และความสอดคล้องของตัวละครที่แข็งแกร่งขึ้นในการโต้ตอบหลายครั้ง นอกจากนี้ยังมีค่าใช้จ่ายต่อภาพเพียงครึ่งหนึ่งของ Nano Banana 2 ในทุกความละเอียดที่รองรับ
คู่มือนี้จะพาคุณตั้งแต่การเริ่มต้นใช้งานใน Terminal จนถึงการบันทึกภาพ จากนั้นจะครอบคลุมอัตราส่วนภาพ, เอาต์พุต 2K และ 4K, การแก้ไขภาพ, การเปลี่ยนแปลงแบบหลายรอบ, ภาพอ้างอิง, การอ้างอิงจากผลการค้นหา และค่าใช้จ่าย ทุกคำขอที่อยู่ด้านล่างสามารถบันทึกและเล่นซ้ำได้ใน Apidog เพื่อให้คุณสามารถเปรียบเทียบ 2.1 กับโมเดลที่คุณใช้งานอยู่ในปัจจุบัน
ต้องการข้อมูลเบื้องต้นก่อนหรือไม่? อ่าน Nano Banana 2.1 คืออะไร สำหรับข้อมูลที่เปลี่ยนแปลงไปและสิ่งที่ Google ยังไม่ได้เผยแพร่
สิ่งที่คุณต้องมี
| รายการ | ค่า |
|---|---|
| URL พื้นฐาน | https://generativelanguage.googleapis.com/v1beta |
| ส่วนหัวการรับรองความถูกต้อง | x-goog-api-key: $GEMINI_API_KEY |
| รหัสโมเดล | gemini-nano-banana-2.1 |
| ปลายทาง (Endpoint) | POST /v1beta/interactions |
| ความละเอียด | 1K (ค่าเริ่มต้น), 2K, 4K |
| อินพุต | ข้อความ, รูปภาพ (สูงสุด 14 รูปอ้างอิง), วิดีโอ |
| Python SDK | pip install google-genai |
| JavaScript SDK | npm install @google/genai |
ตัวอย่างทั้งหมดใช้ Interactions API ซึ่งเป็น API ที่เอกสารการสร้างภาพของ Google ใช้สำหรับ 2.1
ขั้นตอนที่ 1: รับคีย์ Gemini API
- เปิด Google AI Studio และเข้าสู่ระบบ
- ไปที่ รับคีย์ API และสร้างคีย์ในโปรเจกต์ Google Cloud
- เปิดใช้งานการเรียกเก็บเงินสำหรับโปรเจกต์นั้น หน้าการกำหนดราคาของ Google ระบุว่า Nano Banana 2.1 ไม่มีบริการแบบฟรี ดังนั้นการเรียกใช้ API ต้องใช้โปรเจกต์แบบชำระเงิน
- ส่งออกคีย์:
export GEMINI_API_KEY="your-key-here"
Google เชื่อมโยง 2.1 กับ AI Studio playground ซึ่งสะดวกสำหรับการทดสอบพรอมต์ แต่ยังไม่ได้เผยแพร่จำนวนที่บัญชีฟรีสามารถสร้างได้ที่นั่น คู่มือของเราเกี่ยวกับ วิธีใช้ Nano Banana 2.1 ฟรี ครอบคลุมเส้นทางนั้น และ การรับคีย์ Gemini API อธิบายการตั้งค่าคีย์โดยละเอียดเพิ่มเติม
ขั้นตอนที่ 2: สร้างภาพแรกของคุณ
curl
curl -s -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-nano-banana-2.1",
"input": [
{"type": "text", "text": "Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme"}
]
}'
การตอบสนองเป็น JSON รูปภาพจะมาในรูปแบบข้อมูล base64 ภายในบล็อกเนื้อหารูปภาพ ดังนั้นคุณจะต้องใช้ SDK (หรือสคริปต์) เพื่อถอดรหัส
Python
from google import genai
import base64
client = genai.Client() # reads GEMINI_API_KEY
interaction = client.interactions.create(
model="gemini-nano-banana-2.1",
input="Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme",
)
with open("generated_image.png", "wb") as f:
f.write(base64.b64decode(interaction.output_image.data))
interaction.output_image จะส่งกลับบล็อกรูปภาพที่สร้างล่าสุด ฟิลด์ data ของมันเป็น base64 ดังนั้นควรถอดรหัสก่อนเขียนไฟล์
JavaScript
import { GoogleGenAI } from "@google/genai";
import * as fs from "node:fs";
const ai = new GoogleGenAI({});
const interaction = await ai.interactions.create({
model: "gemini-nano-banana-2.1",
input: "Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme",
});
const image = interaction.output_image;
if (image) {
fs.writeFileSync("nano-banana.png", Buffer.from(image.data, "base64"));
}
โมเดลสร้างภาพ Gemini 3 จะคิดก่อนที่จะวาด โมเดลอาจสร้าง "ภาพความคิด" ชั่วคราวได้สูงสุดสองภาพในขณะที่วางแผนองค์ประกอบ คุณจะไม่ถูกเรียกเก็บเงินสำหรับภาพเหล่านั้น และไม่สามารถปิดการคิดนี้ใน API ได้
ขั้นตอนที่ 3: ตั้งค่าอัตราส่วนภาพ, ความละเอียด และเอาต์พุตเฉพาะรูปภาพ
ใช้ response_format เพื่อควบคุมเอาต์พุต การตั้งค่า "type": "image" จะส่งคืนเฉพาะรูปภาพและละทิ้งข้อความการสนทนา ซึ่งจะทำให้การตอบกลับมีขนาดเล็กลงและประมวลผลง่ายขึ้น
interaction = client.interactions.create(
model="gemini-nano-banana-2.1",
input="A product shot of a matte black coffee grinder on a marble counter",
response_format={
"type": "image",
"mime_type": "image/png",
"aspect_ratio": "16:9",
"image_size": "2K",
},
)
สิ่งที่ควรรู้:
image_sizeรองรับ1K,2Kและ4Kใช้Kตัวพิมพ์ใหญ่; ค่าตัวพิมพ์เล็ก เช่น2kจะถูกปฏิเสธ- 2.1 ไม่มีระดับ 512px ระดับนั้นเป็นของ Nano Banana 2
- อัตราส่วนที่รองรับ ได้แก่
1:1,2:3,3:2,3:4,4:3,4:5,5:4,9:16,16:9,21:9, รวมถึงอัตราส่วนพิเศษ1:4,4:1,1:8และ8:1ภาพ 16:9 ที่ความละเอียด 2K คือ 2752x1536; ที่ 4K คือ 5504x3072 - หากคุณต้องการทั้งข้อความและรูปภาพ ให้ส่งรายการ:
response_format=[{"type": "text"}, {"type": "image"}]
ขั้นตอนที่ 4: แก้ไขรูปภาพที่มีอยู่
ส่งรูปภาพของคุณเป็นบล็อก image ในรูปแบบ base64 ถัดจากคำสั่งข้อความ:
with open("living_room.png", "rb") as f:
image_b64 = base64.b64encode(f.read()).decode("utf-8")
interaction = client.interactions.create(
model="gemini-nano-banana-2.1",
input=[
{"type": "text", "text": "Using the provided image of a living room, change only the blue sofa to be a vintage, brown leather chesterfield sofa. Keep the rest of the room, including the pillows on the sofa and the lighting, unchanged."},
{"type": "image", "data": image_b64, "mime_type": "image/png"},
],
)
การ Inpainting สไตล์มาสก์โดยไม่ต้องใช้ไฟล์มาสก์
ไม่มีการอัปโหลดมาสก์แยกต่างหาก คุณกำหนดมาสก์ด้วยคำพูด เทมเพลตของ Google:
จากภาพที่ให้มา ให้เปลี่ยนเฉพาะ [องค์ประกอบเฉพาะ] เป็น [องค์ประกอบ/คำอธิบายใหม่] รักษาส่วนอื่น ๆ ทั้งหมดในภาพให้เหมือนเดิมทุกประการ โดยคงสไตล์ แสง และองค์ประกอบเดิมไว้
ระบุองค์ประกอบหนึ่งอย่าง อธิบายการเปลี่ยนแทนอย่างชัดเจน และย้ำสิ่งที่ต้องคงที่อยู่ พรอมต์ที่คลุมเครือ เช่น "ทำให้โซฟาดูดีขึ้น" อาจทำให้โมเดลวาดห้องใหม่ทั้งหมด
ขั้นตอนที่ 5: ทำซ้ำด้วยการแก้ไขแบบหลายรอบ
การแก้ไขแบบหลายรอบเป็นวิธีที่ Google แนะนำในการปรับแต่งรูปภาพ ส่ง id ของการโต้ตอบก่อนหน้าเป็น previous_interaction_id และส่งเฉพาะการเปลี่ยนแปลงที่คุณต้องการ:
interaction_2 = client.interactions.create(
model="gemini-nano-banana-2.1",
input="Update this infographic to be in Spanish. Do not change any other elements of the image.",
previous_interaction_id=interaction.id,
response_format={"type": "image", "mime_type": "image/png", "aspect_ratio": "16:9", "image_size": "2K"},
)
ผ่าน REST ฟิลด์เดียวกันจะอยู่ในเนื้อหา: "previous_interaction_id": "<PREVIOUS_INTERACTION_ID>" นี่คือจุดที่ความสอดคล้องของตัวละครที่ได้รับการปรับปรุงใน 2.1 มีความสำคัญ: ตัวละครหรือผลิตภัณฑ์ควรรักษารูปลักษณ์ที่จดจำได้ในการแก้ไขหลายรอบ
ขั้นตอนที่ 6: รวมภาพอ้างอิงได้สูงสุด 14 ภาพ
เพิ่มบล็อก image ลงในรายการ input สำหรับ 2.1 เอกสารของ Google ระบุว่ารองรับภาพวัตถุที่มีความละเอียดสูงได้สูงสุด 10 ภาพ และภาพตัวละครได้สูงสุด 4 ภาพ รวมทั้งหมด 14 ภาพ:
interaction = client.interactions.create(
model="gemini-nano-banana-2.1",
input=[
{"type": "text", "text": "An office group photo of these people, they are making funny faces."},
{"type": "image", "data": person_1_b64, "mime_type": "image/png"},
{"type": "image", "data": person_2_b64, "mime_type": "image/png"},
{"type": "image", "data": person_3_b64, "mime_type": "image/png"},
],
response_format={"type": "image", "aspect_ratio": "5:4", "image_size": "2K"},
)
ภาพอ้างอิงเป็นโทเค็นอินพุต และค่าใช้จ่ายอินพุตของ 2.1 เป็นสามเท่าของ Nano Banana 2 เวิร์กโฟลว์ที่ใช้ภาพอ้างอิงจำนวนมากจะทำให้ส่วนต่างของราคาแคบลง ดังนั้นควรพิจารณาก่อนที่จะเปลี่ยนไปใช้
ขั้นตอนที่ 7: อ้างอิงภาพด้วย Google Search
สำหรับภาพที่อ้างอิงข้อเท็จจริงปัจจุบัน เช่น แผนภูมิสภาพอากาศ หรือเหตุการณ์ล่าสุด ให้เพิ่มเครื่องมือค้นหา:
interaction = client.interactions.create(
model="gemini-nano-banana-2.1",
input="A detailed painting of a Timareta butterfly resting on a flower",
tools=[{"type": "google_search", "search_types": ["web_search", "image_search"]}],
)
{"type": "google_search"} เพียงอย่างเดียวจะให้การค้นหาเว็บ การเพิ่ม image_search ทำให้โมเดลสามารถใช้ภาพจากเว็บเป็นบริบทภาพ ซึ่งมีเพียง 2.1 และ Nano Banana 2 เท่านั้นที่รองรับ การอ้างอิงไม่สามารถใช้ภาพคนจริงจากผลการค้นหาได้ หากคุณแสดงผลลัพธ์ที่อ้างอิงแล้วแก่ผู้ใช้ Google กำหนดให้คุณต้องแสดง search_suggestions ที่ส่งคืนในขั้นตอน google_search_result
ขั้นตอนที่ 8: ทดสอบใน Apidog
สคริปต์ก็ใช้ได้สำหรับการสร้างภาพ สำหรับการตรวจสอบว่าพรอมต์, คีย์ และโมเดลยังทำงานได้ตามปกติ การบันทึกคำขอจะเร็วกว่า ใน Apidog:
- สร้างสภาพแวดล้อมและเพิ่มตัวแปร
GEMINI_API_KEYด้วยคีย์ของคุณ - สร้างคำขอ:
POST https://generativelanguage.googleapis.com/v1beta/interactions - เพิ่มส่วนหัว
x-goog-api-key: {{GEMINI_API_KEY}} - วางเนื้อหา JSON ที่มี
model,inputและresponse_formatจากนั้นคลิก Send - เพิ่มสคริปต์หลังการตอบกลับพร้อมกับการยืนยันสองรายการ:
pm.test("status is 200", () => {
pm.response.to.have.status(200);
});
pm.test("response contains an image block", () => {
const steps = pm.response.json().steps || [];
const hasImage = steps.some(s =>
s.type === "model_output" &&
(s.content || []).some(c => c.type === "image" && c.data)
);
pm.expect(hasImage).to.be.true;
});
- ทำซ้ำคำขอและเปลี่ยน
modelเป็นgemini-3.1-flash-imageส่งทั้งสองรายการด้วยพรอมต์เดียวกัน
ตอนนี้คุณมีการตรวจสอบแบบเคียงข้างกันระหว่าง 2.1 กับ Nano Banana 2 โดยมีสถานะ, เวลา และขนาดการตอบกลับแสดงสำหรับแต่ละครั้ง สำหรับการเปรียบเทียบคุณสมบัติที่กว้างขึ้น โปรดดูที่ Nano Banana 2.1 vs Nano Banana 2 vs Pro
ค่าใช้จ่าย
ระดับที่ต้องชำระเงิน ตามหน้าการกำหนดราคาของ Google ณ วันที่ 7 ตุลาคม 2026:
| โมเดล | อินพุต / 1M | ภาพ 1K | ภาพ 2K | ภาพ 4K | แบทช์ 1K |
|---|---|---|---|---|---|
| Nano Banana 2.1 | $1.50 | $0.0336 | $0.0504 | $0.0756 | $0.0168 |
| Nano Banana 2 | $0.50 | $0.067 | $0.101 | $0.151 | $0.034 |
| Nano Banana Pro | $2.00 | $0.134 | $0.134 | $0.24 | $0.067 |
เอาต์พุตภาพสำหรับ 2.1 มีราคา $30 ต่อ 1 ล้านโทเค็น ภาพ 1K มี 1,120 โทเค็น, 2K มี 1,680 โทเค็น และ 4K มี 2,520 โทเค็น ซึ่งเป็นที่มาของราคาต่อภาพ เอาต์พุตข้อความและการคิดมีราคา $7.50 ต่อ 1 ล้านโทเค็น การอ้างอิงผลการค้นหารวมการร้องขอฟรี 5,000 ครั้งต่อเดือนที่ใช้ร่วมกันในโมเดล Gemini 3.x จากนั้นคิด $14 ต่อ 1,000 ครั้ง
ตัวอย่างการคำนวณ: ภาพผลิตภัณฑ์ 1,000 ภาพที่ความละเอียด 2K จากพรอมต์ข้อความสั้นๆ (ประมาณ 100 โทเค็นอินพุตต่อภาพ)
- เอาต์พุต: 1,000 x $0.0504 = $50.40
- อินพุต: 100,000 โทเค็น x $1.50 / 1M = $0.15
- รวม: ประมาณ $50.55, บวกกับโทเค็นข้อความสำหรับการคิด (ถ้ามี)
งานเดียวกันบน Nano Banana 2 มีค่าใช้จ่ายประมาณ $101 ผ่าน Batch API ราคา 2K ของ 2.1 ลดลงเหลือ $0.0252 ดังนั้นฝั่งเอาต์พุตจึงลดลงเหลือ $25.20 หากคุณสามารถรอได้ งานแบบแบทช์จะแลกกับการประมวลผลสูงสุด 24 ชั่วโมงเพื่อแลกกับขีดจำกัดอัตราที่สูงขึ้น รายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดราคาของ Nano Banana 2 อยู่ใน การวิเคราะห์การกำหนดราคา API ของ Nano Banana 2 ของเรา
ข้อผิดพลาดที่พบบ่อย
นี่คือพฤติกรรมทั่วไปของ Gemini API ไม่ใช่ข้อผิดพลาดเฉพาะสำหรับ 2.1 ที่มีการบันทึกไว้:
| ข้อผิดพลาด | สาเหตุที่เป็นไปได้ | การแก้ไข |
|---|---|---|
400 INVALID_ARGUMENT |
image_size เป็นตัวพิมพ์เล็ก, อัตราส่วนไม่รองรับ, input ผิดรูปแบบ |
ใช้ 2K ไม่ใช่ 2k; ตรวจสอบรายการอัตราส่วน |
403 PERMISSION_DENIED |
คีย์ไม่ถูกต้อง หรือโปรเจกต์ไม่ได้เปิดใช้งานการเรียกเก็บเงิน | ตรวจสอบคีย์และเปิดใช้งานการเรียกเก็บเงิน |
404 NOT_FOUND |
พิมพ์รหัสโมเดลผิด | ใช้ gemini-nano-banana-2.1 ให้ถูกต้อง |
429 RESOURCE_EXHAUSTED |
ถึงขีดจำกัดอัตราการใช้งาน | รอสักครู่แล้วลองใหม่ หรือใช้ Batch |
500 / 503 |
ปัญหาเซิร์ฟเวอร์ชั่วคราว | ลองใหม่ด้วย Exponential Backoff |
| 200 แต่ไม่มีภาพ | พรอมต์ถูกบล็อก หรือคำตอบเป็นข้อความเท่านั้น | ตั้งค่า "type": "image" และเปลี่ยนคำสั่ง |
คำถามที่พบบ่อย
มีบริการฟรีสำหรับ Nano Banana 2.1 API หรือไม่? ไม่มี Google ระบุว่าบริการฟรีสำหรับ API นี้ "ไม่พร้อมใช้งาน" AI Studio playground เชื่อมโยงกับ 2.1 แต่ Google ยังไม่ได้เผยแพร่ขีดจำกัดฟรีสำหรับมัน
2.1 สามารถใช้แทน Nano Banana 2 ได้เลยหรือไม่? ส่วนใหญ่ใช่ แค่เปลี่ยนรหัสโมเดลเป็น gemini-nano-banana-2.1 คุณจะเสียระดับ 512px ไป และโทเค็นอินพุตมีราคาสูงขึ้น ดังนั้นการแก้ไขที่ใช้ภาพอ้างอิงจำนวนมากจำเป็นต้องตรวจสอบค่าใช้จ่าย
รูปภาพที่สร้างขึ้นมีลายน้ำหรือไม่? มี เอาต์พุตทั้งหมดจะรวมลายน้ำ SynthID
ฉันสามารถสร้างภาพจากวิดีโอได้หรือไม่? ได้ 2.1 รองรับบล็อกอินพุต video เช่น URL ของ YouTube ควบคู่ไปกับพรอมต์ข้อความของคุณ
คู่มือ API ของ Nano Banana 2 เก่ายังคงใช้ได้อยู่หรือไม่? แนวคิดยังคงใช้ได้ โปรดดู คู่มือ API ของ Nano Banana 2 สำหรับโมเดลรุ่นก่อนหน้า
สรุป
Nano Banana 2.1 มอบภาพที่ดีขึ้นในราคาต่อภาพเพียงครึ่งหนึ่งของ Nano Banana 2 ด้วยรูปแบบ Interactions API เดียวกัน รับคีย์ที่เรียกเก็บเงิน สร้างภาพหนึ่งภาพ จากนั้นบันทึกคำขอใน Apidog พร้อมกับการยืนยันสถานะและภาพ ทำซ้ำด้วยรหัสโมเดลเก่า และคุณจะทราบได้ภายในช่วงบ่ายว่า 2.1 คุ้มค่าที่จะเปลี่ยนไปใช้สำหรับพรอมต์ของคุณหรือไม่
