For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegação principal
Theme

Vozes personalizadas

Crie uma voz personalizada a partir de uma descrição ou de uma gravação aprovada.

Você pode criar uma voz personalizada para seu agente ou aplicativo. Escolha como quer criar a voz:

Para escolher uma voz existente do GPT-Live, consulte Opções de voz.

Crie uma voz a partir de uma descrição

A geração de voz por prompt cria e salva uma voz a partir de uma descrição em texto. Para isso, você não precisa de uma gravação de referência nem de uma gravação de consentimento.

A geração de voz por prompt está disponível para todos os clientes da API. As vozes geradas por prompt funcionam com o GPT-Live. A API de conversão de texto em fala, a Realtime API e a API chat completions não oferecem suporte a essas vozes.

Uso responsável

  • Use as vozes com responsabilidade. Não se passe por outras pessoas nem viole nossas Políticas de Uso.
  • Use vozes adultas. Vozes de crianças não são permitidas.
  • Seja transparente. Informe aos ouvintes que a fala foi gerada por IA e preserve os metadados de procedência, as marcas-d’água e quaisquer outros indicadores de sua origem sintética.
  • Não há garantia de que as vozes sejam únicas. Outras pessoas podem gerar vozes ou resultados semelhantes. Seu contrato com a OpenAI continua regendo seus direitos de propriedade sobre o conteúdo gerado.
  • Os Termos se aplicam ao uso da geração de voz por prompt tanto por você quanto pelos seus usuários finais.

Crie e salve a voz

Crie uma voz pela API ou no Playground de vozes. Criar uma voz por prompt é gratuito. Ao usá-la para gerar fala no GPT-Live, você paga a tarifa normal da sessão.

Envie uma solicitação JSON para /v1/audio/voices com type definido como prompt:

curl --fail-with-body https://api.openai.com/v1/audio/voices \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "prompt",
    "name": "Support assistant",
    "prompt": "A calm, reassuring adult voice for a customer support assistant. Speak with an American English accent, a mid-range pitch, a smooth, warm tone, and a steady, conversational pace.",
    "model": "auto"
  }' \
  -o voice.json

script_hint é um roteiro de exemplo opcional que orienta a geração da voz. Se você omitir esse campo, o serviço gerará um roteiro a partir da descrição da voz. Para fornecer seu próprio roteiro, inclua até 2.000 caracteres com um exemplo do tipo de fala que você deseja gerar. O serviço rejeita roteiros em branco ou curtos demais.

Cada solicitação bem-sucedida cria e salva uma nova voz. A resposta contém metadados, incluindo o ID da voz, o horário de criação em segundos desde a época Unix e o prompt original que descreve a voz. A resposta não inclui áudio nem prévia:

{
  "object": "audio.voice",
  "id": "voice_123",
  "name": "Support assistant",
  "created_at": 0,
  "type": "prompt",
  "prompt": "A calm, reassuring adult voice for a customer support assistant. Speak with an American English accent, a mid-range pitch, a smooth, warm tone, and a steady, conversational pace."
}

Salve o id retornado e guarde o prompt original que descreve a voz. Para usar a mesma voz em outra sessão, reutilize a voz salva. Cada organização pode criar até 100 vozes usando prompts. Esse limite também se aplica quando seu aplicativo cria vozes para os clientes.

Descreva a voz

Descreva as características vocais em linguagem simples. Por exemplo:

A calm, reassuring adult voice for a customer support assistant. Speak with an
American English accent, a mid-range pitch, a smooth, warm tone, and a steady,
conversational pace.

A tabela mostra algumas características que você pode descrever no próprio prompt. A API não tem parâmetros separados para elas:

Característica O que descrever Exemplo de descrição
Sotaque Pronúncia regional e intensidade do sotaque Inglês americano com sotaque forte
Idade Idade aparente de quem fala Uma pessoa adulta na faixa dos 30 anos
Apresentação Como a voz se apresenta Feminina
Altura Quão grave ou aguda é a voz Altura média
Timbre A sonoridade da voz Suave e encorpado
Textura Aspereza, rouquidão ou clareza Suave
Volume Esforço vocal Esforço vocal moderado
Velocidade da fala A rapidez com que a pessoa fala Ritmo moderado
Singularidade Quanto os traços individuais da voz devem se destacar Voz moderadamente marcante

Descreva as características da voz. Não peça que o modelo imite uma pessoa específica, uma figura pública ou um personagem fictício. Vozes de crianças não são permitidas. Descreva uma voz adulta.

Exemplos de descrições

Use estas descrições como ponto de partida e ouça os resultados no seu aplicativo.

Assistente de voz calma

A warm adult voice with a mid-range pitch and smooth, rich timbre.
Use moderate vocal effort and an unhurried, reassuring delivery.

Guia de voz animada

A bright, clear adult voice with a slightly higher pitch and a lightly textured timbre.
Use a lively, conversational delivery at a brisk but easy-to-follow pace.

Inclua as regras da conversa, como a extensão das respostas, como lidar com interrupções e quando delegar, nas instruções da sessão do GPT-Live.

Ouça a voz no GPT-Live

Ao ouvir uma voz no Playground, você inicia uma sessão do GPT-Live, cobrada pela tarifa normal.

Defina session.audio.output.voice.id como o ID da voz retornado. Para orientar a maneira como a voz soa, inclua a descrição original da voz em session.instructions junto com as instruções de conversa do aplicativo.

Substitua voice_123 pelo ID retornado na solicitação de criação:

{
  "model": "gpt-live-1",
  "instructions": "You are a helpful voice assistant. A calm, reassuring adult voice for a customer support assistant. Speak with an American English accent, a mid-range pitch, a smooth, warm tone, and a steady, conversational pace.",
  "audio": { "output": { "voice": { "id": "voice_123" } } }
}

Para WebRTC, inclua essa configuração no campo JSON session junto com transport. Para WebSockets, inclua a configuração no primeiro evento session.start. Siga o guia de conexão para enviar áudio e ouvir a voz. Escolha a voz ao iniciar a sessão. Para experimentar outra voz, inicie uma nova sessão.

A criação de vozes por meio de /v1/audio/voices, inclusive a partir de gravações, não é compatível com a opção de zero retenção de dados. A geração de fala pelo GPT-Live é elegível para zero retenção de dados quando essa opção está habilitada para sua organização ou projeto. Com a opção de zero retenção de dados, não é possível armazenar gravações de sessões, baixar gravações ou criar um fork de uma sessão. Consulte os controles de dados para conhecer os requisitos de armazenamento e retenção de sessões.

Ajuste e reutilize a voz

Altere uma característica por vez e compare os resultados usando o mesmo trecho curto e algumas trocas de falas em uma conversa. Ouça com atenção o sotaque, o ritmo e as outras características de que seu aplicativo precisa. Guarde o ID da voz que você preferir para poder reutilizá-la.

Cada solicitação de criação salva uma nova voz. Para experimentar outra voz salva, inicie uma nova sessão do GPT-Live com o ID dessa voz.

Crie uma voz a partir de uma gravação

Para criar uma voz a partir de uma gravação, forneça uma breve amostra de áudio como referência. O modelo tentará reproduzir a voz dessa amostra.

Somente clientes elegíveis podem criar vozes personalizadas a partir de gravações. Entre em contato com nossa equipe de vendas para saber mais. Quando o recurso for habilitado para sua organização, você terá acesso à aba Vozes na seção Áudio.

Prepare e envie as gravações

Para criar uma voz a partir de gravações, é obrigatório enviar uma solicitação à API. Consulte a referência da API para ver todas as operações disponíveis.

Para criar uma voz a partir de uma gravação, você precisa de duas gravações de áudio separadas:

  1. Gravação de consentimento: Nesta gravação, a pessoa que fornece a voz autoriza a criação de uma voz semelhante à sua. Ela deve ler uma das frases de consentimento indicadas abaixo.
  2. Gravação de amostra: Esta é a amostra de áudio que o modelo tentará reproduzir. A voz deve ser a mesma da gravação de consentimento.

Dicas para criar uma voz de alta qualidade

A qualidade da voz personalizada depende muito da amostra que você fornece. Melhorar a qualidade da gravação pode fazer uma grande diferença.

  • Grave em um local silencioso e com o mínimo de eco.
  • Use um microfone XLR profissional.
  • Mantenha a boca a cerca de 18 a 20 cm do microfone, com um filtro antipop entre os dois. Mantenha essa distância durante toda a gravação.
  • O modelo copia exatamente o que você fornece, incluindo tom, cadência, energia, pausas e hábitos de fala. Grave a voz exatamente como você quer que ela soe. Mantenha a energia, o estilo e o sotaque consistentes do início ao fim.
  • Pequenas variações na amostra de áudio podem afetar a qualidade da voz gerada. Experimente várias amostras para encontrar a mais adequada.

Requisitos e limites

  • Cada organização pode criar no máximo 20 vozes a partir de gravações.
  • As amostras de áudio devem ter no máximo 60 segundos.
  • As amostras de áudio devem ter um dos seguintes formatos: mpeg, wav, ogg, aac, flac, webm ou mp4.

Consulte o contrato complementar de conversão de texto em fala para conhecer os termos de uso adicionais.

Registre o consentimento de uso da voz

A gravação de consentimento deve conter apenas uma das frases a seguir. Qualquer desvio do texto fará com que a solicitação falhe.

Idioma Frase
Alemão (de) Ich bin der Eigentümer dieser Stimme und bin damit einverstanden, dass OpenAI diese Stimme zur Erstellung eines synthetischen Stimmmodells verwendet.
Inglês (en) I am the owner of this voice and I consent to OpenAI using this voice to create a synthetic voice model.
Espanhol (es) Soy el propietario de esta voz y doy mi consentimiento para que OpenAI la utilice para crear un modelo de voz sintética.
Francês (fr) Je suis le propriétaire de cette voix et j’autorise OpenAI à utiliser cette voix pour créer un modèle de voix synthétique.
Hindi (hi) मैं इस आवाज का मालिक हूं और मैं सिंथेटिक आवाज मॉडल बनाने के लिए OpenAI को इस आवाज का उपयोग करने की सहमति देता हूं
Indonésio (id) Saya adalah pemilik suara ini dan saya memberikan persetujuan kepada OpenAI untuk menggunakan suara ini guna membuat model suara sintetis.
Italiano (it) Sono il proprietario di questa voce e acconsento che OpenAI la utilizzi per creare un modello di voce sintetica.
Japonês (ja) 私はこの音声の所有者であり、OpenAIがこの音声を使用して音声合成 モデルを作成することを承認します。
Coreano (ko) 나는 이 음성의 소유자이며 OpenAI가 이 음성을 사용하여 음성 합성 모델을 생성할 것을 허용합니다.
Holandês (nl) Ik ben de eigenaar van deze stem en ik geef OpenAI toestemming om deze stem te gebruiken om een synthetisch stemmodel te maken.
Polonês (pl) Jestem właścicielem tego głosu i wyrażam zgodę na wykorzystanie go przez OpenAI w celu utworzenia syntetycznego modelu głosu.
Português (pt) Eu sou o proprietário desta voz e autorizo o OpenAI a usá-la para criar um modelo de voz sintética.
Russo (ru) Я являюсь владельцем этого голоса и даю согласие OpenAI на использование этого голоса для создания модели синтетического голоса.
Ucraniano (uk) Я є власником цього голосу і даю згоду OpenAI використовувати цей голос для створення синтетичної голосової моделі.
Vietnamita (vi) Tôi là chủ sở hữu giọng nói này và tôi đồng ý cho OpenAI sử dụng giọng nói này để tạo mô hình giọng nói tổng hợp.
Chinês (zh) 我是此声音的拥有者并授权OpenAI使用此声音创建语音合成模型

Em seguida, envie a gravação pela API. Se o envio for bem-sucedido, a API retornará o ID da gravação de consentimento para você usar na próxima etapa. Você pode reutilizar o consentimento em várias solicitações de criação de voz se a mesma pessoa fizer várias tentativas.

curl https://api.openai.com/v1/audio/voice_consents \
  -X POST \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F "name=test_consent" \
  -F "language=en" \
  -F "recording=@$HOME/tmp/voice_consent/consent_recording.wav;type=audio/x-wav"

Crie a voz

Agora, crie a voz fornecendo o ID da gravação de consentimento e a amostra de voz.

curl https://api.openai.com/v1/audio/voices \
  -X POST \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F "name=test_voice" \
  -F "audio_sample=@$HOME/tmp/voice_consent/audio_sample_recording.wav;type=audio/x-wav" \
  -F "consent=cons_123abc"

Se a criação for bem-sucedida, a voz aparecerá na aba Áudio.

Gere fala com uma voz criada a partir de uma gravação

Use gpt-realtime-2.1-mini com a Realtime API para gerar fala com sua voz personalizada. Antes da primeira resposta de áudio da sessão, defina session.audio.output.voice como um objeto que contenha o ID da voz.

Configure a sessão do Realtime

Use o corpo de solicitação a seguir ao criar um segredo de cliente do Realtime. Depois, siga o guia de conexão com WebRTC para se conectar usando esse segredo. Substitua voice_123abc pelo ID retornado na solicitação de criação da voz:

const sessionConfig = JSON.stringify({
  session: {
    type: "realtime",
    model: "gpt-realtime-2.1-mini",
    instructions: "Read the user's text aloud without adding commentary.",
    output_modalities: ["audio"],
    audio: {
      output: {
        voice: { id: "voice_123abc" },
      },
    },
  },
});

Para converter texto em fala, adicione uma mensagem de usuário que contenha o texto. Em seguida, envie response.create com output_modalities definido como ["audio"]. As instruções da sessão pedem ao modelo que leia o texto fornecido em voz alta. Receba o áudio gerado pela faixa de áudio do WebRTC, conforme descrito em Como processar áudio com WebRTC.

Use uma voz criada a partir de uma gravação com o GPT-Live

Use uma chave de API com escopo de projeto e aprovada tanto para o GPT-Live quanto para a criação de vozes personalizadas. Para ler as frases de consentimento e usar uma voz personalizada, você precisa da permissão api.voices.read. Para criar registros de consentimento e vozes, você precisa da permissão api.voices.write e de acesso à API de vozes personalizadas. Use o mesmo projeto em todas as solicitações e mantenha a chave de API em um servidor confiável.

Prepare as gravações

Antes de gravar, consulte a lista atual de frases de consentimento aceitas:

curl https://api.openai.com/v1/audio/consent_phrases \
  -H "Authorization: Bearer $OPENAI_API_KEY"

A gravação de consentimento e a amostra de referência devem ser da mesma pessoa. A amostra precisa conter pelo menos cinco segundos de fala e pelo menos 15 tokens de texto transcrito. Os períodos de silêncio não contam. Use uma gravação de 10 a 60 segundos com várias frases completas. O limite por envio é de 10 MiB. O serviço extrai a transcrição de referência da gravação.

Gravadores de áudio no navegador podem identificar o áudio como audio/webm;codecs=opus, um tipo que o endpoint de upload rejeita. Ao preparar o envio, use o tipo MIME base aceito, audio/webm, e preserve os bytes originais do áudio. Use as solicitações de criação de consentimento e de voz descritas acima e salve o ID da voz retornado.

Selecione a voz ao criar a sessão

Passe a voz personalizada como um objeto, por exemplo, { "id": "voice_123" }. Para vozes identificadas pelo nome, como "marin", use strings.

O modelo gpt-live-1 oferece suporte a vozes personalizadas com diferentes sotaques do inglês. Para usar um sotaque, especifique-o também em session.instructions, por exemplo, “Fale inglês britânico” ou “Fale inglês irlandês”. O exemplo abaixo usa inglês britânico. Altere a instrução de acordo com o sotaque desejado para sua voz personalizada.

Inclua a seguinte configuração na sessão inicial:

{
  "model": "gpt-live-1",
  "instructions": "You are a helpful voice assistant. Speak British English.",
  "audio": { "output": { "voice": { "id": "voice_123" } } }
}

Para WebRTC, configure o servidor do aplicativo para incluir essa configuração no campo JSON session junto com transport. Autentique as solicitações ao servidor com as credenciais do aplicativo e mantenha a chave de API da OpenAI no servidor.

Para WebSockets, inclua a configuração no primeiro evento session.start. Siga o guia de conexão para transmitir áudio e encerrar a sessão.

Lide com falhas de acesso e de ciclo de vida

  • Escolha a voz ao criar a sessão. Para usar outra voz, inicie uma nova sessão.
  • A API pode retornar 404 se a voz tiver sido excluída ou revogada, se o consentimento pertencer a outro projeto ou se você não tiver acesso a vozes personalizadas.
  • A API rejeita a solicitação se o áudio estiver malformado, se a pessoa que fala não for a mesma nas duas gravações ou se a chave não tiver escopo de projeto.

Antes de criar uma voz, confira as permissões do projeto, os requisitos mínimos das gravações e os limites de envio. Consulte Primeiros passos com o GPT-Live para conhecer os requisitos de configuração da sessão.