Googleドキュメントで作成した文章の校正に時間がかかっていませんか。誤字脱字の確認や表現の改善を手作業で行うのは、想像以上に手間のかかる作業です。しかし、ChatGPT APIとGoogle Apps Scriptを組み合わせることで、Googleドキュメント上で直接AIによる校正を実行できるようになります。この記事では、Apps Scriptを使ってChatGPT APIを呼び出し、選択したテキストや文書全体を自動で校正する方法を、設定手順から実際のコード例まで詳しく解説します。
【要点】ChatGPT APIとApps ScriptでGoogleドキュメントの校正を自動化する方法
- OpenAI APIキーを取得: OpenAIのプラットフォームからAPIキーを発行し、Googleドキュメントからアクセスできるようにします。
- Apps Scriptのスクリプトを記述: Googleドキュメントのスクリプトエディタで、選択テキストをChatGPT APIに送信し、結果を文書に反映するコードを書きます。
- カスタムメニューから実行: スクリプトにカスタムメニューを追加し、ワンクリックで校正を実行できるようにします。
ADVERTISEMENT
目次
ChatGPT APIとApps Scriptが連携する仕組み
ChatGPT APIは、OpenAIが提供するテキスト生成・解析サービスです。これを利用すると、校正や要約、翻訳といった自然言語処理をプログラムから行えます。Google Apps Scriptは、Google Workspace製品を拡張するJavaScriptベースのプラットフォームです。Googleドキュメントのメニューからスクリプトエディタを開き、Googleのサービスと外部APIを連携させることができます。この2つを組み合わせると、Googleドキュメントの文章を直接APIに送り、校正結果を同じ文書に書き戻すという流れを作れます。
ChatGPT APIで校正を実行するための準備手順
ここからは、実際に設定を行う手順を説明します。最初にOpenAIでAPIキーを取得し、次にGoogleドキュメントでスクリプトを作成します。
OpenAI APIキーを取得する
- OpenAIのアカウントを作成する
OpenAIの公式サイト(platform.openai.com)にアクセスし、アカウントを作成します。既にアカウントがある場合はログインしてください。 - APIキーを生成する
ダッシュボードの「API Keys」メニューから「Create new secret key」をクリックし、任意の名前を付けてキーを生成します。生成されたキーは後で使うので、安全な場所にメモしておいてください。 - 利用プランを確認する
ChatGPT APIは従量課金制です。無料枠はありませんが、初回は一定のクレジットが付与される場合があります。事前に料金ページで使用量と費用を確認しておきましょう。
GoogleドキュメントでApps Scriptを準備する
- スクリプトエディタを開く
Googleドキュメントで任意の文書を開き、メニューバーから「拡張機能」→「Apps Script」を選択します。新しいタブでスクリプトエディタが開きます。 - プロジェクトの名前を設定する
スクリプトエディタ左上の「無題のプロジェクト」をクリックし、わかりやすい名前(例:「ChatGPT校正ツール」)に変更します。 - スクリプトにコードを記述する
後述するコードをエディタに貼り付け、APIキーを設定します。コードは次のセクションで詳しく説明します。
校正を実行するためのApps Scriptコード
以下が、ChatGPT APIを呼び出して選択テキストを校正する基本的なスクリプトです。このコードは、選択範囲のテキストを取得し、APIに送信して校正結果を新しいコメントとして挿入します。
function proofreadSelectedText() {
const doc = DocumentApp.getActiveDocument();
const selection = doc.getSelection();
if (!selection) {
DocumentApp.getUi().alert('テキストを選択してください。');
return;
}
let text = '';
const elements = selection.getSelectedElements();
for (let i = 0; i < elements.length; i++) {
const element = elements[i].getElement();
if (element.getType() === DocumentApp.ElementType.TEXT) {
text += element.asText().getText();
}
}
if (text.trim() === '') {
DocumentApp.getUi().alert('選択したテキストが空です。');
return;
}
const apiKey = 'YOUR_API_KEY'; // ここにAPIキーを設定
const url = 'https://api.openai.com/v1/chat/completions';
const messages = [
{role: 'system', content: 'あなたは校正専門のアシスタントです。ユーザーが入力した文章の誤字脱字を修正し、より自然な表現に改善してください。修正箇所を箇条書きで説明し、最後に修正後の全文を出力してください。'},
{role: 'user', content: text}
];
const payload = {
model: 'gpt-4o-mini',
messages: messages,
temperature: 0.3
};
const options = {
method: 'post',
headers: {
'Authorization': 'Bearer ' + apiKey,
'Content-Type': 'application/json'
},
payload: JSON.stringify(payload)
};
try {
const response = UrlFetchApp.fetch(url, options);
const json = JSON.parse(response.getContentText());
const result = json.choices[0].message.content;
const body = doc.getBody();
const position = body.getChild(body.getNumChildren() - 1);
body.insertParagraph(position, '【校正結果】\n' + result);
DocumentApp.getUi().alert('校正が完了しました。文書末尾に結果を追記しました。');
} catch (e) {
DocumentApp.getUi().alert('エラーが発生しました: ' + e.toString());
}
}
コード内の YOUR_API_KEY は、先ほど取得したAPIキーに置き換えてください。また、モデル名は gpt-4o-mini を使用していますが、必要に応じて gpt-4o などに変更できます。
カスタムメニューを作成して使いやすくする
毎回スクリプトエディタを開かなくても実行できるよう、Googleドキュメントのメニューバーにボタンを追加します。以下のコードを先ほどのスクリプトの先頭に追加してください。
function onOpen() {
const ui = DocumentApp.getUi();
ui.createMenu('校正ツール')
.addItem('選択テキストを校正', 'proofreadSelectedText')
.addToUi();
}
スクリプトを保存したら、一度スクリプトエディタを閉じてGoogleドキュメントをリロードします。メニューバーに「校正ツール」が追加され、クリックするだけで校正を実行できるようになります。
ADVERTISEMENT
ChatGPT API校正の注意点とよくあるトラブル
APIキーが漏洩するリスク
スクリプト内にAPIキーを直接記述すると、文書を共有した際にキーが流出する可能性があります。公開用の文書では特に注意してください。対策として、スクリプトのプロパティサービス(PropertiesService)を使ってキーを保存する方法があります。ただし、完全に安全ではありませんので、キーの管理には最新の注意を払いましょう。
文字数制限と課金に注意する
ChatGPT APIにはトークン制限があり、一度に送信できるテキストの長さには上限があります。長い文書を一括で送信するとエラーになる場合があります。その場合は、段落ごとに分割してリクエストを送るなどの工夫が必要です。また、APIの使用料はトークン単位で発生します。無料枠はないため、大量に使用すると予想外の請求が来ることがあります。事前にOpenAIの料金ページを確認し、使用量の上限を設定しておくことをおすすめします。
エラーが発生したときの対処法
よくあるエラーとして、APIキーが無効な場合の「401 Unauthorized」、レート制限に引っかかった場合の「429 Too Many Requests」、モデルが利用できない場合の「404 Not Found」などがあります。エラーが発生したら、コード内のcatchブロックで表示されるメッセージを確認してください。キーが正しいか、リクエスト間隔を空ける、モデル名を変更するなどの対応が必要です。
手動校正とChatGPT API校正の比較
| 項目 | 手動校正 | ChatGPT API校正 |
|---|---|---|
| 速度 | 時間がかかる | 数秒で完了 |
| 品質 | 個人のスキルに依存 | 一定の品質、ただし誤りを含む可能性あり |
| コスト | 人件費 | API利用料(従量課金) |
| カスタマイズ性 | 高い(自分で判断) | プロンプトで調整可能 |
| プライバシー | 社内のみ | 外部APIにデータ送信 |
まとめ
この記事では、Google Apps Scriptを使ってChatGPT APIを呼び出し、Googleドキュメントの文章を校正する方法を解説しました。APIキーの取得からスクリプトの記述、カスタムメニューの追加までの手順を実践すれば、ワンクリックでAI校正を実行できます。応用として、プロンプトを変更すれば翻訳や要約にも利用可能です。ただし、APIキーの管理や課金には十分注意してください。まずは短いテキストで動作確認をし、慣れてきたら文書全体の校正に挑戦してみてください。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Googleドキュメントの人気記事ランキング
- 【Googleドキュメント】上付き・下付き文字の入力方法!ショートカットと手動切替
- 【Googleドキュメント】ルビ(ふりがな)を振る方法!代替ツールとアドオンの活用
- 【Googleドキュメント】文字間隔(字間)を調整する方法!カーニングの代替手段
- 【Googleドキュメント】図表番号の自動採番!Figure 1, Table 2 の連番
- 【Googleドキュメント】Docs→Wordへエクスポート!docx出力での書式維持
- 【Googleドキュメント】縦書き表示を実現する方法!代替ツールと回避策
- 【Googleドキュメント】インデントを正確に調整する方法!ルーラーとタブストップの使い方
- 【Googleドキュメント】罫線を縦・横に挿入する方法!Wordの罫線機能との比較
- 【Googleドキュメント】共有後に閲覧履歴を確認!誰がいつ開いたかの追跡
- 【Googleドキュメント】共有先の名前が表示されない時の対処!匿名動物アイコンの正体
