
このライブラリは、Googleスプレッドシートをインターフェースとして、AI(GoogleのGeminiまたはOpenAIのGPT)を活用し、ウェブサイトやブログ記事のコンテンツチェックを自動化する「AI NGワードチェッカー」システムです。
このページでは、ライブラリの目的、ユースケース、セットアップの手順を解説します。


このライブラリは、以下のような場面で絶大な効果を発揮します。
セットアップの手順は以下の通りです。
ステップ1:GASライブラリの追加
1POuOUh3ixdpoB66kwOs6ftCOcHJOBmUAx0j8sh74oIqIYAMI6GY-akIMAINGWordChecker (推奨)に変更し、「追加」ボタンを押します。ステップ2:サンプルコードの貼り付け
GASエディタの Code.gs ファイルに、記事の末尾にある「Code.gs用 サンプルコード」をコピー&ペーストします。これがスプレッドシート上のカスタムメニューの元になります。
ステップ3:「settings」シートの準備
このライブラリは、getLibraryConfig 関数(サンプルコード内)を通じて、スプレッドシートの「settings」という名前のシートから設定を読み込みます。
settings」という名前のシートを作成します。gemini-1.5-flash や gpt-4o)を入力します。 gemini model,open ai modelURLcheck)を入力します。NGwordsetting)を入力します。Final_NG_Word_List)を入力します。ステップ4:「NGワードリスト更新」の実行
NGwordsetting)を作成します。Final_NG_Word_List)に関連語を含む最終リストが自動で作成されます。ステップ5:「NGワードチェック」の実行
URLcheck)を作成します。done)が書き込まれます。Code.gs用 サンプルコード/**
* スプレッドシートを開いた時にカスタムメニューを追加します。
*/
function onOpen() {
SpreadsheetApp.getUi()
.createMenu('AI Checker')
.addItem('Run NG Word Check', 'runNGWordCheck')
.addItem('Update Final NG Word List', 'runRelatedWordGeneration')
.addToUi();
}
/**
* 'settings'シートから設定を読み込むヘルパー関数です。
*/
function getLibraryConfig() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('settings');
if (!sheet) {
throw new Error('Cannot find the Settings sheet.');
}
// B1からB6までの値を読み込む
const values = sheet.getRange('B1:B6').getValues();
return {
geminiApiKey: values[0][0],
openaiApiKey: values[1][0],
model: values[2][0],
urlSheetName: values[3][0],
ngSheetName: values[4][0],
finalNgWordSheetName: values[5][0]
};
}
/**
* ライブラリの「NGワードチェック」機能を実行します。
*/
function runNGWordCheck() {
try {
const config = getLibraryConfig();
// ライブラリの識別子(AINGWordChecker)を使って関数を呼び出す
AINGWordChecker.checkArticlesForNGWords(config);
SpreadsheetApp.getUi().alert('NG Word Check complete.');
} catch (e) {
Logger.log(`Error: ${e.message}`);
SpreadsheetApp.getUi().alert(`Error: ${e.message}`);
}
}
/**
* ライブラリの「関連語生成・リスト更新」機能を実行します。
*/
function runRelatedWordGeneration() {
try {
const config = getLibraryConfig();
// ライブラリの識別子(AINGWordChecker)を使って関数を呼び出す
AINGWordChecker.generateRelatedNGWords(config);
SpreadsheetApp.getUi().alert('Final NG Word List update complete.');
} catch (e) {
Logger.log(`Error: ${e.message}`);
SpreadsheetApp.getUi().alert(`Error: ${e.message}`);
}
}
いいえ、標準機能ではありません。これはサードパーティ製のGAS(Google Apps Script)ライブラリです。 また、無料では使えません。ステップ3で説明されている通り、AI(GeminiまたはOpenAI)のAPIキーをご自身で「settings」シートに設定する必要があり、AIの利用量に応じたコスト(API利用料)が別途発生します。
いいえ、違います。記事の説明によると、このライブラリは記事本文を抽出し、その内容と「最終NGワードリスト」をAI(GeminiやChatGPT)に送信します。そして、「この記事にNGワードが含まれているか」をAIに判断させる仕組みです。単純な文字列一致以上の、文脈を考慮したチェックが実行されます。
はい、その通りです。URLチェック(ステップ5)は、ステップ4でAIが自動生成した**「最終NGワードリスト」**(Final_NG_Word_Listシート)を参照して実行されます。 そのため、最低でも一度は「NGワードリスト更新」を実行して最終リストを作成する必要があります。また、元となる「ベースNGワード」(NGwordsettingシート)を変更・追加した場合も、スキャンに反映させるために再度「NGワードリスト更新」を実行する必要があります。