LLMさん、私とあなたは前世からの運命的な仲。コンテキストは全部知りたいの... だから、OpenTelemetryでのぞいちゃいますね❤️ by nikkie

YAPC::Fukuoka 2025
トーク(20分)

LLMさん、私とあなたは前世からの運命的な仲。コンテキストは全部知りたいの... だから、OpenTelemetryでのぞいちゃいますね❤️

nikkie ftnext
2

2025年(今年!)2月にOpenAIがdeep research機能を発表しました。
そこからの進展は目覚ましく、商用サービス・OSS問わず様々なdeep researchの実装が提案されています。
発表者は好奇心から、また業務で同様の機能開発に取り組む都合から、GitHubにあるdeep research公開実装やarXivの論文を追いかけ、Pythonで手を動かしています。
その中で「動作しているようだが、LLMのコンテキストには何が入っているのかが明確に分からず、挙動を説明しきれない」という課題を感じ始めました。

この課題感の解消に向けて、OpenTelemetryに目を向けました。
OpenTelemetryはなかなか広範な技術で独学で進めるにはだいぶ苦労しましたが、deep research中のLLMのコンテキストを詳らかにできました!
例:https://pypi.org/project/llm-deep-research/0.0.2/

この発表では、PythonでLLMアプリケーションを開発していて、OpenTelemetryは初めてという方に向けて、OpenTelemetryでLLMのコンテキストを可視化する方法を紹介します。

  1. OpenTelemetryの諸概念(テレメトリ、計装などなど)からはじめ
  2. 多数あるopentelemetry-xxx Pythonパッケージの整理
  3. GoogleのGemini APIを例に、LLMのコンテキストをログやメトリクスで計装するまで

をお伝えし、Geminiを使ったdeep researchの挙動を説明します。
なお、LLM Semantic Convention WGが現在進行系で活動中で、このトークの内容は2025年時点の現在地となります。

タイトルは「スペードのQ」という楽曲オマージュです