学校・塾の授業の録画と板書の写真から、欠席した生徒と復習のための要点ノートと確認問題を作り、教員の確認を経て配る
教室で録画した授業の映像と、授業の終わりに撮った板書の写真から、録画の時刻付きの要点ノートと確認問題の下書きを作ります。担当の教員が直して承認したものを、欠席した生徒と復習したい生徒に配ります。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Google Apps Script/Make/Python
- 対象業界
- 教育
- 対象部門
- 総務
- 対象業務
- 書類作成/要約
- 主な課題
- 人手が足りない/引き継ぎができていない/書類作成に時間がかかる
- AIで行う処理
- 要約
- 主な効果
- 品質標準化/対応スピード向上/工数削減
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 授業の後、欠席者の一覧を見て、まとめを作る授業かを判断する
- 録画を開き、説明の要点を探しながら見返す(全部は見ない)
- 板書の写真を撮っていれば添え、無ければ自分の授業の準備の資料から書き起こす
- 要点をまとめた文書を作る
- 確認問題を2〜3問作り、解答を付ける
- Google Classroom で、欠席した生徒に配る
- 人授業の終わりに、教員が板書をタブレットで1〜3枚撮り、共有の保存先の授業のフォルダに入れる
- 人授業の後、教員がまとめを作る授業を一覧で指定する(欠席者がいた授業は自動で候補に上がる)
- 自動夜間、指定された授業の録画と板書の写真を取り出し、Gemini API に渡す
- 自動時刻付きの要点、用語、板書の書き起こし、確認問題と解答、聞き取れなかった箇所を返させる
- 自動返ってきた内容を、学校の書式の Google ドキュメントにする
- 人翌朝、担当の教員がドキュメントを開き、要点と問題を直して承認する
- 人承認したものを、Google Classroom で欠席した生徒とクラスに配る
- 自動承認したドキュメントを単元ごとのフォルダに残す
各工程の詳しい説明を読む
- 授業の後、欠席者の一覧を見て、まとめを作る授業かを判断する
- 録画を開き、説明の要点を探しながら見返す(全部は見ない)
- 板書の写真を撮っていれば添え、無ければ自分の授業の準備の資料から書き起こす
- 要点をまとめた文書を作る
- 確認問題を2〜3問作り、解答を付ける
- Google Classroom で、欠席した生徒に配る
(a)作るのに時間がかかる。 録画を見返すのがいちばん重い作業です。自分の授業でも、どこで何を説明したかを覚えているとは限りません。 早送りしながら探すと、それだけで10分を超えます。
(b)教員によって手当てがばらばら。 ある教員はまとめと問題を作り、別の教員は録画のリンクだけを送ります。同じ欠席でも、受け取るものが担任や教科によって違います。
(c)録画と資料がつながっていない。 まとめを読んで分からなかったとき、録画のどこを見ればよいかが書かれていません。 結局、生徒は録画を頭から見るか、見ないかのどちらかになります。
(d)引き継ぎができない。 同じ単元を翌年に別の教員が教えるとき、前の年のまとめは個人のドライブに散らばっていて見つかりません。
- 【人】 授業の終わりに、教員が板書をタブレットで1〜3枚撮り、共有の保存先の授業のフォルダに入れる
- 【人】 授業の後、教員がまとめを作る授業を一覧で指定する(欠席者がいた授業は自動で候補に上がる)
- 【自動】 夜間、指定された授業の録画と板書の写真を取り出し、Gemini API に渡す
- 【自動】 時刻付きの要点、用語、板書の書き起こし、確認問題と解答、聞き取れなかった箇所を返させる
- 【自動】 返ってきた内容を、学校の書式の Google ドキュメントにする
- 【人】 翌朝、担当の教員がドキュメントを開き、要点と問題を直して承認する
- 【人】 承認したものを、Google Classroom で欠席した生徒とクラスに配る
- 【自動】 承認したドキュメントを単元ごとのフォルダに残す
6番目が、この設計の分かれ目です。 生徒に届くのは、教員が承認したものだけです。AIの下書きをそのまま配ることはしません。 授業の内容の正しさに責任を持つのは教員で、AIの要約には説明の取り違えが混ざり得るからです。
7番目を人が行うのも意図してのことです。 配る先は欠席した生徒だけか、クラス全体か、教員が授業の様子を見て決めます。 自動で全員に配ると、生徒が授業に出なくてもよいと受け取りかねません。
02今回想定するシステム構成
教室のカメラ ── 録画(mp4)──▶ 共有の保存先の授業のフォルダ 教員のタブレット ── 板書の写真 ──▶ 同じフォルダ 教員 ── 一覧(Google スプレッドシート)で、まとめを作る授業を指定 │ ▼【トリガー】毎晩22時(校内のサーバーの定時の処理) Python(google-genai) ├──▶ 録画を Files API へアップロード(処理が終わるのを待つ) ▼ Gemini API ── 録画(荒い解像度)+板書の写真+授業の情報 │ 時刻付きの要点/用語/板書の書き起こし/確認問題と解答/聞き取れなかった箇所 ▼ Python ── JSON を検証し、共有の保存先に置く ▼ Google Apps Script ── 学校の書式の Google ドキュメントを作る ▼ 【担当の教員が直して承認】 ▼ Google Classroom で配布(教員が行う)
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Gemini API(録画と板書の写真からの要点・用語・確認問題の作成) | Claude API(録画は文字起こしにしてから渡す)、OpenAI API |
| 連携 | Python(google-genai。録画のアップロード、呼び出し、JSONの検証) | Google Apps Script(録画が小さい場合に限る) |
| 連携 | Google Apps Script(ドキュメントの作成と承認の管理) | Make |
| 連携 | Google スプレッドシート(授業の一覧と承認の状況) | Microsoft Lists |
| 保管 | Google ドライブ(録画、板書の写真、承認したドキュメント) | Microsoft OneDrive、SharePoint |
| 配布 | Google Classroom(教員が手で配る) | Microsoft Teams の課題、校内の学習の仕組み |
判定の土台は Gemini API の動画の理解です。 録画を渡すと、映像と音声の両方が読まれます。映像は既定で1秒に1コマを取り出し、音声も合わせて扱われ、応答の中で MM:SS の形で時刻を指して答えさせられます。 要点ノートに時刻を付けられるのは、このためです。
録画を渡す方法は3つあり、この構成では Files API を使います。 直接入れる方法は100MB未満の動画に限られ、YouTube の URL を渡す方法は公開の動画に限られ、限定公開も使えないので授業の録画には向きません。Files API は1ファイル2GBまでで、100MB以上や10分以上の動画に勧められています。 アップロードしたファイルは48時間で消え、ダウンロードはできません。原本は校内の保存先にあり、Files API は処理のための一時の置き場です。
Python を使うのは、Apps Script では録画を送れないからです。 Apps Script の外部への送信は1回50MBまでで、50分の授業の録画は大きく超えます。校内のサーバーか総務の端末で、毎晩決まった時刻に Python の処理を動かします。
長さの心配はほとんどありません。 公式の案内では、100万トークンの文脈を持つモデルで、荒い解像度なら3時間、高い解像度なら1時間までの動画を扱えるとされています。トークンは、荒い解像度で1秒あたり約100、高い解像度で約300です。50分の授業なら荒い解像度で約30万トークンに収まります。
03どうやって実装するのか
処理の起点を決める
トリガーは毎晩22時の定時の処理です。 校内のサーバーか総務の端末で、OS の定時の実行の機能から Python の処理を動かします。その日の授業の一覧から「作る」と指定された行を取り出し、1件ずつ処理します。
授業の直後には動かしません。 録画の書き出しと保存先への転送に時間がかかり、録画が保存先に置かれたことを確かめてから処理する必要があるからです。 夜にまとめて動かせば、翌朝の教員の確認に間に合います。
授業の一覧は、毎朝の時間割から作ります。 時間割の書き出しから「日付・時限・教室・教科・担当・単元」の行を作り、出欠の記録から欠席者がいた授業に「候補」の印を付けます。教員は、印の付いた行と、自分で作りたい行の「作る」の欄にチェックを入れます。 チェックの締め切りは21時です。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 授業の録画 | 教室のカメラの mp4。50分前後 | 共有の保存先の授業のフォルダ |
| 板書の写真 | 授業の終わりに撮った1〜3枚 | 同じフォルダ |
| 授業の情報 | 教科、学年、単元、その時間の目標(教員が一覧に書く1行) | 授業の一覧(スプレッドシート) |
| 用語の一覧 | 教科ごとの、教科書の表記にそろえた用語と記号 | 教科会で用意する一覧 |
| 書式 | 学校で決めた要点ノートの見出しと問題の数 | Apps Script の側に持つ |
質を決めるのは、板書の写真と「その時間の目標」の1行です。 録画だけでは、教員の説明の何が中心だったかをAIが選ぶことになります。目標の1行があれば、その目標に沿って要点を選ばせられます。 板書の写真が無ければ、式や図の書き起こしは録画の荒い映像に頼ることになります。
用語の一覧は、表記をそろえるために持ちます。 「アボガドロ定数」か「アボガドロ数」か、教科書の表記と違う言葉で要点が書かれると、生徒が教科書と照らすときに迷います。
生徒の名簿は渡しません。 要点ノートに生徒の名前は要りません。録画の中で生徒の名前が呼ばれても、出力に書かないよう指示します。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 録画 | 共有の保存先。日付・時限・教室のファイル名で引く | Files API へアップロードして渡す |
| 板書の写真 | 同じフォルダの画像 | 指示と一緒に画像として渡す |
| 授業の情報 | 授業の一覧の行 | 指示に差し込む |
| 用語の一覧 | 教科の一覧 | 指示に差し込む |
録画は Files API にアップロードし、処理が終わるのを待ってから呼び出します。 公式の例でも、アップロードしたファイルの状態が ACTIVE になるまで数秒おきに確かめてから使っています。ACTIVE になる前に呼ぶと失敗します。
板書の写真は画像として別に渡します。 1回の呼び出しの入力に、録画のファイルと画像を並べられます。板書の写真は、録画の映像より細かく読めるので、式と図の書き起こしは写真を優先させます。
夜間の処理の流れは、次のとおりです。
for 授業 in 授業の一覧で「作る」かつ「未処理」の行:
録画 = 保存先から 授業.日付_時限_教室.mp4 を探す
なければ 一覧に「録画なし」と書いて次へ
f = Files API にアップロード
f の状態が ACTIVE になるまで5秒おきに確かめる(30分で打ち切り)
写真 = 授業のフォルダの画像(最大3枚)
応答 = Gemini API を呼ぶ(入力:録画 f + 写真 + 指示、
録画の開始と終了の秒数、response_format にスキーマ)
JSON を検証し、保存先の「下書き」フォルダに授業IDの名前で置く
Files API の f を削除する
一覧に「下書きあり」と書く
最後から2行目の削除を忘れないでください。 48時間で消えるとはいえ、生徒が写る録画を必要以上に外部に置かないためです。失敗したときも、例外の処理の中で削除します。
授業の前後の休み時間は切り落とします。 動画の処理の設定で、開始と終了の位置を秒で指定できます。チャイムの時刻から、授業の始まりと終わりの秒数を決めて渡します。 休み時間の雑談が要点に入るのを防ぎ、トークンも減ります。
AIへ渡す前に整形する
- ファイルの確認 … 録画が mp4 で、時間が授業の長さに近いことを確かめます。途中で切れた録画は「録画不完全」で止めます
- 板書の写真の確認 … 形式が PNG、JPEG、WEBP、HEIC、HEIF のどれかであることを確かめます。写真が無い授業は、「板書の写真なし」として録画だけで進めます
- 切り出しの位置 … 時間割のチャイムの時刻から、開始と終了の秒数を決めます
- 用語の一覧の選択 … 教科と学年で、渡す用語を絞ります
- アップロードと待機 … Files API にアップロードし、使える状態になるまで待ちます
1番目を省かないでください。 カメラの容量の不足や停電で録画が途中で切れると、後半の説明が無いまま、前半だけの要点ノートができます。 そのまま配ると、生徒は後半の内容を知らずに終わります。
media_resolution は low を指定します。 公式の案内では、高い解像度は細かい文字や小さな部分を読む力を上げるとされていますが、1秒あたりのトークンが約3倍になります。細かい文字は板書の写真で補うので、録画は流れと説明を読むことに使います。
AIに処理させる
させるのは、要点、用語、板書の書き起こし、確認問題、聞き取れなかった箇所の5つです。
| 作るもの | 中身 | 判断できないときの扱い |
|---|---|---|
| 要点 | その時間の目標に沿った3〜6個の要点。それぞれに説明の始まりの時刻 | 時刻が分からなければ空にし、推測しない |
| 用語 | 授業で新しく出た用語と、教員の説明の言い換え | 用語の一覧の表記にそろえる |
| 板書の書き起こし | 式、図の説明、箇条書き | 写真で読めない箇所は「読めない」と書く |
| 確認問題 | 3問。要点ごとに、説明された内容を確かめる問題と解答と解説 | 説明されていない内容から作らない |
| 聞き取れなかった箇所 | 音声が不明瞭、生徒の声と重なった箇所の時刻 | そのまま列挙する |
確認問題は、教員の説明の範囲から作らせます。 授業で触れていない発展の内容から問題を作ると、欠席した生徒は録画を見ても解けません。 各問題に、根拠にした説明の時刻を付けさせます。
| させないこと | 理由 |
|---|---|
| 教科書や問題集の文章・問題の書き写し | 著作物の複製になる。説明を確かめる問題を新しく作る |
| 説明されていない内容の補足 | 教員の授業の要点ではなくなる |
| 生徒の名前や発言の記録 | 要点ノートに要らない個人の情報 |
| 評価や成績に関わる問題の作成 | 定期考査や小テストは教員が作る |
| 教員の説明の誤りの指摘 | 判断は教員が確認の段階で行う |
1行目は、学校と塾で事情が違います。 著作権法第35条は、学校その他の教育機関で、授業の過程で使うために必要な限度で公表された著作物を複製・公衆送信できるとしていますが、営利を目的として設置されているものは除かれています。 塾ではこの規定に頼れません。学校でも、要点ノートに教科書の文章を長く写すことはさせません。
指示内容を固定する
あなたは中学校・高等学校の教員の補助として、授業の録画から、
欠席した生徒と復習したい生徒のための要点ノートの下書きを作る立場です。
渡すもの:授業の録画、板書の写真、授業の情報、用語の一覧。
【授業の情報】{subject}/{grade}/単元:{unit}
【この時間の目標】{goal}
【用語の一覧】{terms}
【作るもの】
1. 要点(3〜6個)
- この時間の目標に沿って選んでください。
- 各要点に、録画の中でその説明が始まる時刻を MM:SS で付けてください。
- 時刻が分からない場合は空にしてください。推測で付けないでください。
2. 用語(授業で新しく出たもの)
- 用語の一覧にある表記にそろえてください。
3. 板書の書き起こし
- 板書の写真を優先して読んでください。読めない箇所は「読めない」と書いてください。
- 式は、写真にあるとおりに書き写してください。
4. 確認問題(3問)
- 授業で説明された内容だけから作ってください。
- 各問題に、解答、短い解説、根拠にした説明の時刻を付けてください。
5. 聞き取れなかった箇所
- 音声が不明瞭な箇所、生徒の声と重なった箇所の時刻を挙げてください。
【厳守事項】
- 授業で説明されていない内容を、補足として書き足さないでください。
- 教科書や問題集の文章・問題を、そのまま書き写さないでください。
確認問題は、説明を確かめるための問題を新しく作ってください。
- 生徒の名前、生徒の発言の内容は書かないでください。
- 教員の説明が誤っていると思っても、直さずにそのまま要点にしてください。
気になる箇所は check_points に時刻と理由を書いてください。
- 授業の前後の休み時間の会話は使わないでください。
「教員の説明が誤っていると思っても直さない」を入れているのは、AIの「親切」を止めるためです。 何も言わないと、AIは自分の知識で説明を「正しく」書き換えます。直された要点は、もう教員の授業ではありません。 気になる箇所は印を付けて教員に返させ、直すかどうかは教員が決めます。
「時刻が分からなければ空」も同じです。 それらしい時刻が付いていると、生徒はそこから録画を見ます。外れた時刻は、時刻が無いより生徒を迷わせます。
出力形式を固定する
次の形のJSONで受け取ります。 Gemini API の構造化出力では、response_format に mime_type: "application/json" と JSON Schema を渡します。key_points は minItems: 3・maxItems: 6、questions は3問に固定します。公式の案内では、値はアプリケーションの側で必ず検証するようにとされています。
{
"lesson_id": "",
"key_points": [ { "point": "", "start": "MM:SS" } ],
"terms": [ { "term": "", "explanation": "" } ],
"board": [ { "content": "", "readable": true } ],
"questions": [ { "question": "", "answer": "", "explanation": "", "source": "MM:SS" } ],
"unclear": [ { "at": "MM:SS", "reason": "" } ],
"check_points": [ { "at": "MM:SS", "reason": "" } ]
}
1つ目の理由は、Python の側で検証できることです。
| 確かめること | 合わないときの扱い |
|---|---|
時刻が MM:SS の形で、録画の長さの中にある | その時刻を空にする |
確認問題の source がある | 無い問題に「根拠なし」の印を付ける |
| 要点の数が3〜6 | 合わなければ「要確認」で教員に回す |
| 用語が用語の一覧の表記と合う | 合わないものに印を付ける |
2つ目は、学校の書式のドキュメントに流し込めることです。 Apps Script が JSON を読み、見出し、要点(時刻は録画のリンクにする)、用語、板書、確認問題、解答を書式どおりに並べます。教員が直すのはドキュメントの上で、JSON を触る必要はありません。
3つ目は、check_points と unclear を教員の確認の入り口にできることです。 ドキュメントの冒頭にこの2つを並べ、教員は先にそこを見ます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 共有の保存先 | Python から読み取り | 録画と板書の写真を取り出す |
| Files API | google-genai からアップロード | 録画を一時的に置く |
| Gemini API | google-genai から呼び出し | 録画と写真から下書きを作る |
| 授業の一覧 | スプレッドシート | 「作る」の指定と、処理の状況、承認の状況 |
| Google ドキュメント | Apps Script で作成 | 学校の書式の要点ノート |
| Google Classroom | 教員が手で配る | 承認したドキュメントを欠席した生徒とクラスへ |
Google Classroom への配布は自動にしません。 第5章で書いたとおり、配る先は教員が決めます。配布の操作は1件1分程度で、自動にする利点より、誤配の危険のほうが大きいからです。
承認したドキュメントは、単元ごとのフォルダに移します。 翌年に同じ単元を教える教員が、前の年の要点ノートと録画を探せるようにします。
人が確認する
翌朝、担当の教員がドキュメントを開きます。 確認の順番は決めておきます。
check_pointsとunclearを見る … 説明の誤りの疑いや、聞き取れなかった箇所です。録画のその時刻を開いて確かめます- 要点を読む … 目標に沿っているか、説明が取り違えられていないかを見ます
- 確認問題を解く … 教員が自分で解き、解答と解説が合っているかを確かめます。根拠の時刻を開き、説明した内容で解けるかを見ます
- 板書を見る … 「読めない」の箇所を埋めます
- 承認する … 一覧の「承認」にチェックを入れます
3番目を省かないでください。 AIの作る問題は、解答が誤っていたり、説明していない前提が要ったりすることがあります。誤った解答の付いた問題は、欠席した生徒に誤りを覚えさせます。
直した箇所には、ドキュメントの提案の機能を使うと後で数えられます。 教員が要点を書き換えた、問題を差し替えた、時刻を直した、のどれが多いかが分かれば、指示のどこを直すべきかがはっきりします。 慣れてきたら、提案のまま承認する運用でも構いません。
目標は1件9分です。 check_points と unclear が少ない授業なら数分で済み、多い授業は録画を何か所も開くので長くなります。
例外に対処する
| 起きること | 対応 |
|---|---|
| 録画が途中で切れている | 「録画不完全」で止める。教員に知らせ、前半だけで作るかを決めてもらう |
| 録画が保存先に無い | 「録画なし」で止める。翌晩に再度確かめる |
| 板書の写真が無い | 録画だけで進め、ドキュメントの冒頭に「板書の写真なし」と書く |
| 実験・実技・話し合いが中心の授業 | 要点が少なくなる。一覧で「作らない」を勧める印を付ける |
| 音声が小さく聞き取れない | unclear が多ければ、教員に「要点ノートは手で」と知らせる |
| アップロードや処理の失敗 | 翌晩に再度処理する。2晩続けて失敗したら総務に知らせる |
| 時刻が録画の長さを超える | Python の検証でその時刻を空にする |
| 生徒の名前が出力に入った | Python で名簿と照らして伏せ字にし、教員に知らせる |
| 2コマ続きの授業で録画が1本 | 授業の一覧に「続き」の印を持たせ、1件として扱う。100分なら荒い解像度で収まる |
| 教員が承認の前に出張・休み | 承認が2日ないものを教科主任に回す。代わりに承認するのは同じ教科の教員だけ |
| 録画の時刻と実際の時刻がずれる | カメラの時計がずれている。要点の時刻は録画の中の位置なので影響しないが、切り出しの秒数がずれる。月1回カメラの時計を合わせる |
5行目は、教室のマイクの問題です。 教室の後ろのカメラだけで録ると、教員が黒板を向いて話した声が拾えません。 教卓にマイクを置くと、要点の質が大きく変わります。
記録を残す
- 録画と板書の写真の原本(校内の保存先。保存の期間は学校の規程に合わせる)
- 渡した指示の全文と、返ってきたJSONの全文
- AIの下書きのドキュメントと、教員が承認した版(ドキュメントの版の履歴で差が分かる)
- 承認した教員と日時、配布した先
- 教科ごとの
check_pointsとunclearの数の推移
下書きと承認した版の差を残すのは、指示を直すためです。 教員が毎回同じ種類の直しをしているなら、指示か用語の一覧に足すべきことがあります。
Files API へのアップロードと削除の記録も残します。 授業IDごとに、アップロードした日時、削除した日時、削除に失敗したかどうかを一覧に書きます。削除に失敗した行が残っていれば、翌朝に総務が手で削除します。 生徒が写る録画が、いつからいつまで外部にあったかを後から説明できるようにするためです。
04実装レベルの3段階
半自動化で、1件30分が15分程度になります。 録画を探す時間は消えますが、JSON を書式に直す作業が残ります。本格構成で9分になり、この段階が本記事の想定です。 段階を飛ばさないでください。 半自動化を1か月回すと、どの教科で unclear が多いか、どの教室のマイクが弱いかが分かります。そこを直してから書式を固めるほうが、教員の直しが減ります。
05工数削減シミュレーション
導入後 200件 × 9分 ÷ 60 = 30 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 授業を教室のカメラで録画しており、欠席した生徒や復習したい生徒のために、教員が要点のまとめや確認の問題を個別に作っている私立の中学校・高等学校。録画を校内の共有の保存先に毎日置けて、板書を授業の終わりに撮る運用ができる場合。映像の授業を持たない個別指導の塾で、集団の授業だけを録画している場合にも当てはまります。
- 録画をしておらず、板書と教員の記憶だけで授業が残っている場合。授業の大半が生徒どうしの話し合いや実技で、教員の説明が中心でない場合。生徒が自分で録画を見て質問できるチャットのような、生徒が直接AIを使う仕組みを作りたい場合(利用規約の確認が別に要ります)。なお、評価や成績に関わる問題の作成は、この構成では扱いません。
07最小構成で試す方法
- 自分の授業の録画を1本選ぶ(50分以内で、教員の説明が中心のもの)
- 授業の終わりに板書を撮っておく
- 業務で契約している Gemini の画面に、録画と板書の写真を添え、第7章の指示を貼り付ける
- 出てきた要点ノートを、自分の記憶と録画で確かめる
まずは教員1人で、5本を試してください。
| 出てきた内容 | 判断 |
|---|---|
| 要点と時刻がおおむね合っている | 夜間の処理とドキュメントの作成に進む |
| 時刻がずれる | 授業の前後の休み時間を切り落として試し直す |
| 説明していない内容が混ざる | 指示の書き方で直る。構成は有効 |
| 声が聞き取れず要点が薄い | マイクの問題が先。 AIの問題ではない |
4行目が出たら、教卓にマイクを置いて1本撮り直してください。 録画の音声がよくなると、要点の質がどれだけ変わるかが分かります。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 説明を「正しく」書き換える | 直さずに check_points に書かせる |
| それらしい時刻が付く | 分からなければ空。Python で録画の長さを超える時刻を消す |
| 黒板の文字が読めない | 録画は荒い解像度。板書の写真を別に渡す |
| 教科書の文章や問題を写す | 指示で禁じる。塾は著作権法第35条の対象外 |
| Apps Script で録画を送れない | 外部への送信は1回50MBまで。Python で Files API に送る |
| アップロード直後に呼んで失敗する | 処理が終わって使える状態になってから呼ぶ |
| 休み時間の雑談が要点に入る | 開始と終了の秒数で切り落とす |
| 声が聞き取れない | 教卓にマイク。 後ろのカメラだけで録らない |
| 生徒の名前が出力に入る | 指示で禁じ、名簿と照らして伏せる |
| 教員が流し読みで承認する | 確認問題を解く手順を書式に入れる |
| 自動で全員に配る | 配布は教員が手で行う |
上の2行が、この構成の失敗のほとんどです。 どちらも、AIが「それらしく整える」方向に寄ることから来ます。 説明を書き換えず、分からない時刻を空にすることで、要点ノートが教員の授業のまま残ります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 授業の録画(生徒の顔と声が写り込みます)、板書の写真、授業の情報です。生徒の名簿や成績は扱いません。
- 生徒が直接使う仕組みにしない … Gemini API の利用規約では、利用者は18歳以上である必要があり、18歳未満に向けた、またはその人が使う見込みのあるサービスの一部としてAPIを使わないとされています。この構成では、APIを使うのは教員と総務で、生徒が受け取るのは教員が承認したドキュメントだけです。 生徒が録画について質問できるチャットのような仕組みを作る場合は、利用規約と学校の契約を別に確かめてください
- 有料の枠で使う … 無料の枠では送った内容が製品の改善に使われ、人が読むことがあるとされています。有料の枠では製品の改善に使わず、禁止事項の違反を見つけるために限った期間だけ記録するとされています。生徒が写る録画は、有料の枠でだけ扱います
- 録画の一時の置き場を意識する … Files API のファイルは48時間で消えますが、その間は外部にあります。処理が終わったら削除する処理を入れます
- 著作物の扱い … 著作権法第35条は営利を目的として設置された教育機関を除いています。塾では、教科書や問題集の内容を要点ノートに写さない運用を徹底し、配る資料の扱いを契約先の教材会社の条件で確かめてください
- 録画の撮り方を見直す … 生徒の顔が大きく写らない位置にカメラを置き、録画することを生徒と保護者に伝えます
誤りが起きた場合のリスクは、誤った説明や解答が生徒に届くことです。 教員の確認で問題を解く手順を入れ、配布を教員の手に残すことで防ぎます。
10まず何から始めるか
1週目:教員1人で5本を試す
説明が中心の授業の録画を5本選び、板書を撮り、業務で契約している Gemini の画面で要点ノートを作らせます。時刻が合っているか、説明を書き換えていないかを最優先で見ます。
2週目:書式と用語の一覧を決める
要点ノートの見出し、確認問題の数、解答の書き方を教科会で決めます。用語の一覧を、まず1教科分だけ作ります。
3週目:マイクと板書の運用をそろえる
録画の音声が弱い教室に教卓のマイクを置きます。授業の終わりに板書を撮って授業のフォルダに入れる手順を、試す教科の教員でそろえます。
4週目:夜間の処理をつなぐ
Python で録画を Files API に送り、JSON を保存先に置くところまで作ります。この時点では書式のドキュメントを作らず、教員が JSON から手で直します。
2か月目: Apps Script で書式のドキュメントを作り、承認の一覧を足します。教科を3つに広げます。3か月目以降: 単元ごとの保存と、欠席者がいた授業の自動の候補を足します。教員の直しの量が落ち着き、翌年の同じ単元で前の年の要点ノートが使われた時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
動画を Files API、直接の入力(100MB未満)、公開の YouTube の URL(非公開・限定公開は不可)で渡せること。アップロードした動画は状態が ACTIVE になるまで待ってから使うこと。高い解像度が細かい文字を読む力を上げること。Files API が100MB以上や10分以上の動画に勧められていること。100万トークンの文脈のモデルで、荒い解像度なら3時間、高い解像度なら1時間までの動画を扱えること。既定で1秒1コマを取り出すこと。音声も扱われること。MM:SS の形で時刻を指せること。トークンが荒い解像度で1秒約100、高い解像度で約300であること。開始と終了の位置を秒で指定して切り出せること。例が /v1beta/interactions を使うこと | Gemini API: Video understanding | 2026-10-07 |
| Files API の1ファイルの上限が2GB、プロジェクトあたり20GBであること。ファイルが48時間保存され、手動でも削除できること。アップロードしたファイルはダウンロードできないこと。リクエスト全体が100MBを超える場合は Files API を使うこと | Gemini API: Files API | 2026-10-07 |
| 対応する画像の形式が PNG、JPEG、WEBP、HEIC、HEIF であること。1回の入力に複数の画像を並べられること | Gemini API: Image understanding | 2026-10-07 |
構造化出力を response_format に mime_type: "application/json" とスキーマを入れて指定すること。minItems・maxItems・required が使えること。値はアプリケーションの側で検証するよう案内されていること | Gemini API: Structured output | 2026-10-07 |
| 利用者が18歳以上である必要があり、18歳未満に向けた、またはその人が使う見込みのあるサービスの一部としてAPIを使わないこと。無料の枠では送った内容が製品の改善に使われ、人が読むことがあること。有料の枠では製品の改善に使わず、禁止事項の違反を見つけるために限った期間だけ記録すること | Gemini API Additional Terms of Service | 2026-10-07 |
| Apps Script の外部への送信(URL Fetch)が1回50MBまでであること | Google Apps Script: Quotas for Google Services | 2026-10-07 |
| 著作権法第35条第1項で、学校その他の教育機関(営利を目的として設置されているものを除く)で、授業の過程で使うために必要な限度で公表された著作物を複製・公衆送信できること。著作権者の利益を不当に害する場合は除かれること。同条第2項で公衆送信を行う場合は補償金を支払うこと(法令APIで条文の原文を取得して確認) | e-Gov法令検索: 著作権法(法令API) | 2026-10-07 |
録画の扱い、生徒と保護者への説明、教材の著作物の扱いは、学校の規程と教材の契約の条件に合わせて決めてください。 本記事は上の公開情報と条文で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0664)についてのご相談はこちらから。
