உள்ளடக்கத்திற்கு செல்க
மீண்டும் Nymbot

அறிவு அடிப்படை டெவலப்பர்கள்

படங்கள், ஆடியோ மற்றும் உட்பொதிப்புகள்

Generators from the app, and the building blocks for search: pictures, video, speech, transcription and embeddings, each billed per use from your balance.

படைப்பு Images

இதில் ஒருவர் 4 பேரை கைது செய்து, 4 பேரை கைது செய்து, 4 பேரை கைது செய்து கைது செய்தார். ?image செயலியில்.

POST https://nymbot.ai/api/v1/images/generations - ஒரு ஏபிஐ விசை தேவை, அல்லது Lightning பணம் தேவை.

ids வந்தது GET /api/v1/models?type=imageStandard Generator என்பதால், @cf/black-forest-labs/flux-1-schnell, ஒரு படத்திற்கு ஒரு தட்டையான 5 நிலையான வரவுகள் (50 சாட்கள்) செலவாகும். ஒவ்வொரு பிற ஜெனரேட்டரும் ப்ரோ வரவுகளை அதன் சொந்த விலையில், வழக்கமான கட்டணம் மற்றும் விளிம்புடன் செலவிடுகிறது. App இல். n ஓவியம் Cost n ஒரு ஜெனரேட்டர் எடுக்காத ஒரு புலம் நிராகரிக்கப்படுவதற்குப் பதிலாக கைவிடப்படுகிறது; நிலையான ஜெனரேட்டர் தூண்டுதலை மட்டுமே பயன்படுத்துகிறது.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
modelStringஆம்அப்படி ஒரு Generator ID nano-banana.
promptStringஆம்எதை வரைய வேண்டும். முதல் 2,000 எழுத்துக்கள் மட்டுமே பயன்படுத்தப்படுகின்றன.
nமுழுமையாகஇல்லை.1 முதல் 4 வரை. இயல்புநிலை 1. num_images.
sizeStringஇல்லை.இவ்வாறான ஒரு அம்சத்தை "16:9", அல்லது இது போன்ற ஒரு ஓபன்ஏஐ அளவு "1792x1024"இது 1:1,16:9,9:16,4:3,3:4,3:2,2:3,21:9,5:4 மற்றும் 4:5 க்கு மிக அருகில் உள்ளது. "auto" அதை ஜெனரேட்டரிடம் விட்டு விடுங்கள்.
aspect_ratioStringஇல்லை.அதே போல் size, மற்றும் இருவரும் அனுப்பப்பட்டால் வெற்றி பெறுகிறார்கள்.
qualityStringஇல்லை.ஜெனரேட்டர்-குறிப்பிட்ட, போன்ற "low", "medium" அல்லது "high".
negative_promptStringஇல்லை.எதை விட்டுச் செல்வது.
output_formatStringஇல்லை."png", "jpeg" அல்லது "webp".
response_formatStringஇல்லை."url" (அதிகப்படுத்துதல் அல்லது "b64_json".
image_urlStringஇல்லை.தொடங்குவதற்கு ஒரு படம்ஃ ஒரு https:// இதில் மொத்தமாக 4,096 அம்சங்கள் உள்ள இணைப்பு, அதில் எந்த பயனர் பெயர் அல்லது குறியீடு இல்லை, அல்லது ஒரு data:image/…;base64 URL (PNG, JPEG, WebP அல்லது GIF; SVG அல்ல). editதேவைப்படுபவர்களுக்கு requires_image_url.

resolution எல்லோருக்கும் உபயோகமில்லாமல், ஒவ்வொருவருக்கும் உபயோகமில்லாமல் url, ஒவ்வொரு ஓவியம் ஒரு பொதுவான Blossom ஹோஸ்டிங் பதிவிறக்கப்படுகிறது மற்றும் நீங்கள் அதன் இணைப்பை பெறுவீர்கள் (ஒரு சில ஜெனரேட்டர்கள் தங்கள் சொந்த இணைப்பை மட்டுமே திரும்ப அனுப்ப, இது அனுப்பப்படுகிறது). எரிபொருள் என்ன பார்க்க முடியும்உடன் b64_json படம் பதிலில் மீண்டும் வருகிறது, அது ஒருபோதும் பதிவேற்றப்படவில்லை. ஒரு படமாக அனுப்பப்பட்டது data: உள்ள URL image_url அதே வழியில் சரிபார்க்கப்படுகிறது EDIT ஜெனரேட்டர் அதைப் பெறுவதற்கு முதலில் ப்ளோஸம் இல் பதிவேற்றப்பட்டது; கோரிக்கை செலுத்தப்படாவிட்டால் அது மீண்டும் நீக்கப்படும்.

ஒரு வேளை என்றால், 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);

படங்களைத் திருத்துதல்

இதன் பின்னணியில், நீங்கள் பதிவிறக்கம் செய்த ஒரு படத்தை மாற்றும்.This is OpenAI's edit endpoint, so the OpenAI SDKs' images.edit அது அப்படியே வேலை செய்கிறது. புரோ ஜெனரேட்டர்கள் மட்டுமே edit மாதிரி பட்டியலில் அதை ஏற்றுக்கொள்ளுங்கள்.

POST https://nymbot.ai/api/v1/images/edits - ஒரு ஏபிஐ விசை தேவை, அல்லது Lightning பணம் தேவைஉடல் தான் multipart/form-data, 32 எம்பி வரை.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
imageகோப்புஆம்ஓவியம் பதிவிறக்க: PNG, JPEG, WebP அல்லது GIF, 20 MB வரை. image[]முதல் ஒன்று பயன்படுத்தப்படுகிறது.
promptStringஆம்என்ன மாற்ற வேண்டும்.
modelStringஆம்ஒரு ஜெனரேட்டருடன் edit.
nமுழுமையாகஇல்லை.1 முதல் 4 வரை.
size
aspect_ratio
quality
negative_prompt
output_format
Stringஇல்லை.Generation பற்றி
response_formatStringஇல்லை."b64_json" (இங்கு பதிவிறக்கம் செய்யவும்) or "url".

நீங்கள் பதிவிறக்கம் செய்த ஓவியம் ஒரு நன்கு வடிவமைக்கப்பட்ட PNG, JPEG, WebP அல்லது GIF என்று சரிபார்க்கப்படுகிறது, அதன் உண்மையான வடிவமாக அனுப்பப்படுகிறது, மற்றும் ஒரு பொதுவான Blossom ஹோஸ்டிங் மீது வைக்கப்படுகிறது, ஏனெனில் ஜெனரேட்டர்கள் இணைப்பு மூலம் தங்கள் உள்ளடக்கத்தை பெறுகிறார்கள். அதை பொதுவாகப் பயன்படுத்துங்கள். பதிவிறக்கம் தவறானது மற்றும் எதுவும் செலுத்தப்படவில்லை என்றால், ஹோஸ்டிங் குறியீடு மீண்டும் மறைக்கப்படுகிறது. பதிலளிப்பின் வடிவமைப்பு அதே உள்ளது. விலை ஜெனரேட்டரின் விலை, சில ஜெனரேட்டர்கள் உள்ளடக்க ஓவியம் ஒரு கட்டணம் உள்ளடக்கியது.

பதில்

{
  "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(அல்லது எழுத முடியாத ஒரு அற்புதமான படம்)edit_unsupported).
413இது 20 MB (file_too_large), அல்லது 32 எம்பிக்கு மேல் முழு கோரிக்கையும்.
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"));

வீடியோ

ஒரு video takes minutes, so it runs in the background.You submit it, get an id immediately, and ask about the id until it is done.

POST https://nymbot.ai/api/v1/videos - ஒரு ஏபிஐ விசை தேவை, அல்லது Lightning பணம் தேவைதிரும்பும். 202.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
modelStringஆம்இருந்து ஒரு வீடியோ ஜெனரேட்டர் ஐடி GET /api/v1/models?type=video, போன்ற veo.
promptStringஆம்என்ன நடக்க வேண்டும்.
durationஎண் அல்லது சரம்இல்லை.விநாடிகளில் நீளம், 0 க்கு மேல் மற்றும் 60 வரை. நீங்கள் நீளத்தைத் தேர்ந்தெடுக்க அனுமதிக்கும் ஜெனரேட்டர்களால் மட்டுமே பயன்படுத்தப்படுகிறது; மற்றவை அவற்றின் வழக்கமான நீளத்தை உருவாக்குகின்றன, இது என்ன seconds பதிலிலும் விலையிலும் பின்தொடரவும்.
aspect_ratioStringஇல்லை.போன்ற "16:9" அல்லது "9:16"போன்ற ஒரு அளவு "1280x720" இது மிக நெருக்கமான விகிதமாக மாறுகிறது.
resolution
quality
Stringஇல்லை.ஒருவரின் Generator resolutions மாதிரி பட்டியலில், போன்ற "720p" அல்லது "1080p"இது விலையை நிர்ணயிக்கிறது. வேறு எதுவும் மறுக்கப்படுகிறது. unsupported_resolution.
image_urlStringஇல்லை.தொடங்குவதற்கு ஒரு படம்ஃ ஒரு https:// இணைப்பு அல்லது ஒரு data:image/… URL, முதலில் ஒரு பொதுவான Blossom ஹோஸ்டிடம் பதிவிறக்கப்படுகிறது. requires_image_url.

நீங்கள் சமர்ப்பிக்கும்போது விலை நிர்ணயிக்கப்படுகிறது, ஜெனரேட்டரிலிருந்து, தெளிவுத்திறன் மற்றும் நீளம், எனவே வழங்குநர் வேலையை ஏற்றுக்கொண்டவுடன் உங்கள் புரோ இருப்பிலிருந்து கட்டணம் வசூலிக்கப்படுகிறது, மேலும் இது காட்டப்படுகிறது 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 இவ்வாறு தொடங்குகிறது in_progress, அல்லது completed ஏற்கனவே உள்ள வீடியோவுடன் data ஜெனரேட்டர் உடனடியாக அதைத் திருப்பிக் கொடுத்தபோது.

Video ஒரு பார்வை

GET https://nymbot.ai/api/v1/videos/{id} இதனைத் தொடர்ந்து, ஒருவர் தனது கதையைப் படித்துக் கொண்டிருந்தார்.இந்தக் கதையைப் படித்துக் கொண்டிருந்தார்.

என்று பதிலளித்தார். 202 video இல் எழுதப்படும் போது மற்றும் 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ஒரு தோல்வியுற்ற வேலை சுமந்து செல்கிறது. error ({"code": "generation_failed", "message": …}திரும்பப் பெறப்பட்டால் cost 0 மற்றும் nymbot கூடுதல் refunded_credits மற்றும் refunded_satsஉருவாக்கப்பட்ட படங்களைப் போல, முடிக்கப்பட்ட வீடியோ ஒரு பொது ப்ளோஸம் ஹோஸ்டில் உள்ளது.

அந்தஸ்துஎப்போது?
4000 0 0 0 0 0 0 0 0 0 0 0 0invalid_value); ஒரு ஒளிப்பதிவு இயந்திரம் வழங்கவில்லை (unsupported_resolution); ஒரு ஜெனரேட்டர் தேவையில்லை ஒரு புகைப்படம் (image_required); வீடியோ ஜெனரேட்டர் அல்லாத ஒரு மாதிரி (invalid_model).
402Pro Balance இல் video கிடைக்காது.
404அப்படி ஒரு அணுகுமுறை இல்லை (model_not_found), அல்லது உங்கள் என்ஐஎம்-க்கு அந்த ஐடி மூலம் வேலை இல்லை, அல்லது அது 24 மணி நேரத்திற்கு மேல் பழமையானது (video_not_found).
429உங்கள் என்ஐஎம் ஏற்கனவே 10 வீடியோக்களை வழங்கியுள்ளது (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);

உரைக்கு உரை

உரையை சத்தமாகப் படித்து, ஆடியோ கோப்பைத் திருப்பித் தருகிறது, ஒரு இணைப்பு அல்ல. இது ஓபன்ஏஐயின் பேச்சு இறுதிப் புள்ளியாகும், எனவே audio.speech.create OpenAI SDKs வேலை செய்கின்றன.

POST https://nymbot.ai/api/v1/audio/speech - ஒரு ஏபிஐ விசை தேவை, அல்லது Lightning பணம் தேவை.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
modelStringஇல்லை.இருந்து ஒரு பேச்சு மாதிரி Audio Models பற்றிய தகவல்கள்முன்னிருப்புஃ நிலையான குரல், @cf/myshell-ai/melotts. aura-2 Deepgram Aura 2 படத்தின் காட்சிகள்
inputStringஆம்படிக்க வேண்டிய உரைஃ நிலையான குரலுக்கு 800 எழுத்துக்கள் வரை, ஆரா 2 க்கு 2,000.
voiceStringஇல்லை.ஒரு Voice ID votes பட்டியல்Aura speaker என்பதால் luna அல்லது aura-2-luna-en), அல்லது ஒரு மெலோடிடிஎஸ் மொழி (en, es, fr, zh(OpenAI voice names such as alloy ஆங்கிலத்தில் இதை Single Orgasm, Multiple Orgasm என்றும் கூறுகிறார்கள்.
languageStringஇல்லை.போன்ற மொழிக் குறியீடு esகுரல் இல்லாமல், அது அந்த மொழிக்கு ஒன்றைத் தேர்ந்தெடுக்கிறது. மற்றொரு மொழியைப் பேசும் குரல் திரும்புகிறது. 422 voice_language_mismatch, and a language the model has no voice for என்று ஒரு மொழி 422 unsupported_language.
response_formatStringஇல்லை.Standard Voice திரும்பும் mp3 மட்டும். ஆரா 2 திரும்புகிறது mp3 (முன்னிருப்பாக), opus, aac, flac, wav அல்லது pcm.
speedஎண்.இல்லை.ஏற்றுக்கொள்ளப்பட்டு புறக்கணிக்கப்பட்டனர்.

பயன்பாட்டில் உள்ளதைப் போல, நிலையான குரலுக்கு ஒரு கோரிக்கைக்கு ஒரு தட்டையான 3 நிலையான வரவுகள் (30 சாட்கள்) செலவாகும். ஆரா 2 புரோ ஆகும், நீங்கள் அனுப்பும் எழுத்துக்களால் விலை நிர்ணயிக்கப்படுகிறது. பதிலளிக்கும் அமைப்பு ஆடியோ ஆகும், பொருத்தமான. Content-Typeசெலவுகள் உள்ளன - cost in the 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 Models மற்றும் Voice

பேச்சு மாதிரி மற்றும் குரல் அல்லது டிரான்ஸ்கிரிப்ஷன் மாதிரியைத் தேர்ந்தெடுப்பதற்கான இரண்டு பொதுப் பட்டியல்கள். 41 ஆரா 2 ஆங்கிலம் பேசுபவர்கள் மற்றும் நான்கு மெலோடிடிஎஸ் மொழிகள் உள்ளன.

GET https://nymbot.ai/api/v1/audio/models - எந்த சாவியும் தேவையில்லை.

GET https://nymbot.ai/api/v1/audio/voices?language=en - எந்த சாவியும் தேவையில்லை.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
languageகேப்டன் (Queryஇல்லை.இந்த மொழிக்கான குரல்கள் மட்டுமே.
modelகேப்டன் (Queryஇல்லை.இந்த மாதிரி மட்டுமே பேசுகிறேன்.

பதில் (குரல்கள்)

{
  "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டிரான்ஸ்கிரிப்ஷன் மாடல் அதன் மாற்றுப்பெயர்களை வழங்குகிறது, 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);

உரைக்கு உரை

ஒரு பதிவை விஸ்பருடன் உரையாக மாற்றுகிறது. இது ஓபன்ஏஐயின் டிரான்ஸ்கிரிப்ஷன் இறுதிப்புள்ளி, எனவே audio.transcriptions.create வேலை செய்கிறது.

POST https://nymbot.ai/api/v1/audio/transcriptions - ஒரு ஏபிஐ விசை தேவை, அல்லது Lightning பணம் தேவைஉடல் தான் multipart/form-data.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
fileகோப்புஆம்பதிவிறக்க, 25 MB மற்றும் 30 நிமிடங்கள் வரை: WAV, WebM, MP4 அல்லது M4A, Ogg அல்லது Opus, MP3 மற்றும் மற்ற வடிவங்கள் Whisper ஓதுகிறது.
modelStringஇல்லை.முன்னிருப்பு whisperஇது Whisper Large v3 Turbo ஆகும். whisper-1, whisper-large-v3-turbo மற்றும் @cf/openai/whisper-large-v3-turbo அதே அர்த்தம்.
languageStringஇல்லை.பேசப்படும் மொழி, போன்ற en. விட்டுவிட்டால் கண்டறியப்பட்டது.
promptStringஇல்லை.பெயர்கள் போன்ற எதிர்பார்க்கப்படும் சொற்கள் அல்லது எழுத்துப்பிழைகள். முதல் 1,000 எழுத்துக்கள் மட்டுமே பயன்படுத்தப்படுகின்றன.
response_formatStringஇல்லை.json (முன்னிருப்பாக), text, srt, vtt அல்லது verbose_json.

WAV, WebM, MP4 மற்றும் Ogg கோப்புகளில், நீளம் எதுவும் இயங்குவதற்கு முன் கோப்பு இருந்து ஓதுகிறது, எனவே 30 நிமிடங்களுக்கு மேற்பட்ட பதிவிறக்கங்கள் முன்பாக (மூன்று நிமிடங்கள் மூலம்) மறுக்கப்படுகின்றன). ஒரு WAV கோப்பு நீளம் அதன் மாதிரி விகிதம், சேனல்கள் மற்றும் மாதிரி அளவு இருந்து வருகிறது. MP3 போன்ற மற்ற கோப்புகளை நீளம் முன்பாக எழுத முடியாது, எனவே அவர்கள் அளவு மூலம் குறைக்கப்படுகின்றன: குறைந்த பட்ஜெட்டில் Nymbot கருதுகிறது, 8 kbps, 30 நிமிடங்கள் 1.8 MB ஆகும். 413 audio_too_long எதுவும் ஓடுவதற்கு முன்பு. நீண்ட பதிவுகளை டபிள்யூஏவி, வெப்எம், எம்பி4 அல்லது ஓக் என்று அனுப்புங்கள். விஸ்பர் 30 நிமிடங்களுக்கு மேல் புகாரளித்தால், கோரிக்கை நிராகரிக்கப்படும். 413 audio_too_long, மற்றும் செக்ஸ் நடந்தது, 30 நிமிடங்கள் செலுத்தப்படுகிறது.

ஆடியோவின் நீளத்திற்கு நீங்கள் பணம் செலுத்துகிறீர்கள், இரண்டாவது வரை வட்டமிடப்படுகிறதுஃ கோப்பில் இருந்து படிக்கப்பட்ட நீளத்தின் நீளம், விஸ்பர் அறிக்கைகளின் நீளம் மற்றும் குறைந்தபட்ச கோப்பின் அளவு அனுமதிக்கிறது, விஸ்பரின் ஒரு நிமிட விலைக்கு வழக்கமான கட்டணம் மற்றும் விளிம்புடன், குறைந்தபட்சம் 0.05 கிரெடிட் கோரிக்கை. இது நிலையான நிலுவைத் தொகையிலிருந்து செலுத்தப்படுகிறது, அது ஹோல்டை மறைக்க முடியும், இல்லையெனில் ப்ரோவிலிருந்து; ஒரு 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 எளிய உரையைத் திருப்பித் தருகிறது, srt மற்றும் vtt subtitles திரும்பவும் verbose_json மொழி, காலம் மற்றும் நேரப் பிரிவுகளைச் சேர்க்கிறது. ஜேஎஸ்ஓஎன் அல்லாத மூன்றுக்கும், விலை தலைப்புகளில் உள்ளது.

அந்தஸ்துஎப்போது?
400கோப்பு இல்லை, பயன்படுத்தக்கூடிய ஆடியோ இல்லாத கோப்பு (invalid_audioஅறியாத ஒரு மாதிரி, அல்லது ஒரு மாதிரி இல்லாத ஒரு transcription model (invalid_model).
402எந்த சமநிலையும் அதை மறைக்க முடியாது.
413கோப்பு 25 எம்பிக்கு மேல் உள்ளது (file_too_largeஇதேபோல், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும், பல்வேறு தரப்பினருக்கும் வழங்கப்படும்.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 - ஒரு ஏபிஐ விசை தேவை, அல்லது 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);

அபிவிருத்தி

தேடல், கிளஸ்டரிங் மற்றும் டிடுப்லிகேஷன் ஆகியவற்றிற்கான திசையன்களாக உரையை மாற்றுகிறது. மாதிரிகள் கிளவுட்ஃப்ளேர் இல் இயங்குகின்றன மற்றும் நிலையான இருப்பை செலவிடுகின்றன.

POST https://nymbot.ai/api/v1/embeddings - ஒரு ஏபிஐ விசை தேவை, அல்லது Lightning பணம் தேவை.

விமானம்வகைதேவைப்பட்டது.விளக்கம்
modelStringஆம்இருந்து உட்பொதிக்கும் மாதிரி GET /api/v1/models?type=embedding.
inputசரம் அல்லது சரங்களின் வரிசைஆம்உட்பொதிக்க வேண்டிய உரை, காலியாக இல்லாத 100 சரங்கள் வரை. டோக்கன் வரிசைகள் மறுக்கப்படுகின்றன (token_input_unsupported). ஒவ்வொரு உள்ளீடும் மாதிரியின் உள்ளீட்டிற்கு பொருந்த வேண்டும். context_length, ஒரு டோக்கனுக்கு சுமார் நான்கு பைட்டுகள் என கணக்கிடப்படுகிறது.
encoding_formatStringஇல்லை.float (அதிகப்படுத்துதல் அல்லது base64 (இது 32-ஆம் நூற்றாண்டின் மிகப்பெரிய ஆவணமாகும்.
dimensionsமுழுமையாகஇல்லை.ஆங்கிலத்தில் இதை Single Orgasm, Multiple Orgasm என்றும் கூறுகிறார்கள். supported_dimensions இதன் பின்னணியில், பல்வேறு வகையான விளைவுகளை ஏற்படுத்தும் வகையான விளைவுகள் ஏற்படுகின்றன.
மாதிரிபரிமாணங்கள்kontekst
@cf/baai/bge-m31024 பல மொழிகளில்8,192 டாக்டர்கள்
@cf/qwen/qwen3-embedding-0.6b1024 பல மொழிகளில்8,192 டாக்டர்கள்
@cf/baai/bge-large-en-v1.51024 - ஆங்கிலம்512 டாக்டர்கள்
@cf/baai/bge-base-en-v1.5768 ஞானம்512 டாக்டர்கள்
@cf/baai/bge-small-en-v1.5384 ரஷ்யா512 டாக்டர்கள்

மாதிரிகள் பட்டியல் என்பது கிடைக்கக்கூடிய உண்மை மற்றும் அவற்றின் விலை என்ன என்பதற்கான ஆதாரமாகும்; கூகிளின் உட்பொதிக்கும் ஜெம்மா, கோரிக்கையின் பேரில் குறுகிய திசையன்களுடன், அட்டவணைக்கு ஒரு விலை இருக்கும்போது அங்கும் தோன்றும். உட்பொதிப்புகள் ஒரு உள்ளீட்டு டோக்கனுக்கு அளவிடப்படுகின்றன, மேலும் 0.05-credit குறைந்தபட்சம் ஒவ்வொரு கோரிக்கையிலும் பொருந்தும், ஒவ்வொரு உள்ளீட்டிற்கும் அல்ல, எனவே பல உரைகளை ஒரு கோரிக்கையில் தொகுப்பது ஒரு நேரத்தில் ஒன்றை அனுப்புவதை விட மிகவும் மலிவானது.

பதில்

{
  "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 longer than the model takes (input_too_long); ஒரு மாதிரியான வடிவமைப்பு வழங்க முடியாது (unsupported_dimensions).
402நிலையான இருப்பு மிகவும் குறைவாக உள்ளது. உட்பொதிப்புகள் ஒருபோதும் புரோ இருப்பைப் பயன்படுத்துவதில்லை.
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);