Google Agentspace の「 Podcast API」を試してみた!
はじめに
Google Agentspace は、ソースドキュメントに基づいてポッドキャストを生成できる API を提供しています。
出力される音声は、NotebookLM で生成できるポッドキャストと似ています。
実際に Podcast API を使用してポッドキャストを生成してみました。
方法
以下のコマンドを実行します。
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": [
{
"MEDIA_TYPE_1": "MEDIA_CONTENT_1"
},
{
"MEDIA_TYPE_2": "MEDIA_CONTENT_2"
}
],
"title": "PODCAST_TITLE",
"description": "PODCAST_DESCRIPTION"
}'
- FOCUS
- ポッドキャストの焦点を提案するプロンプト
- LENGTH
- SHORT:4~5分の長さ
- STANDARD:10分の長さ
- LANGUAGE_CODE
- 言語コード(日本語:ja)
- MEDIA_TYPE_N
- text
- blob
- PODCAST_TITLE
- タイトル
- PODCAST_DESCRIPTION
- 説明
これらの値はご自身の環境に合わせて置き換えてください。
入力はテキスト、画像、音声、動画のいずれかの形式で可能です。
今回は以下の Gemini 2.5 Flash Image(Nano-banana)のテキストを渡してポッドキャストを生成してみました。
上記コマンドを実行すると、以下のようなOPERATION_NAME
を表示されます。
この name
の値を次のコマンドの OPERATION_NAME
に置き換えてください
{
"name": "projects/123456/locations/global/operations/create-podcast-54321"
}
このOPERATION_NAME
を使用して、以下のコマンドで生成状態を確認できます。
生成には数分かかります。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://discoveryengine.googleapis.com/v1/OPERATION_NAME"
生成が完了すると、done
が true になります。
{
"name": "projects/123456/locations/global/operations/create-podcast-54321",
"done": true,
...
生成の完了を確認したら、以下コマンドで音声ファイルをダウンロードします。
FILENAME.mp3
は任意のファイル名に置き換えてください。
curl -v \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://discoveryengine.googleapis.com/v1/OPERATION_NAME:download?alt=media" \
--output FILENAME.mp3 -L
実際に生成された音声は以下の通りです。
人間らしい自然なイントネーションと会話となっています!
単なるテキストの読み上げではなく、まさに「ポッドキャスト」と呼ぶにふさわしいクオリティとなっていると思います!
終わりに
コマンドを数回実行するだけで、自然な音声コンテンツに変換することが可能です。
今回はテキスト情報のみをインプットしましたが、この API は画像や動画も扱えるとのことです。
複数の情報を組み合わせて、より文脈に沿ったリッチな音声コンテンツを自動生成できると思います!
ブログ記事の音声版を自動生成したり、社内ドキュメントの要約をポッドキャストで共有したりと、コンテンツを多角的に活用する可能性が大きく広がりそうです。
Discussion