curl --location 'https://api.zerogpu.ai/v1/audio/transcriptions' \
--header 'x-api-key: YOUR_API_KEY' \
--form 'model="whisper-tiny"' \
--form 'file=@"/path/to/audio.mp3"'
from openai import OpenAI
client = OpenAI(
base_url="https://api.zerogpu.ai/v1",
api_key="YOUR_API_KEY", # sent as Authorization: Bearer
)
with open("/path/to/audio.mp3", "rb") as audio:
transcript = client.audio.transcriptions.create(
model="whisper-tiny",
file=audio,
)
print(transcript.text)
import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.zerogpu.ai/v1",
apiKey: "YOUR_API_KEY", // sent as Authorization: Bearer
});
const transcript = await client.audio.transcriptions.create({
model: "whisper-tiny",
file: fs.createReadStream("/path/to/audio.mp3"),
});
console.log(transcript.text);
{
"text": "the quick brown fox jumps over the lazy dog."
}
{
"task": "transcribe",
"language": "english",
"duration": 1.76,
"text": "Hello from Zero GPU.",
"segments": [
{
"id": 0,
"seek": 0,
"start": 0.0,
"end": 2.0,
"text": " Hello from Zero GPU.",
"tokens": [50364, 2425, 490, 17182, 18407, 13, 50464],
"temperature": 0.0,
"avg_logprob": -0.797803,
"compression_ratio": 0.724138,
"no_speech_prob": 0.023181
}
]
}
By model
whisper-tiny
Model details for whisper-tiny. Multilingual speech-to-text.
POST
/
audio
/
transcriptions
curl --location 'https://api.zerogpu.ai/v1/audio/transcriptions' \
--header 'x-api-key: YOUR_API_KEY' \
--form 'model="whisper-tiny"' \
--form 'file=@"/path/to/audio.mp3"'
from openai import OpenAI
client = OpenAI(
base_url="https://api.zerogpu.ai/v1",
api_key="YOUR_API_KEY", # sent as Authorization: Bearer
)
with open("/path/to/audio.mp3", "rb") as audio:
transcript = client.audio.transcriptions.create(
model="whisper-tiny",
file=audio,
)
print(transcript.text)
import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.zerogpu.ai/v1",
apiKey: "YOUR_API_KEY", // sent as Authorization: Bearer
});
const transcript = await client.audio.transcriptions.create({
model: "whisper-tiny",
file: fs.createReadStream("/path/to/audio.mp3"),
});
console.log(transcript.text);
{
"text": "the quick brown fox jumps over the lazy dog."
}
{
"task": "transcribe",
"language": "english",
"duration": 1.76,
"text": "Hello from Zero GPU.",
"segments": [
{
"id": 0,
"seek": 0,
"start": 0.0,
"end": 2.0,
"text": " Hello from Zero GPU.",
"tokens": [50364, 2425, 490, 17182, 18407, 13, 50464],
"temperature": 0.0,
"avg_logprob": -0.797803,
"compression_ratio": 0.724138,
"no_speech_prob": 0.023181
}
]
}
This model is routable only on
/v1/audio/transcriptions, and on
/v1/audio/translations to translate speech into English.OpenAI’s Whisper Tiny is the smallest model in the Whisper family of speech recognition models, at 39M parameters. It is the multilingual checkpoint: it transcribes speech in the language it was spoken, detecting that language on its own when you don’t name it, and it can translate speech into English. Its size makes it fast and cheap enough for high-volume transcription where throughput and cost matter more than the accuracy of the larger Whisper models: voice agents, meeting notes, subtitles, podcasts, and audio indexing.References: Model card • License • Terms • Privacy
Limits
| Limit | Value |
|---|---|
| File size | 25 MB |
| Audio duration | 10 minutes |
| Formats | flac, m4a, mp3, mp4, mpeg, mpga, oga, ogg, wav, webm |
curl --location 'https://api.zerogpu.ai/v1/audio/transcriptions' \
--header 'x-api-key: YOUR_API_KEY' \
--form 'model="whisper-tiny"' \
--form 'file=@"/path/to/audio.mp3"'
from openai import OpenAI
client = OpenAI(
base_url="https://api.zerogpu.ai/v1",
api_key="YOUR_API_KEY", # sent as Authorization: Bearer
)
with open("/path/to/audio.mp3", "rb") as audio:
transcript = client.audio.transcriptions.create(
model="whisper-tiny",
file=audio,
)
print(transcript.text)
import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.zerogpu.ai/v1",
apiKey: "YOUR_API_KEY", // sent as Authorization: Bearer
});
const transcript = await client.audio.transcriptions.create({
model: "whisper-tiny",
file: fs.createReadStream("/path/to/audio.mp3"),
});
console.log(transcript.text);
{
"text": "the quick brown fox jumps over the lazy dog."
}
{
"task": "transcribe",
"language": "english",
"duration": 1.76,
"text": "Hello from Zero GPU.",
"segments": [
{
"id": 0,
"seek": 0,
"start": 0.0,
"end": 2.0,
"text": " Hello from Zero GPU.",
"tokens": [50364, 2425, 490, 17182, 18407, 13, 50464],
"temperature": 0.0,
"avg_logprob": -0.797803,
"compression_ratio": 0.724138,
"no_speech_prob": 0.023181
}
]
}
Authorizations
ApiKeyBearerAuth
Body
multipart/form-data
The audio file to transcribe.
Model identifier (fixed for this playground).
Allowed value:
"whisper-tiny"Example:
"whisper-tiny"
ISO-639-1 code, such as en. Detected automatically when omitted.
Example:
"en"
Text to guide spelling and style, such as names or jargon.
Maximum string length:
4096json and verbose_json return application/json; text, srt, and vtt return text/plain.
Available options:
json, text, srt, verbose_json, vtt Sampling temperature.
Required range:
0 <= x <= 1segment (default), word, or both. Requires verbose_json.
Available options:
segment, word Response
The transcript, in the requested response_format.
json returns { text }. verbose_json adds task, language, duration, and segments and/or words.
The transcript.

