TL;DR
SQLoomは、Text-to-SQLの微調整でSQLを単なる文字列として模倣するのではなく、構文・意味・論理の3レベルで「正しい出力集合」と「微妙に異なる誤り集合」を対比させる。Qwen3-1.7BでSpider Dev 88.7%(ゼロショット62.9%)、Spider Test 89.2%、BIRD Dev 73.4%を報告し、単一パス0.42秒/クエリで生成する。制約生成にLLMエージェントとパーサ・実行検証を用いる点、評価範囲がSpider/BIRD系に限られる点は留意する。
既存手法との違い
原論文は、トークン単位SFT、データ拡張やスキーマリンク系の微調整、DPO/RLによるフィードバック系、プロンプトベースのエージェント手法と比較している。SQLoomの違いは、クエリ全体やトークン列ではなく、構文・意味・論理の局所単位で正しい集合と誤り集合を対比する点。同一訓練データで制約を通常SFTに置換するとEXがSpider Testで8.8ポイント、BIRD Devで10.3ポイント低下したと報告。Qwen3-1.7BでSpider Dev 88.7%、Spider Test 89.2%、BIRD Dev 73.4%を達成し、評価した最大70BのベースラインやゼロショットQwen3-235B/GPT-4を上回ると述べる。摂動質問では最大0.6ポイント低下に対し、エージェント手法はSpider-DKで8.8–12.1ポイント低下。0.42秒/クエリでGPT-4ベースCogSQLより23倍高速と報告している。
使える条件
入力は自然言語質問とDBスキーマ。オープンウェイトLLMの教師あり微調整に、スキーマ対応SQLパーサ、実行環境、反例DB生成、制約合成用LLMエージェントが必要。推論は単一パスで、パーサを serving loop に置かない設計。原論文の主評価はQwen3-1.7BとSpider/BIRDおよびSpider摂動変種。他のモデル規模・業種DB・多言語・更新頻繁な実運用での有効性は提示本文からは確認できない。
限界と未検証の範囲
評価はSpider/BIRD系のベンチマークと摂動変種に限定される。制約合成にはLLMエージェント、パーサ、実行検証、反例DBが必要で、その構築コストや失敗時の影響は提示本文からは確認できない。Spider-Refinedは訓練用で、評価は公式ラベルを使用。SQL文法・実行環境・スキーマ説明の品質に依存し、大規模実DB、ノイズ、プライバシー、多言語、継続学習は未検証。単一パス0.42秒/クエリは特定セットアップの報告であり一般化できない。
解説
ねえ智也くん、SQLoomって論文見た?Text-to-SQLを構文・意味・論理で対比学習するやつ。
うん。SQLをただの文字列として覚えるんじゃなくて、正しい出力集合と微妙に違う誤り集合を比べる話だよね。
そもそもなんで普通の微調整じゃだめなの?
普通のSFTは参照SQLのトークン確率を上げるだけ。エイリアスや比較演算子が1個違うだけでクエリは無効になるのに、損失には小さくしか出ない。あとSQLは同じ意味の書き方が複数あるから、正しい書き換えも罰しちゃう。
なるほど。で、SQLoomは何を変えたの?
構文・意味・論理の3レベルで、正しい集合を誤り集合より好むようにする。構文はパーサとスキーマで合法トークン、意味は質問句に対応するSQL断片、論理は依存する句が一緒に変わるかを見る。
正しい集合と誤り集合って、どうやって作るの?
構文はパーサから直接。意味と論理はLLMエージェントが候補を作って、SQLパーサと実行、反例DBで検証する。推論時は単一パスで、パーサを毎回かませない設計。
評価は?
Qwen3-1.7BでSpider Devがゼロショット62.9%から88.7%、Spider Test 89.2%、BIRD Dev 73.4%。同じ訓練データで制約を普通のSFTに置き換えると、Spider Testで8.8ポイント、BIRD Devで10.3ポイント下がったと報告してる。
1.7Bでそこまで行くのすごい。比較は?
論文ではトークン単位SFT、データ拡張系、スキーマリンク系、DPO/RL系、プロンプトベースのエージェント手法と比較。SQLoomはクエリ全体じゃなくて局所単位で正しい集合と誤り集合を対比するのが違い。評価した最大70BのベースラインやゼロショットのQwen3-235B、GPT-4も上回ると述べてる。
摂動質問にも強いの?
Spiderの摂動変種で最大0.6ポイント低下。エージェント手法はSpider-DKで8.8〜12.1ポイント低下した、と報告してる。生成は0.42秒/クエリで、その設定ではGPT-4ベースのCogSQLより23倍速い。
意義は、小さいモデルでも制約付きで精度と速度を両立できるってことだね。
うん。でも適用条件は質問とDBスキーマが入力で、オープンウェイトLLMの教師あり微調整が前提。制約合成にLLMエージェント、パーサ、実行環境、反例DBが要る。主評価はQwen3-1.7BとSpider/BIRD系に限られる。
制約を作るコストとか、失敗したときの影響は?
提示本文からは確認できない。あとSpider-Refinedは訓練用で、評価は公式ラベル。大規模実DB、ノイズ、プライバシー、多言語、継続学習は未検証。0.42秒も特定セットアップの報告で、一般化できない。
なるほどね。SQLoomって名前、SQLを織る感じでかわいい。私の部屋も織り込んで整理してほしいな。
それはSQLじゃなくて掃除。