人の情報を登録、AI が分析してアドバイスをくれる AI アプリ – day 15

30 days AI challenge

本記事は 2026/02/01 ~ 2026/03/02 の間毎日 AI アプリケーション開発(AI を搭載したアプリ開発 or AI を使用した開発)をテーマに 30 days AI challenge を行う 15 日目のブログポストです。

今日のアプリは “あの人何が好きだったっけ”、”あの人このプレゼント喜ぶかな” と悩む際に役に立つデータベース AI 分析アプリです。

アプリ概要

友人や家族等の、その人の好みや周辺情報をデータベースに登録し、そのデータを元に AI が分析してくれます。なんちゃって RAG です(厳密にはプロンプトに結果を埋め込んでいるだけです)。

データの登録時は自由に自然言語で記載できます。記載内容を AI が読み取り自動でカテゴリ分けしてデータベースに登録してくれます。

登録されたデータを閲覧することもできます。

AI にその人に関する質問をすると、データベースから AI が情報を読み取りそのうえで回答してくれます。

技術要素

バックエンドのデータベースはいつもの通り SQL Server (SQL Server 2022)です。人物テーブルとアイテムテーブルの 2 つを用意し、人物 ID を外部キーとしています。

EF LINQ といった ORM は使わず、Microsoft.Data.SqlClient にて INSERT クエリにパラメータを渡しデータを登録しています。

また、ユーザーが入力した自然言語を AI が解析し、必要に応じて複数レコードとして返してくれるので、AI が返した複数レコードを以下のように 1 件ずつデータ登録メソッドを呼び出して登録する動きとしています。

// AIが返した複数レコードを1件ずつ登録
foreach (var entry in entries)
{
    var item = new MemoryItem
    {
        PersonId = selectedPersonId.Value,
        Category = entry.Category,
        Content = entry.Content,
        CreatedAt = DateTime.Now
    };

    await MemoryService.AddMemoryItemAsync(item);
}

終わりに

AI アプリといっても、ただ AI にプロンプトを投げて返ってきた内容をアプリに表示するのでは ChatGPT でよくない?となるだけなので、今回のように別途データ連携や、何らかの工夫をしないと AI アプリ開発の意味が薄まります。最近はそれをいかに実現するかを毎日考えています笑

ありがちな内容ではあるかもですが、今日のアプリも日ごろに思っていた “あったらいいな” を作ってみました。

最後まで閲覧いただきありがとうございました。明日もよろしくお願いします。(今日でチャレンジの折り返し地点!、、てあれ?2 月って 30 日ないな。。今更気づいた。。笑)

コメント

タイトルとURLをコピーしました