Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Prompt Engineeringの再定義「Context Engineering」とは
Search
ツルオカ - Hideki Tsuruoka
July 11, 2025
Programming
980
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Prompt Engineeringの再定義「Context Engineering」とは
2025.07.11開催の社内勉強会にて発表
ツルオカ - Hideki Tsuruoka
July 11, 2025
More Decks by ツルオカ - Hideki Tsuruoka
See All by ツルオカ - Hideki Tsuruoka
AI時代に事業成長を支えるCTOとは
htsuruo
0
77
Google Cloud AI Agent Summit '25 Fall Recap
htsuruo
0
42
Gemini 2.5 Computer Use 入門
htsuruo
0
330
Gemini CLIと仕様駆動開発(SDD)でVibe Codingを堅実化する
htsuruo
3
1.2k
巨人の肩の上で踊れ 〜Virtual Try-On APIに学ぶAI時代の教訓と戦い方
htsuruo
0
41
Google Cloud Next Tokyo '25 Recap
htsuruo
0
34
最近のAI Editor事情とGitHub Copilot for VS Codeのアップデート
htsuruo
0
43
Vibe Coding Day Opening
htsuruo
0
38
NotebookLM 活用ガイド
htsuruo
1
460
Other Decks in Programming
See All in Programming
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
1.8k
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
160
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
140
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.6k
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
540
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
190
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
140
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
180
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
0
160
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
180
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
270
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
140
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
410
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
57k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
The Limits of Empathy - UXLibs8
cassininazir
1
530
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Facilitating Awesome Meetings
lara
57
7k
Transcript
Prompt Engineeringの再定義 「Context Engineering」とは Hideki Tsuruoka UpdatedAt 2025.07.11
Contents • Context windowとは(前提知識) • Context Engineeringとは • GitHub Copilot
in VS Codeの例 • Cognition AIのブログでの⾔及 • Donʼt Build Multi-Agents • 12 Factor Agentsへの追加 • Contextの分類・具体例 • まとめ
• Claude Codeで、CLAUDE.mdによるメモリ管理や`/compact`でのコンテキスト圧縮などSNS上での議論を観測 • セッションごとに記憶喪失するので、「前教えたことを覚えていないジュニアエンジニア」と揶揄されることも ◦ LLMは基本ステートレス • CLAUDE.mdのメモリ管理やコンテキストをどう管理するかがCoding Agentの肝に
◦ 例: 1つのタスクごとに`/clear`でコンテキスト破棄する、コミットのたびにコンテキスト破棄する • (その経由もあってか)7⽉頃から「Context Engineering」という⽤語がちらほら⾶び交うようになって気になった 背景 3 ref. https://docs.anthropic.com/en/home
• ⾔語モデルが新しいテキストを⽣成する際に参照できるトークンと⽣成する新しいトークンの合計(≒脳のキャパシティ) • LLMモデルにおける「作業メモリ」のようなもので、この記憶を頼りに回答を⽣成している • Context window Overflow: ⼊⼒と出⼒のトークン数の合計が閾値を超えると情報が失われ置き換えられてしまう。モデルが必要 なコンテキストの⼀部を⽋いてしまい、正確で⼀貫性のある返答を⽣成するのが難しくなる
(前提知識)Context windowとは 4 ref. https://docs.anthropic.com/ja/docs/build-with-claude/context-windows 主要モデルのContext Window(2025年7⽉現在): Gemini 2.5 Proが100万トークンと、他を⼤きく引き離して 最⼤のコンテキストウィンドウを誇る。これは、⼀般的な書籍 数冊分に相当する情報量を⼀度に処理できることを意味し、⻑ ⽂の⽂書読解や要約、複雑なプログラミングコードの分析な ど、これまで困難だったタスクへの応⽤が期待できる。
• プロンプトエンジニアリングを再定義しリブランドされた造語(再定義されただけで全く新しい実装とかではない) • LLM性能が⽇々向上しているが、結局どんなに賢くてもコンテキストが与えられないと正確な回答はできない(⼈間も同様) • プロンプトでLLMに役割や意図を伝えるだけではなく、どんな情報を的確にLLMに与えるかの設計が⼤事という話 Context Engineeringとは 5 ガイドがあるのでまずは⼀読推奨
ref. https://www.promptingguide.ai/guides/context-engineering-guide Prompt Engineeringも包含される概念 ref.https://x.com/dexhorthy/status/ 1933283008863482067
• VS Code(に限らず)、より関連し正確な返答をAIから受け取るためにコンテキストをしっかり管理するための指南書 • 公式ドキュメント参照させたりMarkdown読み込ませたり、当たり前といえばYesだがこれもContext Engineering (Contextを与える例)GitHub Copilot in VS
Code 6 ref. https://code.visualstudio.com/docs/copilot/chat/ copilot-chat-context VS CodeでサポートしているContext item⼀覧。当然 CursorやClaude Codeなど各ツールによって記法は異な るが、ファイル参照やWeb検索などやることは⼤体⼀緒 #fetchでWebから情報を取得(コンテ キスト付与)して知りたい情報を回答さ せる例
• Prompt Engineering Guideでは、これは「LLMや⾼度なAIモデルがタスクを効果的に実⾏するために、必要な指⽰と関連コン テキストを設計および最適化するプロセス」と定義 ◦ Andrej Karpathy⽒「次のステップのためにコンテキストウィンドウに適切な情報を詰める繊細な芸術と科学」 • Hugging
Faceのテクニカルリードであったフィリップ・シュミット⽒は、コンテキストエンジニアリングを「AIがタスクを現実 的に解決できるように、必要なすべてのコンテキストを提供するための技術」と定義 Context Engineeringの定義 7 単なる⽂字列ではなく、 AIの処理が実⾏される前 に稼働するシステム 単⼀のテキストで完璧な 指⽰⽂を作成すること プロンプトエンジニアリングとの違い ref. https://medium.com/data-science-in-your-pocket/context-engineering-vs-prompt-engineering-379e9622e19d
• Cognition AIのブログ(Donʼt Build Multi-Agents)にて、AIエージェント⽂脈ではじめてContext Engineeringに⾔及 ◦ Cognition AI: DevinやDeepWikiの開発会社
• Multi-Agents設計における課題としてコンテキスト共有の重要性を指摘した内容 最初の⾔及はCognition AIのブログにて 8 https://cognition.ai/blog/dont-build-multi-agents#principles-of-context-engineering Vibe Coding提唱で有名なAndrej Karpath⽒もContext Engineeringの考え⽅を⽀持 https://x.com/karpathy/status/1937902205765607626
• OpenAIの「Swarm」やMicrosoftの「AutoGen」に代表されるAIエージェントフレームワークは間違っているという主張 • 理由はタスクを複数のサブエージェントに分割し、最後に結果を結合するアプローチは「⾮常に脆い」というもの • 単⼀スレッドのリニアな構造にしてコンテキスト圧縮してオーバーフローを防ぐ⽅法が望ましい Donʼt Build Multi-Agents 9
サブタスクに分解する典型的なエージェントの例: 例えば、Flappy Birdのクローン作成タスクで、各サブエージェント が異なる理解に基づくと、最終的な結果は⽭盾したものになる リニアな構造に圧縮したコンテキストを渡すエージェントの例: エージェント構築の原則である「1.コンテキスト共有」と「2.アクションは暗 黙の決定を伴う」を両⽴する1つの⽅法として紹介(これの限りではない)
• 12 Factor Agents: Heroku社が提唱したクラウドネイティブなアプリケーション開発のベストプラクティスをまとめた「12- Factor App」をAIエージェント⽤にアレンジしたもの • LLMはステートレス関数なので「最良の出⼒を得るには最良の⼊⼒が必要」であり、Context Engineeringは理にかなっている
12 Factor Agentsへの追加 10 ref. https://github.com/humanlayer/12-factor-agents 良いコンテキストを作ることとは
• LangChainのブログではコンテキストをwrite, select, compress, isolateに分類して解説 • AIエージェントにおける課題は、ロングランが必要なタスクではフィードバックが効果的だがContext Windowが溢れること • 後半はLangGraph/LangSmithでどう実装するかの内容だが、この記事が体系的でいちばんわかりやすいかも
Contextの分類 11 “Context engineering is the art and science of filling the context window with just the right information at each step of an agentʼs trajectory” ref. https://blog.langchain.com/context-engineering-for-agents/
• n8nを使ったマルチエージェントなDeep Researchアプリケーションを例に解説 • RAG & Memoryはこの例では使っていないが、類似クエリをベクトルDBに保持しておいて検索最適化するなどの戦略も取れる ◦ アプリケーションを動的かつ低コストで効率的なものにする設計(≒Context Engineeringの⼀つ)
Context Engineeringの具体例 12 n8nで構築されたDeepResearchワークフロー ref. https://www.promptingguide.ai/guides/context-engineering-guide#context- engineering-in-action Search Plannerのシステムプロンプト例: Structured Outputsは実際はプロンプ トではなく、Zodなどで型定義してAPIのプロパティ指定することの⽅が多いと思う が、JSONに構造化することで情報密度があがりトークン数を削減できたりする。 Instructions: 従来のプロンプトエンジニアリングの域 Structured Inputs and Outputs Tools
• Context Engineeringという⽤語は「プロンプトエンジニアリングを再定義しリブランドされた造語」であり、全く新しい実装を 指すものではないが、エージェント構築において開発者にとって最も重要である • Context Engineeringは「LLMや⾼度なAIモデルがタスクを効果的に実⾏するために、必要な指⽰と関連コンテキストを設計お よび最適化するプロセス」と定義 • プロンプトでLLMに役割や意図を伝えるだけでなく、どのような情報を的確にLLMに与えるかの設計が重要であるという考え⽅に
基づいている • 実際、Claude CodeにおけるCLAUDE.mdによるメモリ管理や/compactでのコンテキスト圧縮など、コンテキストをどう管理 するかがCoding Agentの肝となっている • 12 Factor Agentsにも採⽤されており「最良の出⼒には最良の⼊⼒が必要」の考えから理にかなっている • コンテキストはwrite, select, compress, isolateの4つに分類でき体系的な戦略が⽴てられる まとめ 13
• https://docs.anthropic.com/en/home • https://x.com/dexhorthy/status/1933283008863482067 • https://code.visualstudio.com/docs/copilot/chat/copilot-chat-context • https://medium.com/data-science-in-your-pocket/context-engineering-vs-prompt-engineering-379e9622e19d • https://cognition.ai/blog/dont-build-multi-agents#principles-of-context-engineering
• https://x.com/karpathy/status/1937902205765607626 • https://github.com/humanlayer/12-factor-agents • https://blog.langchain.com/context-engineering-for-agents/ • https://www.promptingguide.ai/guides/context-engineering-guide#context-engineering-in-action • https://iwashi.co/2025/07/06/12-factor-agents 参考 14