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
970
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
70
Google Cloud AI Agent Summit '25 Fall Recap
htsuruo
0
39
Gemini 2.5 Computer Use 入門
htsuruo
0
330
Gemini CLIと仕様駆動開発(SDD)でVibe Codingを堅実化する
htsuruo
3
1.2k
巨人の肩の上で踊れ 〜Virtual Try-On APIに学ぶAI時代の教訓と戦い方
htsuruo
0
35
Google Cloud Next Tokyo '25 Recap
htsuruo
0
30
最近のAI Editor事情とGitHub Copilot for VS Codeのアップデート
htsuruo
0
40
Vibe Coding Day Opening
htsuruo
0
35
NotebookLM 活用ガイド
htsuruo
1
460
Other Decks in Programming
See All in Programming
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
130
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
300
A2UI という光を覗いてみる
satohjohn
1
160
Agentic UI
manfredsteyer
PRO
0
200
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
240
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
150
Inside Stream API
skrb
1
790
さぁV100、メモリをお食べ・・・
nilpe
0
160
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
190
Lessons from Spec-Driven Development
simas
PRO
0
220
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.8k
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
KATA
mclloyd
PRO
35
15k
Code Review Best Practice
trishagee
74
20k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
The SEO identity crisis: Don't let AI make you average
varn
0
500
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
170
Designing Experiences People Love
moore
143
24k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
440
Side Projects
sachag
455
43k
Prompt Engineering for Job Search
mfonobong
0
350
New Earth Scene 8
popppiees
3
2.4k
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