O Gemini Enterprise oferece uma API que permite gerar podcasts com base em documentos de origem. A saída é muito semelhante aos podcasts que os usuários finais podem gerar nos notebooks.
A geração de podcasts pela API é adequada para jobs em lote em que você tem dezenas ou centenas de livros, artigos ou cursos e quer gerar um podcast para cada um deles.
A API Podcast é independente. Ou seja, não é necessário ter um notebook do NotebookLM Enterprise, uma licença do Gemini Enterprise ou um repositório de dados. Você só precisa de um projeto Google Cloud ativado e da função de usuário da API Podcast.
Entradas
A entrada da API é uma matriz de elementos context. Esse é o material de origem usado para gerar o podcast. A entrada pode ser na forma de texto, imagens, áudio e vídeo. O conteúdo total da matriz de contexto precisa ser menor que 100.000 tokens.
Para conferir uma lista de tipos aceitos, consulte as especificações técnicas de imagens, documentos, vídeos e áudios nesta página sobre o Gemini 2.5 Flash.
Saída
A saída da API é o podcast no formato MP3.
Antes de começar
Antes de gerar um podcast usando a API, você precisa ter o seguinte:
Um projeto do Google Cloud com a API Discovery Engine ativada. Consulte Criar um projeto e ativar a API.
O papel de gerenciamento de identidade e acesso (IAM) do usuário da API Podcast (
roles/discoveryengine.podcastApiUser). Para informações gerais sobre como conceder papéis, consulte Configurar o NotebookLM Enterprise.
Gerar um podcast com base em entradas de contexto
Use o comando a seguir para gerar um podcast chamando o método podcast.
A entrada é uma matriz de objetos multimídia, como texto, imagens e clipes de áudio e vídeo.
REST
Para gerar e exportar um podcast, faça o seguinte:
Execute o seguinte comando curl:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/podcasts" \ -d '{ "podcastConfig": { "focus": "FOCUS", "length": "LENGTH", "languageCode": "LANGUAGE_CODE" }, "contexts": [ { "text": "TEXT_CONTENT" }, { "inlineData": { "mimeType": "MIME_TYPE", "data": "BASE64_ENCODED_DATA" } } ], "title": "PODCAST_TITLE", "description": "PODCAST_DESCRIPTION" }'Substitua:
PROJECT_ID: ID do projeto.FOCUS: um comando em que você sugere o foco do podcast.LENGTH: há duas opções:SHORT(normalmente de 4 a 5 minutos)STANDARD(normalmente cerca de 10 minutos, mas pode ser mais curto com conjuntos de dados menores)
LANGUAGE_CODE: opcional. Especifique o código de idioma do podcast. Use tags de idioma definidas pelo BCP47 (em inglês). Se o código de idioma não for fornecido, o podcast será gerado em inglês.TEXT_CONTENT: o conteúdo de texto a ser incluído.inlineData: um objeto para mídia não textual.MIME_TYPE: o tipo MIME dos dados de blob (por exemplo, "image/png").BASE64_ENCODED_DATA: os bytes brutos codificados em base64 dos dados de mídia.PODCAST_TITLE: um título para o podcast. Isso pode ser para uso interno ou você pode escolher mostrar aos usuários finais.PODCAST_DESCRIPTION: uma descrição do podcast. Isso pode ser para uso interno ou você pode escolher exibir para os usuários finais.
A geração de um podcast leva alguns minutos.
Anote o nome da operação. Você vai precisar dele para baixar o podcast na etapa 4. No exemplo acima, o nome da operação é
projects/123456/locations/global/operations/create-podcast-54321.Opcional. Pesquise o status da operação de criação de podcast. Consulte Acessar os detalhes sobre uma operação de longa duração.
Depois que a operação terminar, execute o seguinte comando curl para baixar o podcast:
curl -v \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/OPERATION_NAME:download?alt=media" \ --output FILENAME.mp3 -L
Substitua:
OPERATION_NAME: o nome da operação que você anotou na etapa 2.FILENAME: um nome de arquivo para o podcast.
Esse comando baixa o podcast para um arquivo MP3 no seu diretório local.
Conformidade
A API Podcast não está em conformidade com as chaves de criptografia gerenciadas pelo cliente, CMEK para Gemini Enterprise.