Show HN: CUA-S1 – コンピュータ利用のためのシステム1モデル
Show HN: CUA-S1 – A System One Model for Computer Use (github.com)
要約
CUA-S1は、コンピュータ利用におけるタスクを、汎用的な大規模言語モデル(LLM)ではなく、限定的な意思決定に特化した小規模モデルで処理することを目指すシステムです。このモデルは、与えられた選択肢に対して確率を返すことで、フォーム入力などのタスクを効率的に自動化します。
全文翻訳
皆さん、こんにちは、HN!私たちはCuaのDillonとFrancescoです。
コンピュータ利用タスクのすべてで、意思決定やステップの検討に完全な汎用LLM(例: gpt-6-astra, claude-opus-5など)が必要なのかどうか、私たちは疑問に思っていました。一部のタスクは、計画を立てたり、さまざまな経路を探求したり、失敗から回復したりすることを必要とします。他のタスクは、この値はここに配置すべきか、このチェックボックスをチェックすべきか、あるいはこの要素は無視すべきか、といった局所的な意思決定の問題です。
私たちは、これらの種類の決定のみを行うように訓練された小規模モデルで、どこまで進めることができるか疑問に思いました。
私たちのインスピレーションは、TypesafeのJevと、そのシステム1モデルのフレームワークでした。これは、ダニエル・カーネマンが説明したように、速く、自動的に、直感的に思考する(システム1)ことと、遅く、分析的に思考する(システム2)ことの二分法への敬意を表しています。
私たちにとって興味深い質問は、モデルに現在のコンテキストのインターフェースと、可能な選択肢のセットを与え、各選択肢の確率を返すように求めたらどうなるか、ということでした。この種のモデルは、ほとんどのLLMが行うようにトークンごとに逐次的に出力を生成するのではなく、与えられたオプションをスコアリングします。このスコアは検証、信頼、そしてアプリの動作を駆動するために使用できます。
CUA-S1は、コンピュータ利用のための、狭く専門化された意思決定モデルに対する私たちの答えです。最初のリリースはCUA-S1-FORMSです。私たちはjevlikeのアイデアとコードからこれを構築し、フォーム操作のみを処理する第2のモデルを訓練しました。このモデルは706kパラメータを持ち、元のチェックポイントは2.8MBです。
最初の訓練イテレーションは、合成データ上で30分未満で完了しました。ドキュメントから抽出された構造化された要素と値のセットが与えられると、各要素に対して、与えられた値を使用するか、CHECK(チェック)、CLICK(クリック)、またはSKIP(スキップ)するかを予測します。テキストフィールドの新しい値を予測せず、スクリーンショットも考慮しません。要素の決定はまとめてスコアリングされ、コードでアクションの順序を決定でき、Cua Driverがそれらを一つずつ実行します。
このスペシャリストモデルとホストされたJevを、私たちのフォームタスクで比較評価した結果は以下の通りです。
- 全ての決定セットに対して: 99.7% 正解 vs 83.6%
- アクションを必要とするステップのサブセットに対して: 100% 正解 vs 96%
- すでに埋められているフィールドをそのままにしておくステップのサブセットに対して: 100% 正解 vs 74%
スペシャリストは、このタスクと慣習(すでにチェックされているボックスはスキップするだけ)のために特別に訓練されましたが、ホストされたJevはそれにファインチューニングされていないため、これはスコープされた専門化の実験です。
ローカルでフォームをスコアリングするのに7〜9ミリ秒かかったのに対し、ホストされたJevへの呼び出し(ネットワーク遅延を含む)は260〜280ミリ秒でした。ただし、これらのサンプルは異なるものを測定しており、エンドツーエンドのフォーム完了時間ではありません。
私たちの関心は、壊れやすいスクリプトと汎用エージェントループの間の空間にあります。フォームフィールドのコンテンツとレイアウトは十分に変化するためスクリプトは扱いにくくなりますが、利用可能な決定のセットは狭く、適切にスコープされたままにすることができます。私たちは、汎用エージェントが新しいものに遭遇し、この種のスペシャリストに適切に理解された決定を渡す可能性を探求したいと考えています。
これは私たちが探求している方向性です。現在のリリースはフォーム専用です。合成データ生成、トレーニング、評価、およびDriver統合をlibs/cua-s1の下でMITライセンスでオープンソース化しました。
コメントをお待ちしています!特に、コンピュータ利用エージェントを構築していて、スクリプト化するには変動が大きすぎるが、別のLLMを呼び出すには狭すぎるという、繰り返し発生する決定に遭遇したことがある方からのコメントを歓迎します。