การตรวจสอบสิทธิ์และ URL ฐาน
เข้าถึง nano banana api โดยชี้ไคลเอนต์ของคุณไปที่ https://api.nanobananaapis.com/v1 คุณต้องมีคีย์ API ที่ถูกต้องในหัว Authorization สมัครสมาชิกที่หน้า รับคีย์ API โดยใช้เพียงอีเมลและรหัสผ่านเพื่อรับคีย์ของคุณทันที คีย์จะแสดงทันทีหลังจากสมัครสมาชิก หากคุณทำหาย ให้สร้างคีย์ใหม่จากแดชบอร์ดของคุณ คีย์เก่าจะหยุดทำงานทันที
ใช้ Bearer YOUR_API_KEY สำหรับทุกคำขอ รหัสโมเดลคือ uncensored เสมอ เอนด์พอยต์นี้จัดการข้อความเข้าและข้อความออก ไม่สร้างภาพ เสียง หรือวิดีโอ สำหรับเพย์ปไลน์มัลติโมดัล ใช้ API นี้สำหรับการเขียนพรอมต์ การสร้างสคริปต์ และการประมวลผลหลัง
คำขอแรก
ส่งคำขอ chat completion มาตรฐาน API รองรับรูปแบบ OpenAI แทนที่ YOUR_API_KEY ด้วยคีย์จริงของคุณ ตัวอย่างนี้ส่งข้อความง่ายไปยังโมเดล uncensored
curl https://api.nanobananaapis.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'การตอบสนองประกอบด้วยข้อความที่สร้างขึ้นมา คุณสามารถตรวจสอบจำนวนโทเคนในการใช้งานได้จาก body ของการตอบสนอง หน้าต่างบริทมีขนาด 100,000 โทเคนสำหรับพรอมต์และการตอบกลับ รวมกัน รักษาขนาด payload ไว้ต่ำกว่า 8 MB
ตัวอย่าง SDK Python
ใช้ Python SDK ทางการของ OpenAI ตั้งค่า base URL เป็นเอนด์พอยต์ nanobananaapis ส่งคีย์ API ของคุณเป็น api_key ไคลเอนต์จะจัดรูปแบบคำขออย่างถูกต้องโดยอัตโนมัติ วิธีนี้เหมาะสำหรับสคริปต์แบ็กเอนด์ที่ต้องประมวลผลข้อความก่อนส่งไปยังบริการสร้างภาพหรือวิดีโอ
from openai import OpenAI
client = OpenAI(base_url="https://api.nanobananaapis.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)SDK จัดการการสตรีมมิงและการแยกวิเคราะห์ให้คุณ คุณสามารถวนซ้ำผ่านชิ้นส่วนได้หากคุณเปิดโหมดสตรีมมิง วิธีนี้ทำให้โค้ดของคุณสะอาดและเข้ากันได้กับบริการ OpenAI อื่นๆ หากคุณเปลี่ยนผู้ให้บริการในภายหลัง
ตัวอย่าง SDK Node
Node.js SDK ทำงานคล้ายกัน เริ่มต้นไคลเอนต์ด้วย base URL และคีย์ของคุณ เรียกใช้เมธอด chat.completions.create สิ่งนี้มีประโยชน์สำหรับฟังก์ชัน serverless หรือเว็บเซิร์ฟเวอร์ที่ต้องสร้างสคริปต์แบบไดนามิก
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nanobananaapis.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);ตรวจสอบให้แน่ใจว่าคุณจัดการข้อผิดพลาดอย่างเหมาะสม ข้อผิดพลาดทั่วไปรวมถึงการตรวจสอบสิทธิ์ล้มเหลว (401) หากคีย์ไม่ถูกต้องหรือหมดอายุ และขีดจำกัดอัตรา (429) หากคุณเกิน 300 คำขอต่อนาที คีย์ API เชื่อมโยงกับบัญชีของคุณ ดังนั้นปกป้องมันในตัวแปรสภาพแวดล้อมของคุณ
การตอบสนองแบบสตรีมมิง
เปิดใช้งานสตรีมมิงโดยตั้งค่า stream: true ในคำขอของคุณ API ส่งคืนสตรีม Server-Sent Events (SSE) แต่ละชิ้นมีข้อความที่สร้างบางส่วน สิ่งนี้จำเป็นสำหรับแอปพลิเคชันแบบเรียลไทม์หรือเมื่อสร้างสคริปต์ยาว
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)แยกวิเคราะห์เหตุการณ์ SSE ที่ฝั่งไคลเอนต์ของคุณ สตรีมมิงจะสิ้นสุดเมื่อโมเดลสร้างข้อความเสร็จหรือถึงขีดจำกัดของหน้าต่างบริท การสตรีมมิงช่วยลดความล่าช้าที่ผู้ใช้รู้สึก มันไม่เปลี่ยนราคา; คุณยังคงจ่ายตามจำนวนโทเคน
ขีดจำกัด ข้อผิดพลาด และโมเดล
ตรวจสอบโมเดลที่มีผ่าน GET /v1/models โมเดลเดียวคือ uncensored ขีดจำกัดอัตราคือ 300 คำขอต่อนาทีต่อคีย์ body ของคำขอต้องต่ำกว่า 8 MB ราคาคือ $0.25 ต่อ 1M โทเคนอินพุต และ $1.00 ต่อ 1M โทเคนเอาต์พุต เครดิตไม่หมดอายุ หากคุณหมด ให้เติมเงินจาก $10 ข้อผิดพลาด: 401 สำหรับคีย์ที่ไม่ถูกต้อง, 402 สำหรับเครดิตไม่เพียงพอ, 429 สำหรับขีดจำกัดอัตรา ไม่มี SLA หรือการรับประกันเวลาทำงาน โมเดลบล็อกเนื้อหาทางเพศที่เกี่ยวข้องกับเด็กอายุต่ำกว่า 18 ปี มันไม่ปฏิเสธหัวข้อผู้ใหญ่ที่ถูกต้องตามกฎหมายหรือหัวข้อที่ถกเถียงอื่นๆ