記事検索

検索ワードを入力してください。
Sky Tech Blog
製品に​AI機能を​組み込むときに​押さえたい​4つの​ステップ

製品に​AI機能を​組み込むときに​押さえたい​4つの​ステップ

SKYMENU Mobileのセーフカメラ機能を例に、製品へAI機能を組み込む際の基本的な流れ(AIモデル・サービスの選定、設計、検証、総合評価)を解説します。精度、速度、コストを考慮したモデル選定やプロンプト設計など、実運用に向けたポイントを紹介します。

はじめに

AIを製品に組み込む際は、 どのAIモデルやAIサービスを採用するか、何をインプットとして与えるか、どのように検証・評価するか を考える必要があります。

今回は、 SKYMENU Mobile のセーフカメラ機能 より、製品へAI機能を組み込む流れについての一例をご紹介します。

セーフカメラ機能には、学校現場で撮影された写真の内容をAIが解析し、撮影データに不適切な内容が含まれていないか検知・判定する機能 (以降、セーフカメラAI機能) が搭載されています。

1. AIモデル・サービスの​選定

最初に行うのは、 要件に合うAIモデルやAIサービスを選定すること です。
ただし、最初から特定のモデルやサービスを前提に決めるのではなく、候補となるモデルやサービスを調査し、精度・速度・コストなどの観点で比較評価した上で、採用するものを選定します。

AI機能の内容によっては、テキストや画像や音声など、扱う入力形式に応じた仕組みが必要になります。

セーフカメラAI機能の場合、写真の内容を解析するため、画像を扱える仕組みが求められました。
その候補として、Azure AI Content Safetyのような画像モデレーションに特化したサービスや、画像の内容を解析し、JSON など後続処理しやすい形式で結果を出力できるビジョン対応チャットモデルなどがあります。

今回は、学校現場での利用シーンや運用ルールに沿った確認が求められるため、プロンプトによって判定基準や出力形式を調整しやすいビジョン対応チャットモデルを候補としました。
そこから、次のような観点で複数あるモデルの比較評価を行い、要件に合うものを選定しました。

  • 精度
    判定基準に照らして、期待に近い結果を返せるか
  • 速度
    製品の非機能要件を満たす応答時間で処理できるか
  • コスト
    継続運用できる料金体系であるか
  • デプロイ種別
    利用可能なリージョン、デプロイ方式、クォータが製品要件に合うか
  • 提供期間
    利用終了時の影響や、後継モデルへの移行可能性を見込めるか

特に、 精度 と 速度 は実際に試して見極めることが重要です。
単に「高性能なモデル」を選ぶのではなく、 必要な精度を満たしながら、製品として現実的に運用できるか という観点で判断する必要があります。

2. 設計

AIモデルやAIサービスを選定したあとに重要になるのが、 AIに何をどう渡すか という設計です。
採用するモデルやサービスによって設計の観点は変わりますが、 セーフカメラAI機能では、ビジョン対応チャットモデルを使用したため、主に パラメータ設計 と プロンプト設計 がポイントになります。

2-1. パラメータ設計

一般的に、AIモデルやサービスごとに動作を調整するためのパラメータが用意されています。
このパラメータを調整することによって、処理速度、コスト、出力の安定性などが変わる場合があります。

パラメータの例として、ビジョン対応チャットモデルの場合は、画像入力時に detail を指定できます。

detail パラメータについて
auto setting: 既定の設定。 モデルは、画像入力のサイズに基づいて、低または高を決定します。
low setting: モデルは "高解像度" モードをアクティブにせず、代わりに低解像度の 512 x 512 バージョンを処理するため、応答が速くなり、詳細が重要でないシナリオではトークンの消費量が減少します。
high 設定: モデルは "高い res" モードをアクティブにします。 ここでは、モデルは最初に低解像度の画像を表示し、入力イメージから詳細な 512 x 512 セグメントを生成します。 各セグメントではトークンの予算が 2 倍使用されるため、画像をより詳細に解釈できます。
(出典:https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/gpt-with-vision)

この違いは、そのまま製品設計に関わってきます。
たとえば、ざっくりとした一次判定であればlowでも十分な場合があります。
一方で、「細かな写り込みまで見たい」「見逃しをできるだけ減らしたい」といった要件がある場合は、highを検討する必要があります。

ただし、製品のAI機能となると、単発で良い結果が出ることだけでなく、運用の中で安定して期待に近い判定を返し続けられることも大切になります。
そのため、解像度や入力条件を決める際には、コスト・精度・一貫性をあわせて見ながら、製品として無理のない落としどころを探ることが重要になります。

  • コスト
    想定した運用条件のもとで、トークン消費が過度にならない設定であること
  • 精度
    求める判定を行えるだけの情報を、適切に入力できる設定であること
  • 一貫性
    入力条件の違いによって結果の傾向が大きくぶれないよう設計されていること

2-2. プロンプト設計

ビジョン対応チャットモデルを利用する場合、画像そのものに加えて、 「何を見て、どう返してほしいか」 を指示する必要があります。
この指示内容によって、判定の観点や出力形式が変わるため、プロンプトは重要になります。

たとえば、以下のような点に注意してプロンプトの組み立てを設計します。

  • 判定結果を 「適切 / 要注意(level1) / 要注意(level2) / 要注意(level3)」 のように限定する
  • 出力例を記載し、判定基準の揺れを減らす
  • JSON など 出力形式を固定 し、後続処理しやすくする
  • 判定の目的を明示する

プロンプトの記載においては、上記のように判定結果や出力形式をあらかじめ定義し、具体的に指示することが重要です。
単に「この画像を判定してください」と依頼するよりも、

この画像が学校現場で撮影された写真として、運用ルール上注意が必要かどうかを、指定したラベルのいずれかで返してください。

のように、 目的・基準・出力形式 を明示したほうが、製品の意図に沿った結果になりやすいです。

また、プロンプト設計では、補足情報を増やせばよいというものでもありません。
情報を盛り込みすぎると、かえってコストが増えたり、指示がぼやけたりすることがあります。
そのため、 必要な条件だけを、過不足なく与える ことが重要です。

3. 検証

AIモデル・サービスの選定と設計ができたら、次は 検証 です。
この段階では、AI機能の最終的な精度を評価するのではなく、まずは設計した内容に対して、想定どおりの形式や挙動でAIが動作するかを確認します。
確認観点の例としては、次のようなものがあります。

  • 出力形式の安定性
    あらかじめ定義した形式(ラベルや JSON など)で、安定して結果を返せること
  • 応答時間
    実運用で許容できる時間内に応答が返ること
  • 一貫性
    同じ、または類似した入力に対して、結果の傾向が安定していること
  • 境界ケースへの挙動
    判断が難しい入力に対しても、極端な結果にならず妥当な挙動を示すこと

結果が不十分であれば、設計内容や採用したAIモデル・サービスを見直して調整します。

4. 製品機能と​しての​総合評価

最後に行うのが、 製品機能としての総合評価 です。
ここでの評価は、AIモデル・サービスの選定時に行う比較評価とは異なり、設計・検証を経たAI機能が、実際の利用シーンにおいて期待した水準に達しているかを確認するものです。
また、 期待した振る舞いを、どの程度の安定性と精度で実現できているか を確認することが重要になります。

評価の際には、あらかじめ期待する振る舞いを定義した上で、 AI機能がその振る舞いをどの程度満たしているかを、定量・定性の両面から確認します。

たとえば今回のように、画像の内容をもとに判定を行う機能では、 正解ラベルを付けたサンプルを用意し、次のような観点で評価を行います。

  • 正答率
    全体として、期待した結果を十分な割合で返せていること
  • 適合率
    特定の判定結果において、誤検知が過度に含まれていないこと
  • 再現率
    本来検知・判定すべきケースを、必要な水準で拾えていること
  • 一貫性
    入力が似ている場合でも、実際の利用シーンにおいて問題のない範囲で結果が安定していること

特に、安全性に関わるAI機能では、単純な正答率だけでは不十分なことがあります。
たとえば、注意が必要な画像を見逃すことの影響が大きい場合は、 再現率を重視する 設計が考えられます。
逆に、過剰に厳しく判定しすぎると、現場で使いにくい機能になる可能性もあります。

そのため、AI機能の総合評価では、「どの指標を重視するか」を事前に整理した上で、 出力の揺らぎや期待した振る舞いとの差分が、実際の利用シーンでどのような影響を与えるかも踏まえつつ、 その機能が求める水準に達しているかを判断することが大切です。

まとめ

今回は、セーフカメラAI機能を例に、製品へAI機能を組み込む際の基本的な流れを、次の4つのステップで整理しました。

  1. AIモデル・サービスの選定
    精度・速度・コスト・デプロイ条件・提供期間などの観点で比較評価した上で、要件に合うモデルやサービスを採用する
  2. 設計
    採用したモデルやサービスに応じて、パラメータやプロンプトなどを調整し、求める結果に近づける
  3. 検証
    設計した内容に対して、想定どおりの形式や挙動でAIが動作するかを確認する
  4. 製品機能としての総合評価
    精度指標や利用シーンでの影響を踏まえ、機能として求める水準に達しているかを判断する

今回ご紹介した内容は、 画像を分析して適切性を判定する機能 を例にしたものです。
そのため、評価の観点も精度を中心に説明しましたが、実際には機能の特性によって重視すべき観点は変わります。
たとえば、応答速度やコスト、説明可能性、セキュリティ、運用時の監視しやすさなどが重要になるケースもあります。

また、AI機能の中には、今回のように一定の品質を確保して組み込むものだけでなく、 利用データやフィードバックを踏まえて、 継続的に改善していく運用フェーズ を前提とするものもあります。
どこまでを初期導入で行い、どこから先を改善サイクルとして回していくのかは、機能の目的や運用方針に応じて設計する必要があります。

SKYMENU Mobile のセーフカメラ機能 のように、 現場で安心して使えるAI機能を実現するためには、単にAIを組み込むのではなく、 その機能にとって何を重視すべきかを整理しながら、段階的に形にしていくこと が重要です。


\シェアをお願いします!/
  • X
  • Facebook
  • LINE
キャリア採用募集中!

入社後にスキルアップを目指す若手の方も、ご自身の経験を幅広いフィールドで生かしたいベテランの方も、お一人おひとりの経験に応じたキャリア採用を行っています。

Sky株式会社のソフトウェア開発や製品、採用に関するお問い合わせについては、下記のリンクをご確認ください。
お問い合わせ
ホーム