HeadlinesBriefing favicon HeadlinesBriefing.com

コーディングエージェントのための意図継続性

Towards Data Science •
×

私は、ユーザーにどこから来たのか尋ねることなく、以前のやり取りから関連する要件を自動的に発見、検証、適用するシステムを構築しました。

核心的な教訓:過去の履歴を単に引き出すことは、実際に何がまだ正確であるかを知ることと同じではありません。基本的な検索設定では、コーディングエージェントが必要とする要件の57%しか取得できませんでした。検証レイヤーを追加すると、それが100%に押し上げられました。

8つのタスクのうち、ベースラインはゼロしか正解せず、基本的な検索は4つ正解し、意図を考慮した検索は8つすべてを正解しました。私はこれをすべて、ゼロ埋め込み、ゼロベクトルデータベース、そしてパイプライン内でLLM呼び出しを一切使わずに行いました。

私は最初は完璧に機能するコーディングエージェントのワークフローを設定しました。しかし、プロジェクトが十分に長くなると、問題を引き起こし始めました。プロジェクトが数十ステップを超えると、核心的なルールが消え始めました。誰もそれらを削除しませんでした。コンテキストウィンドウは満杯ではありませんでした。それらのルールは技術的にはまだチャットログに残っていました。新しいリクエストが、古い決定がまだ重要かどうかをエージェントに確認させるトリガーにならなかったため、それらは単にレーダーから外れてしまったのです。

例えば、初日にエージェントにAPIレスポンスで内部データベースIDを決して公開しないように伝えるかもしれません。60メッセージ後、新しい認証フローを構築するように依頼します。その新しいリクエストはIDについて何も言及していません。エージェントには振り返る明確な理由がないため、そのステップをスキップし、あなたが保護しようとしたまさにそのデータを漏洩するエンドポイントを出荷します。

これは作り話のシナリオではありません。これは私がこの記事で使用した実際のテストケースです。以下では、3つの異なる方法がこの正確な問題をどのように処理するかを示します。

FAQ:コーディングエージェントにおける意図継続性とは何ですか?

意図継続性とは、ユーザーが繰り返すことなく古い要件を新しいタスクに引き継ぐことを意味し、より新しい何かがそのルールを上書きする場合はそのルールを破棄します。

FAQ Q:コーディングエージェントにおける意図継続性とは何ですか?

FAQ A:意図継続性とは、ユーザーが繰り返すことなく古い要件を新しいタスクに引き継ぐことを意味し、より新しい何かがそのルールを上書きする場合はそのルールを破棄します。