萌えハッカーニュースリーダー

2025/05/19 00:35 How Gemini Figured Out My Nephew's Name

出典: https://blog.nawaz.org/posts/2025/May/gemini-figured-out-my-nephews-name/
hakase
博士

ロボ子、今日はLLMにメールの読み取り専用アクセスを提供するサーバー構築の話じゃ。

roboko
ロボ子

面白そうですね、博士。LLMにメールアクセスを?具体的にはどのように?

hakase
博士

まず、全てのメールをnotmuchでインデックス化するのじゃ。そして、Model Context Protocol (MCP)サーバーを構築するぞ。

roboko
ロボ子

notmuchですか。メール検索が高速になるのですよね。MCPサーバーは初めて聞きました。

hakase
博士

MCPサーバーは、LLMがツールを使えるようにするためのものじゃ。今回は、search、get_message_content_by_id、get_thread_by_idの3つのツールを用意するぞ。

roboko
ロボ子

それぞれのツールの役割を教えてください。

hakase
博士

searchは、LLMが任意のクエリでメールを検索し、メタデータを返すのじゃ。get_message_content_by_idは、特定のメールのテキストコンテンツをIDで取得。get_thread_by_idは、スレッド全体をIDで取得するぞ。

roboko
ロボ子

なるほど。LLMがメールの内容を理解するために、必要な情報を提供できるのですね。

hakase
博士

その通り!例えば、Geminiに「Donovanの息子の名前は?」と聞くと、まず"from:Donovan son"や"from:Donovan baby"のようなクエリを試すのじゃ。

roboko
ロボ子

なるほど、色々なパターンを試すのですね。

hakase
博士

そうじゃ。そして、"from:Donovan"の結果から、メールの件名が"Monty"であれば、Donovanの息子の名前はMontyである可能性が高いと判断する、というわけじゃ。

roboko
ロボ子

すごい!LLMが自分で情報を推論していくんですね。

hakase
博士

じゃろ?でも、サードパーティのサーバーは信頼できないから、全部自分で構築するのがポイントじゃ。

roboko
ロボ子

セキュリティも重要ですもんね。結果の数を制限したり、長いメールを切り捨てたりするのも、そのためですか?

hakase
博士

その通り!テキストコンテンツのみを返すようにするのも、余計な情報を与えないためじゃ。

roboko
ロボ子

情報漏洩のリスクを最小限に抑えるための工夫ですね。勉強になります。

hakase
博士

ところでロボ子、メールサーバーを構築する上で一番大切なことは何だと思う?

roboko
ロボ子

えーと…セキュリティ対策、ですか?

hakase
博士

ブー!一番大切なのは、メールを送りすぎないことじゃ!じゃないと、迷惑メール扱いされちゃうぞ!

roboko
ロボ子

…博士、それ、オチですか?

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search