Isi ihe ọmụma Ndị na-arụ ọrụ
Ngwa, Audio na Embeddings
The generators site na ngwa, na ndị na-ewu ewu maka search: photos, video, speech, transcription na embeddings, onye ọ bụla na-ere kwa iji site na gị ego.
A sụgharịrị ibe a n'igwe maka ịdị mma. The English mbụ bụ ụdị nke na-emetụta.
Ịmepụta Images
Ọ na-emepụta otu ma ọ bụ atọ foto site na mgbakwunye na-ere ha mgbe ha na-eme. Ọ bụ otu set nke generators dị ka ?image na App.
POST https://nymbot.ai/api/v1/images/generations — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on request.
IDs na-abịa site na GET /api/v1/models?type=imageThe Standard Generator,
@cf/black-forest-labs/flux-1-schnell, na-eri a flat 5 standard credits (50 sats) a picture. Onye ọ bụla ọzọ generator na-eji Pro credits na ya onwe ya price, na obi ụgwọ na margins, dị ka na ngwa. n Ụdị foto
n A na ebe a na generator na-adịghị na-enweta na-atụ anya karịa na-atụ anya; Standard generator na-eji na nkwado naanị.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
model | Ọnwa | Ee | A generator id, dị ka nano-banana. |
prompt | Ọnwa | Ee | N'ihi na ihe na-agba ọsọ, naanị ndị mbụ 2000 akara na-eji. |
n | Ntuziaka | Ọ dịghị | 1 na 4. Default 1. Ọzọkwa kwadoro dị ka num_images. |
size | Ọnwa | Ọ dịghị | A na-agụnye ihe dị ka "16:9", ma ọ bụ a OpenAI size dị ka "1792x1024", nke na-abịa nso nke 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 21:9, 5:4 na 4:5. "auto" na-atụle ya na generator. |
aspect_ratio | Ọnwa | Ọ dịghị | Otu n'otu sizeỌ na-enweta ma ọ bụrụ na ha na-enweta. |
quality | Ọnwa | Ọ dịghị | Generator pụrụ iche, dị ka "low", "medium" ọ "high". |
negative_prompt | Ọnwa | Ọ dịghị | N'ihi na ihe na-agaghị. |
output_format | Ọnwa | Ọ dịghị | "png", "jpeg" ọ "webp". |
response_format | Ọnwa | Ọ dịghị | "url" (ụzọ dịghị) ma ọ bụ "b64_json". |
image_url | Ọnwa | Ọ dịghị | A foto na-amalite site na: a https:// njikọ nke dịkarịa na ihe karịrị 4,096 akụkọ na-enweghị user name ma ọ bụ password n'ime ya, ma ọ bụ a data:image/…;base64 URL (PNG, JPEG, WebP ma ọ bụ GIF; adịghị SVG). editN'ihi na ndị a chọrọ requires_image_url. |
resolution na-adịghị na-eji: ọ bụla generator na-eme ya onwe ya size. Na url, onye ọ bụla image na-akwụsị na a public Blossom host na ị ga-enweta ya njikọ (ọtụtụ generators na-enye naanị a njikọ nke ha onwe ha, nke na-aga n'ihu). Onye ọ bụla nwere njikọ nwere ike ịmepụta ya na ọ nwere ike ịmepụta ya ọzọ; ịhụ Otu n'ihi na API nwere ike ịhụna
b64_json The image na-aga n'ime ntụziaka na ọ na-enweghị ike ime. A photo sent as a data: URL na image_url Ọ na-atụ anya na otu
ekwentị na-agba ọsọ na Blossom mbụ ka generator nwere ike ime ya; ọ na-agba ọsọ ọsọ ma ọ bụrụ na chọrọ na-agba ọsọ.
Ọ bụrụ na ụfọdụ nke n foto na-adịghị, ị ga-esi ndị na-arụ ọrụ, na-akwụ ụgwọ naanị maka ndị (plus ihe ọ bụla na-akwụ ụgwọ n'agbanyeghị na-adịghị), na nymbot.failed na-ekwu banyere ọtụtụ ndị na-adịghị. Ọ bụrụ na ndị niile na-adịghị mma, 502.
nzọụkwụ
{
"created": 1790726400,
"model": "nano-banana",
"cost": 0.2126,
"data": [
{
"url": "https://blossom.example/5c0e4b7d3a91f2e8...c4.png",
"content_type": "image/png"
}
],
"nymbot": { "balance": "pro", "charged_credits": 1.817, "charged_sats": 181.7, "balance_credits": 410.608, "balance_sats": 41060.8 }
}
| ọnọdụ | mgbe |
|---|---|
400 | Ọ dịghị mfe; n n'elu 1 na 4 (invalid_value); a obere okpomọkụ (invalid_size) ma ọ bụ foto (invalid_image, invalid_image_url); a model nke nwere ma ọ bụghị image generator (invalid_model); a image maka a generator na-adịghị edit (edit_unsupported); ọ dịghị foto maka onye na-achọ ya (image_required). |
402 | Ọ dịghị ike na-ekpuchi ihe ọ bụla foto chọrọ. |
404 | Ọ dịghị ụdị nke a aha (model_not_found). |
502 | The generator na-adịghị (upstream_error). Ọ dịghị ihe ọ bụla na-akwụ ụgwọ ma ọ bụrụ na ndị ọrụ na-akwụ ụgwọ maka ntụziaka; charged_sats. |
503 | Ihe na-adịghị ike na-agba ọsọ ugbu a (media_hosting_unavailable). b64_json Ọ na-arụ ọrụ |
cURL
curl https://nymbot.ai/api/v1/images/generations \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana",
"prompt": "A lighthouse at dusk, oil painting",
"size": "16:9"
}'
Python
import os
import requests
res = requests.post(
"https://nymbot.ai/api/v1/images/generations",
headers={"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]},
json={"model": "nano-banana", "prompt": "A lighthouse at dusk, oil painting", "size": "16:9"},
)
res.raise_for_status()
print(res.json()["data"][0]["url"])
JavaScript
const res = await fetch("https://nymbot.ai/api/v1/images/generations", {
method: "POST",
headers: {
"Authorization": "Bearer " + process.env.NYMBOT_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({ model: "nano-banana", prompt: "A lighthouse at dusk, oil painting", size: "16:9" }),
});
const body = await res.json();
console.log(body.data[0].url);
Ịmepụta Images
Ọ na-eme ka a image ị na-akpọ, na-esonụ a ọkọlọtọ. Nke a bụ OpenAI editing endpoint, ya mere OpenAI SDKs ' images.edit na-arụ ọrụ dị ka ọ bụ. Only Pro generators with edit na usoro nchịkọta ekwesị ya.
POST https://nymbot.ai/api/v1/images/edits — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on requestThe body bụ multipart/form-dataỌ dị ka 32 MB.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
image | nkọwa | Ee | The image na-eduzi: PNG, JPEG, WebP ma ọ bụ GIF, ruo 20 MB. Ọzọkwa na-enweta dị ka image[]The mbụ a na-eji. |
prompt | Ọnwa | Ee | N'ihi na ị ga-agbanwe |
model | Ọnwa | Ee | Generator na edit. |
n | Ntuziaka | Ọ dịghị | 1 na 4. |
sizeaspect_ratioqualitynegative_promptoutput_format | Ọnwa | Ọ dịghị | N'ihi na Generation. |
response_format | Ọnwa | Ọ dịghị | "b64_json" (na default ebe a) ma ọ bụ "url". |
The image ị na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ PNG, JPEG, WebP ma ọ bụ GIF, na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ.
nzọụkwụ
{
"created": 1790726460,
"model": "nano-banana",
"cost": 0.2126,
"data": [{ "b64_json": "iVBORw0KGgoAAAANSUhEUgAA..." }],
"nymbot": { "balance": "pro", "charged_credits": 1.817, "charged_sats": 181.7, "balance_credits": 408.791, "balance_sats": 40879.1 }
}
| ọnọdụ | mgbe |
|---|---|
400 | Ọ dịghị image ma ọ bụ prompt, faịlụ na-abụghị image (invalid_image), ma ọ bụ a generator na-enweghị editing (edit_unsupported). |
413 | Ngwa dị ka 20 MB (file_too_large), ma ọ bụ n'ụzọ zuru ezu ihe karịrị 32 MB. |
503 | The image nwere ike ịhụnanya ugbu a (media_hosting_unavailable). |
cURL
curl https://nymbot.ai/api/v1/images/edits \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-F model=nano-banana \
-F [email protected] \
-F prompt="Make it a snowy evening"
Python
import base64, os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
with open("photo.png", "rb") as f:
result = client.images.edit(model="nano-banana", image=f, prompt="Make it a snowy evening")
with open("edited.png", "wb") as out:
out.write(base64.b64decode(result.data[0].b64_json))
JavaScript
import fs from "node:fs";
import { writeFile } from "node:fs/promises";
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const result = await client.images.edit({
model: "nano-banana",
image: fs.createReadStream("photo.png"),
prompt: "Make it a snowy evening",
});
await writeFile("edited.png", Buffer.from(result.data[0].b64_json, "base64"));
Ngwaahịa
A video na-eme nkeji, otú ọ na-agba ọsọ na mpaghara. Ị na-eweta ya, na-enweta a id ugbu a, na-achọ banyere id ruo mgbe ọ na-eme. Onye ọ bụla video generator na-eji Pro ego.
POST https://nymbot.ai/api/v1/videos — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on requestỊkwụ Ụgwọ 202.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
model | Ọnwa | Ee | A video generator id si GET /api/v1/models?type=videodị ka veo. |
prompt | Ọnwa | Ee | N'ihi na ihe ga-eme. |
duration | Number ma ọ bụ string | Ọ dịghị | Ogologo na sekọnd, karịa 0 na ruo 60. A na-eji naanị site na generators na-enye gị na-ahọrọ ogologo; ndị ọzọ na-eme ka ha na-ọtụtụ ogologo, nke bụ ihe seconds na-esonụ na price na-esonụ. |
aspect_ratio | Ọnwa | Ọ dịghị | dị ka "16:9" ọ "9:16"; a size dị ka "1280x720" Ọ na-eme ka ihe dị nso. |
resolutionquality | Ọnwa | Ọ dịghị | Otu n'ime generator resolutions na usoro nchịkọta, dị ka "720p" ọ "1080p"Ọ na-egosi price. Ihe ọ bụla ọzọ na-adịghị unsupported_resolution. |
image_url | Ọnwa | Ọ dịghị | A foto na-amalite site na: a https:// Link ma ọ bụ a data:image/… URL, nke na-agba ọsọ na a public Blossom ntụziaka mbụ. A chọrọ site na generators na requires_image_url. |
The price bụ fixed mgbe ị na-esonụ, site na generator, ikpeazụ na ogologo, otú ọ na-akwụ ụgwọ site na gị Pro ego mgbe ndị ọrụ na-akwụ ụgwọ ọrụ, na-egosi dị ka
cost, estimated_cost na nymbot. Ọ bụrụ na ndị ọrụ na-agba ọsọ ọrụ, ọ dịghị ihe ọ bụla na-akwụ ụgwọ. Ọ bụrụ na ndị ọrụ na-agba ọsọ na-agba ọsọ, ma ọ bụ ndị ọrụ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ, na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ. A na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ na-agba ọsọ. A na-agba ọsọ na-agba ọsọ na-agba ọsọ
Nkọwa (202)
{
"id": "vid_3e9a51c07b2f4d86e0a1c4f2",
"object": "video",
"model": "veo",
"status": "in_progress",
"created": 1790726400,
"seconds": 8,
"resolution": "1080p",
"estimated_cost": 3.18,
"expires_at": 1790812800,
"cost": 3.18,
"nymbot": { "balance": "pro", "charged_credits": 31.8, "charged_sats": 3180, "balance_credits": 378.808, "balance_sats": 37880.8 }
}
status Mmalite dị ka in_progressỌ bụ completed Na video dị na data mgbe generator na-ere ya ugbu a.
Nyocha na video
GET https://nymbot.ai/api/v1/videos/{id} - nwere mkpa a kpọmkwem nke dị na nym na-ere ya. A kpọmkwem na-enweta ya cap nwere ike na-echekwa.
Ọ na-ekwu 202 mgbe video na-eme na 200 mgbe ọ na-agba ọsọ ma ọ bụ na-agba ọsọ. Kpọmkwem ọ bụla 5 ka 10 nkeji. Kpọmkwem ọ bụla na-agba ọsọ na-agba ọsọ ọsọ; ọ na-agba ọsọ maka video. A ọrụ na-agba ọsọ 24 awa mgbe ọ na-ere ya.
GET /api/v1/videos lists the key's last 50 ọrụ dị ka
{"object": "list", "data": […]}.
Nkọwa (200)
{
"id": "vid_3e9a51c07b2f4d86e0a1c4f2",
"object": "video",
"model": "veo",
"status": "completed",
"created": 1790726400,
"seconds": 8,
"resolution": "1080p",
"estimated_cost": 3.18,
"expires_at": 1790812800,
"completed_at": 1790726590,
"data": { "url": "https://blossom.example/9b41d0c2e7a3f658...1e.mp4", "content_type": "video/mp4" },
"cost": 3.18,
"nymbot": { "balance": "pro", "charged_credits": 31.8, "charged_sats": 3180 }
}
status Ọ bụ in_progress, completed ọ failedA na-agba ọsọ ọrụ error ({"code": "generation_failed", "message": …}); ma ọ bụrụ na ọ na-ere ya, cost Ọ bụ 0 na nymbot Ọnụ
refunded_credits na refunded_satsThe zuru video bụ na a public Blossom n'ụlọ ahịa, dị ka foto na-emepụta.
| ọnọdụ | mgbe |
|---|---|
400 | Ọ dịghị mfe; oge dị n'okpuru 0 na 60 (invalid_value); a ngwọta na generator na-adịghị na-enye (unsupported_resolution); ọ dịghị foto maka generator na-achọ a (image_required); model na-adịghị a video generator (invalid_model). |
402 | Ọnụ ọgụgụ Pro nwere ike inye video. |
404 | Ọ dịghị generator (model_not_found), ma ọ bụ na-adịghị ọrụ site na id nke gị nym, ma ọ bụ ọ bụ karịa 24 awa (video_not_found). |
429 | Your nym already has 10 videos rendering (video_jobs_limit). Tinye na ha na-enye ndị ọzọ mgbe onye na-akwụsị. |
502 | The generator na-agba ọsọ ọrụ. Ọ dịghị ihe ọ bụla na-akwụ ụgwọ ọ dịghị na ndị ọrụ na-akwụ ụgwọ maka ya. |
503 | Video na-enweghị ike na-agba ọsọ ma ọ bụ na-agba ọsọ ugbu a (media_hosting_unavailable, service_unavailable). |
cURL
curl https://nymbot.ai/api/v1/videos \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "veo", "prompt": "Waves rolling onto a beach at sunrise", "duration": 8, "aspect_ratio": "16:9"}'
curl https://nymbot.ai/api/v1/videos/vid_3e9a51c07b2f4d86 \
-H "Authorization: Bearer $NYMBOT_API_KEY"
Python
import os, time
import requests
headers = {"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]}
job = requests.post(
"https://nymbot.ai/api/v1/videos",
headers=headers,
json={"model": "veo", "prompt": "Waves rolling onto a beach at sunrise", "duration": 8, "aspect_ratio": "16:9"},
).json()
while True:
time.sleep(8)
status = requests.get("https://nymbot.ai/api/v1/videos/" + job["id"], headers=headers).json()
if status["status"] in ("completed", "failed"):
break
print(status["data"]["url"] if status["status"] == "completed" else status["error"])
JavaScript
const headers = {
"Authorization": "Bearer " + process.env.NYMBOT_API_KEY,
"Content-Type": "application/json",
};
const job = await (await fetch("https://nymbot.ai/api/v1/videos", {
method: "POST",
headers,
body: JSON.stringify({ model: "veo", prompt: "Waves rolling onto a beach at sunrise", duration: 8, aspect_ratio: "16:9" }),
})).json();
let status;
do {
await new Promise((r) => setTimeout(r, 8000));
status = await (await fetch("https://nymbot.ai/api/v1/videos/" + job.id, { headers })).json();
} while (status.status !== "completed" && status.status !== "failed");
console.log(status.status === "completed" ? status.data.url : status.error);
Ngwa na-ekwu
Ọ na-ekwu na-ekwu na-ekwu faịlụ audio faịlụ ahụ, ọ bụghị njikọ. Ọ bụ OpenAI na-esonụ ntụ ntụ, otú audio.speech.create na OpenAI SDKs na-arụ ọrụ.
POST https://nymbot.ai/api/v1/audio/speech — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on request.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
model | Ọnwa | Ọ dịghị | A na-ekpuchi akụkọ ihe mere eme nke The audio ụdị list. Default: The Standard Voice, @cf/myshell-ai/melotts. aura-2 Ọ bụ Deepgram Aura 2. |
input | Ọnwa | Ee | The akụkọ na-akpọ: ruo 800 akụkọ maka akụkọ Standard, 2,000 maka Aura 2. |
voice | Ọnwa | Ọ dịghị | A Voice ID si Nkọwa nke Voice: aura speaker dị ka luna (Ọ bụ aura-2-luna-en), ma ọ bụ a MeloTTS asụsụ (en, es, fr, zh). OpenAI ekwentị aha dị ka alloy na-enweta na-enye n'akụkụ n'akụkụ nke model. |
language | Ọnwa | Ọ dịghị | Ngwa koodu dị ka esNa-enweghị asụsụ, ọ na-ahọrọ otu maka asụsụ ahụ. A asụsụ na-ekwu na-ekwu 422 voice_language_mismatch, na a asụsụ nke a na-enweghị asụsụ maka 422 unsupported_language. |
response_format | Ọnwa | Ọ dịghị | The Standard Voice na-aga mp3 Aura 2 ikpeazụ mp3 (Ọ na-adịghị mma) opus, aac, flac, wav ọ pcm. |
speed | nọmba | Ọ dịghị | Ọ bụrụ na ị na-enweta ma na-egosi. |
The ọkọlọtọ na-akwụ ụgwọ a flat 3 ọkọlọtọ akwụ ụgwọ (30 sats) a chọrọ, dị ka na ngwa. Aura 2 bụ Pro, na-akwụ ụgwọ site na akara ị na-esonụ. Ndị na-akwụ ụgwọ ahụ bụ audio, na a kpọmkwem
Content-Type; Ọnụ ọgụgụ bụ na X-Nymbot-Cost-Sats header. Ọ bụrụ na ụdị asụsụ na-adịghị mma, ihe ọ bụla na-akwụ ụgwọ.
nzọụkwụ
HTTP/1.1 200 OK
Content-Type: audio/mpeg
X-Nymbot-Cost-Sats: 4.2
X-Nymbot-Balance-Sats: 41055.6
(audio bytes)
| ọnọdụ | mgbe |
|---|---|
400 | Ọ dịghị input; input n'elu usoro nchịkọta nke model (input_too_long); a format na model nwere ike na-eme ka (unsupported_response_format); a na-enweghị asụsụ (invalid_voice); ụdị nke na-adịghị ihe ngosi (invalid_model). |
422 | Ọ bụ na-enweghị asụsụ, ma ọ bụ na-enweghị asụsụ n'ihi ya. |
502 | Ngwa ụdị na-adịghị. Ọ dịghị ihe ọ bụla na-akwụ ụgwọ. |
cURL
curl https://nymbot.ai/api/v1/audio/speech \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "aura-2", "voice": "luna", "input": "Your invoice has been paid."}' \
--output speech.mp3
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
audio = client.audio.speech.create(
model="aura-2",
voice="luna",
input="Your invoice has been paid.",
)
audio.write_to_file("speech.mp3")
JavaScript
import { writeFile } from "node:fs/promises";
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const audio = await client.audio.speech.create({
model: "aura-2",
voice: "luna",
input: "Your invoice has been paid.",
});
await writeFile("speech.mp3", Buffer.from(await audio.arrayBuffer()));
Audio ụdị na akụkọ
Ọtụtụ ndị na-atụ anya na ndị na-atụ anya na ndị na-atụ anya na ndị na-atụ anya na ndị na-atụ anya na ndị na-atụ anya na ndị na-atụ anya.
GET https://nymbot.ai/api/v1/audio/models Ọ dịghị mkpa.
GET https://nymbot.ai/api/v1/audio/voices?language=en Ọ dịghị mkpa.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
language | ọkọlọtọ (Query) | Ọ dịghị | Ọ bụ ezie na asụsụ a. |
model | ọkọlọtọ (Query) | Ọ dịghị | N'ihi na ụdị a naanị oyiyi. |
Nyocha (nyocha)
{
"object": "list",
"data": [
{ "id": "luna", "name": "Luna", "provider": "deepgram", "model_id": "aura-2", "models": ["aura-2"], "language": "en", "description": "Aura 2 English voice", "gender": "female", "preview_url": null },
{ "id": "en", "name": "MeloTTS English", "provider": "myshell", "model_id": "@cf/myshell-ai/melotts", "models": ["@cf/myshell-ai/melotts", "melotts"], "language": "en", "description": "English (MeloTTS)", "gender": null, "preview_url": null }
]
}
Ụdị Ụdị Ụdị Ụdị {"object": "list", "data": {"tts": […], "stt": […]}}. Onye ọ bụla nkwurịta okwu model na-enye ya ego, price, max_input_chars,
response_formats, languages na default_voice; ụdị transcription na-enye ya aliases, max_file_bytes, max_seconds, usoro na price per minute.
cURL
curl https://nymbot.ai/api/v1/audio/models
curl "https://nymbot.ai/api/v1/audio/voices?language=en"
Python
import requests
print(requests.get("https://nymbot.ai/api/v1/audio/models").json())
for voice in requests.get("https://nymbot.ai/api/v1/audio/voices", params={"language": "en"}).json()["data"]:
print(voice["id"], voice["model_id"])
JavaScript
console.log(await (await fetch("https://nymbot.ai/api/v1/audio/models")).json());
const voices = await (await fetch("https://nymbot.ai/api/v1/audio/voices?language=en")).json();
for (const v of voices.data) console.log(v.id, v.model_id);
Ngwa na ederede
Ọ na-agbanwe nchekwa na ederede na Whisper. Nke a bụ OpenAI transcription endpoint, otú
audio.transcriptions.create Ọnọdụ
POST https://nymbot.ai/api/v1/audio/transcriptions — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on requestThe body bụ multipart/form-data.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
file | nkọwa | Ee | Ngwuputa, site na 256 bytes na 25 MB na ruo 30 nkeji: WAV, WebM, MP4 ma ọ bụ M4A, Ogg ma ọ bụ Opus, MP3 na ndị ọzọ formats Whisper reads. |
model | Ọnwa | Ọ dịghị | Ọnọdụ whisper, nke bụ Whisper Large v3 Turbo. whisper-1, whisper-large-v3-turbo na @cf/openai/whisper-large-v3-turbo Ọ na-ekwe omume otu |
language | Ọnwa | Ọ dịghị | Ngwa dị iche iche, dị ka enNa-atụ anya ma ọ bụrụ na ha na-adịghị. |
prompt | Ọnwa | Ọ dịghị | Ngwa ma ọ bụ mkpuchi na-atụ aro, dị ka aha. A na-eji naanị ndị mbụ 1000 akara. |
response_format | Ọnwa | Ọ dịghị | json (Ọ na-adịghị mma) text, srt, vtt ọ verbose_json. |
N'ihi na WAV, WebM, MP4 na Ogg faịlụ, ogologo a na-akpọ site na faịlụ tupu ihe ọ bụla na-agba ọsọ, n'ihi ya, a akụkọ ihe mere eme ihe karịrị 30 nkeji na-agba ọsọ na-agba ọsọ (na 3 nkeji). A WAV faịlụ ogologo na-abịa site na ya sample ọsọ, channel na sample size. Ogologo nke ndị ọzọ na-agba ọsọ, dị ka MP3, nwere ike na-agba ọsọ na-agba ọsọ, otú ha na-agba ọsọ site na size: na ala bitrate Nymbot na-ekwu, 8 kbps, 30 nkeji bụ 1.8 MB, na a nnukwu faịlụ na ụdị a na-agba ọs 413
audio_too_long tupu ihe ọ bụla na-agba ọsọ. Tinye ogologo nchọgharị dị ka WAV, WebM, MP4 ma ọ bụ Ogg. Ọ bụrụ na Whisper mgbe ahụ na-egosi ihe karịrị 30 nkeji ọ bụla, na-atụ aro na
413 audio_too_long, na n'ihi na Whisper na-agba ọsọ, 30 nkeji na-akwụ ụgwọ.
Ị na-akwụ ụgwọ maka ogologo nke audio, gburugburu ka nke abụọ: ndị kasị ogologo nke ogologo na-akwụ ụgwọ site na faịlụ, ogologo Whisper akụkọ, na ihe kasị obere nke faịlụ ogologo na-enye, na Whisper per-minute price na obi ụgwọ na margin, na ọ dịkarịa ala 0.05 credit a chọrọ. Ọ na-akwụ ụgwọ site na ọkọlọtọ ego mgbe nke nwere ike na-akwụ ụgwọ, na site na Pro ọ dịghị; 402 Ọ na-enye ihe onye ọ bụla ego ga-achọ. Na ngwa, transcripting a asụsụ ozi nwere ike ịbụ free; na API ọ bụ mgbe niile na-akwụ ụgwọ. Ọ bụrụ na Whisper na-adịghị, ọ dịghị ihe na-akwụ ụgwọ.
nzọụkwụ
{
"text": "Your invoice has been paid.",
"usage": { "type": "duration", "seconds": 3 },
"nymbot": { "balance": "standard", "charged_credits": 0.05, "charged_sats": 0.5, "balance_credits": 120.35, "balance_sats": 1203.5 }
}
text Tụkwasịnụ text, srt na vtt Back subtitles, na
verbose_json na-agụnye asụsụ, oge na oge segments. N'ihi na ndị atọ na-adịghị JSON, ego bụ na headers.
| ọnọdụ | mgbe |
|---|---|
400 | Ọ dịghị faịlụ, faịlụ na-enweghị ihe na-eji audio (invalid_audio), a na-adịghị anya format, ma ọ bụ a model na-adịghị a transcription model (invalid_model). |
402 | Ọzọkwa, na-adịghị ike ịdabere ya. |
413 | faịlụ bụ ihe karịrị 25 MB (file_too_large) ma ọ bụ nchọgharị ihe karịrị 30 nkeji, ma ọ bụ, na format nke na-adịghị ike na-agba ọsọ, ihe karịrị 1.8 MB (audio_too_long). |
502 | Whisper nwere ike na-agbanwe audio. Ọ dịghị ihe na-akwụ ụgwọ. |
cURL
curl https://nymbot.ai/api/v1/audio/transcriptions \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-F [email protected] \
-F model=whisper \
-F response_format=json
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
with open("memo.m4a", "rb") as f:
transcript = client.audio.transcriptions.create(model="whisper", file=f)
print(transcript.text)
JavaScript
import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const transcript = await client.audio.transcriptions.create({
model: "whisper",
file: fs.createReadStream("memo.m4a"),
});
console.log(transcript.text);
Tụkwasịnụ Ngwa na English
POST https://nymbot.ai/api/v1/audio/translations — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on requestThe body bụ multipart/form-data.
Ọzọ dị ka transcription, na otu ụlọ dịka language, obere, na price, ma ederede na-esonụ na English n'agbanyeghị na asụsụ a na-akpọ. The OpenAI SDKs na-akpọ ya na audio.translations.create.
cURL
curl https://nymbot.ai/api/v1/audio/translations \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-F [email protected] \
-F model=whisper
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
with open("nota.m4a", "rb") as f:
translation = client.audio.translations.create(model="whisper", file=f)
print(translation.text)
JavaScript
import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const translation = await client.audio.translations.create({
model: "whisper",
file: fs.createReadStream("nota.m4a"),
});
console.log(translation.text);
Ngwuputa
Ọ na-agbanwe ederede na vectors maka search, clustering na deduplication. Ụdị na-agba ọsọ na Cloudflare na-agba ọsọ ego.
POST https://nymbot.ai/api/v1/embeddings — dị mkpa API key, ma ọ bụ Lightning ịkwụ ụgwọ on request.
| Ọnọdụ | ụdị | Nlekọta | Nkọwa |
|---|---|---|---|
model | Ọnwa | Ee | A embedded nlereanya site na GET /api/v1/models?type=embedding. |
input | string ma ọ bụ array nke string | Ee | The text na-agba ọsọ, ruo 100 na-adịghị na-egbochi akara. Token array na-agba ọsọ (token_input_unsupported). Onye ọ bụla input ga-ekwe omume na model context_length, na-agụnye dị ka banyere 4 bytes a token. |
encoding_format | Ọnwa | Ọ dịghị | float (ụzọ dịghị) ma ọ bụ base64 (Nyocha 32-bit dị iche iche) |
dimensions | Ntuziaka | Ọ dịghị | model nke onwe ya size, ma ọ bụ maka a model na supported_dimensions otu n'ime ndị a; vector a na-agba ọsọ na normalized. Ihe ọ bụla ọzọ na-atụ aro. |
| Ngwaahịa | Ọnọdụ | Ngwaahịa |
|---|---|---|
@cf/baai/bge-m3 | 1024, ọtụtụ asụsụ | 8,192 tọhapụ |
@cf/qwen/qwen3-embedding-0.6b | 1024, ọtụtụ asụsụ | 8,192 tọhapụ |
@cf/baai/bge-large-en-v1.5 | 1024, English | 512 ndepụta |
@cf/baai/bge-base-en-v1.5 | 768 na English | 512 ndepụta |
@cf/baai/bge-small-en-v1.5 | 384 na English | 512 ndepụta |
The nkọwa nke nlereanya bụ ihe n'ihi na ha na-enweta na ihe ha na-eri; Google's EmbeddingGemma, na obere vectors on request, na-egosi n'ebe ahụ ma ọ bụrụ na catalogue nwere price maka ya. Embeddings na-egosi kwa input token, na 0.05-kredite minimum na-atụle maka onye ọ bụla chọrọ, ma ọ bụghị maka onye ọ bụla input, ya mere batching ọtụtụ ederede n'ime otu chọrọ bụ nnọọ obere karịa na-enye ha otu n'otu oge.
nzọụkwụ
{
"object": "list",
"data": [
{ "object": "embedding", "index": 0, "embedding": [0.0213, -0.0487, 0.0112] }
],
"model": "@cf/baai/bge-m3",
"usage": { "prompt_tokens": 9, "total_tokens": 9 },
"nymbot": { "balance": "standard", "charged_credits": 0.05, "charged_sats": 0.5, "balance_credits": 1204.35, "balance_sats": 12043.5 }
}
| ọnọdụ | mgbe |
|---|---|
400 | Ọ dịghị input ma ọ bụ n'èzí otu; token array (token_input_unsupported); ihe karịrị 100 inputs (too_many_inputs); input karịa model na-eji (input_too_long); a size na model nwere ike inye (unsupported_dimensions). |
402 | Standard ego bụ ala. Embeddings na-adịghị iji Pro ego. |
404 | Ọ dịghị ihe na-akpali akpali akpali na aha ya. |
502 | The model failed. Ọ dịghị ihe ọ bụla na-akwụ ụgwọ. |
cURL
curl https://nymbot.ai/api/v1/embeddings \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "@cf/baai/bge-m3", "input": ["Lightning invoices expire.", "Invoices on Lightning have a time limit."]}'
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
result = client.embeddings.create(
model="@cf/baai/bge-m3",
input=["Lightning invoices expire.", "Invoices on Lightning have a time limit."],
)
print(len(result.data), len(result.data[0].embedding))
JavaScript
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const result = await client.embeddings.create({
model: "@cf/baai/bge-m3",
input: ["Lightning invoices expire.", "Invoices on Lightning have a time limit."],
});
console.log(result.data.length, result.data[0].embedding.length);