teacher asking a question to the class
Photo by Max Fischer on Pexels.com

【授業レポート】システム開発(3年) 第46週目

〜生成AI連携の設計入門:便利さを“安全に制御する”考え方〜

第46週目は、いよいよ生成AIをシステムに組み込むための設計入門に入りました。
前週までの「複数API連携・非同期設計」を土台に、
今回は 生成AIならではの特徴とリスクを理解し、どう制御するか を中心に学びました。

テーマは

「生成AIは“賢い部品”ではなく、“振る舞いを管理すべき存在”」

です。


■ 先生の導入:「生成AIはAPIより“予測不能”」

田中先生:「生成AIは便利ですが、
・毎回同じ答えが返るとは限らない
・間違ったことを“それっぽく”言う
・使い方次第で危険にもなる
という特徴があります。
今日は“どう呼ぶか”より“どう管理するか”を考えます。」

APIとの違いとして、先生は次を強調しました。

  • 通常API:決まった入力 → 決まった形式の出力
  • 生成AI:文章入力 → 確率的・多様な出力

■ 今日のゴール

  1. 生成AIの特性(強み・弱み)を理解する
  2. 生成AIを直接UIから呼ばない理由を理解する
  3. 生成AI連携の基本アーキテクチャを設計できる
  4. 「やってはいけない使い方」を明確にする

■ 実習①:生成AIで“起きがちな問題”を知る

先生は実例ベースで、生成AIの失敗パターンを紹介しました。

よくある問題

  • 事実でない内容を断定する
  • 指示していない内容まで勝手に補完する
  • 不適切・曖昧な表現を出す
  • 長さや形式が毎回バラバラ
  • 入力次第で想定外の出力になる

生徒A:「APIより“人間っぽい分、信用しすぎると危ない”」


■ 実習②:生成AIを使うユースケースを整理する

次に、「生成AIを何のために使うか」を明確にするワークを実施。

OKな使い方(例)

  • 文章の要約
  • 定型文の言い換え
  • アイデアのたたき台
  • ユーザー入力の補助説明

NGになりやすい使い方(要注意)

  • 正解が1つしかない判断
  • 金額・法律・医療などの断定
  • そのままユーザーに信じさせる回答

生徒B:「“決定”じゃなくて“補助”として使うのが基本なんだ」


■ 実習③:生成AI連携の基本アーキテクチャ

2年生・3年生で学んだ設計を活かし、
生成AIを組み込む基本構造を整理しました。

UI
 ↓
Service(判断・制御)
 ↓
AI Client
 ↓
生成AI API

設計上の重要ポイント

  • UIから直接AIを呼ばない
  • Service層で
    • 入力チェック
    • プロンプト整形
    • 出力チェック
    • フォールバック判断
  • AIは「答える人」ではなく「素材生成役」

生徒C:「API連携と同じ形だけど、チェックが多い!」


■ 実習④:プロンプトは“設計書”

生成AIでは、**プロンプト(指示文)**が結果を大きく左右します。

先生は次のように説明しました。

プロンプト =
人に仕事を頼むときの「依頼書」

良いプロンプトの要素

  • 役割を指定する
  • 出力形式を指定する
  • してはいけないことを書く
  • 文量・口調を制御する

例(概念)

あなたは図書館システムの補助AIです。
以下の文章を100字以内で要約してください。
事実でない内容は追加しないでください。

生徒D:「曖昧に頼むと、曖昧な答えが返るんだね」


■ 実習⑤:生成AI失敗時の設計を考える

API以上に重要なのが失敗前提の設計

想定すべき失敗

  • 返答が来ない
  • 意味不明な文章
  • 長すぎる/短すぎる
  • 不適切な表現

基本方針

  • AI結果は必ず検証する
  • そのまま表示しない
  • ダメなら
    • 固定文を出す
    • AIなしの動作に戻す

生徒E:「“AIがダメでもアプリは動く”が大事なんだ」


■ クラス全体の気づき

  • 生成AIは“万能”ではない
  • 制御しないとUXも安全性も下がる
  • Service層の設計が一番重要
  • AIを使っていることをユーザーに明示する配慮も必要

■ 先生のまとめのひとこと

「生成AIは“考える機械”ではありません。
確率的に文章を作る道具です。

だからこそ、
・どこで使うか
・どこまで信じるか
・ダメだったらどうするか
を人間側が設計する必要があります。

今日の内容は、
“生成AI時代のエンジニアの基本姿勢”そのものです。」


■ 宿題(次週に向けて)

  1. 生成AIを使った ユースケース案を1つ考える
  2. そのユースケースで
    • AIに任せる部分
    • 人・プログラムが判断する部分
      を分けて書く
  3. AI出力が失敗した場合の フォールバック案 を考える

■ 来週の予告:生成AIを実際に呼び出す(安全なハンズオン)

次週は、
生成AI APIを実際に呼び出す実装に挑戦します。
ただし、

  • 出力検証
  • 表示制御
  • フォールバック
    まで含めた「安全な組み込み」がテーマです。

第46週目は、
生成AIを「使う前に考える」視点を身につける重要な回でした。
生徒たちは、便利さに流されず、
設計でAIをコントロールする力を着実に身につけています。

投稿者 greeden

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)