Slam-1 is AssemblyAI's groundbreaking Speech Language Model (SLM) that unifies large language model architecture with advanced automatic speech recognition (ASR) encoders to deliver superior speech-to-text transcription accuracy. Designed specifically for speech tasks, Slam-1 understands context and semantics at a deep level, enabling promptable and customizable transcription that adapts to specialized industry terminology and complex spoken content. This makes Slam-1 ideal for use cases in healthcare, legal, sales, and technical domains requiring precise and context-aware transcription.
Slam-1’s architecture distinctively merges a speech encoder with an adapter layer tuned to link acoustic features with a fixed large language model, enabling powerful semantic understanding. This multi-modal design surpasses traditional audio-to-text models by interpreting spoken content holistically, supporting accurate transcription and contextual reasoning. The approach leverages prompt engineering to customize transcription accuracy dynamically for industry-specific vocabularies and speech patterns.
VS AssemblyAI Universal: Slam-1 offers promptable, highly customizable transcription with superior entity recognition for specialized domains, while AssemblyAI Universal provides broader language support and lower latency for general transcription needs.
VS GPT-4.1 (audio transcription use): Slam-1 is specifically optimized for speech-to-text with multi-channel and speaker diarization features, unlike GPT-4.1, which focuses on general NLP tasks without native audio processing capabilities.
import requests, time headers = {"Authorization": "Bearer " + AIMLAPI_KEY} job = requests.post( "https://api.aimlapi.com/v1/stt/create", headers=headers, json={ "model": "aai/slam-1", "url": "https://example.com/audio.mp3" }, ).json() gid = job["generation_id"] while True: res = requests.get(f"https://api.aimlapi.com/v1/stt/{gid}", headers=headers).json() if res.get("status") in ("completed", "error", "failed"): break time.sleep(3) print(res)
const headers = { Authorization: `Bearer ${process.env.AIMLAPI_KEY}`, "Content-Type": "application/json", }; const job = await (await fetch("https://api.aimlapi.com/v1/stt/create", { method: "POST", headers, body: JSON.stringify({ "model": "aai/slam-1", "url": "https://example.com/audio.mp3" }), })).json(); let res; do { await new Promise((r) => setTimeout(r, 3000)); res = await (await fetch(`https://api.aimlapi.com/v1/stt/${job.generation_id}`, { headers })).json(); } while (!["completed", "error", "failed"].includes(res.status)); console.log(res);
# submit the job — the response contains "generation_id" curl -X POST https://api.aimlapi.com/v1/stt/create \ -H "Authorization: Bearer $AIMLAPI_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"aai/slam-1","url":"https://example.com/audio.mp3"}' # then poll for the result until it is ready curl "https://api.aimlapi.com/v1/stt/{generation_id}" -H "Authorization: Bearer $AIMLAPI_KEY"
OpenAI-compatible — swap the base URL and it works with your existing SDK.
| Type | Price |
|---|---|
| Output | |
| Model | Input | Output | Context | Best for |
|---|---|---|---|---|
Slam 1 This page | Transcription | |||
| Speech synthesis | ||||
| Speech synthesis | ||||
| Speech synthesis | ||||
| Speech synthesis |
Slam 1 takes audio as input and returns text.
Slam 1 is priced at output $0.0000975 / sec.
Slam 1 was built by Assembly AI.
Send a request to v1/stt/create with aai/slam-1 as the model id.
Yes. Slam 1 is served through AI/ML API, so the same key and endpoint format used for other models applies.