第八節課:設計 AI 命題系統 - 基本題目生成

暖身問題: 想像你可以快速設計一套選擇題,只需要提供一個主題,便能生成問題、選項和答案!今天,我們將學習如何使用 Gemini API 來自動化命題。

教學目標

教學內容與操作步驟

1. 使用 Gemini API 生成基本選擇題


const GEMINI_API_KEY = '你的API密鑰';

function generateQuiz() {
    const apiUrl = 'https://generativelanguage.googleapis.com/v1/models/gemini-pro:generateContent?key=' + GEMINI_API_KEY;
    const payload = {
        "prompt": "請生成一個關於物理基礎的選擇題,包括問題、四個選項以及正確答案。",
    };
    const options = {
        "method": "post",
        "contentType": "application/json",
        "payload": JSON.stringify(payload),
    };
    const response = UrlFetchApp.fetch(apiUrl, options);
    const data = JSON.parse(response.getContentText());
    Logger.log("生成的題目:" + data.candidates[0].content);
}

        

步驟:

  1. 將上述程式碼複製到 Google Apps Script 編輯器中。
  2. GEMINI_API_KEY 替換為你的實際密鑰。
  3. 執行程式,檢查日誌中是否顯示生成的題目。
問題:如果希望生成一個關於 HTML 的選擇題,應該如何修改程式碼?

2. 將生成的題目儲存到試算表


function saveQuizToSheet() {
    const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    const quiz = {
        question: "以下哪個是 HTML 的全稱?",
        options: ["HyperText Markup Language", "HighText Machine Language", "HyperTool Multi-Language", "HyperText Multi-Logic"],
        answer: 0,
    };

    sheet.appendRow([quiz.question, ...quiz.options, quiz.answer]);
    Logger.log("題目已儲存到試算表");
}

        

步驟:

  1. 在試算表中建立一個名為「題目」的工作表。
  2. 將程式碼添加到 Apps Script 編輯器中。
  3. 執行程式,並檢查試算表是否成功新增題目。
問題:如果希望儲存的答案改為第二個選項,應該如何修改程式碼?

課程延伸與挑戰

上一節課下一節課