使用 Gemini 构建 AI 幻灯片审核工具

使用此代码项目组合、运行和自定义适用于 Google Workspace 幻灯片的幻灯片查看工具插件。无论您是每周还是一年进行一次演示 我们大多数人都可以在一些帮助下实现自己的目标。您是不是 想在幻灯片里面投入太多内容?也许您忘了用视觉元素拆分演示文稿?您的组织可能还有一套关于有效演示的指南。您最近读过那些吗?

Slides Advisor 项目是一个开源 Google Workspace 插件,可以使用人工智能 (AI) 技术随时查看演示文稿并提供反馈。该项目会使用 Google 的 Gemini API 图片和文本处理功能,根据一系列准则分析您的 Google 幻灯片,并让您了解自己对这些准则的处理情况。更棒的是,您还可以自定义这些准则,以遵循贵组织的建议,或者根据您为自己定义的规则提醒您改进演示文稿。

如需简要了解该项目以及如何扩展该项目(包括构建该项目的人员的见解),请参阅 AI 幻灯片审核者 - 利用 Google AI 进行构建。否则,您可以按照以下说明开始扩展项目。

作为 Google 幻灯片边栏运行的幻灯片顾问插件 图 1. 作为边栏面板运行的 Google 幻灯片的幻灯片顾问插件。

项目设置

以下说明会引导您完成针对开发和测试的幻灯片顾问项目设置。常规步骤包括创建 Google Apps 脚本项目、设置用于 API 访问的 Google Cloud 项目,以及为项目设置一些脚本属性。

创建 Apps 脚本项目

此幻灯片顾问项目作为 Google 幻灯片的插件运行。您可以使用 Google 幻灯片网页界面设置项目,并为代码创建 Apps 脚本项目。

要创建新的 Apps 脚本项目,请执行以下操作:

  1. 前往 Google Workspace 的 Google 幻灯片 Web 应用
  2. 打开现有演示文稿,或创建新的演示文稿。
  3. 在 Google 幻灯片演示文稿中,选择扩展程序 > Apps 脚本

完成这些步骤后,您应该会在 Apps 脚本网页界面中生成一个新的未命名项目,它已附加到您开始时的演示文稿中。为项目命名以便于查找。

要为 Apps 脚本项目命名,请执行以下操作:

  1. 在 Apps 脚本网页界面中,选择 Untitled project 文本。
  2. 在“Rename Project”对话框中,输入 My Slides Advisor,然后选择 Rename

准备项目文件

幻灯片顾问项目包含 5 个代码文件,您需要先设置这些文件,然后才能将代码复制到新的 Apps 脚本项目中。本部分介绍如何准备项目并获取代码。

如需准备项目文件,请执行以下操作:

  1. 打开包含 MySlide Advisor 项目的 Apps 脚本网页界面。
  2. 在左侧菜单中,选择 < > Editor 视图。
  3. Code.gs 文件重命名为 main.gs,方法是将鼠标悬停在 Code.gs 代码文件名上,从上下文菜单中选择 Rename,然后输入 main。接口会自动添加 .gs 扩展名。
  4. 如需显示项目的 appscript.json 清单文件,请选择左侧菜单中的齿轮图标(项目设置),然后启用显示“appscript.json”清单文件选项。
  5. 在 Apps 脚本网页界面的左侧菜单中,选择 < > Editor 视图。
  6. 创建 ui.gs 代码文件,具体方法为:选择 Files 标题右侧的 +(加号)图标,然后选择 Script,然后输入 ui
  7. 重复上一步,创建 slides.gsai.gs 代码文件。

您的 Apps 脚本项目现在应包含以下 5 个代码文件,这些文件大多是空的:

  • appscript.json
  • main.gs
  • ui.gs
  • slides.gs
  • ai.gs

在下一步中,从代码库获取项目代码并将其复制到 Apps 脚本项目中。

获取项目代码

幻灯片顾问项目的代码托管在代码库中。您需要将该代码复制到 Apps 脚本项目中才能使用。本部分介绍了如何获取项目代码。

如需获取项目代码,请执行以下操作:

  1. 进入项目清单文件 appsscript.json 的项目代码库
  2. 将此代码文件的内容复制到剪贴板。
  3. 返回到 Apps 脚本网页界面,选择 appsscript.json 文件名,然后将代码粘贴到代码编辑器面板中,从而替换之前的所有代码。
  4. 对其他 4 个代码文件重复此过程:
    • main.js 代码复制到 main.gs 文件中。
    • ui.js 代码复制到 ui.gs 文件中。
    • slides.js 代码复制到 slides.gs 文件中。
    • ai.js 代码复制到 ai.gs 文件中。

关联 Google Cloud 项目

此项目使用 Google Cloud 项目访问 Gemini AI 模型。Google Cloud 提供特定的数据隐私权政策,以及许多用于构建应用的实用软件服务(例如幻灯片顾问)。将插件代码连接到 Gemini API,方法是创建一个具有 AI API 访问权限的 Cloud 项目,为该项目创建服务帐号,为服务帐号创建密钥,然后在插件项目中安装该密钥。

配置 Cloud 项目

用于连接到 Gemini API 的 Cloud 项目必须启用 Vertex AI API 服务,并且您需要通过幻灯片顾问插件创建与此项目的经过身份验证的连接。Vertex AI API 还要求在使用该 API 的项目中启用结算功能。

如需配置具有 Vertex AI API 访问权限的 Cloud 项目,请执行以下操作:

  1. 导航到 Google Cloud 控制台并登录(如果需要)。
  2. 在 Google Cloud 控制台中,选择一个现有的云项目,或者创建一个新项目
  3. 在项目的控制台信息中心页面的 API 面板中,选择转到 API 概览,或转到 https://console.cloud.google.com/apis/。
  4. API 和服务页面的顶部,选择 + 启用 API 和服务
  5. API 库页面中,搜索 vertex ai api,选择 Vertex AI API 选项,然后选择启用按钮。
  6. 您必须为 Google Cloud 项目启用结算功能(如果尚未激活),然后在 Vertex AI API 控制台页面上选择启用按钮来启用 AI API。
  7. 前往项目的 API 和服务页面,验证是否已启用 Vertex AI API。现在,您应该看到本页面上列出了 Vertex AI API

创建服务账号

幻灯片顾问插件需要与您的 Cloud 项目建立经过身份验证的连接,才能访问 Vertex AI API 和 Gemini 模型。如需创建该连接,请先在 Cloud 项目中生成一个可以访问 Vertex AI API 的服务帐号。幻灯片顾问项目使用此服务帐号进行连接。

要为幻灯片顾问插件创建服务帐号,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往您的 Cloud 项目的 API 和服务页面。
  2. 选择页面左侧的凭据
  3. 在页面顶部,依次选择 + 创建凭据 > 服务帐号
  4. 创建服务帐号页面的服务帐号详情部分,输入服务帐号名称、ID 和说明。
  5. 选择创建并继续,以创建服务帐号。
  6. 向此服务帐号授予对项目的访问权限部分中,选择角色控件。
  7. 过滤条件字段中,搜索并选择 Vertex AI User 权限集,然后选择继续
  8. 选择完成,完成此服务账号的创建。

如需详细了解如何创建服务帐号,请参阅 Google Cloud 创建服务帐号文档。

创建并安装服务账号密钥

幻灯片顾问项目必须能够向您在上一过程中创建的服务帐号进行身份验证。您可以通过为服务帐号创建密钥并在您的幻灯片顾问 Apps 脚本项目中将该密钥配置为脚本属性来启用该身份验证。以下步骤说明了如何在项目中创建和配置密钥。

如需创建和配置服务帐号密钥,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往 Cloud 项目的 API 和服务页面。
  2. 选择页面左侧的凭据
  3. 服务帐号部分,找到您创建的服务帐号,选择帐号电子邮件地址或铅笔图标以进行修改。
  4. 在服务帐号修改窗口的顶部附近,选择密钥标签页标题。
  5. 密钥部分中,依次选择添加密钥 > 创建新密钥
  6. 为...创建私钥对话框中,选择 JSON,然后选择创建。此步骤会创建一个名为 projectid-hashcode.json 的密钥文件,并将其自动下载到您的计算机。
  7. 打开下载的 projectid-hashcode.json 文件并复制内容。
  8. 打开包含 MySlide Advisor 项目的 Apps 脚本网页界面,在左侧菜单中选择设置视图。
  9. 脚本属性部分,选择修改脚本属性按钮,然后选择添加脚本属性按钮。
  10. 在新的 Property 字段中,输入 SERVICE_ACCOUNT_KEY,然后在 Value 字段中,复制下载的 projectid-hashcode.json 文件的内容。
  11. 选择保存脚本属性按钮,以保存新的属性。

如需详细了解如何创建服务帐号密钥,请参阅 Google Cloud 创建和删除服务帐号密钥文档。

测试插件项目

包含幻灯片顾问图标的 Google Workspace 幻灯片面板 要测试幻灯片顾问项目,您需要创建插件代码的测试部署,并安装该测试部署。在此测试配置中,项目仅可在您启动 Apps 脚本插件的 Google 幻灯片演示文稿中使用,并且不能出现在其他幻灯片演示文稿中。如需详细了解如何部署插件以扩大使用范围,请参阅 Google Workspace Apps 脚本文档创建和管理部署主题。

要部署和测试 Apps 脚本项目代码,请执行以下操作:

  1. 在 Apps 脚本网页界面的顶部,选择部署 > 测试部署
  2. Testdeployment 对话框中的 Select type 旁边,选择齿轮图标和 Google Workspace Add-on
  3. 在“应用:幻灯片标题”旁边,选择安装按钮。
  4. 保留测试最新代码的默认设置,然后选择完成
  5. 浏览与您的 Apps 脚本项目关联的 Google 幻灯片演示文稿,然后重新加载网页。
  6. 在 Google 幻灯片 Web 应用的右下角,选择 ( <) 图标以打开侧边栏,然后选择黑白眼睛图标以打开 Slides Advisor 面板。

完成此步骤并成功运行插件后,您就可以开始修改该插件,以便采用不同的准则或按照其他工作流操作。如需了解如何对 Slides Advisor 插件进行一些基本修改,请参阅下一部分。

修改评价行为

您可以通过修改幻灯片顾问的项目代码来更改幻灯片顾问的审核行为,具体包括从 Gemini API 获取的输出以及该插件提供的界面。本教程重点介绍如何更改提示说明,以修改演示文稿幻灯片查看行为。如需详细了解如何使用 Apps 脚本扩展 Google 幻灯片界面,请参阅扩展 Google 幻灯片

更改评价准则

幻灯片顾问编写了一套基本的幻灯片查看准则,其中包含了简单性、颜色和排版、结构和空白以及图形和图标的类别。审核指南只是通过 Gemini API 在提示中包含的文本说明、所选幻灯片的快照图片和任何演讲者备注。

您可以通过更改文字说明来更改插件的审核行为。例如,您可以指示 Gemini 模型输出类别评分(位于类别标题所在行)上,或者更改类别名称。

要更改类别评分位置和类别名称,请按以下步骤操作:

  1. 打开包含 MySlide Advisor 项目的 Apps 脚本网页界面。如有必要,请打开项目窗口,方法是打开包含 Apps 脚本项目的 Google 幻灯片演示文稿,然后依次选择扩展程序 > Apps 脚本
  2. 在左侧菜单中,选择 < > Editor 视图,然后选择 ai.gs 文件名。
  3. ai.gs 代码文件中,找到 SYSTEM_PROMPT 字符串常量,然后按照粗体文本修改指令:
    const SYSTEM_PROMPT = `
    ...
    For each of the following categories evaluate the given slide. Score each
    category on a scale of 0 to 100, show the score next to the category heading,
    and concisely explain the reasoning. Do not suggest improvements if the score
    is 80 or above.
  4. 在同一 SYSTEM_PROMPT 字符串常量中,将 Simplicity 类别文本更改为 Message
    const SYSTEM_PROMPT = `
    ...
    * Message -- Slides should focus on one main idea per slide and ...
    
  5. 保存对 ai.gs 代码文件所做的更改。
  6. 浏览与您的 Apps 脚本项目关联的 Google 幻灯片演示文稿,重新加载网页,然后通过重新运行插件来测试对插件的更改。

如果您尚未为幻灯片顾问插件设置测试部署,请按照测试插件项目中的说明操作。

您可以移除、替换或重写 SYSTEM_PROMPT 字符串常量中的评价类别指令,使其符合您的评价要求。如果您想尝试不同的审核提示方法或重写整个审核提示,请查看 Google AI Studio Web 应用。借助此应用,您可以在方便的界面中设计 Gemini 原型、测试并保存提示,它使用与幻灯片顾问项目相同的 Gemini API。如需详细了解如何使用 AI Studio,请参阅 AI Studio 快速入门指南

更改模型行为配置

Gemini API 提供了多种设置,用于根据请求提示更改模型的常规操作。具体而言,通过模型的温度设置,您可以设置允许模型在响应中出现多少变化,0 代表最低,1 代表最高。将此值设置为 0.1 会生成非常一致的响应,但该行为可能会显得重复,并且对获得评价反馈的用户的帮助不大。考虑将温度值设置得更高,同时请注意,温度越高,结果就越不一致,这可能包括以不同方式实现指令,甚至完全忽略某些指令。

若要针对评价回复调高温度,请执行以下操作:

  1. 打开包含 MySlide Advisor 项目的 Apps 脚本网页界面。
  2. 在左侧菜单中,选择 < > Editor 视图,然后选择 ai.gs 文件名。
  3. ai.gs 代码文件中,找到 analyzeSlides() 函数,并通过将 temperature 值设置为 0.3 来修改 generationConfig 常量:

    function analyzeSlides(slide) {
    
        const generationConfig = {
            temperature: 0.3,
            maxOutputTokens: 1024 * 2,
        };
    
  4. 保存对 ai.gs 代码文件所做的更改。

  5. 浏览与您的 Apps 脚本项目关联的 Google 幻灯片演示文稿,重新加载网页,然后通过重新运行插件来测试对插件的更改。

如需详细了解模型行为配置设置,请参阅适用于 GenerationConfig 的 Gemini API 文档。

其他资源

如需详细了解幻灯片顾问项目,请参阅代码库。 如果您在构建应用方面需要帮助,或者希望与其他开发者合作,请查看 Google Developers 社区 Discord 服务器。 如需详细了解 Build with Google AI 项目,请观看视频播放列表