クエリ分析のための NL2SQL サービスは、自然言語クエリを SQL 文に変換します。この Topic では、NL2SQL サービスを構成する方法について説明します。
例
クエリ: 1 年 3 組の模範生徒は誰ですか?
| クエリ: 2024 年にクローズされたケースの原因トップ 5 は何ですか?
|
構成の説明
クエリ分析のための NL2SQL サービスは、自然言語クエリを SQL 文に変換します。NL2SQL サービスを使用するには、次の情報を構成する必要があります。
基本的なテーブル情報: NL2SQL サービスが依存するビジネスデータテーブルを構成します。これには、フィールド名、フィールドタイプ、フィールドの列挙値、フィールドの説明、フィールドマッピング、テーブル結合が含まれます。
学習サンプル: 頻繁に使用されるクエリや複雑なクエリと、それに対応する SQL 文を構成して、NL2SQL サービスの精度を向上させます。サービスが予期しない SQL 文を生成した場合は、ここにクエリと正しい SQL 文を追加することもできます。
カスタムルール (ビジネス用語と概念): ユーザーのクエリには、ビジネス固有の用語や概念が含まれていることがよくあります。モデルがこの情報を理解できるように、ここに用語、概念、およびそれに対応する説明を構成できます。
例:
過去 1 週間の浸水管理はどうでしたか? 関連情報: 浸水管理には、雨水マンホールの蓋や道路の冠水イベントが含まれます。
模範生徒は ID が 10 以下の生徒です。スポーツ特待生は ID が 11 より大きい生徒です。
手順
AI Search Open Platform で、[モデルサービス] > [サービス構成] を選択し、[作成] をクリックします。
Service Category と Configuration Type はデフォルト設定のままにします。[構成名] に、student_info_analysis などの名前を入力します。これは、学生情報のデータ分析を表します。
[保存して次へ] をクリックします。NL2SQL サービスで必要なデータテーブルを次のフォーマットで構成します。
基本的なテーブル構成
[ { "table":"schools", "columns": [ { "column": "class", "description": "Class", "type": "string", "example": ["Class 3, Grade 1", "Accelerated Class"], "value_mapping": [] }, { "column": "school", "description": "School", "type": "string", "example": ["High School B in City A", "AA No. 5 High School"], "value_mapping": [] } ] }, { "table":"students", "columns": [ { "column": "id", "description": "Student ID", "type": "int", "example": [1, 2], "value_mapping": [ [1,"Zhang San"], [2,"Li Si"] ] }, { "column": "class", "description": "Class", "type": "string", "example": ["Class 3, Grade 1", "Accelerated Class"], "value_mapping": [] } ] } ]tableのテーブル名は小文字で始まる必要があり、小文字、数字、アンダースコア (_) のみを含めることができます。名前は 30 文字を超えることはできません。columnのフィールド名は小文字で始まる必要があり、小文字、数字、アンダースコア (_) のみを含めることができます。名前は 30 文字を超えることはできません。typeのフィールドタイプは、text、string、int8、uint8、int16、uint16、int32、int、uint32、int64、uint64、float、double、location、date、time、または timestamp にすることができます。テーブル関連構成
["students.class=schools.class"]
[次へ] をクリックします。カスタムルールと学習サンプルを構成して、NL2SQL サービスの精度を向上させます。
学習サンプル: 頻繁に使用されるクエリや複雑なクエリと、それに対応する SQL 文を構成して、NL2SQL サービスの精度を向上させます。サービスが予期しない SQL 文を生成した場合は、ここにクエリと正しい SQL 文を追加することもできます。
[ { "query":"Which class is Zhang San in?", "sql" : "SELECT class FROM students WHERE name = 'Zhang San'" } ]カスタムルールマッピング (ビジネス用語と概念): ユーザーのクエリには、ビジネス固有の用語や概念が含まれていることがよくあります。モデルがこの情報を理解できるように、ここに用語、概念、およびそれに対応する説明を構成できます。
例: 模範生徒は ID (id) が 10 以下の生徒です。スポーツ特待生は ID (id) が 11 より大きい生徒です。
[ { "key":"Exemplary student", "value":"students.id <= 10" }, { "key":"Student athlete", "value":"students.id > 11" } ]
[OK] をクリックし、次に [今すぐアクティブ化] をクリックします。サービス構成リストにリダイレクトされます。システムが構成のフォーマットを検証している間、アクティベーションステータスは Activating に変わります。
アクティベーションステータスが Activated に変わると、サービス構成を使用する準備が整います。体験センターで NL2SQL サービスをテストできます。
次のステップ
NL2SQL サービスをビジネスコードに統合するには、「NL2SQL API」をご参照ください。

