AIの進化により、AIが自動的にプログラムを書く「AIコーディング」が注目されています。最近のAIコーディングでは、AIに1回ずつ指示を出すだけでなく、AI自身に処理を繰り返させる「ループ」という考え方が重要になっています。
米国のAI開発企業であるAnthropic社は、AIコーディングツール「Claude Code」の開発チームがまとめたループの解説記事「Getting started with loops」を公開しました。この記事では、AIが自律的に動く方法を4つのパターンに分類して説明しています。
4種類のループパターン
記事では、ループを次の4つの種類に分類しています。
1.ターンベース(Turn-based)
最も簡単なループです。現在のClaude Codeを動かす際の基本となります。
人間が指示を1回出すたびに、AIが情報を集め、プログラムを実行し、その結果を確認します。必要な修正があればそれを繰り返した後に結果を返します。その後、人間が結果を確認して、次の指示を出します。この往復が基本の単位となります。
- 起動トリガー:人間の指示
- 停止条件:AIがタスクを完了したと判断した時点、または追加の情報が必要と判断した時点
- 向いている作業:開発の初期段階や、短いタスク
- コツ:確認のルールをあらかじめファイルに書いておくことで、AI自身がより多くのチェックを行えるようになります。
2.ゴールベース(Goal-based)
人間が「完了とはどのような状態か」というゴールを決め、AIがそのゴールに達するまで自律的に実行を繰り返すループです。
より複雑なタスクに向いています。AIが「終わったつもり」になって途中で諦めるのを防ぐため、成果物のテストや評価を別のAIモデルや客観的なシステムで行うことがポイントです。
- 起動トリガー:ゴールの指示
- 停止条件:ゴールの達成、またはあらかじめ決めておいた最大の実行回数への到達
- 向いている作業:テスト作成やリファクタリングなどの明確なゴールがある作業
- コツ:「ホームページの品質テストで90点以上を取る。最大5回で強制終了する」のように、達成目標と制限回数をセットで指定します。
3.タイムベース(Time-based)
時間の間隔やスケジュールに合わせて処理を繰り返すループです。
個々の作業内容はターンベースやゴールベースと似ていますが、実行するタイミングが時間で管理されます。外部の状況変化に対応して動作させたい場合に有効です。
- 起動トリガー:時間の間隔やスケジュール
- 停止条件:ユーザーが停止を指示するまで
- 用途:毎朝チャットツールのメッセージ要約を作成する、定期的にプログラムのテストを実行するなど
- 注意点:ローカルのPCで動かすコマンドはPCを閉じると止まります。常時動かしたい場合は、クラウド環境でスケジュール登録を行います。
4.プロアクティブ(Proactive)
人間がその都度指示を与えなくても、システムが状況を監視し、必要なタスクを自動的に検出して実行するループです。
外部で出来事が発生したことをトリガーにして、AIが自律的に動き出します。
停止条件の重要性
今回の解説で特に注目されているのが「停止条件」の設計です。AIは自律的に動くため、停止条件がないと処理を無限に繰り返し、利用料金を大量に消費してしまう危険があります。「どこまで実行したら停止するか」を事前に設定しておくことが非常に重要です。