見出し画像

【おまけ】モデル名でハマらないために。Gemini「モデル確認用スクリプト」のススメ

AIの世界は、昨日まで動いていたコードが今日動かなくなることが珍しくありません。 特にGoogleのGemini APIは進化が早く、モデル名(gemini-2.5-flashなど)が突然変更されたり、新しいプレビュー版が登場したりします。

「404エラー(Not Found)」が出たとき、ネットで解決策を探すより100倍早い方法があります。 それは、「今、自分のAPIキーで使えるモデルは何?」と、Googleのサーバーに直接聞きに行くことです。

1. 「有効モデル一覧」取得スクリプト

このコードをGASの新しいエディタに貼り付けて実行するだけで、現在のあなたのアカウントで利用可能なモデル名がログにずらっと並びます。

JavaScript

/**
 * 現在のAPIキーで使用可能なモデル名の一覧をログに出力する
 */
function checkAvailableModels() {
  const scriptProperties = PropertiesService.getScriptProperties();
  const GEMINI_API_KEY = scriptProperties.getProperty('GEMINI_API_KEY');

  if (!GEMINI_API_KEY) {
    console.error("スクリプトプロパティ 'GEMINI_API_KEY' が設定されていません。");
    return;
  }

  // モデル一覧を取得するエンドポイント
  const url = `https://generativelanguage.googleapis.com/v1beta/models?key=${GEMINI_API_KEY}`;

  try {
    const response = UrlFetchApp.fetch(url, { "method": "get", "muteHttpExceptions": true });
    const resCode = response.getResponseCode();
    const resText = response.getContentText();
    const json = JSON.parse(resText);

    if (resCode !== 200) {
      console.error(`エラー (${resCode}): ${resText}`);
      return;
    }

    console.log("--- 使用可能なモデル一覧 ---");
    
    // generateContent に対応しているモデルのみを抽出
    const models = json.models.filter(m => m.supportedGenerationMethods.includes("generateContent"));
    
    models.forEach(m => {
      // 例: models/gemini-2.5-flash
      console.log(`モデル名: ${m.name} (${m.displayName})`);
    });

    console.log("---------------------------");
    console.log("上記一覧にある 'models/〜' の部分を MODEL_NAME に指定してください。");

  } catch (e) {
    console.error("通信エラー: " + e.message);
  }
}

2. ログの読み方と対処法

実行後、GASエディタ下部の「実行ログ」を確認してください。

  • models/gemini-2.5-flash があれば、それが最新の推奨モデルです。

  • もし models/gemini-3-flash-preview (仮)など、より新しい名前があれば、それに書き換えるだけで最新AIのパワーを最速で体験できます。

3. なぜこれを公開するのか

現場でシステムを運用していると、エラーは必ず起きます。 その時に「誰かが直してくれるのを待つ」のではなく、「自分で情報を取って、自分で直せる」

この「モデル確認用スクリプト」は、私が実務でエラーにぶつかった際に真っ先に使う「お守り」のようなコードです。皆さんの店舗DXが、技術のアップデートに負けずに走り続けられることを願っています。


いいなと思ったら応援しよう!

あい|現役店舗経営者 × AI・GASエンジニア もしこの記事が「コーヒー一杯分以上の価値」があると感じていただけたら、活動を応援いただけると大変励みになります。 頂いたサポートは、さらに高度な「店舗×AI」の自動化ツール開発や、海外の有料級情報の仕入れに大切に活用させていただきます。応援、よろしくお願いいたします!