Tham chiếu
POST /v1/images/generations
Tạo ảnh từ một prompt văn bản, theo định dạng của OpenAI: images.generate của SDK chỉ cần đổi base URL. Ảnh được trả về ngay trong phản hồi, và chúng tôi không giữ bản sao nào.
Đã kiểm tra 6 tháng 11, 2026
Tạo một ảnh
import base64
import os
from openai import OpenAI
client = OpenAI(
base_url="https://nokeep.ai/v1",
api_key=os.environ["NOKEEP_API_KEY"],
)
result = client.images.generate(
model="z-image-turbo",
prompt="A lighthouse on a rocky coast at dusk",
size="1024x1024",
)
with open("picture.webp", "wb") as f:
f.write(base64.b64decode(result.data[0].b64_json))Mô hình
| Mô hình | Phù hợp cho | Mỗi ảnh | Kích thước | Prompt dài nhất |
|---|---|---|---|---|
| chroma | Mô hình mở, đọc được các prompt dài và chi tiết. | $0.03 | Tối đa 1280 pixel mỗi cạnh, trả về ở mức 1,5 lần | 7.500 ký tự |
| z-image-turbo | Nhanh nhất ở đây, cho ảnh chụp với số lượng lớn. | $0.03 | Tối đa 1280 pixel mỗi cạnh | 7.500 ký tự |
| wai-illustrious | Anime và minh họa. | $0.03 | Tối đa 1280 pixel mỗi cạnh | 1.500 ký tự |
| krea-2-turbo | Giữ được nhân vật đã biết và phong cách riêng, ở 1K hoặc 2K. | $0.08 (1K), $0.12 (2K) | 1:1, 3:2, 16:9, 21:9, 9:16, 2:3, 3:4, 4:5 | 5.000 ký tự |
GET /v1/models liệt kê cùng giá và giới hạn.
Yêu cầu
| Trường | Nhận | Tác dụng |
|---|---|---|
model | Bắt buộc | Một trong các mã mô hình ở trên. |
prompt | Bắt buộc | Nội dung cần vẽ, gửi đến mô hình đúng như bạn viết. Vượt giới hạn của mô hình sẽ bị từ chối, không bao giờ bị cắt. |
size | WIDTHxHEIGHT hoặc auto | Kích thước ảnh. Mặc định là 1024x1024. Xem Kích thước. |
aspect_ratio | 1:1, 3:2, 2:3, 4:3, 3:4, 4:5, 16:9, 9:16, 21:9 | Tỷ lệ khung hình, thay cho size. Khi gửi cả hai, tham số này được ưu tiên. |
n | 1 đến 4 | Số ảnh. Bạn chỉ trả tiền cho những ảnh được trả về. |
response_format | b64_json hoặc url | Mặc định là b64_json. url trả về một URL data:, không phải liên kết đến một tệp đã lưu. |
output_format | webp, png hoặc jpeg | Mặc định là webp. |
resolution | 1K hoặc 2K | Chỉ dành cho krea-2-turbo, và giá tính theo mô hình này. |
seed | Một số nguyên | Cùng seed và prompt cho ra ảnh tương tự. Với n, mỗi ảnh cộng thêm một vào seed. |
negative_prompt | Văn bản | Những gì cần loại trừ. Nội dung này không được bước kiểm tra giới hạn cứng đọc, và không phải mô hình nào cũng xem xét nó. |
steps | 1 đến 50 | Nhiều bước hơn thì lâu hơn. Không phải mô hình nào cũng dùng tham số này. |
cfg_scale | Lớn hơn 0, tối đa 20 | Mức bám sát prompt. Không phải mô hình nào cũng dùng tham số này. |
Mọi trường khác, như quality, style hoặc user, sẽ bị bỏ qua và được nêu tên trong header x-nokeep-ignored. Trường mang ảnh, như image, bị từ chối với 400 unsupported_input: các mô hình này chỉ làm việc từ văn bản.
Kích thước
- Mỗi cạnh tối thiểu 256 pixel, và cạnh dài không quá ba lần cạnh ngắn. Vượt ngoài mức đó sẽ là
400 unsupported_size. - Kích thước lớn hơn được thu vừa trong 1280 pixel mỗi cạnh, giữ nguyên tỷ lệ. Ví dụ, 1536x1024 của OpenAI được vẽ ở 1280x848.
chromatrả về gấp 1,5 lần số pixel nó vẽ, không tốn thêm, nên 1024x1024 được trả về ở 1536x1536.krea-2-turbovẽ theo các tỷ lệ có tên, nênsizeđược đổi thành tỷ lệ gần nhất.sizehoặcaspect_ratiotrong phản hồi luôn cho biết bạn nhận được gì.
Phản hồi
{
"created": 1793960000,
"data": [
{
"b64_json": "UklGRk…"
}
],
"model": "z-image-turbo",
"output_format": "webp",
"size": "1024x1024",
"usage": {
"images": 1,
"nokeep_credits": 30
}
}Các header x-nokeep-credits và x-nokeep-balance cho biết lượt gọi tốn bao nhiêu và còn lại bao nhiêu, như ở chat. Ảnh được tính phí khi được trả về. Ảnh lỗi hoặc bị từ chối thì không tốn gì.
Mô hình sẽ tạo những gì
Nội dung người lớn nằm trong phạm vi trên các mô hình được nhà cung cấp đánh dấu là không kiểm duyệt. z-image-turbo không thuộc nhóm đó, và trong các lần kiểm tra của chúng tôi nó giữ lại nhiều nhất, nên kết quả có thể nhẹ hơn yêu cầu.
Bốn giới hạn cứng vẫn được giữ: nội dung tình dục liên quan đến trẻ vị thành niên, nội dung tình dục về người thật, gây thiệt hại hàng loạt và nhắm vào một người thật. Prompt vi phạm một trong số đó nhận 422 hard_limit và không tốn gì. Bước kiểm tra đọc prompt; xem Giới hạn cứng. Nhà cung cấp của mô hình cũng có thể từ chối yêu cầu hoặc giữ lại kết quả: đó là 422 content_refused, cũng miễn phí.
Giới hạn và lỗi
Một khóa có thể gửi 60 yêu cầu ảnh mỗi phút, trong tổng 120 yêu cầu. Vượt mức đó sẽ nhận 429 rate_limited kèm Retry-After. Trang lỗi liệt kê mọi mã.
Để kiểm tra mã của bạn mà không tốn gì, hãy gửi sk-nokeep-test làm khóa. Khóa này chạy mọi bước kiểm tra ở trên và trả về một ảnh một pixel.
curl https://nokeep.ai/v1/images/generations \
-H "Authorization: Bearer $NOKEEP_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "chroma",
"prompt": "A lighthouse on a rocky coast at dusk",
"n": 2,
"aspect_ratio": "16:9",
"output_format": "png",
"seed": 42
}'