翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
コーディングエージェント
コーディングエージェントは、タスクのプログラミング、コードの生成または変更、IDEs や CLIs。これらのエージェントは、自然言語の理解と構造化された推論を組み合わせて、関数の生成からバグ修正、テストオーサリングまで、ソフトウェア開発を支援、強化、自動化します。
オートコンプリートツールとは異なり、コーディングエージェントはユーザーの目標を積極的に解釈し、開発環境のコンテキストをクエリし (ファイルを開いてエラーを追跡するなど)、要件を特定し、アクションを提案して実行します。
アーキテクチャ
コーディングエージェントのパターンを次の図に示します。
説明
-
クエリを受信する
-
ユーザーは、コマンドパレット、チャットウィンドウ、または CLI を通じて自然言語の手順を提供します (たとえば、「この関数にログを追加する」または「読みやすいようにリファクタリングする」)。
-
-
環境コンテキストを抽出します
-
エージェントは、アクティブなファイル、カーソルの位置、コードスニペット、シンボルテーブルなど、IDE からコンテキストを収集します。
-
エラーメッセージ、テスト結果、および他のエージェントからの出力を出力します。
-
-
LLM の推論
-
エージェントは、クエリや環境コンテキストを含むプロンプトを LLM に送信します。
-
LLM は推論パスを実行して以下を決定します。
-
変更する必要があるもの
-
ソリューションを生成する方法
-
リファクタリング、書き換え、またはコーディングのステップ
-
-
-
アクションを実行します
-
LLM は出力をエージェントに返し、IDE またはランタイム環境にインポートします。
-
これには、コードの挿入や変更、コメントやドキュメントの生成、ダウンストリームのビルド、テスト、リンティングタスクのトリガーなどが含まれます。
-
機能
-
高コンテキスト認識 (IDE 状態、カーソル、構文ツリーなど)
-
目標とフィードバックの反復的な推論
-
オプションのコード計画とアクションの分離 (例: 最初の理由とアクション)
-
同期デベロッパーワークフローまたは非同期デベロッパーワークフローで動作
一般的なユースケース
-
タスクの説明からのコード生成
-
コードのリファクタリングと最適化
-
テストケースの生成と検証
-
エラーの説明とデバッグ
-
ドキュメントアシスタント
-
ペアプログラミングコパイロット
実装のガイダンス
-
このパターンは、次のツールと を使用して構築できます AWS のサービス。
-
LLM 駆動型の生成と推論のための Amazon Bedrock
-
コーディングの提案と完了のための Amazon Q Developer
-
AWS Lambda サンドボックス環境を実行およびテストするための または Amazon Elastic Container Service (Amazon ECS)
-
AWS Cloud9、VS Code 拡張機能、またはコンテキストをホストおよび評価するためのカスタム IDE 統合
-
中間プロンプト、レスポンス、リビジョン履歴を保存するための Amazon Simple Storage Service (Amazon S3)
概要
コーディングエージェントは、自然言語の解釈、コンテキストの分析、複数ステップのコード変更の生成、ソフトウェア開発ライフサイクルとの統合が可能な新しい AI を活用した開発ツールです。