Features
Implement Audio‑Input Features - Developer Guide
Implement audio transcription and translation with Infercom API. Whisper-Large-v3 for real-time speech-to-text on EU-sovereign infrastructure.
For developers requiring audio support, Infercom provides OpenAI’s Whisper large-v3 model, which enables real-time transcriptions and translations.
Whisper-Large-v3
Section titled “Whisper-Large-v3”- Model: Whisper-Large-v3
- Description: State-of-the-art automatic speech recognition (ASR) and translation model. Developed by OpenAI and trained on 5M+ hours of labeled audio. Excels in multilingual and zero-shot speech tasks across diverse domains.
- Model ID:
Whisper-Large-v3 - Supported languages: Multilingual
Core capabilities
Section titled “Core capabilities”- Transcribes and translates extended audio inputs (up to 25 MB).
- Demonstrates high accuracy in speech recognition and translation tasks.
- Provides OpenAI-compatible endpoints for transcriptions and translations.
Request parameters
Section titled “Request parameters”| Parameter | Type | Description | Default | Endpoints |
|---|---|---|---|---|
model |
String | The ID of the model to use. | Required | transcriptions, translations |
file |
File | Audio file in FLAC, MP3, MP4, MPEG, MPGA, M4A, Ogg, WAV, or WebM format. File size limit: 25MB. | Required | transcriptions, translations |
prompt |
String | Prompt to influence transcription style or vocabulary. Example: “Please transcribe carefully, including pauses and hesitations.” | Optional | transcriptions, translations |
response_format |
String | Output format: json, text, verbose_json, srt or vtt. See Response formats below. |
json |
transcriptions, translations |
timestamp_granularities[] |
Array | Timestamp detail. Only segment is supported. Use it with verbose_json. word returns HTTP 400. |
Optional | transcriptions |
language |
String | The language of the input audio. Using ISO-639-1 format (e.g., en) improves accuracy and latency. |
Optional | transcriptions, translations |
stream |
Boolean | Enables streaming responses. | false |
transcriptions, translations |
stream_options |
Object | Not supported. The endpoint rejects this parameter with HTTP 400 unknown_parameter. |
- | Not accepted |
Response formats
Section titled “Response formats”response_format accepts five values.
| Value | What you get |
|---|---|
json |
A JSON object with text and a usage object: {"text": "...", "usage": {"type": "duration", "seconds": 5.58}} |
text |
The bare transcript string |
verbose_json |
A JSON object with duration, language, task, text and segments. Each segment has an id, a start and an end time in seconds, and its text. There is no usage object |
srt |
SRT subtitles with numbered cues and timestamps |
vtt |
WebVTT subtitles. The body starts with WEBVTT |
To get segment timestamps in JSON, send response_format=verbose_json with timestamp_granularities[]=segment. Word-level timestamps are not supported: timestamp_granularities[]=word returns HTTP 400.
Usage data
Section titled “Usage data”With response_format=json, transcriptions and translations return a usage object. usage.seconds is the duration of the processed audio, in seconds. The other formats return no usage object.
Example usage
Section titled “Example usage”from sambanova import SambaNovaimport base64
client = SambaNova( base_url="https://api.infercom.ai/v1", api_key="your-infercom-api-key",)
audio_path="audio_path"with open(audio_path, "rb") as audio_file: bin_audio = audio_file.read()
response = client.audio.transcriptions.create( model="Whisper-Large-v3", file=(audio_path,bin_audio),)print(str(response))from openai import OpenAIimport base64
client = OpenAI( base_url="https://api.infercom.ai/v1", api_key="your-infercom-api-key",)
audio_path="audio_path"with open(audio_path, "rb") as audio_file: bin_audio = audio_file.read()
response = client.audio.transcriptions.create( model="Whisper-Large-v3", file=(audio_path,bin_audio),)print(str(response))import SambaNova from "sambanova";
const client = new SambaNova({ baseURL: 'https://api.infercom.ai/v1', apiKey: 'your-infercom-api-key'});
async function run() { const audioPath = 'audio_path'; const binAudio = fs.createReadStream(audioPath);
const response = await client.audio.transcriptions.create({ model: 'Whisper-Large-v3', file: binAudio, });
console.log('Full Response:'); console.dir(response, { depth: null });}
run().catch(console.error);