【3ステップで解決】ChatGPTで有名なOpen AIが提供するAPIでGoogleスライドを自動翻訳

外資系企業へ勤務するみなさんは、このような悩みを持ったことはないだろうか。
「本社が作成した資料が全て英語のため、日本語へ翻訳し顧客向けのスライドを作成することが大変!」
「英語の顧客事例のスライドはたくさんあるけど、日本語のものが少ない」
そんなお悩みを一気に解決できるかもしれないのが「Open AI API」で、今回はその活用法をご紹介したい。

どんな人におすすめの記事なのか?

  • ChatGPT/Open AI活用の幅を広げたい
  • Googleスライドの言語を一瞬で翻訳したい
  • 社内資料は英語ばかりで日本語のものが少ない

この記事を読むと学べること

  • Open AI APIを活用して、Googleスライドの言語を一瞬で翻訳できる

ChatGPTは、OpenAIが開発した会話型のAIモデルで、人間のような自然なコミュニケーションができるチャットサービスである。モデルの改良が継続的に行われており、現在の最新モデルは2024年5月13日に発表されたGPT-4o (“o” for “omni”)だ。またChatGPTはテキストベースで質問しながら、AIが答えてくれるため誰でも簡単に利用できる点も魅力の一つである。
実は本記事のタイトルにある「Googleスライドの言語翻訳」は、ChatGPTではなくOpen AI APIを活用すれば実現できる。

Open AI APIは、Open AIが提供するAPIで、AIベースのテキスト生成や画像生成など様々なAIモデルへアクセスできるインターフェースである。一般的にAPIとは、”Application Programming Interface”の略でアプリケーションとプログラミングの受け渡しのための口、または繋ぎ目のこと。SaaS企業などはこのAPIを提供している企業が多いのだが、Open AIも同様に自社で開発するシステムなどにOpen AIが提供するAI技術を利用可能にするためOpen AI APIを提供している。

それでは、こちらのスライドをOpen AI APIを利用して、翻訳していきたい。

Spotify for Developersのドキュメントを元に作成したサンプルスライド

事前準備:API Creditの購入(個人利用の場合)

Open AI Platformへアクセスし、Billingよりクレジットカード情報を入力し、任意のクレジット(最低$5から)を購入する。(※企業ですでにEnterprise版を利用している場合、このステップは不要なはず)

Secret Keyの作成

Profile>User API Keys(Legacy)>Create new secret keyの順でSecret Keyを作成し、コピペで保管する。
※ここで作成したSecret Keyは他人に共有せず、ご自身で管理しましょう。

Apps Script上でスクリプトを記述

翻訳したいGoogleスライドを開き、拡張機能からApps Scriptを開く。

Apps Scriptで以下のスクリプトをコピペする。
※ご自身のSecret KeyとGoogleスライドのプレゼンテーションIDを入力

const OPENAI_API_KEY = 'Your OPEN AI KEY'; // ここへ取得したOpenAIのSecret Keyを入力

function translateSlides() {
  
  const presentationId = 'Presentation ID';  // ここへGoogleスライドのプレゼンテーションIDを入力
  const slides = SlidesApp.openById(presentationId).getSlides();

  slides.forEach(slide => {
    slide.getShapes().forEach(shape => {
      const textRange = shape.getText();
      if (textRange) {
        const originalText = textRange.asString();
        const translatedText = translateText(originalText, 'ja'); 
        textRange.setText(translatedText);
      }
    });
  });
}

function translateText(text, targetLanguage) {
  const url = 'https://api.openai.com/v1/chat/completions';
  const messages = [
    { role: 'system', content: 'You are a helpful assistant that translates text.' },
    { role: 'user', content: `Translate the following text to ${targetLanguage}:\n\n${text}` }
  ];

  const payload = {
    model: 'gpt-4o', // 必要に応じてモデルを修正
    messages: messages,
    max_tokens: 500, // 必要に応じてトークン数を調整
    n: 1,
    stop: null,
    temperature: 0.7,
  };

  const options = {
    method: 'post',
    contentType: 'application/json',
    headers: {
      Authorization: `Bearer ${OPENAI_API_KEY}`
    },
    payload: JSON.stringify(payload)
  };

  const response = UrlFetchApp.fetch(url, options);
  const json = JSON.parse(response.getContentText());
  return json.choices[0].message.content.trim();
}

スクリプト実行

実行(Run)ボタンでスクリプトを実行し、Googleスライドの言語を翻訳する。

注意点

  • Secret Keyはご自身で厳重に管理しなければならない
  • 図形内のテキストはうまく翻訳されなかった

Open AIが提供するAPIを活用することで、Googleスライドの言語を自動翻訳する方法をご紹介した。外資テック企業で勤務していると、やはり最新事例は本社がより多く持っていると感じることがあるのではないだろうか。日本語のアセットとして展開されていないこともあるが、Open AI APIを活用することでそのような課題も解消できるかもしれない。