Locker.aiは、遺失物の届出、保管、検索、本人確認、返還を、対話AIとスマートロッカーでつなぐチーム開発です。茨城工業高等専門学校のチーム「明日のDCON楽しみだね」として開発し、情報処理学会 インタラクション2024での発表を経て、第6回全国高等専門学校ディープラーニングコンテスト2025(以下、DCON2025)本選に出場しました。
背景
従来の遺失物管理では、管理者が特徴を聞き取り、保管物と照合し、受取人が本当の所有者かを判断します。業務負担に加え、特徴の表現と本人確認が担当者の判断に依存することが課題でした。
Locker.aiでは、拾得者がWebから遺失物を登録してロッカーへ預け、探している人が対話形式で候補を絞り込み、認証後に対象ロッカーを開ける流れを一つのシステムとして設計しました。
チーム全体のシステム
情報処理学会 インタラクション2024の論文では、システムをウェブサイト、サーバー、スマートロッカーに分けています。ウェブサイトはNext.js、サーバーはNestJSで実装し、認証、ストレージ、データベースにはSupabaseを利用しました。ウェブとサーバーの通信にはGraphQLを使っています。
ロッカー側はRaspberry Pi、Mbed、指紋認証モジュールなどで構成しました。画像と言語から遺失物の特徴を扱うVLMと、チームで開発したニューラルネットワークを組み合わせ、届出時の特徴記述と返還時の照合を支援します。
これはチーム全体の成果です。ハードウェア、機械学習、事業設計、プレゼンテーションを含むすべてを私一人で担当したものではありません。
本人の担当
私は主にWebフロントエンドとAPI接続、対話UIを担当しました。公開リポジトリのコミット履歴から確認できる範囲には、次の実装が含まれます。
- 遺失物を自然言語で探す検索チャットのUIとツール呼び出し
- チャットを処理するAPIエンドポイント
- 類似する遺失物の候補確率を返す問い合わせ処理
- 応答中も入力できる対話操作と、ツール失敗時の表示
- QRコードを使った認証ダイアログ
- 認証状態を反映するヘッダーと導線
- ロッカーの設置場所を伝える画面表示
- WebとAPIをまたぐ国際化、および関連するGraphQL mutationの更新
- データベースmigrationの修正
チームのロッカー制御や認証フローと接続するため、画面単体ではなく、GraphQL、データベース、ロッカーの状態遷移を意識して実装しました。
設計判断
検索を一度のフォーム送信で終わらせない
遺失物の説明は「黒い財布」のように曖昧になりやすく、最初から必要な特徴がすべて入力されるとは限りません。そのため、検索結果を固定的に返すだけでなく、対話を続けながら候補を絞るUIにしました。候補の類似度をAPIから受け取り、画面側の会話と検索処理を接続しています。
認証と受け取りの状態を画面に出す
検索結果が見つかることと、ロッカーを開けて受け取れることは別の状態です。QRコード認証、ログイン状態、対象ロッカーの場所をそれぞれ画面上で確認できるようにし、Webから物理的な受け取りへ移る手順を分けました。
AIの判定を安全性そのものとみなさない
論文の評価では、VLMが生成した特徴記述は全体として人手記述との差が小さい一方、劣る事例も報告されており、追加検証が必要とされています。誤検索、別人への誤返還、候補情報の過剰な開示は、AIを追加しただけでは解消しません。候補提示と本人確認を分離し、どの情報をいつ見せるかを継続課題として扱いました。
成果
2024年3月に情報処理学会 インタラクション2024で論文発表とデモンストレーションを行いました。その後もウェブ、API、対話UI、国際化などを更新し、2025年5月のDCON2025本選へ進みました。
DCON2025には42高専・95チームが応募し、Locker.aiは最終審査で5位となりました。あわせて、トピー工業賞、日立産業制御ソリューションズ賞、QUICK賞の3賞を受賞しています。順位と受賞はチーム全体の成果であり、私の担当成果とは分けて記載しています。
