Գիտելիքների բազա Արտադրողներ
Image, Audio եւ Embeddings
Ապրանքի գեներատորները, եւ search- ի բաղադրիչները: լուսանկարներ, տեսանյութեր, խոսքը, transcription եւ embeddings, ամենը բեռնել է օգտագործման համար ձեր բաղադրիչից:
Այս էջը թարգմանված է մեքենայական հարմարության համար: Անգլերեն բնօրինակը կիրառելի տարբերակն է:
Նկարներ արտադրում
Հիմն է, թե ինչ է անում այն, թե ինչ է անում այն, թե ինչ է անում այն, թե ինչ է անում այն, թե ինչ է անում այն, թե ինչ է անում ?image Այս app- ում
POST https://nymbot.ai/api/v1/images/generations — պետք է API սեղմություն, կամ Lightning վճարում.
IUD-ն կունենա GET /api/v1/models?type=imageՀիմնական Generator,
@cf/black-forest-labs/flux-1-schnell, ծախսում է փաթեթավոր 5 ստանդարտ ստանդարտ (50 sats) մի նկար. Ամեն այլ generator spends Pro credits at its own price, with the usual fee and margin, as in Ապրիլ. n Գնացքներ
n Մեկ գեներատոր չի վերցնում, այլեւ չի վերցնում: Standard գեներատոր օգտագործում է միայն prompt- ը:
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
model | Stringի մասին | Այո՛ | A Generator ID, ինչպիսիք են nano-banana. |
prompt | Stringի մասին | Այո՛ | Ո՞վ է օգտագործվում, միայն առաջին 2000 հատկանիշները օգտագործվում են: |
n | Անգլերեն | Ոչ | 1 - 4 Պահպանություն 1. Այնպես էլ ընդունվում է որպես num_images. |
size | Stringի մասին | Ոչ | Ապրիլը, ինչպիսիք են "16:9", կամ OpenAI չափը, ինչպիսիք են "1792x1024", որը կունենա մոտագույնը 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 21:9, 5:4 եւ 4:5. "auto" Ապրիլը վերցնում է Generator-ը |
aspect_ratio | Stringի մասին | Ոչ | Նրանք նույնպես sizeՀիմնականը, որ դուք կարող եք հաղթել, եթե երկու են ուղարկվել. |
quality | Stringի մասին | Ոչ | Generator-specific, ինչպիսիք են "low", "medium" կամ "high". |
negative_prompt | Stringի մասին | Ոչ | Ո՞վ պետք է թողնել. |
output_format | Stringի մասին | Ոչ | "png", "jpeg" կամ "webp". |
response_format | Stringի մասին | Ոչ | "url" (Տեսանյութ՝ The Default) "b64_json". |
image_url | Stringի մասին | Ոչ | Ապրիշը սկսվում է: A https:// 4 096 բարդ բարդը, առանց օգտագործող անունը կամ բարդը, կամ մի բարդը data:image/…;base64 URL (PNG, JPEG, WebP կամ GIF, ոչ SVG) editՄարդիկ, ովքեր պահանջում են requires_image_url. |
resolution Չնայած այն, թե ինչն է օգտագործվում, յուրաքանչյուր գեներատոր ստեղծում է իր սեփական չափը: url, յուրաքանչյուր նկարը բեռնել է Public Blossom սերտիֆիկայի եւ դուք ստանում եք իր կապը (կամ մի քանի գեներատորներ միայն վերցնում են իրենց սեփական կապը, որը անցնում է): Ոչ ոք կարող է բացել այն, եւ այն չի կարող վերցնել, տեսնել Ինչ կարող է տեսնել Fire• հետ
b64_json Նկարագրությունը վերցնում է պատասխանը եւ երբեք չի uploaded. A picture sent as a response data: URL-ն է image_url Տեղադրվում է այնպես, որ մի
Edit- ը եւ բեռնել է Blossom առաջին, այնպես որ generator կարող է վերցնել այն, այն կլուծվում է, եթե պահանջը չգիտվում է բեռնել.
Եթե մի քանի n սխալ է, դուք ստանում եք այն, որ աշխատել են, կախված են միայն նրանց համար (լուսանկարներ, որոնք մատակարարը վճարել է սխալից հետո), եւ nymbot.failed Տեսանյութը ասում է, թե ինչ է սխալ, եթե բոլորը սխալ են, հարցը վերադառնալ է: 502.
պատասխանը
{
"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 }
}
| Տեսակներ | Երբ |
|---|---|
400 | Ոչ արագ n 1 մինչեւ 4 (invalid_valueԱրդյոք այնքան լավ է (տեսանյութ)invalid_size) կամ տեսանյութը (invalid_image, invalid_image_url); մի մոդել, որը ապրում է, բայց ոչ մի գեներատոր է (invalid_model); մի գեներատոր համար գեներատոր, որը չի կարող փոխել (edit_unsupported); ոչ մի նկար է, որ պետք է այն (image_required). |
402 | Տեղադրությունը չի կարող ներգրավել ցանկացած նկարը, որը պահանջվում է. |
404 | Ոչ մի մոդել այս անունով (model_not_found). |
502 | Արդյոք սերտիֆիկը սխալ է (upstream_errorՆրանք ոչինչ չեն բեռնում, եթե մատակարարը չի բեռնում փորձի համար, ապա սխալը charged_sats. |
503 | Տեսակները հիմա չի կարող տեղադրվել (media_hosting_unavailable). b64_json Այժմ աշխատում է. |
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);
Նկարագրություն
Արդյոք, դուք կարող եք փոխել մի նկարը, որը դուք բեռնել, հետեւելով ուղեցույցը: Սա OpenAI- ի edit endpoint- ը, այնպես որ OpenAI SDK-ները images.edit Ավելի լավ է, քանի որ այն աշխատում է միայն Pro generators հետ edit Արդյոք մոդելային ցուցանիշը ընդունում է այն.
POST https://nymbot.ai/api/v1/images/edits — պետք է API սեղմություն, կամ Lightning վճարումՔանի որ մարմնի է multipart/form-dataՄինչեւ 32 MB.
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
image | Ֆիլմ | Այո՛ | Image to be edited: PNG, JPEG, WebP կամ GIF, մինչեւ 20 MB. image[]Առաջինը օգտագործվում է. |
prompt | Stringի մասին | Այո՛ | Ինչ է փոխել. |
model | Stringի մասին | Այո՛ | Generator- ի հետ edit. |
n | Անգլերեն | Ոչ | 1 ՝ 4 |
sizeaspect_ratioqualitynegative_promptoutput_format | Stringի մասին | Ոչ | Քանի որ Generation. |
response_format | Stringի մասին | Ոչ | "b64_json" (Տեսանյութը ներառում է այստեղ) կամ "url". |
Տեսակը, որը դուք բեռնել է, ստուգվում է, որ այն լավ ձեւավորվել է PNG, JPEG, WebP կամ GIF, ուղարկվել է որպես իր իրական տեսակը, եւ տեղադրվել է Public Blossom Host- ում, քանի որ գեներատորները վերցնում են իրենց տպագրությունը բեռների միջոցով: Տեսեք այն որպես Public. Եթե թարմացումը չգիտվի եւ ոչինչ չի բեռնում, տպագրված տպագրությունը վերահսկվում է: Տեսակը նույն ձեւով է, ինչպես տպագրության համար: Գինը է գեներատորի գինը, որը որոշ գեներատորների համար ներառում է տպագրության տպագրության վճարը:
պատասխանը
{
"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 }
}
| Տեսակներ | Երբ |
|---|---|
400 | Ոչ տեսանյութ, ոչ տեսանյութ, ոչ տեսանյութ (invalid_image), կամ մի generator, որը չի կարող edit (edit_unsupported). |
413 | Նկարագրությունը ավելի քան 20 MB (file_too_large), կամ ամբողջ պահանջը ավելի քան 32 MB: |
503 | Ապրիշը այժմ չի կարող տեղադրվել (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"));
տեսանյութ
Վիդեո պետք է տեւել րոպե, քանի որ այն աշխատում է վահանակում. Դուք ուղարկեք այն, ստանում եք ID- ն անմիջապես, եւ հարցրեք ID- ի մասին, մինչեւ այն ավարտվում է: Բոլոր տեսանյութերի գեներատորները ծախսում են Pro- ի վահանակը:
POST https://nymbot.ai/api/v1/videos — պետք է API սեղմություն, կամ Lightning վճարումՏեսակներ 202.
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
model | Stringի մասին | Այո՛ | Video Generator ID- ը GET /api/v1/models?type=video, ինչպիսին veo. |
prompt | Stringի մասին | Այո՛ | Ինչ պետք է լինի. |
duration | Նկարագրություն կամ string | Ոչ | Երկրի երկարությունը, ավելի քան 0 եւ մինչեւ 60: Օգտագործվում է միայն generators, որոնք թույլ են տալիս ձեզ ընտրել երկարությունը, այլն, որ իրենց սովորական երկարությունը, որը այն է, ինչ seconds Հաջորդ հարցը եւ գինը. |
aspect_ratio | Stringի մասին | Ոչ | Ինչպես "16:9" կամ "9:16"Երկու չափը, ինչպիսիք են "1280x720" Դա ամենամեծ հարմարավետություն է. |
resolutionquality | Stringի մասին | Ոչ | Մինչեւ generator- ի մեկը resolutions Տեսանյութում, ինչպիսին "720p" կամ "1080p"Արդյոք գինը կտա, թե ինչ-որ բանից հետո կտա: unsupported_resolution. |
image_url | Stringի մասին | Ոչ | Ապրիշը սկսվում է: A https:// Link կամ A data:image/… URL-ն, որը առաջին անգամ բեռնել է Blossom- ում, որը պահանջվում է generators- ի հետ requires_image_url. |
Գինը կտանված է, երբ դուք ուղարկեք, արտադրողից, լուծման եւ երկարությամբ, այնպես որ այն կտանված է ձեր Pro ցավը, երբ մատակարարը ընդունում է աշխատանքը, եւ ցույց է տալիս, որ
cost, estimated_cost և nymbotԵթե մատակարարը փոխանցում է աշխատանքը, ոչինչ չի փոխանցվում: Եթե մատակարարը մատակարարում չի փոխանցում, կամ մատակարարը չի կարող մատակարարել մատակարարը, եւ մատակարարը չի փոխանցում այն համար, մատակարարը փոխանցում է մեկ անգամ, ավտոմատորեն: Մատակարարը, որը դեռ անցնում է մեկ ժամից հետո, մատակարարում է իր վճարը, քանի որ մատակարարը մատակարարում է մատակարարը, երբ այն ընդունում է: Մատակարարը փոխանցում է մատակարարը, բայց չի փոխանցում մատակարարի ծախսերը:
Տեսակներ (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 Հիմնական as in_progressԱրդյոք completed Հիմնական տեսանյութը, որը արդեն data Երբ գեներատորը վերադարձել է այն.
Տեսեք մի տեսանյութում
GET https://nymbot.ai/api/v1/videos/{id} — պետք է սեղմեք մի սեղմիչ, որը կունենա այն սեղմիչին, որը սեղմել է այն: Մեկ սեղմիչը, որը հասել է իր կետը, դեռ կարող է ստուգել:
Դա պատասխանում է 202 Երբ տեսանյութը կատարվում է եւ 200 Երբ այն ավարտվում է կամ սխալ է: Խնդրում ենք ամեն 5 մինչեւ 10 րոպե: Ամեն խելացի հարցնում է մատակարարին մեկ անգամ եւ պատասխանում է: Այն երբեք չի սպասում տեսանյութը: Որ աշխատանքը պահվում է 24 ժամվա ընթացքում, երբ այն ուղարկվել է:
GET /api/v1/videos Տեղադրեք վերջին 50 աշխատանքները, ինչպիսիք են
{"object": "list", "data": […]}.
Հիմնական հարցեր (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 Դա in_progress, completed կամ failedՀիմնական հոդված՝ A Failed Job Carries error ({"code": "generation_failed", "message": …}Եթե դա վերադարձվել է, cost 0 եւ nymbot Ավելացնել
refunded_credits և refunded_satsԱրդյոք, այս տեսանյութը գտնվում է Blossom- ում, ինչպիսիք են արտադրված տեսանյութեր:
| Տեսակներ | Երբ |
|---|---|
400 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0invalid_value); մի լուծում, որը generator չի առաջարկում (unsupported_resolution); ոչ մի նկարը generator- ի համար, որը պետք է (image_required); մի մոդել, որը ոչ մի վիդեո generator (invalid_model). |
402 | Pro Balance-ը չի կարող ներառում տեսանյութը: |
404 | Չինաստանում այս բաղադրիչը (model_not_found), կամ ոչ մի աշխատանք է, որ ID- ի համար ձեր նամակ, կամ այն ավելի քան 24 ժամ է (video_not_found). |
429 | Ձեր նամակը այժմ ունի 10 վիդեո rendering (video_jobs_limitԱրդյոք, դուք պետք է ստուգեք նրանց եւ ուղարկեք ավելի շատ, երբ մեկը ավարտում է: |
502 | Գեներատորը ստացել է աշխատանքը, ոչինչ չի բեռնում, եթե արտադրողը չի բեռնում այն համար: |
503 | Տեսակներ չի կարող առաքել կամ պահել այժմ (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);
Text to խոսքը
Գիտում է տեքստը եւ վերցնում է աուդիո ֆայլը, ոչ մի հղումը: Դա OpenAI- ի խոսքի վերջը, այնպես audio.speech.create OpenAI SDKs- ը աշխատում է
POST https://nymbot.ai/api/v1/audio/speech — պետք է API սեղմություն, կամ Lightning վճարում.
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
model | Stringի մասին | Ոչ | Արդյոք խոսքի մոդելը Audio մոդելներՀիմնական: Հիմնական ճշմարտությունը @cf/myshell-ai/melotts. aura-2 Deepgram-ի Aura 2 սերտիֆիկներ |
input | Stringի մասին | Այո՛ | Կարդալու տեքստը: մինչեւ 800 հատկանիշներ ստանդարտ ձայնի համար, 2,000 Aura 2- ի համար: |
voice | Stringի մասին | Ոչ | A Voice ID- ը Նկարների ցուցակըAura speaker, ինչպիսիք են luna (Տեսանյութ aura-2-luna-en) կամ MeloTTS լեզուը (en, es, fr, zhOpenAI voice անուններ, ինչպիսիք են alloy Նրանք ընդունվում են եւ տալիս են մոդելի ստանդարտ ճշմարտությունը: |
language | Stringի մասին | Ոչ | Հիմնական լեզուը, ինչպիսիք են esԵրբ չի խոսում, այն ընտրում է այս լեզուի համար: Երբ խոսում է այլ լեզուը, այն վերադարձվում է: 422 voice_language_mismatch, եւ մի լեզու, որի համար մոդելը չի կարող խոսել 422 unsupported_language. |
response_format | Stringի մասին | Ոչ | Standard Voice-ը վերադարձվում է mp3 Aura 2 վերադառնալը mp3 (Անհարկե սխալը) opus, aac, flac, wav կամ pcm. |
speed | Մեկը | Ոչ | Պահպանվել եւ չգիտվել է. |
Standard Voice-ը գնում է 3 Standard Credits (30 sats) մի պահանջը, ինչպես է app- ում. Aura 2 է Pro, գնում է ձեր ուղեցույցների համար: The response body is the audio, with a matching
Content-TypeԱրդյոք ծախսերը ներքեւ են X-Nymbot-Cost-Sats Արդյոք, եթե խոսքի մոդել սխալ է, ոչինչ չի բեռնում.
պատասխանը
HTTP/1.1 200 OK
Content-Type: audio/mpeg
X-Nymbot-Cost-Sats: 4.2
X-Nymbot-Balance-Sats: 41055.6
(audio bytes)
| Տեսակներ | Երբ |
|---|---|
400 | Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված (input_too_long); մի մոդել, որը չի կարող արտադրել (unsupported_response_format(Անհարկե, թե ինչ է անսահմանափակ սխալը)invalid_voice); մի մոդել, որը ոչ մի խոսքի մոդել է (invalid_model). |
422 | Նրանք ոչ թե խոսում են այս լեզուը, կամ մոդելը ոչ թե խոսում է այն համար: |
502 | Արդյոք սխալ է, ոչինչ չի բեռնում. |
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 մոդելներ եւ ռեժիմներ
Երկու անգլերեն գրասենյակներ, որոնք ընտրում են խոսքի մոդել եւ խոսքը, կամ transcription մոդել: 41 Aura 2 անգլերեն գրասենյակներ եւ 4 MeloTTS լեզուներ:
GET https://nymbot.ai/api/v1/audio/models Չնայած այն, որ անհրաժեշտ է սեղմել.
GET https://nymbot.ai/api/v1/audio/voices?language=en Չնայած այն, որ անհրաժեշտ է սեղմել.
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
language | Հիմնական հարցեր (Query) | Ոչ | Հիմա միայն այս լեզուի համար. |
model | Հիմնական հարցեր (Query) | Ոչ | Այս մոդելի համար միայն սխալներ. |
Հեղինակային հարցեր (Voices)
{
"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 }
]
}
Մոդելների ցուցանիշները պատասխանել են {"object": "list", "data": {"tts": […], "stt": […]}}Ամեն խոսքի մոդելը ապահովում է իր հարմարավետությունը, գինը, max_input_chars,
response_formats, languages և default_voice· transcription model- ը առաջարկում է իր ալիքները, max_file_bytes, max_seconds, ձեւավորումներ եւ գինը րոպեում.
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);
Տեղադրություն text
Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված՝ Հիմնական հոդված
audio.transcriptions.create Աշխատում է
POST https://nymbot.ai/api/v1/audio/transcriptions — պետք է API սեղմություն, կամ Lightning վճարումՔանի որ մարմնի է multipart/form-data.
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
file | Ֆիլմ | Այո՛ | Նկարագրությունը, մինչեւ 25 MB եւ մինչեւ 30 րոպե: WAV, WebM, MP4 կամ M4A, Ogg կամ Opus, MP3 եւ այլ ձեւաչափերը Whisper կարդում է. MP3 եւ այլ ձեւաչափերը, որոնց երկարությունը չի կարող կարդալ առաջ, սահմանվում են 1.8 MB: |
model | Stringի մասին | Ոչ | Վախվածություն whisper, որը է Whisper Large v3 Turbo. whisper-1, whisper-large-v3-turbo և @cf/openai/whisper-large-v3-turbo Նրանք նշանակում են նույնպես. |
language | Stringի մասին | Ոչ | Հիմնական լեզուները, ինչպիսիք են enՏեղադրվել է, եթե նստել է. |
prompt | Stringի մասին | Ոչ | Տեսակներ, ինչպիսիք են անուններ, օգտագործվում են միայն առաջին 1000 բարդներ: |
response_format | Stringի մասին | Ոչ | json (Անհարկե սխալը) text, srt, vtt կամ verbose_json. |
WAV, WebM, MP4 եւ Ogg ֆայլերի համար երկարությունը կարդալ է ֆայլից, երբ ինչ-որ բան կատարվում է, այնպես որ 30 րոպեից ավելի տպագրություն չգիտվում է առաջ (մաս 3 րոպեով)։ WAV ֆայլի երկարությունը տպագրության արագությամբ, մանրամասների եւ մանրամասների չափով է: Մաս այլ ֆայլերի, ինչպիսիք են MP3, չգիտվում է առաջ, այնպես որ նրանք չգիտվում են չափով: Երբ ցածրագույն տպագրության արագությամբ Nymbot հավատում է, որ 8 kbps, 30 րոպե է 1.8 MB, եւ ավելի մեծ ֆայլը այս ձեւով չգիտվում է: 413
audio_too_long WAV, WebM, MP4 կամ Ogg- ը: Եթե Whisper- ը այնպես էլ 30 րոպեից ավելի ժամանակ է հաղորդում, հարցը կախված է:
413 audio_too_long, եւ քանի որ Shisper կատարվել է, 30 րոպե են բեռնել.
You pay for the length of the audio, rounded up to the second: the longest of the length read from the file, the length Whisper reports, and the least the file's size allows, at Whisper's per-minute price with the usual fee and margin, and at least 0.05 credit a request. It is paid from the standard balance when that can cover the hold, and from Pro otherwise; 402 Ահա թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք, թե ինչ է պետք:
պատասխանը
{
"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 Տեղադրեք հեշտ text, srt և vtt Ապրիլը վերադառնալով եւ
verbose_json Տեսանյութը ներառում է լեզուը, երկարությունը եւ ժամանակագրված մասերը: Երեքի համար, որոնք չեն JSON- ը, ծախսերը տպագրված են.
| Տեսակներ | Երբ |
|---|---|
400 | Ոչ մի ֆայլ, մի ֆայլ, որը չի կարող օգտագործել աուդիո (invalid_audioԳլխավոր էջ / Գլխավոր էջ / Նկարագրություն / Նկարագրություն / Նկարագրություն (invalid_model). |
402 | Ոչ ոք չի կարող ծածկել այն. |
413 | Ֆայլը ավելի քան 25 MB (file_too_large) կամ բաղադրիչը ավելի քան 30 րոպե, կամ, այն ձեւով, որ երկարությունը չգիտվում է, ավելի քան 1.8 MB (audio_too_long). |
502 | Տեսանյութը չի կարող վերահսկել, ոչինչ չի բեռնում. |
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);
Արդյոք անգլերենի խոսքը
POST https://nymbot.ai/api/v1/audio/translations — պետք է API սեղմություն, կամ Lightning վճարումՔանի որ մարմնի է multipart/form-data.
Նշվում է, որ նույն բաղադրիչները, այլեւ նույն բաղադրիչները languageԱհա թե ինչ է անգլերեն, թե ինչ է անգլերեն, թե ինչ է անգլերեն, թե ինչ է անգլերեն: 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);
Բաղադրիչներ
Տեսանյութը փոխվում է vektor- ի համար, որոնք օգտագործվում են search, clustering եւ deduplication- ի համար: Մոդելները աշխատում են Cloudflare- ում եւ օգտագործում են ստանդարտ բաղադրիչը:
POST https://nymbot.ai/api/v1/embeddings — պետք է API սեղմություն, կամ Lightning վճարում.
| Ֆիլմ | Քաղաքական | Խնդրում ենք | Նկարագրություն |
|---|---|---|---|
model | Stringի մասին | Այո՛ | Հիմնական մոդել է GET /api/v1/models?type=embedding. |
input | String- ը կամ String Array- ը | Այո՛ | Հիմնական տեղեկատվություն, որը պետք է ներառում, մինչեւ 100 չորս գծեր: Token նամակները կախված են (token_input_unsupported(Մենք պետք է հավելենք, որ յուրաքանչյուր մոդել պետք է հարմարվի context_lengthԱվելի քան 4 տոմս է մի տոմս. |
encoding_format | Stringի մասին | Ոչ | float (Տեսանյութ՝ The Default) base64 32-րդ բաղադրիչի բաղադրիչը |
dimensions | Անգլերեն | Ոչ | Մոդելի սեփական չափը, կամ մոդելի հետ supported_dimensions Հիմնական հոդվածը, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են, ինչպիսիք են |
| Մոդել | Dimensions Հիմնական | Տեսանյութ |
|---|---|---|
@cf/baai/bge-m3 | 1024 մի քանի լեզուներ | 8,192 տոմս |
@cf/qwen/qwen3-embedding-0.6b | 1024 մի քանի լեզուներ | 8,192 տոմս |
@cf/baai/bge-large-en-v1.5 | 1024 - անգլերեն | 512 տոմս |
@cf/baai/bge-base-en-v1.5 | 768, անգլերեն | 512 տոմս |
@cf/baai/bge-small-en-v1.5 | 384 անգլերեն | 512 տոմս |
Մոդելների ցուցակն է ճշգրիտությունը, թե ինչու են հասանելի եւ թե ինչ են գնում: Google- ի EmbeddingGemma- ը, որը տեւում է ավելի արագ vektor- ից, այնպես էլ հայտնվում է այն ժամանակ, երբ կատեգորիան ունի գինը այն համար: Embedings- ը մետաղվում են մետաղադրամների համար, եւ 0.05-կրտոմսային մետաղադրամը կիրառվում է յուրաքանչյուր պահանջի համար, ոչ մեկ մետաղադրամի համար: Այսպիսով, մի քանի տեքստեր մի պահանջի մեջ տեւելը շատ ավելի գեղեցիկ է, քան մի անգամ ուղարկել նրանց:
պատասխանը
{
"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 }
}
| Տեսակներ | Երբ |
|---|---|
400 | Ոչ ոք, ոչ ոք, ոչ ոք, ոչ ոք, ոչ ոք, ոչ ոք (token_input_unsupported); ավելի քան 100 ինտերնետներ (too_many_inputs); ներսում ավելի երկար է, քան մոդել պետք է (input_too_long); մի չափը, որը մոդել չի կարող տալիս (unsupported_dimensions). |
402 | Հիմնական բաղադրիչները երբեք չեն օգտագործում Pro բաղադրիչները: |
404 | Ոչ մի մոդել այս անունով. |
502 | Արդյոք սխալ է, ոչինչ չի բեռնում. |
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);