AI News HubLIVE
サイト内リライト4 分で読了

Feyn AIがSQRLを公開:データベースを事前に検査してからクエリを生成するテキストto SQLモデルファミリー

Feyn Labsは、クエリを実行する前に読み取り専用プローブでデータベースを検査するテキストto SQLモデルファミリー「SQRL」をリリースした。フラッグシップモデルのSQRL-35B-A3BはBIRD Devで70.6%の実行精度を記録し、Claude Opus 4.6を上回り、4Bおよび9Bのセルフホスト可能なチェックポイントに蒸留される。

ソースMarkTechPost著者: Asif Razzaq

Feyn AI(YC支援のスタートアップ)が、自然言語の質問をSQLに変換する前にデータベースを検査する新しいモデルファミリー「SQRL」を発表しました。従来のテキストto SQLシステムが翻訳としてタスクを扱うのに対し、SQRLは読み取り専用プローブを使用して曖昧さを解決し、データが実際にサポートするクエリのみを生成します。

フラッグシップモデルのSQRL-35B-A3Bは、BIRD Devベンチマークで70.6%の実行精度を達成し、Claude Opus 4.6の68.77%を上回りました。チームは3つのチェックポイント(SQRL-4B、SQRL-9B、SQRL-35B-A3B)をHugging Faceで公開しています。

データベース検査の重要性

テキストto SQLはしばしば翻訳問題として説明されますが、この見方では最も難しい部分を見落としています。クエリは完全に有効なSQLでありながら、間違った答えを返す可能性があります。誤ったテーブルを結合したり、曖昧な列を誤って解釈したり、存在しない値をフィルタリングしたりするためです。これらのエラーは例外をスローしないため、実行だけでは検出できません。

スキーマ情報も役に立ちません。スキーマはテーブル、列、型、そして時には関係をリストしますが、郡名が「Alameda」「Alameda County」「ALAMEDA」のどれで保存されているかはわかりません。また、どの結合が重複行を生成するかも教えてくれません。

BIRDベンチマークはこれらの失敗を測定可能にします。そのデータベースは実際のドメインにまたがり、不完全な値、曖昧な列、複雑な関係を含んでいます。システムはSQLを実行し、返された行を参照結果と比較してスコアリングされます。クエリ言語の場合、構文の正確性だけでは不十分です。Feynの核心的な洞察は、不足している情報はすでにデータベース内に存在し、モデルがそれを尋ねる許可を与えられる必要があるということです。

SQRLの動作方法

SQRLは、質問、スキーマ、データベースに関するオプションの証拠を受け取ります。コンテキストが十分であれば、すぐにクエリを返します。曖昧さが残る場合は、読み取り専用クエリを実行し、返された行を使用して最終的な回答を作成します。検査の決定は状況に応じて行われます。単一テーブルの行数を数えるだけの場合は検査不要で、SQRLは直接回答します。

インタラクションには2つの異なるアクションがあります。inspectブロックはデータベースからの観測を要求し、answerブロックは最終クエリをコミットします。実行フレームワークは読み取り専用モードで探索クエリを実行し、その結果行をobservationタグ内で返します。SQRLは最大5回検査できますが、ほとんどの質問はより少ないステップで完了します。

検査の判断を訓練する

モデルにデータベースアクセスを与えるだけでは、いつどのように検査するかを学習しません。その動作は訓練する必要があり、実行ベースの訓練は厳しいものです。参照クエリ自体が間違っている場合、正しいモデル回答が誤った報酬を受け取ります。そのため、Feynはまず訓練プールをクリーンアップしました。BIRDとSpiderから開始し、参照SQLが使用可能な結果を生成しない例を削除し、3つのモデル審査員が残りのペアをレビューして、質問に答えていないクエリをすべて除外しました。テスト分割はSpiderの保留分割とBIRD devを組み合わせ、残りのデータが訓練に使用されました。

35B-A3B教師モデルは、MiniMaxのM1研究からのCISPOと呼ばれる強化学習手法で直接訓練されました。CISPOは重要度サンプリングの重みをクリップし、ポリシー比率ではなく、珍しいが決定的なトークンからの勾配信号を保持します。各質問に対して、モデルは8つの完全な軌跡を生成し、それぞれの最終クエリを実行し、結果が参照と一致した場合に報酬を与えました。これは、言い回しを無視し、返された行のみをチェックするバイナリ信号です。

グループ相対訓練にはグループ内の変動が必要です。8回すべて成功またはすべて失敗した試行では、どの決定が役立ったかに関するシグナルはありません。そのため、Feynは「混合ゾーン」で訓練しました。これは8回の試行のうち一部だけが成功した場合で、各グループが正しい軌跡と誤った軌跡を区別する選択を強化できるようにしました。これにより教師モデルはいつ検査するかを学習しました。

動作をデプロイ可能にするため、チームは完全な教師軌跡をサンプリングし、最終SQLが正しい結果を返した実行のみを保持しました。これにより、推論、探索クエリ、観測、最終回答を保持した約10,200の例が生成されました。4Bおよび9Bの学生モデルはこれらの軌跡で微調整され、その後同じCISPO実行報酬で洗練されました。SQRLはQwen3.5およびQwen3.6モデルファミリーに基づいています。

ファミリー全体のパフォーマンス

FeynはBIRD DevでSQRLを評価し、参照と同じ結果を返すクエリを正解としました。SQRL-35B-A3Bは70.60%のスコアを達成し、トークンあたり約3Bパラメータをアクティブにします。9B学生モデルはそのほとんどを69.80%で保持しています。SQRL-4Bは68.80%に達し、この評価でClaude Opus 4.6に匹敵し、どこでもホスト可能な小型モデルで、スキーマ、クエリ、観測を自分たちの管理下に置けます。

Feynの報告された比較では、他のフロンティアモデルは以下の通りです:Claude 4.5 Sonnetが67.34%、Qwen3-Coder-480B-A35Bが66.17%、GLM-4.7が63.82%、DeepSeek-R1が61.67%、Kimi-K2-Thinkingが60.63%。

デプロイに関する注意

FeynはSQRL-9Bをデフォルトのチェックポイントとして推奨し、最も厳しい予算にはSQRL-4B、最高精度にはSQRL-35B-A3Bを推奨しています。9BモデルはvLLMで提供できます:

vllm serve feyninc/sqrl-9b \
  --served-model-name sqrl-9b \
  --gpu-memory-utilization 0.90 \
  --max-model-len 32768

アプリケーションループは小さく、データベース実行を読み取り専用に保ち、モデルが回答を発行するまで各観測をモデルに返します。重要な注意点:サービングレイヤーの推論パーサーを有効にしないでください。アクションプロトコルは/answer終了タグの後に表示されるため、そのコンテンツを削除するとモデルのinspectまたはanswerアクションが除去されます。生のメッセージコンテンツを解析し、最終のthinkタグ以降のすべてを保持してください。モデルカードには完全なシステムプロンプトとリファレンスハーネスが含まれています。

主なポイント

  • SQRLは、最終クエリを生成する前に読み取り専用プローブでデータベースを検査するテキストto SQLモデルファミリーです。
  • FeynはSQRL-35B-A3BがBIRD Devで70.6%の実行精度を達成し、Claude Opus 4.6の68.77%を上回ったと報告しています。
  • フラッグシップモデルは4Bおよび9Bの学生モデルに蒸留されます。SQRL-4BはこのテストでOpusに匹敵し、セルフホスト可能です。
  • トレーニングではBIRDとSpiderをクリーンアップし、実行一致に報酬を与え、CISPOと蒸留を使用してモデルに検査タイミングを教えました。
  • 3つのチェックポイントすべてがHugging Faceで公開されており、vLLMと読み取り専用ハーネスを通じて提供され、観測をモデルにフィードバックします。

SQRLはFeynによって構築されました。チームはGitHub、Hugging Face、Xで見つけることができます。