生成播客(API 方法)

Gemini Enterprise 提供了一项 API,可让您根据源文档生成播客。其输出与最终用户可以在笔记本中生成的播客非常相似。

通过 API 生成播客非常适合批量作业,例如您可能有数十或数百份书籍、文章或课程,并且希望为每份文档生成一个播客。

Podcast API 是一个独立 API。也就是说,您不需要 NotebookLM Enterprise 笔记本、Gemini Enterprise 许可或数据存储区。您只需要一个已启用的 Google Cloud 项目和“Podcast API User”角色。

输入

该 API 的输入是一个 context 元素的数组。这是生成播客所依据的素材。输入可以采用文本、图片、音频和视频的形式。上下文数组的总内容必须少于 10 万个 token。

如需查看支持的类型列表,请参阅本页面上有关 Gemini 2.5 Flash 的图片、文档、视频和音频的技术规范。

输出

该 API 的输出是采用 MP3 格式的播客。

准备工作

在使用该 API 生成播客之前,您必须具备:

根据上下文输入生成播客

使用以下命令通过调用 podcast 方法生成播客。

输入是一个多媒体对象数组,例如文本、图片以及音频和视频片段。

REST

如需生成和导出播客,请执行以下操作:

  1. 运行以下 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": [
            {
              "MEDIA_TYPE_1": "MEDIA_CONTENT_1"
            },
            {
              "MEDIA_TYPE_2": "MEDIA_CONTENT_2"
            }
          ],
          "title": "PODCAST_TITLE",
          "description": "PODCAST_DESCRIPTION"
      }'
    

    替换以下内容:

    • PROJECT_ID:您的项目的 ID。
    • FOCUS:一个提示,可用于建议播客的重点。
    • LENGTH:有两个选项:
      • SHORT(通常 4-5 分钟)
      • STANDARD(通常约 10 分钟,但如果数据集较小,则可能更短)
    • LANGUAGE_CODE:可选。指定播客的语言代码。使用 BCP47 定义的语言标记。如果未提供语言代码,则播客将以英语生成。
    • MEDIA_TYPE_N:指定您引用以生成播客的媒体类型。允许的类型如下:
      • text。纯文本。
      • blob。对于除纯文本以外的所有媒体类型,请使用此类型并上传原始字节数据。
    • MEDIA_CONTENT_N:纯文本或原始字节形式的内容本身。上下文数组的总内容必须少于 10 万个 token。
    • PODCAST_TITLE:播客的标题。此信息可供内部使用,您也可以选择向最终用户显示。
    • PODCAST_DESCRIPTION:播客的说明。此信息可供内部使用,您也可以选择向最终用户显示。

    生成播客需要几分钟时间。

  2. 记下操作名称;您需要它才能在第 4 步下载播客。在上面的示例中,操作名称为 projects/123456/locations/global/operations/create-podcast-54321

  3. 可选。轮询播客创建操作的状态。请参阅获取长时间运行的操作的详细信息

  4. 在操作完成后,运行以下 curl 命令下载播客:

    curl -v \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://discoveryengine.googleapis.com/v1/OPERATION_NAME:download?alt=media" \
      --output FILENAME.mp3 -L
    

    替换以下内容:

    • OPERATION_NAME:您在第 2 步中记下的操作的名称。
    • FILENAME:播客的文件名。

    此命令会将播客作为一个 MP3 文件下载到您的本地目录中。

合规性

Podcast API 不符合 Gemini Enterprise 的客户管理的加密密钥 (CMEK) 要求。