生徒が提出した作文・小論文を読み取り、評価の観点ごとに添削コメントの下書きを付けて返却を早める
生徒が提出した作文・小論文を読み取り、表記の誤りの指摘と、評価の観点ごとの所見・講評の下書きを作ります。添削者は下書きを原本と見比べて直し、観点ごとの評価を自分で付けて返却します。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Google Apps Script/Python
- 対象業界
- 人材/教育
- 対象部門
- 品質管理
- 対象業務
- 内容確認・チェック/書類作成
- 主な課題
- 人手が足りない/属人化している/書類作成に時間がかかる
- AIで行う処理
- 校正
- 主な効果
- 品質標準化/工数削減/教育コスト削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 半自動化
- 費用感
- API連携(中)
- 人間の確認
- 必須
01導入前 / 導入後の業務フロー
- 受講生がアプリから提出する。手書きのものは画像、入力のものは文章として提出フォルダに入る
- 添削センターが提出を添削者に割り振る
- 添削者が作文を1本通して読み、誤字・送り仮名・句読点・文末の不統一に赤を入れる
- 4つの観点それぞれについて、評価の基準表を見ながら評価を決め、根拠になる箇所に印を付ける
- 講評を書く。よかった点、直す点、次の課題で意識する点
- その受講生の前回の講評を開き、同じ指摘をくり返していないかを確かめる
- 添削記録のスプレッドシートに評価と講評の要点を入力し、返却する
- 人受講生がアプリから提出する(変わらない)
- 自動定時の処理が提出フォルダの新しいファイルを見つけ、課題・学年・受講生の番号を台帳から引く
- 自動手書きのものは、Gemini が原稿用紙の画像を書かれたとおりに文字に起こし、読めない字に印を付ける
- 自動起こした文章に文番号を振り、字数を数える
- 自動Gemini が表記の誤りを指摘し、4つの観点ごとに本文を根拠にした所見と、講評の下書きを作る
- 自動下書きを添削記録の台帳に書き込み、担当の添削者に割り振る
- 人添削者が原本の画像と下書きを並べて開き、指摘が本当に生徒の誤りかを確かめる
- 人4つの観点の評価を自分で決め、所見と講評を直す
- 人確定した添削を返却する
- 自動添削者が下書きから変えた箇所を記録する
各工程の詳しい説明を読む
- 受講生がアプリから提出する。手書きのものは画像、入力のものは文章として提出フォルダに入る
- 添削センターが提出を添削者に割り振る
- 添削者が作文を1本通して読み、誤字・送り仮名・句読点・文末の不統一に赤を入れる
- 4つの観点それぞれについて、評価の基準表を見ながら評価を決め、根拠になる箇所に印を付ける
- 講評を書く。よかった点、直す点、次の課題で意識する点
- その受講生の前回の講評を開き、同じ指摘をくり返していないかを確かめる
- 添削記録のスプレッドシートに評価と講評の要点を入力し、返却する
(a)1本を読むのに時間がかかる。 手書きの原稿用紙は、字が小さかったり薄かったりすると、読むだけで手間取ります。赤入れは読みながらでないとできないので、3番目がいちばん長くかかります。
(b)観点が添削者ごとにばらつく。 基準表はあっても、4つの観点すべてに触れた講評を毎回書くのは大変です。忙しい週ほど、添削者が得意な観点だけのコメントになります。 受講生が受け取るコメントの質が、誰に割り振られたかで決まっています。
(c)前回の講評を見る手間が省かれる。 6番目は、前回の講評を別のファイルで開かなければできません。締切の集中した週にまず省かれる工程です。 結果として、「前回できていなかったことができるようになった」を講評で拾えていません。
(d)新しい添削者が育つのに時間がかかる。 観点ごとに何を見るかを覚えるまで、ベテランが自分の添削の時間を削って1本ずつ見直しています。
- 【人】 受講生がアプリから提出する(変わらない)
- 【自動】 定時の処理が提出フォルダの新しいファイルを見つけ、課題・学年・受講生の番号を台帳から引く
- 【自動】 手書きのものは、Gemini が原稿用紙の画像を書かれたとおりに文字に起こし、読めない字に印を付ける
- 【自動】 起こした文章に文番号を振り、字数を数える
- 【自動】 Gemini が表記の誤りを指摘し、4つの観点ごとに本文を根拠にした所見と、講評の下書きを作る
- 【自動】 下書きを添削記録の台帳に書き込み、担当の添削者に割り振る
- 【人】 添削者が原本の画像と下書きを並べて開き、指摘が本当に生徒の誤りかを確かめる
- 【人】 4つの観点の評価を自分で決め、所見と講評を直す
- 【人】 確定した添削を返却する
- 【自動】 添削者が下書きから変えた箇所を記録する
7番目が、この設計の分かれ目です。 手書きの読み取りは誤ることがあります。指摘の一つ一つを原本と見比べる工程を省くと、正しく書いた生徒に「字が違う」と返します。 画面を原本と下書きの左右に並べるのは、この確認を1本数十秒で済ませるためです。
8番目で評価を人に残しているのも、意図してのことです。 評価を決めるのは、基準表を読み、受講生の前回からの伸びを見たうえでの判断です。AIの所見は、その判断の材料を集めたものにとどめます。
02今回想定するシステム構成
受講生の提出(手書きの原稿用紙の画像/入力された文章) │ ▼【トリガー】定時の処理(10分おき)が提出フォルダを見る Google Apps Script ── 台帳から課題・学年・受講生の番号・前回の講評を引く │ ├─ 手書き ──▶ Gemini API ── 書かれたとおりに文字起こし(読めない字は〓) │ ▼ Google Apps Script ── 文番号を振る/字数を数える ▼ Gemini API ── ① 表記の誤りの指摘 │ ② 4つの観点ごとの所見(根拠の文番号つき) │ ③ 講評の下書き ▼ 添削記録の台帳(Google スプレッドシート) ▼ 【添削者が原本と並べて確認し、評価を付けて確定】 ▼ 返却/直した箇所の記録
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Gemini(Gemini API。手書きの文字起こし、表記の指摘、観点ごとの所見と講評の下書き) | Claude、ChatGPT |
| 連携 | Google Apps Script(提出フォルダの確認、台帳の読み書き、API の呼び出し) | Python |
| 集計 | Google スプレッドシート(字数の確認、添削者が直した箇所の集計) | Microsoft Excel |
| 保管 | Google ドライブ(提出フォルダ、原本の画像) | Microsoft SharePoint |
提出用のアプリと添削記録の台帳は、新しく足すものではありません。 台帳に、下書きを書き込む列と、添削者が直したかどうかを残す列を足すのが最初の準備です。
Gemini は画像とPDFをそのまま読めます。 画像は PNG・JPEG・WEBP・HEIC・HEIF が扱え、リクエスト全体で20MBを超えるときは Files API で先に上げます。複数枚に分けて撮影した原稿用紙も、1回の依頼にまとめて渡せます。 PDFは50MBまたは1,000ページまでです。
出力は JSON スキーマで形を決められます。 スキーマに合った JSON が返りますが、公式の案内でも値の正しさはアプリケーションの側で確かめるようにとされています。本構成では、指摘に付いた文番号と引用が本文に実在するかを Google Apps Script で照合します。
Gemini API を使うのは添削者だけです。 Gemini API の利用規約では、18歳未満の人に向けた、または18歳未満の人が利用する可能性の高いサービスの一部として使わないこととされています。受講生が直接 Gemini とやり取りする画面は作りません。 受講生に届くのは、添削者が確定したコメントだけです。この線引きは、導入前に自社の法務と利用規約を読み合わせて確かめてください。
03どうやって実装するのか
処理の起点を決める
10分おきに動く定時の処理を起点にします。 Google Apps Script のインストール型トリガーには、指定した間隔でスクリプトを動かす時間主導型のトリガーがあります。公式の一覧に、ドライブのフォルダにファイルが追加されたことを起点にするトリガーは挙がっていません。そのため、提出フォルダを定期的に見に行く形にします。
1回の実行で見るのは、台帳にまだ登録されていないファイルだけです。 ファイルの ID を台帳の列に持ち、登録済みなら飛ばします。処理が途中で止まっても、次の回に同じファイルが拾い直されます。
締切日の前後は提出が集中するので、1回の実行で扱う本数に上限を置き、残りは次の回に回します。 1本ごとに台帳へ書き込み、書き込んだものだけを「処理済み」にします。
インストール型トリガーは、作った人のアカウントで動きます。 個人のアカウントで作ると、その人が異動したときに止まります。添削センターの共用アカウントで作ります。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 提出物 | 手書きの原稿用紙の画像、または入力された文章。提出日時 | 提出フォルダ |
| 課題の情報 | 課題文、指定字数、講座の種類(作文/小論文) | 課題の一覧 |
| 評価の基準表 | 4つの観点と、それぞれのA・B・Cの基準の文 | 講座ごとの基準表 |
| 受講生の情報 | 受講生の番号、学年、前回と前々回の講評の要点 | 添削記録の台帳 |
| 表記の方針 | 講座で指摘する表記の範囲(常用漢字の扱い、数字の書き方など) | 添削センターの手引 |
質を決めるのは、基準表と前回の講評です。 基準表が「論理的に書けているか」のような一文だけだと、所見も同じくらい曖昧になります。「主張が冒頭か末尾にあり、理由が2つ以上ある」のように、本文を見て確かめられる形の基準になっているほど、所見に根拠の文番号が付けやすくなります。
受講生の名前はAIへ渡しません。 受講生の番号と学年だけで足ります。講評の宛名は、台帳に書き込むときに Google Apps Script が付けます。
表記の方針を渡すのは、指摘の範囲をそろえるためです。 中学1年の作文で常用漢字外の字をひらがなで書いたものまで指摘すると、赤ばかりの添削になります。学年ごとに、指摘する範囲を手引で決めて渡します。
データの取得方法を決める
| 取るもの | どこから | どう取るか |
|---|---|---|
| 新しい提出物 | 提出フォルダ | Google Apps Script でフォルダ内のファイルを一覧し、台帳にない ID だけを取る |
| 課題文と指定字数 | 課題の一覧(スプレッドシート) | 提出物のファイル名に含まれる課題番号で引く |
| 基準表 | 講座ごとの基準表(ドキュメント) | 講座の種類で引く。毎回同じものを渡す |
| 前回の講評 | 添削記録の台帳 | 受講生の番号で引き、直近2回分の「直す点」だけを取る |
前回の講評は、全文ではなく「直す点」だけを渡します。 全文を渡すと、今回の講評が前回の言い回しに引きずられます。渡すのは、今回それができているかを確かめるための材料だけです。
画像は、アプリから届いたものをそのまま渡します。 縮小や圧縮をかけると、細い線の字がつぶれます。
AIへ渡す前に整形する
- ファイルの形式の確認 … 画像(PNG・JPEG・WEBP・HEIC・HEIF)かPDFか、入力された文章かを見分けます
- 向きの確認 … 公式の案内でも、ページを正しい向きにしてから渡すことが推奨されています。横向きに撮られた原稿用紙は回転してから渡します
- 枚数の確認 … 複数枚の原稿用紙は、提出時のページ順で1回の依頼にまとめます
- サイズの確認 … リクエスト全体が20MBを超えるときは、Files API で先に上げます
- 手書きの文字起こし … 手書きのものだけ、Gemini に書かれたとおりの文字起こしをさせます(プロンプトは次々項)
- 文番号を振る … 起こした文章、または入力された文章を句点で区切り、S1、S2…と番号を振ります
- 字数を数える … 字数は Google Apps Script で数え、指定字数との差を台帳に書きます。AIには数えさせません
5番目を、所見を作る依頼と分けるのが要点です。 1回の依頼で「読んで、直して、講評して」とまとめると、AIは読み取りの段階で誤字を正しい字に直したうえで講評を書きます。生徒の誤字が、指摘される前に消えます。 文字起こしだけを先に独立させ、「書かれたとおりに写す、誤字も直さない」と指示します。
6番目の文番号は、指摘の場所を示す共通の番地です。 原稿用紙のマス目の位置をAIに答えさせるより、文番号と引用で示したほうが、添削者が原本の中で見つけやすくなります。
AIに処理させる
させるのは、表記の誤りの指摘、4つの観点ごとの所見、講評の下書きの3つです。
| させること | 中身 | 判断できないときの扱い |
|---|---|---|
| 表記の誤りの指摘 | 誤字、送り仮名、句読点、文末の不統一、主語と述語のねじれ。文番号と引用を付ける | 〓を含む箇所は指摘しない |
| 観点ごとの所見 | 4つの観点それぞれについて、基準表に照らして本文に何が書かれているか。根拠の文番号を付ける | 根拠が見つからなければ「該当する記述なし」 |
| 前回からの変化 | 前回の「直す点」が今回できているか | 前回の講評がなければ出さない |
| 講評の下書き | よかった点、直す点、次の課題で意識する点を、学年に合った言葉で | 所見が少なければ短くてよい |
| 気がかりな記述の検出 | 悩み・いじめ・体調・家庭の事情など、指導以外の対応が要る記述 | 見つけたら講評を作らず、印だけ付ける |
表記の指摘には reading の欄を付けます。 手書きの文字起こしのときに、字の形がはっきりしていたか(clear)、崩れていて自信がないか(uncertain)を、文字起こしの段階で印を付けさせておき、指摘に引き継ぎます。uncertain の字にかかる指摘は、添削者が原本で必ず見るという順番を画面の側で作ります。
最後の行が、添削の品質とは別の意味で大事です。 作文には、書き手の悩みや家庭のことが書かれることがあります。そこに講評の下書きを自動で付けると、指導の言葉で返してはいけない内容に、指導の言葉を返すことになります。 印の付いた提出は、添削者ではなく添削センターの責任者に回し、社内で決めた手順で扱います。
| させないこと | 理由 |
|---|---|
| 観点ごとの評価(A・B・C)の決定 | 評価は添削者の判断。AIの評価を見ると、所見を読まずに返すようになる |
| 模範の文章の全文 | 生徒が写して次の課題を出す。直す箇所の指摘までにする |
| 字数の計算 | Google Apps Script で数える。AIの字数は当てにしない |
| 〓の字の推測 | 読めない字を文脈から埋めると、生徒の誤字か読み取りの誤りかが分からなくなる |
| AIで書かれた文章かどうかの判定 | 確かめる方法がない。疑いがあるときは添削者が受講生に確かめる |
| 受講生の人柄・家庭についての推測 | 講評は文章についてだけ書く |
1行目がいちばん起きやすい失敗です。 スキーマに評価の欄を置いておくと、AIは所見と一緒に評価を埋めます。評価の欄はスキーマに置かず、台帳の側で添削者が入力する列にします。
指示内容を固定する
文字起こし(手書きのものだけ):
あなたは原稿用紙の手書きの文字を、書かれたとおりに文字へ起こす担当です。
添削はしません。
【厳守事項】
- 書かれたとおりに写してください。誤字、送り仮名の誤り、句読点の抜けも、
直さずにそのまま写してください。正しい字に置き換えないでください。
- 読めない字は、1字ごとに〓と書いてください。文脈から推測して埋めないでください。
- 字の形が崩れていて自信のない字は、uncertain_chars に、その字と前後の数文字を書いてください。
- 消しゴムで消した跡や、二重線で消した字は写さないでください。
- 段落の始まり(1マス空け)は、改行で表してください。
- 原稿用紙の枠外の書き込み(名前、メモ)は写さないでください。
表記の指摘と観点ごとの所見:
あなたは通信教育の添削センターで、添削者のための下書きを作る担当です。
評価は付けません。評価は添削者が決めます。
【渡すもの】
課題文:{task_text}
学年:{grade}
評価の観点と基準:{rubric}
表記の方針(この学年で指摘する範囲):{style_policy}
前回までの「直す点」:{previous_points}
本文(文番号つき):{numbered_text}
自信のない字の一覧:{uncertain_chars}
【表記の指摘】
- 誤字、送り仮名、句読点、文末の不統一、主語と述語のねじれを指摘してください。
- 表記の方針にない種類の指摘はしないでください。
- 1件ごとに、文番号と、本文からそのまま写した引用を付けてください。
- 〓を含む箇所は指摘しないでください。
- 自信のない字の一覧に含まれる字にかかる指摘は、reading を uncertain にしてください。
【観点ごとの所見】
- 4つの観点それぞれについて、基準の文に照らして、本文に何が書かれているかを書いてください。
- 根拠にした文番号を必ず付けてください。根拠が見つからなければ
「該当する記述なし」とし、推測で所見を書かないでください。
- A・B・C などの評価は書かないでください。
- 前回までの「直す点」が今回できているかを、できている/できていない/判断できない
のどれかで書き、根拠の文番号を付けてください。
【講評の下書き】
- よかった点を1つ以上、直す点を2つまで、次の課題で意識する点を1つ書いてください。
- {grade}の生徒が読んで分かる言葉で書いてください。
- 本文を書き直した模範の文章は書かないでください。
- 生徒の人柄や家庭について推測して書かないでください。
【気がかりな記述】
- 悩み、いじめ、体調、家庭の事情など、文章の指導とは別の対応が要る記述があれば、
concern を true にし、講評の下書きは空にしてください。
「直さずにそのまま写す」を、文字起こしの側で2回書いているのは意図してのことです。 一度だけだと、明らかな誤字(「以外」と「意外」など)は正しい字にして写します。AIにとっては親切のつもりの補正が、添削では見つけるべき誤りを消す操作になります。
「評価は書かない」も、冒頭と観点の節の2か所に書きます。 基準表にA・B・Cの文が並んでいるので、何も言わなければ所見の末尾に「Bに相当」と書き足します。
出力形式を固定する
次の形のJSONで受け取ります。
{
"submission_id": "",
"source": "handwritten | typed",
"transcription": {
"status": "ok | partial | failed",
"unreadable_count": 0
},
"corrections": [
{ "sentence_id": "S3", "quote": "", "type": "誤字 | 送り仮名 | 句読点 | 文末 | ねじれ",
"suggestion": "", "reading": "clear | uncertain" }
],
"rubric_notes": [
{ "criterion": "課題への応答 | 構成 | 根拠と具体例 | 表記と語法",
"observation": "", "evidence": ["S1", "S7"] }
],
"previous_points": [
{ "point": "", "status": "improved | not_yet | unknown", "evidence": ["S5"] }
],
"comment_draft": { "good": [""], "fix": [""], "next": "" },
"concern": false
}
1つ目の理由は、指摘を後から機械で確かめられることです。 sentence_id と quote の組が本文に実在するかを Google Apps Script で照合し、実在しない引用を持つ指摘は台帳に書き込む前に落とします。 Gemini のスキーマは JSON の形を守らせますが、中身が本文と合っているかまでは保証しません。
2つ目は、評価の欄がないことです。 rubric_notes には所見と根拠しかありません。評価は台帳の側の列で、添削者だけが入力できます。 スキーマに欄がなければ、AIが評価を書く場所もありません。
3つ目は、reading と transcription.status で確認の順番を決められることです。 台帳の画面では、uncertain の指摘を先頭に並べ、partial の提出には「原本を通読すること」と表示します。failed の提出には下書きを付けず、そのまま添削者に回します。
concern が true のものは、台帳に書き込む段階で担当の添削者から外し、責任者の確認待ちの列に入れます。 講評の下書きは空で届くので、誤って返却される経路がありません。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 提出フォルダ(Google ドライブ) | Google Apps Script の時間主導型トリガー | 新しい提出物を見つける |
| 課題の一覧・基準表 | スプレッドシートとドキュメントの読み取り | 課題文、指定字数、基準の文を引く |
| Gemini API | Google Apps Script からの API 呼び出し | 文字起こしと、指摘・所見・講評の下書き |
| 添削記録の台帳 | スプレッドシートへの書き込み | 下書き、字数、確認の順番、担当者 |
| 提出用のアプリ | 既存の返却の経路 | 添削者が確定したものだけを返す |
返却はこの構成から行いません。 下書きを台帳に書き込むところまでで止め、返却は添削者が確定の操作をしたものだけが既存の経路で出ます。 自動で返却する経路をつなぐと、確認の終わっていない下書きがそのまま受講生に届く失敗が、一度で起きます。
台帳の「評価」の列は、Google Apps Script から書き込みません。 列ごとに、スクリプトが書く列と人が書く列を分け、人が書く列にスクリプトが触らないようにします。
人が確認する
添削者は全件を見ます。 この構成は、確認を減らすものではなく、赤入れと講評を書く時間を減らすものです。
uncertainの指摘を原本で見る … 画面の左に原本の画像、右に下書きを並べ、該当の文を原本で探します。読み取りの誤りなら指摘を消しますclearの指摘を流し見る … 表記の方針の範囲に入っているかを見ます- 観点ごとの所見を読み、評価を付ける … 根拠の文番号を本文で確かめ、基準表に照らして自分で評価を決めます
- 講評を直す … 自分の言葉に直し、所見と評価が食い違っていないかを見ます
- 確定する … 確定の操作をしたものだけが返却されます
3番目で、所見の根拠を本文で確かめることを省かないでください。 所見は本文の要約に近いので、読んだ気になれる文章です。根拠の文番号を開いて初めて、その所見が本文に基づいているかが分かります。
目標は、1本12分です。 通読は残りますが、赤入れを書く時間と講評の文を組み立てる時間が減ります。12分を大きく超える提出が続くときは、手書きの読み取りが崩れているか、基準表の文が曖昧すぎて所見が使えていないかのどちらかです。
例外に対処する
| 起きること | 対応 |
|---|---|
〓が多く、文字起こしが partial になる | 下書きは付けるが、画面に「原本を通読すること」と出す。撮り直しを受講生に頼むかは添削者が決める |
文字起こしが failed になる | 下書きを付けずに添削者へ回す。撮影の手引を返却時に添える |
| 画像が横向き・逆さま | 前処理で回転してから渡す。回転できないものは failed 扱い |
| リクエストが20MBを超える | Files API で先に上げてから渡す |
| 指摘の引用が本文にない | その指摘を台帳に書き込む前に落とし、件数をログに残す |
| 課題と違うテーマで書かれている | 「課題への応答」の所見に書かせる。評価をどうするかは添削者が決める |
| 指定字数に大きく足りない | 字数は Google Apps Script で数えた値を台帳に出す。講評で触れるかは添削者が決める |
concern が true | 担当から外し、責任者の確認待ちへ。講評の下書きは作らない |
| Gemini API が応答しない | 台帳に登録せず、次の回に拾い直す。3回続けて失敗したら担当者に知らせる |
上から2行目までが、手書きの提出の大半の例外です。 暗い場所で撮った画像、影の入った画像、斜めから撮った画像です。AIの精度を上げるより、提出時の撮影の手引を直すほうが効きます。
記録を残す
- 提出物の原本(画像または文章)と、提出日時
- 文字起こしの結果と、
uncertain_charsの一覧 - AIへ渡した入力(課題文、基準表の版、前回の「直す点」)と、返ってきたJSONの全文
- 添削者が下書きから変えた箇所 … 消した指摘、足した指摘、直した所見と講評
- 添削者が付けた評価と、確定した日時
- 引用が本文になかったために落とした指摘の件数
concernが付いた提出と、その後の扱い
4つ目が、この構成の改善の材料になります。 どの種類の指摘がよく消されているか、どの観点の所見がよく書き直されているかを月に一度集計すると、プロンプトと基準表のどちらを直せばよいかが分かります。
3つ目で基準表の版を残すのは、基準が学期の途中で変わるためです。 受講生から「先月と言われることが違う」と問い合わせが来たとき、当時どの基準で下書きを作ったかが残っていないと答えられません。
04実装レベルの3段階
最小構成では本数がさばけません。 画像と基準表を毎回貼るので、1本の手間はかえって増えます。確かめるための段階です。 半自動化で1本12分になり、この段階が本記事の想定です。 通読と評価は人に残るので、ここから先で1本の時間は大きくは減りません。本格構成で効くのは、時間よりも添削の質のそろい方です。 直した箇所の集計から、添削者ごとの癖と、基準表の曖昧な観点が見えてきます。 段階を飛ばさないでください。 半自動化の下書きを1か月使うと、どの観点の所見が書き直されているかが分かります。そこを基準表の側で直してから本格構成に進みます。
05工数削減シミュレーション
導入後 600件 × 12分 ÷ 60 = 120 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 作文・小論文・レポートの添削を毎月数百件単位で行い、添削者によってコメントの量や観点がばらついている通信教育・学習塾・社会人向け講座。評価の観点(ルーブリック)が文書として決まっている場合。提出が手書きの原稿用紙のスキャンと、入力された文章の両方で届く場合。新しく入った添削者の指導に時間がかかっている場合。
- 提出が月に数十件で、添削者が一人で目を通せる場合。評価の観点が決まっておらず、添削者ごとの感覚で見ている場合(先に観点を決める必要があります)。入試の合否や成績の確定そのものに使う場合。なお、観点ごとの評価(A・B・C など)を決めることは、この構成では代替しません。
07最小構成で試す方法
- 先月返却した提出から20本を選ぶ(手書きと入力を半分ずつ、字の読みにくいものを数本入れる)
- その20本について、当時の添削者の赤入れと講評を手元に置く
- 手書きのものは、Gemini の画面に原稿用紙の画像を貼り、「書かれたとおりに文字に起こしてください。誤字も直さずに写し、読めない字は〓にしてください」と指示する
- 起こした文章に基準表と課題文を添えて、「表記の誤りを文を引用して指摘し、4つの観点ごとに本文を根拠にした所見を書いてください。評価は書かないでください」と指示する
- 出てきた指摘と所見を、当時の添削と突き合わせる
20本の中に、生徒の誤字が分かっている提出を必ず入れてください。 文字起こしの段階でその誤字が残っているかが、この構成の最初の関門です。
| 出てきた内容 | 判断 |
|---|---|
| 当時の赤入れと同じ誤字が拾えている | Google Apps Script との連携に進む |
| 文字起こしで誤字が正しい字に直っている | 指示の書き方で直る。文字起こしと添削を分けることを徹底する |
| 〓や読み違いが多く、所見が作れない | 撮影の手引が先。 AIの問題ではない |
3行目が出た場合も、失敗ではありません。 添削者が原本を読むのに時間がかかっていた理由が、一つはっきりしたということです。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 文字起こしで生徒の誤字が正しい字に直る | 文字起こしと添削を別の依頼に分ける。 「直さずに写す」を明記する |
| 崩れた字を読み違えて、誤字として指摘する | reading を付け、uncertain の指摘は原本で必ず見る |
| 所見に評価が混ざる | スキーマに評価の欄を置かない。 指示でも2か所で禁じる |
| 引用が本文にない指摘が出る | 文番号と引用の組を本文と照合し、合わないものを落とす |
| 模範の文章を書いてくる | 講評の下書きに「書き直した文章は書かない」を明記する |
| 表記の指摘が多すぎて赤だらけになる | 学年ごとの表記の方針を渡し、範囲外の指摘を禁じる |
| 字数を数え違える | 字数は Google Apps Script で数える |
| 基準表が曖昧で、所見も曖昧になる | 基準を本文で確かめられる文に書き直す |
| 悩みの記述に講評を付けてしまう | concern で止め、責任者に回す |
| トリガーが止まっている | 作った人のアカウントで動く。共用のアカウントで作る |
| 自動で返却される | 返却の経路につながない。 確定は添削者の操作だけ |
上の2行が、この構成の失敗のほとんどです。 どちらも「字が違う」という同じ見た目から出発しています。生徒の誤りと読み取りの誤りを、依頼を分けることと reading の印で分けてあるかどうかで、運用に乗るかが決まります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 受講生の番号と学年、受講生が書いた作文・小論文の本文と手書きの画像、過去の講評。作文には、書き手の家庭や学校生活、悩みが書かれることがあります。
- 受講生の名前をAIへ渡さない … 受講生の番号と学年で足ります。原稿用紙の枠外の名前は、文字起こしで写さないよう指示します
- 無料の枠に受講生の作文を送らない … 無料のサービスに送った内容は製品の改善に使われ、人の目で読まれることがあるとされています。本番は有料のサービスを前提にします
- 受講生が Gemini と直接やり取りする画面を作らない … Gemini API の利用規約には、18歳未満の人に向けた、または18歳未満の人が利用する可能性の高いサービスで使わないという定めがあります。使うのは添削者だけにし、線引きを法務と確かめます
- 評価を人に残す … 文部科学省のガイドラインでも、学習評価を教師が判断せずに生成AIの出力で行うことは不適切な例とされています。評価の欄をスキーマに置かないことで、設計の側で守ります
- 気がかりな記述は、講評ではなく人の手順で扱う …
concernの付いた提出は、社内で決めた手順で責任者が扱います。AIに対応の判断をさせません - 作文の著作権と利用の範囲を確かめる … 作文は受講生の著作物です。添削以外の目的(教材の例文など)に使う場合は、別途の同意を得てください
誤りが起きた場合のリスクは、正しく書いた生徒に誤りだと返すことと、誤りを見落とすことの2つです。 前者は読み取りの誤りを誤字として指摘すると起き、後者は文字起こしで誤字が直されると起きます。どちらも文字起こしの段階から出ているので、そこだけは設計で守ります。
10まず何から始めるか
1週目:基準表を書き直す
4つの観点それぞれについて、A・B・Cの基準を本文を見て確かめられる文に直します。「論理的に書けている」ではなく「主張が冒頭か末尾にあり、理由が2つ以上ある」のように書きます。この作業は、AIを使わなくても添削をそろえるのに効きます。
2週目:20本で試す
先月の提出から20本を選び、Gemini の画面で文字起こしと下書きを作らせます。生徒の誤字が文字起こしで直されていないかを最優先で見ます。
3週目:学年ごとの表記の方針と、撮影の手引を決める
中学1年から高校3年まで、どの表記を指摘するかを手引にまとめます。あわせて、手書きの提出が読み取れなかったものの原因を見て、受講生向けの撮影の手引を直します。
4週目:提出フォルダから台帳までをつなぐ
Google Apps Script で提出フォルダを10分おきに見て、文字起こしと下書きを台帳に書き込むところまで作ります。この時点では講評の下書きを出さず、表記の指摘と観点ごとの所見だけを添削者に見せます。
2か月目: 講評の下書きと concern の扱いを足し、1本の所要時間を添削者ごとに測ります。3か月目以降: 添削者が下書きから変えた箇所を集計し、プロンプトと基準表を直します。消される指摘の種類と、書き直される所見の観点が安定して少なくなった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| JSON スキーマを指定して構造化出力を得られること。スキーマに合った JSON が返っても、値の正しさはアプリケーションの側で確かめるよう案内されていること。対応していない JSON スキーマの機能があること | Gemini API: Structured outputs | 2026-09-29 |
| 画像として PNG・JPEG・WEBP・HEIC・HEIF を扱えること。リクエスト全体が20MBを超える場合は Files API を使うこと。大きな画像はタイルに分けてトークンが数えられること | Gemini API: Image understanding | 2026-09-29 |
| PDFは50MBまたは1,000ページまでで、1ページ258トークンとされること。ページを正しい向きにしてから渡すことが推奨されていること | Gemini API: Document understanding | 2026-09-29 |
| API は18歳以上が使うものであり、18歳未満の人に向けた、または利用する可能性の高いサービスの一部として使わないこと。無料のサービスでは送った内容が製品の改善に使われ人の目で読まれることがあり、個人情報を送らないよう求められていること。有料のサービスではプロンプトと応答を製品の改善に使わないこと | Gemini API 追加利用規約 | 2026-09-29 |
| インストール型トリガーに、毎分から月1回までの間隔で動く時間主導型があること。作った人のアカウントで動くこと。一覧にドライブのファイル追加を起点にするトリガーがないこと | Google Apps Script: Installable Triggers | 2026-09-29 |
| 不適切と考えられる例として、教師が正確な知識に基づきコメント・評価すべき場面で生成AIの出力のみに頼ること、学習評価を教師が判断せずに生成AIの出力をもって行うことが挙げられていること。個人情報を入力する場合に提供者が機械学習に利用するかを確認すべきとされていること | 文部科学省: 初等中等教育段階における生成AIの利活用に関するガイドライン(Ver.2.0) | 2026-09-29 |
Gemini API の利用規約の適用範囲は、自社の法務と確認してください。 本記事は公開されている規約の文言で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0310)についてのご相談はこちらから。
