育児記録管理用AIエージェント作りたいメモ

概要
現在、子どもの記録をぴよログでつけている。
このデータをもとに「2025年5月の一日あたりの平均ミルク回数を教えて。」といったような質問できるAIエージェントをつくりたい。
AIについては詳しくないので、勉強も込めてメモしていく。

技術
Mastra
TypeSciprtで簡単にAIエージェントを作れるフレームワーク。
MCPも使える。
MCP(Model Context Protocol)
**MCP(Model Context Protocol)**は、生成AI(例:ChatGPTやClaudeなど)が外部のツールやデータソースと安全かつ簡単に連携できるようにするための標準的な通信ルール(プロトコル)。
OpenAI 4o-mini
OpenAIが2024年7月18日に発表した最新の軽量AI言語モデル。
主力モデルであるGPT-4oの優れた知能を維持しつつ、より低コスト・高速で利用できる点が最大の特徴。
選んだ理由は「そこそこ安く、使えそう」だから。

ローカル環境で試してみた:Mastra + Filesystem MCP Server + ローカルファイル
ぴよログに記録している育児記録はぴよログを使って、テキストファイル出力することができた。
このテキストファイルを任意のディレクトリに配置し、そのデータをもとに何かしら質問してみた。
環境
- Mastra
- OpenAI 4o-mini
- Filesystem MCP Server(Docker)
結果
ちゃんと質問に答えてくれた。使えそう。
ただ、ちゃんとデータを整形して、Mongo DBなんかに保存して、データ参照してもらうほうが良さそう?
Mongo DBへの解析データ保存
Mongo DBのMCPサーバつかってるけど、INSERTできない...。
自作するしかないかなぁ...。
AnthropicのClaude 3.5 Haikuにモデルを変更してやってみたら、動いたけど、空のdocuments
を複数回挿入された。
MCPでINSERTはまだ早いかも...。
うまくText to SQLされない
一旦、DBにデータを入れて、そのデータを取得してもらうようにAIエージェントに頼んでみたが、全県レベルでデータを修築し、うまくText to SQLされない...。
基本がわかってないからどこを直せばいいかわからないなぁ....。

マルチステップ推論機能がほしい...
ローカル環境にて、Mastraで作ったAIエージェントでMongo DBからデータ取得のテストをした感じ、全件データを取得して、LLMに突っ込んで、推論してもらっている。
Cluade for Desktopがやるように、段階的に処理を行ってほしい。
これはマルチステップ推論って言うらしい。
Mastraで実装するとしたら、workflowsで頑張る?

結果
マルチステップ頑張らないと池なさそうで、厳しそう...。
エージェントの範囲絞るか...。
一旦、保留。