Andrej Karpathy氏は、LLMを使用したAIソフトウェア開発における「コンテキストエンジニアリング」に関連する新しい用語の導入を支持しています。 そして、この用語は長い間非常に必要であると思われてきました。私がNethermind AuditAgentの開発方法を説明するたびに、ドメインの専門知識(web3セキュリティ)を使用し、利用可能な最高のAIモデル(OpenAI、Anthropic、Google)、およびLLMのツールを使用することに加えて、重要な側面の1つは、まさに「コンテキストエンジニアリング」です。 「文脈が王様である」という表現がありますが、それは本当に真実です。LLMは、巨大な高度なものであろうと最適化された小さなLLMであろうと、強力なツールですが、他のツールと同様に、それが間違った人の手に渡った場合、正しく作業した場合よりもはるかに有望な結果が得られません。また、コンテキスト管理(またはエンジニアリング)は、常に進化している複雑であまり説明されていない領域であり、すでにいくつかの否定的な意味合いを持つプロンプトエンジニアリングの概念の延長として実際に登場しました。 全体として、Andrejはコンテキストエンジニアリングに関連する主な側面をリストアップしました(2番目のスクリーンショット)が、それぞれの特定のタスクでは、人々は主に試行錯誤を通じて優れた結果を達成し、そのたびに、問題解決のこの段階で本当に必要な適切なコンテキスト要素を選択しようとし、各ステージのベンチマークを収集し、メトリックを見て、データセットをテストに分割します。 検証など。 「コンテクストエンジニアリング」についてどう思いますか?
Andrej Karpathy
Andrej Karpathy2025年6月25日
「プロンプトエンジニアリング」よりも「コンテキストエンジニアリング」が+1。 人々は、プロンプトを、日常の使用でLLMに付与する短いタスクの説明と関連付けます。すべての産業用LLMアプリにおいて、コンテキストエンジニアリングは、次のステップのための適切な情報でコンテキストウィンドウを埋める繊細な芸術と科学です。科学は、これを正しく行うには、タスクの説明と説明、いくつかのショットの例、RAG、関連(おそらくマルチモーダル)データ、ツール、状態と履歴、圧縮...小さすぎるか、形式が間違っていると、LLM には最適なパフォーマンスを得るための適切なコンテキストがありません。多すぎたり、無関係すぎたりすると、LLMのコストが上昇し、パフォーマンスが低下する可能性があります。これをうまく行うことは、非常に簡単ではありません。そして、人々の精神のLLM心理学の周りに指導的な直感のための芸術。 コンテキストエンジニアリング自体に加えて、LLMアプリは次のことを行う必要があります。 - 問題を制御フローに適切に分割する - コンテキストウィンドウを適切に詰め込む - 適切な種類と能力のLLMに通話をディスパッチする - 生成検証 UIUX フローの処理 - その他にもたくさん - ガードレール、セキュリティ、評価、並列処理、プリフェッチなど つまり、コンテキストエンジニアリングは、個々のLLM呼び出し(およびその他多くの呼び出し)を完全なLLMアプリに調整する、重要なソフトウェアという新しい厚い層のほんの一部にすぎません。ChatGPTラッパー」という言葉は使い古され、本当に、本当に間違っています。
441