CCAR-F 学習ノート(非公式)合格体験記へ

← 第2章のノートへ

音声原稿 02-b:配分とツールチョイス

🎧 配分とツールチョイス

このパートでは、役割に持たせるツールの数と、ハーネスがモデルの自由度を一段絞る仕組みを扱います。ノートの、持たせる数、横断させる例外、ツールチョイスの三段階、強制のあと自由度を戻す条件、と同じ中身です。

ツールが十八個あるエージェントは、説明を読んでもなお、近い二つの間で揺れます。四つか五つに収まる役割へ十八個を渡すと、選択のたびに、無関係な説明がノイズになります。統合役にウェブ検索を持たせると、統合の途中で探索を始め、返すべき構造を書きません。基本は、その役割のツールだけです。

数を減らすことと、一つに潰すことは違います。十八個を四つか五つに減らすのは、無関係な説明を候補から外すためです。減らしたあとに、まだ二つの説明が、文書を分析する、なら、統合は早いです。先に契約を分けます。欄を返す、段落を返す、主張と抜粋の一致を返す。呼び出した側は、どの形が戻るかを名前で知れます。契約が一つだと分かってから、一つのツールに畳みます。畳む前に統合すると、入力の形が内部の分岐へ隠れ、失敗の理由が混ざります。

例外は、頻度が高く、契約が狭い確認です。統合の八割が、この日付と固有名詞が源泉と一致するか、だけなら、事実の確認ツールを統合役に持たせます。入力は主張とURL、出力は一致、不一致、源泉に記述なし、です。残りの二割、この分野を調べ直せ、は、親経由で検索役へ戻します。検索ツール一式を統合へ渡すと、例外が役割そのものになります。汎用の、任意のURLを取りにいく道具は、文書限定なら文書を読む道具にし、許可したホスト以外は検証エラーにします。できることを減らすのは、選択を安定させるためです。

ツールチョイスは、モデルの自由度を、ハーネスが一段絞ります。モデルは、何も制約されないと、ツールを呼ばずに文章で答えることがあります。抽出の仕事では、その文章は機械が読めません。

オートは、ツールを呼ばず文章を返してよい、です。対話の既定です。方針の説明を文章で返してよいときに使います。抽出なのにオートのままだと、モデルは表を文章で書き、パーサが失敗します。

エニーは、ツールを必ず一つ呼びます。どれを呼ぶかはモデルです。文書の種類が請求書か納品書か不明で、スキーマが二つあるときに、文章への逃げを止めます。

強制は、名前まで指定します。エンリッチの前に、メタデータの抽出を通したい、という先頭の固定です。後続のツールは次のターンで、結果を見たモデルが選びます。一ターンの強制で、全工程を並べる仕組みではありません。強制したツールの結果が履歴に入り、次はオートかエニーで続きが決まります。強制を常用すると、モデル主導の利点が消えます。先頭の一段だけに使います。

三つの違いは、文章を許すか、道具の選択を許すか、名前まで固定するか、です。メタデータが要らず、種も一つで、利用者への説明も許す対話なら、最初からオートです。種が複数で構造が必須ならエニーです。先頭の一段だけ名前を固定するなら強制です。

自由度を戻す条件は、成功です。メタデータの抽出を強制したターンの結果が履歴に入ったあとも、強制のままだと、モデルは毎ターン同じツールしか要求できません。エンリッチは起きません。ハーネスは、先頭のツールが成功した結果を観測したら、次の呼び出しをオートまたはエニーに戻します。失敗したなら、同じ強制を維持して取り直すか、検証エラーを結果として返して、モデルに引数を直させます。強制を外す条件を、一回呼んだ、だけにすると、失敗の呼び出しでも次へ進みます。

三ターンで追います。一ターン目はメタデータの抽出を、名前で強制します。結果が形を通過したら、二ターン目の自由度をエニーに戻します。種が請求書か納品書か不明なので、文章への逃げはまだ許しません。モデルは結果を見て、どちらの抽出を呼ぶかを選びます。その結果を見た三ターン目で、利用者への説明が許されるならオートに戻します。一ターン目が検証エラーなのにエニーへ進むと、壊れたメタデータの上に抽出が乗ります。

このパートの判断は、こうです。役割外のツールは持たせません。頻出で契約が狭い確認だけ、横断して持たせます。オートは文章を許し、エニーはどれかのツールを必須にし、強制は名前を一段だけ固定します。戻すのは、その一段が成功してからです。

十八個から四つへ減らすとき、消してよいものと、残す契約を分けます。統合役から消すのは、ウェブ検索、任意のURLの取得、顧客の全件一覧、です。残すのは、主張とURLを取り、一致、不一致、記述なし、を返す確認だけです。この確認が統合の八割を占めるなら、親経由の往復を省けます。残りの二割、分野を調べ直せ、は親経由のままです。確認ツールの入力を、自由な検索クエリに広げた瞬間、例外が役割そのものに戻ります。できることを減らすのは、選択を安定させるためです。

汎用の、何でも取得、を文書限定の、文書を読む、に変えるときも同じです。許可した文書のホスト以外は、検証エラーにします。エラーは再試行不可で、どのホストが許されるかを人に読める文に書きます。黙って別ホストを取りにいく実装は、説明で狭めた境界を、実行側が広げています。

ツールチョイスを、間違った仕事に置くと、こうなります。方針の説明を利用者に話す対話でエニーにすると、モデルは不要なツールを一つ呼び、待ちが増えます。抽出でオートのままにすると、表が文章になり、パーサが死にます。先頭以外の工程まで名前を強制すると、メタデータの結果を見ずに、次の抽出の引数を決められません。強制は一段です。その一段が検証エラーなら、エニーへ進まず、エラーを結果として返して引数を直させます。一回呼んだ、で外すと、失敗のメタデータの上に抽出が乗ります。成功を条件にします。

三ターンのあと、利用者への説明が要るなら、最後だけオートに戻します。構造の抽出が終わっていないのにオートへ戻すと、残りの欄が文章に逃げます。戻す自由度は、その時点で文章が許されるかで選びます。許されないならエニーのままです。

統合役に検索を全部渡したあとの失敗を、一文で見ます。統合の途中で、モデルは確認ではなく新しいクエリを投げ、返すべき表を書きません。親は統合の結果を待てず、探索のログを受け取ります。直しは、検索一式を外し、主張とURLだけの確認を残すことです。確認の出力が一致、不一致、記述なし、の三つを超えて、関連記事の一覧まで返し始めたら、契約が再び広くなっています。出力の欄を三つに戻します。深い調査は、親が検索役へ再委任します。

強制の常用も、同じ種類の失敗です。毎ターン名前を固定すると、モデルは結果を見て次の道具を選べません。先頭のメタデータだけを強制し、成功したらエニーへ戻し、種が一つに決まり利用者への説明が許される段でオートへ戻します。この三段を、最初から最後まで強制のままにすると、エンリッチも説明も起きません。

四つか五つに収めたあとも、説明がどちらも在庫を扱う、のままなら、数を減らしただけでは取り違えは残ります。残った道具の説明に、入力と、使わない場合を書き、キーワードの常時指示が無いかを見てから、数の効果を測ります。数と説明は、別の層です。

オート、エニー、強制を、同じ抽出の仕事で聞き分けます。種が一つで利用者への説明も許すならオートです。種が不明で構造が必須ならエニーです。メタデータを先に通す一段だけ強制し、成功したら戻します。この三つを一つのフラグにまとめると、文章への逃げと、名前の固定を同時に失います。