generateSpeech()

Generates speech audio from text.

import { generateSpeech } from 'ai';
import { openai } from '@ai-sdk/openai';
const { audio } = await generateSpeech({
model: openai.speech('tts-1'),
text: 'Hello from the AI SDK!',
voice: 'alloy',
});
console.log(audio);

Examples

OpenAI

import { generateSpeech } from 'ai';
import { openai } from '@ai-sdk/openai';
const { audio } = await generateSpeech({
model: openai.speech('tts-1'),
text: 'Hello from the AI SDK!',
voice: 'alloy',
});

ElevenLabs

import { generateSpeech } from 'ai';
import { elevenLabs } from '@ai-sdk/elevenlabs';
const { audio } = await generateSpeech({
model: elevenLabs.speech('eleven_multilingual_v2'),
text: 'Hello from the AI SDK!',
voice: 'your-voice-id', // Required: get this from your ElevenLabs account
});

Import

import { generateSpeech } from "ai"

API Signature

Parameters

model:

SpeechModelV4

text:

string

voice?:

string

outputFormat?:

string

instructions?:

string

speed?:

number

language?:

string

providerOptions?:

Record<string, JSONObject>

maxRetries?:

number

abortSignal?:

AbortSignal

headers?:

Record<string, string>

Returns

audio:

GeneratedAudioFile
GeneratedAudioFile

base64:

string

uint8Array:

Uint8Array

mediaType:

string

format:

string

warnings:

Warning[]

providerMetadata?:

Record<string, JSONObject>

responses:

Array<SpeechModelResponseMetadata>
SpeechModelResponseMetadata

timestamp:

Date

modelId:

string

body?:

unknown

headers?:

Record<string, string>