SQL品質管理のための3つの安全策
生成された結果にエラーが生じる可能性があるため、防御的なスキームが推奨される:
- 予防段階::
- セットアップ
temperature=0
決定論的出力を保証するパラメータ - プロジェクトが提供する標準プロンプトテンプレートを使用する(SQLite構文制約付き)
- 問題の出力範囲を制限する(例
仅使用WHERE条件,不要包含子查询
)
- セットアップ
- 検出ステージ::
- モデルのステップごとのエクスポートを有効にする (
stream=True
) 中間推論プロセスの観察 - 用いる
sqlparse
構文チェック用ライブラリ - とおす
PRAGMA foreign_key_check
関係の完全性を検証する
- モデルのステップごとのエクスポートを有効にする (
- 修正段階::
- 複雑なクエリにパーティショニング戦略を採用:組み合わせる前にサブクエリを生成する
- SynSQLデータセット 2,183のエラー訂正例への言及
- エラーが続く場合、14B/32Bモデルのバージョンを切り替える
典型的な反応:発生した場合GROUP BY
見つからない場合は、プロンプトで「XXフィールドで統計をグループ化する必要がある」と強調する。
この答えは記事から得たものである。OmniSQL: 自然言語を高品質なSQLクエリに変換するモデルについて