迅速に実装するため。しかし、コーディングがコモディティとなった今、私が目にする主な障害の 1 つは、人間の脳とコーディング エージェントの間の知識伝達です。
アイデアがコーディング エージェントに正しく提示されれば、ソリューションの実装、テスト、および正しい実装の保証において非常に効果的になります。
ただし、多くの場合、多くの詳細が含まれるため、コーディング エージェントにプロンプトを出すときにすべての詳細が含まれていることを確認するのは非常に困難です。
ここで調整が必要になります。この記事では、ユーザーの意図がコーディング エージェントと確実に一致していることを効果的に確認する方法について説明し、そのために使用できるテクニックをいくつか紹介します。

なぜコーディングエージェントと提携するのでしょうか?
まず最初に、なぜ特定のトピックに注目する必要があるのかについて常に説明したいと思います。この場合、Cloud Code のようなコーディング エージェントと連携する必要があるのはこのためです。
コーディングエージェントは、非常に具体的でよく説明された仕様が与えられた場合、物事を実装するのに非常に優れています。
ただし、この明確に説明された区別を作成することは、思っているよりも困難です。まず、頭の中にやりたいことのアイデアがある場合、実装したいものを正確に説明する必要があります。ただし、この方法でコーディング エージェントを説明する場合、カバーするのが難しいニュアンスが常に多く存在します。
- 実装される内容の一部について言及するのを忘れる可能性があります
- 実装に関して行う必要がある決定に気づいていない可能性があります
- 説明に曖昧な点があるかもしれません
これらの点は通常、事前に注意を払わないものです。もちろん、人間として、実装したい内容の正確なコンテキストを持っていない可能性があるためです。多くの場合、これは、顧客やプロダクト マネージャーなど、他の誰かがあなたに必要なことを教えてくれたために実装しているものです。
第 2 に、特に多くのコードが AI によって記述されている現在では、コードベース内のすべての内容を完全には認識していないため、完全なコンテキストがわかりません。事前にすべての概要を完全に把握することは困難であるため、適切なコンテキストを見逃してしまいます。
これが、コーディング エージェントの調整が非常に難しい理由です。この記事では、コーディング エージェントのパフォーマンスを向上させ、コーディング エージェントに要求されたことをワンショットで実行できるように、コーディング エージェントを効果的に調整する方法について説明します。
コーディングエージェントとの調整方法
このセクションでは、コーディング エージェントと調整するために私が使用する具体的なテクニックについて説明し、また、コーディング エージェントと調整する方法についても振り返ります。
各セクションには、コーディング エージェントと効果的に調整するためにプログラマーとしての仕事に適用できる特定のアイデア、考え方、テクニックが含まれています。
エージェントは常に外出中です デフォルト 解決
私が取り上げたい最初の概念は、コーディング エージェントが何かを実装しようとするときは常にデフォルト ソリューションを使用するということです。
これが意味するのは、コーディング エージェントは通常、リポジトリ内にある類似のものの以前の実装を調べ、それを反復してやり直すということです。
これは、コード リポジトリが適切に編成されておらず、コーディング エージェントに新しい機能の実装を依頼した場合、コーディング エージェントはすでに悪いパターンを継続し、次善の方法で新機能を実装する可能性が高いことを意味します。
具体的な例を挙げてみましょう。
多くのコードベースには、必然的に大量の llm 呼び出しが含まれます。理想的なコードベースでは、基本的に llm サービスと呼ばれる単一のファイルまたはフォルダーであるサービスがあり、そこにすべての llm 呼び出しが送信されます。 llm 呼び出しの実行方法を決定するオプションを備えた関数があります。たとえば、どの LLM を使用するか、構造化出力を使用するかどうか、最大出力トークンなどを決定します。
ただし、コードベースが適切に編成されていない場合は、これが 1 つのファイルとして存在せず、LLM 呼び出しプロバイダーがいくつかの個別のファイルに定義され、各ファイルに LLM への個別の呼び出しが存在します。
それは呼ばれます 懸念事項の分離が不十分。
さて、適切に保守されたコードベースで、別の LLM 呼び出しを実装するよう要求した場合、LLM はデフォルトで自然な解決策を選択します。これは、もちろん、通常の共有 LLM サービス ファイルを使用することです。これは素晴らしいことです。
ただし、LLM 呼び出しが多くの異なるファイルで個別に行われる、整理が不十分なコードベースで作業している場合、エージェントはこの動作を継続し、別の新しい個別の LLM 呼び出しを行う可能性が高く、懸念事項の分離が不十分なパターンがさらに悪化します。
ここで私が言いたいのは、コーディング エージェントは、良いパターンであろうと悪いパターンであろうと、コードベース内の自然なパターンに従うということです。そのため、コーディング エージェントと効果的に連携するには、コードベースに適切なパターンがあることを確認し、定期的にコードをリファクタリングすることが非常に重要です。
コードの再アクティブ化について詳しく知りたい場合は、以下のトピックに関する私の TDS 記事を読んでください。
Cloud Code を使用してコードをリファクタリングする方法
リファクタリングの最も優れた点は、コーディング エージェントにリファクタリングを依頼できることです。
計画モードの積極的な使用
コーディング エージェントとの信頼関係を築くための重要なテクニックは、エージェントと対話するときに計画モードを積極的に使用することです。計画モードは、LLM を想定して説明している実装と現在のコードベースの間のあいまいさを特定するのに役立つため、優れています。コードベースに変更を加えると、コードベースの考慮していなかった他の部分に影響が及ぶため、変更を続行するか実装の詳細を変更するかを決定する必要があることを忘れているかもしれません。
現在、コードベースは主にコーディング エージェントによって作成されており、コードベースの完全な概要を把握することは不可能であるため、事前にコードベースについて完全な知識があることを期待しないでください。
ただし、コードベース自体については LLM に質問できるため、コードベースの完全な概要を実際に理解する必要はありません。これを説明すると、必要な実装のあいまいさ、およびそれが現在のコードベースとどのように対照されるかを特定するのに役立ちます。
つまり、新しい機能を実装する場合は常に、エージェントで計画モードを使用する必要があります。計画モードでは多くの時間を費やして、モデルについてやり取りする必要があります。
- 何を想像していますか
- 実装したいものに関して LLM が認識する可能性のある問題
- どうすればそれらの問題を解決できますか
コーディング エージェントに可能な限り多くのコンテキストを提供する
エンジニアが実装したいものとコーディング エージェントが実際に実装するものの間に不一致がよく見られるもう 1 つの理由は、エンジニアが LLM に提供されていないコンテキストを持っていることです。
たとえば、画像を 10 のカテゴリのいずれかに分類する機能を実装するように求められたと想像してください。最新の Cloud Opus モデルを使用したいのは、それが最良のモデルであることがわかっているためです。もちろん、可能な限り最高の精度を得るために最良のモデルを使用したいと考えています。
しかし、上司との最近のミーティングで、Cloud Opus モデルはコストが高すぎるため使用できず、10 倍安いソリューションを見つける必要があると言いました。
次に、エンジニアがコーディング エージェントにソリューションの実装を依頼すると、エンジニアはコーディング エージェントに「画像を 10 個のカテゴリのいずれかに分類するこの機能を実装する必要があります。今すぐ修正してください。」と伝えるだけです。
もちろん、ここでの問題は、エンジニアがその問題を解決するために LLM またはコーディング エージェントに問い合わせたことであり、もちろん、これはコーディング エージェントが簡単に解決できる問題です。ただし、エンジニアは LLM に必要なすべてのコンテキストを提供するのを忘れました。つまり、Cloud Opus のような最新かつ最高の LLM を使用するデフォルトのソリューションを使用できません。彼は少なくとも 10 倍安い解決策を見つけなければなりません。
もちろん、これはコーディング エージェントとエンジニアの間の大きなズレです。何が起こるかというと、コーディング エージェントが実装を行うことになります。実装が完了した後、エンジニアは、そのソリューションがコストのせいで実際には実現不可能であることに気づくでしょう。別の解決策を考えるのに時間を費やす必要があります。つまり、最初の解決策の実装に費やした時間はすべて無駄になるということです。
もちろん、ここで挙げた例が起こる可能性は低いです。コストを抑えるために、コーディング エージェントにリファレンスを提供することを忘れないでください。ただし、LLM またはコーディング エージェントに参照を伝えるのを忘れるというまったく同じことが常に起こります。何かを実装し始めると、それは根本的に間違っており、エンジニアは別の実装をしなければなりません。
これを防ぐには、コーディング エージェントにできるだけ多くのコンテキストを与える必要があります。たとえば、コーディング エージェントに次へのアクセス権を与える必要があります。
- 会議メモの記録
- スラックチャンネルとDM
- 認識ノート
その他、実装中に LLM またはコーディング エージェントにとって役立つ知識や参考になるものすべて。これにより、コーディング エージェントにコンテキストが欠如し、不適切な意思決定につながる問題が防止されます。
結論
この記事では、コーディング エージェントと効果的に連携する方法について説明しました。エンジニアとコーディング エージェントの間でよく見られる問題は、実装したいものについて完全に同意していないことです。エンジニアは頭の中に、何を実装したいのか、それがどのように見えるのかというイメージを持っています。別のエンジニアは頭の中に別のイメージを持ち、最終的にコーディング エージェントは実装がどのようなものになるかについての 3 番目のイメージを抱くかもしれません。
もちろん、これは非常に問題があり、絶対に避けるべきです。したがって、コーディング エージェントと対話するときに常に覚えて考え、積極的に使用して、可能な限り連携を確保し、実装とコーディングをより効果的にする必要があるいくつかのテクニックとアイデアを提供しました。
👋 お問い合わせ
👉 私の無料の電子書籍とウェビナー:
🚀 LLM でエンジニアリングを 10 倍にする (無料の 3 日間の電子メール コース)
📚 無料の Vision Language Model 電子ブックを入手してください
💻視覚言語モデルに関する私のウェビナー
👉 ソーシャルメディアで私を見つけてください:
💌 サブスタック
🔗リンクトイン
🐦








Leave a Reply