From 545fb139ee698cc5c572c6f68211f872cacad9e0 Mon Sep 17 00:00:00 2001 From: codescracker Date: Wed, 13 Sep 2023 17:24:12 +0800 Subject: [PATCH] Allow user to config examples and number of examples used by text2sql in middle of run (#85) --- .gitignore | 1 + .../src/main/python/bin/text2sql_resetting.sh | 12 +++ chat/core/src/main/python/llm/api_service.py | 22 ++++- .../llm/few_shot_example/sql_exampler.py | 52 +++++++++++ chat/core/src/main/python/llm/run_config.py | 2 + .../src/main/python/llm/sql/constructor.py | 73 ++++++++++----- .../python/llm/sql/examples_reload_run.py | 31 ++++++ chat/core/src/main/python/llm/sql/run.py | 88 +++++++++++------- .../main/python/llm/util/chromadb_instance.py | 29 +++++- chat/core/src/main/python/requirements.txt | 3 +- docs/images/text2sql_config.png | Bin 0 -> 125579 bytes docs/userguides/llm_config_cn.md | 26 ++++++ docs/userguides/text2sql_cn.md | 25 +++++ 13 files changed, 303 insertions(+), 61 deletions(-) create mode 100644 chat/core/src/main/python/bin/text2sql_resetting.sh create mode 100644 chat/core/src/main/python/llm/sql/examples_reload_run.py create mode 100644 docs/images/text2sql_config.png create mode 100644 docs/userguides/llm_config_cn.md create mode 100644 docs/userguides/text2sql_cn.md diff --git a/.gitignore b/.gitignore index dd6df14a2..6ad72f6b8 100644 --- a/.gitignore +++ b/.gitignore @@ -15,4 +15,5 @@ assembly/runtime/* /assembly/deploy /runtime **/.flattened-pom.xml +chm_db/ __pycache__/ \ No newline at end of file diff --git a/chat/core/src/main/python/bin/text2sql_resetting.sh b/chat/core/src/main/python/bin/text2sql_resetting.sh new file mode 100644 index 000000000..ed0146a50 --- /dev/null +++ b/chat/core/src/main/python/bin/text2sql_resetting.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash +llm_host=$1 +llm_port=$2 + +baseDir=$(cd "$binDir/.." && pwd -P) + +cd $baseDir/llm/sql + +${python_path} examples_reload_run.py ${llm_port} ${llm_host} + + + diff --git a/chat/core/src/main/python/llm/api_service.py b/chat/core/src/main/python/llm/api_service.py index c06748b74..4e3140b00 100644 --- a/chat/core/src/main/python/llm/api_service.py +++ b/chat/core/src/main/python/llm/api_service.py @@ -10,7 +10,7 @@ from typing import Any, List, Mapping, Optional, Union from fastapi import FastAPI, HTTPException -from sql.run import query2sql +from sql.run import text2sql_agent from preset_retrieval.run import preset_query_retrieval_run, collection as preset_query_collection from preset_retrieval.preset_query_db import (add2preset_query_collection, update_preset_query_collection, @@ -46,12 +46,30 @@ async def din_query2sql(query_body: Mapping[str, Any]): else: linking = query_body['linking'] - resp = query2sql(query_text=query_text, + resp = text2sql_agent.query2sql(query_text=query_text, schema=schema, current_date=current_date, linking=linking) return resp +@app.post("/query2sql_setting_update/") +async def query2sql_setting_update(query_body: Mapping[str, Any]): + if 'sqlExamplars' not in query_body: + raise HTTPException(status_code=400, + detail="sqlExamplars is not in query_body") + else: + sql_examplars = query_body['sqlExamplars'] + + if 'exampleNums' not in query_body: + raise HTTPException(status_code=400, detail="exampleNums is not in query_body") + else: + example_nums = query_body['exampleNums'] + + text2sql_agent.update_examples(sql_examplars=sql_examplars, example_nums=example_nums) + + return "success" + + @app.post("/preset_query_retrival/") async def preset_query_retrival(query_text_list: List[str], n_results: int = 5): parsed_retrieval_res_format = preset_query_retrieval_run(preset_query_collection, query_text_list, n_results) diff --git a/chat/core/src/main/python/llm/few_shot_example/sql_exampler.py b/chat/core/src/main/python/llm/few_shot_example/sql_exampler.py index 87a32dc3d..9569fe97a 100644 --- a/chat/core/src/main/python/llm/few_shot_example/sql_exampler.py +++ b/chat/core/src/main/python/llm/few_shot_example/sql_exampler.py @@ -292,5 +292,57 @@ examplars= [ 基于table和columns,可能的cell values 是 = ['刘锝桦', 1992, 4, 2, 2020, 5, 2, 200000]。""", "schema_links":"""["结算播放量", "发布时间", "歌手名", "刘锝桦", 1992, 4, 2, 2020, 5, 2, 200000]""", "sql":"""select 歌曲名 from 歌曲库 where YEAR(发布时间) >= 1992 and MONTH(发布时间) >= 4 and DAY(发布时间) >= 2 and YEAR(发布时间) <= 2020 and MONTH(发布时间) <= 5 and DAY(发布时间) <= 2 and 歌手名 = '刘锝桦' and 结算播放量 > 200000 and 数据日期 = '2023-08-16'""" + }, + { + "current_date":"2023-09-04", + "table_name":"内容库产品", + "fields_list":"""["用户名", "部门", "模块", "访问时长", "访问次数", "访问人数", "数据日期"]""", + "question":"内容库近30天访问次数的平均数", + "prior_schema_links":"""[]""", + "analysis": """让我们一步一步地思考。在问题“内容库近30天访问次数的平均数“中,我们被问: +“访问次数的平均数”,所以我们需要column=[访问次数] +”内容库近30天“,所以我们需要column=[数据日期] +基于table和columns,可能的cell values 是 = [30]。""", + "schema_links":"""["访问次数", "数据日期", 30]""", + "sql":"""select avg(访问次数) from 内容库产品 where datediff('day', 数据日期, '2023-09-04') <= 30 """ + }, + { + "current_date":"2023-09-04", + "table_name":"内容库产品", + "fields_list":"""["用户名", "部门", "模块", "访问时长", "访问次数", "访问人数", "数据日期"]""", + "question":"内容库近半年哪个月的访问次数汇总最高", + "prior_schema_links":"""[]""", + "analysis": """让我们一步一步地思考。在问题“内容库近半年哪个月的访问次数汇总最高“中,我们被问: +“访问次数汇总最高”,所以我们需要column=[访问次数] +”内容库近半年“,所以我们需要column=[数据日期] +基于table和columns,可能的cell values 是 = [0.5]。""", + "schema_links":"""["访问次数", "数据日期", 0.5]""", + "sql":"""select MONTH(数据日期), sum(访问次数) from 内容库产品 where datediff('year', 数据日期, '2023-09-04') <= 0.5 group by MONTH(数据日期) order by sum(访问次数) desc limit 1 """ + }, + { + "current_date":"2023-09-04", + "table_name":"内容库产品", + "fields_list":"""["用户名", "部门", "模块", "访问时长", "访问次数", "访问人数", "数据日期"]""", + "question":"内容库近半年每个月的平均访问次数", + "prior_schema_links":"""[]""", + "analysis": """让我们一步一步地思考。在问题“内容库近半年每个月的平均访问次数“中,我们被问: +“每个月的平均访问次数”,所以我们需要column=[访问次数] +”内容库近半年“,所以我们需要column=[数据日期] +基于table和columns,可能的cell values 是 = [0.5]。""", + "schema_links":"""["访问次数", "数据日期", 0.5]""", + "sql":"""select MONTH(数据日期), avg(访问次数) from 内容库产品 where datediff('year', 数据日期, '2023-09-04') <= 0.5 group by MONTH(数据日期) """ + }, + { + "current_date":"2023-09-10", + "table_name":"内容库产品", + "fields_list":"""["用户名", "部门", "模块", "访问时长", "访问次数", "访问人数", "数据日期"]""", + "question":"内容库 按部门统计访问次数 top10 的部门", + "prior_schema_links":"""[]""", + "analysis": """让我们一步一步地思考。在问题“内容库 按部门统计访问次数 top10 的部门“中,我们被问: +“访问次数 top10 的部门”,所以我们需要column=[访问次数] +”内容库 按部门统计“,所以我们需要column=[部门] +基于table和columns,可能的cell values 是 = [10]。""", + "schema_links":"""["访问次数", "部门", 10]""", + "sql":"""select 部门, sum(访问次数) from 内容库产品 group by 部门 order by sum(访问次数) desc limit 10 """ } ] \ No newline at end of file diff --git a/chat/core/src/main/python/llm/run_config.py b/chat/core/src/main/python/llm/run_config.py index e2b47b404..b5a0a9c1b 100644 --- a/chat/core/src/main/python/llm/run_config.py +++ b/chat/core/src/main/python/llm/run_config.py @@ -5,11 +5,13 @@ PROJECT_DIR_PATH = os.path.dirname(os.path.abspath(__file__)) MODEL_NAME = "gpt-3.5-turbo-16k" OPENAI_API_KEY = "YOUR_API_KEY" + TEMPERATURE = 0.0 CHROMA_DB_PERSIST_DIR = 'chm_db' PRESET_QUERY_COLLECTION_NAME = "preset_query_collection" TEXT2DSL_COLLECTION_NAME = "text2dsl_collection" +TEXT2DSL_FEW_SHOTS_EXAMPLE_NUM = 15 CHROMA_DB_PERSIST_PATH = os.path.join(PROJECT_DIR_PATH, CHROMA_DB_PERSIST_DIR) diff --git a/chat/core/src/main/python/llm/sql/constructor.py b/chat/core/src/main/python/llm/sql/constructor.py index c6f367492..b844a84fe 100644 --- a/chat/core/src/main/python/llm/sql/constructor.py +++ b/chat/core/src/main/python/llm/sql/constructor.py @@ -1,6 +1,8 @@ # -*- coding:utf-8 -*- +from typing import Any, List, Mapping, Optional, Union import os import sys +import time sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) sys.path.append(os.path.dirname(os.path.abspath(__file__))) @@ -13,41 +15,64 @@ from langchain.prompts.example_selector import SemanticSimilarityExampleSelector import chromadb from chromadb.config import Settings +from chromadb.api import Collection, Documents, Embeddings -from few_shot_example.sql_exampler import examplars as din_sql_examplars +from few_shot_example.sql_exampler import examplars as sql_examplars from util.text2vec import Text2VecEmbeddingFunction, hg_embedding -from util.chromadb_instance import client as chromadb_client +from util.chromadb_instance import client as chromadb_client, empty_chroma_collection_2 +from run_config import TEXT2DSL_COLLECTION_NAME, TEXT2DSL_FEW_SHOTS_EXAMPLE_NUM -from run_config import TEXT2DSL_COLLECTION_NAME +def reload_sql_example_collection(vectorstore:Chroma, + sql_examplars:List[Mapping[str, str]], + schema_linking_example_selector:SemanticSimilarityExampleSelector, + sql_example_selector:SemanticSimilarityExampleSelector, + example_nums:int + ): + print("original sql_examples_collection size:", vectorstore._collection.count()) + new_collection = empty_chroma_collection_2(collection=vectorstore._collection) + vectorstore._collection = new_collection + print("emptied sql_examples_collection size:", vectorstore._collection.count()) -vectorstore = Chroma(collection_name=TEXT2DSL_COLLECTION_NAME, - embedding_function=hg_embedding, - client=chromadb_client) - -example_nums = 15 - -schema_linking_example_selector = SemanticSimilarityExampleSelector(vectorstore=vectorstore, k=example_nums, + schema_linking_example_selector = SemanticSimilarityExampleSelector(vectorstore=sql_examples_vectorstore, k=example_nums, input_keys=["question"], example_keys=["table_name", "fields_list", "prior_schema_links", "question", "analysis", "schema_links"]) -sql_example_selector = SemanticSimilarityExampleSelector(vectorstore=vectorstore, k=example_nums, + sql_example_selector = SemanticSimilarityExampleSelector(vectorstore=sql_examples_vectorstore, k=example_nums, input_keys=["question"], example_keys=["question", "current_date", "table_name", "schema_links", "sql"]) -if vectorstore._collection.count() > 0: - print("examples already in din_sql_vectorstore") - print("init din_sql_vectorstore size:", vectorstore._collection.count()) - if vectorstore._collection.count() < len(din_sql_examplars): - print("din_sql_examplars size:", len(din_sql_examplars)) - vectorstore._collection.delete() - print("empty din_sql_vectorstore") - for example in din_sql_examplars: - schema_linking_example_selector.add_example(example) - print("added din_sql_vectorstore size:", vectorstore._collection.count()) -else: - for example in din_sql_examplars: + for example in sql_examplars: schema_linking_example_selector.add_example(example) - print("added din_sql_vectorstore size:", vectorstore._collection.count()) + print("reloaded sql_examples_collection size:", vectorstore._collection.count()) + + return vectorstore, schema_linking_example_selector, sql_example_selector + + +sql_examples_vectorstore = Chroma(collection_name=TEXT2DSL_COLLECTION_NAME, + embedding_function=hg_embedding, + client=chromadb_client) + +example_nums = TEXT2DSL_FEW_SHOTS_EXAMPLE_NUM + +schema_linking_example_selector = SemanticSimilarityExampleSelector(vectorstore=sql_examples_vectorstore, k=example_nums, + input_keys=["question"], + example_keys=["table_name", "fields_list", "prior_schema_links", "question", "analysis", "schema_links"]) + +sql_example_selector = SemanticSimilarityExampleSelector(vectorstore=sql_examples_vectorstore, k=example_nums, + input_keys=["question"], + example_keys=["question", "current_date", "table_name", "schema_links", "sql"]) + +if sql_examples_vectorstore._collection.count() > 0: + print("examples already in sql_vectorstore") + print("init sql_vectorstore size:", sql_examples_vectorstore._collection.count()) + if sql_examples_vectorstore._collection.count() < len(sql_examplars): + print("sql_examplars size:", len(sql_examplars)) + sql_examples_vectorstore, schema_linking_example_selector, sql_example_selector = reload_sql_example_collection(sql_examples_vectorstore, sql_examplars, schema_linking_example_selector, sql_example_selector, example_nums) + print("added sql_vectorstore size:", sql_examples_vectorstore._collection.count()) +else: + sql_examples_vectorstore, schema_linking_example_selector, sql_example_selector = reload_sql_example_collection(sql_examples_vectorstore, sql_examplars, schema_linking_example_selector, sql_example_selector, example_nums) + print("added sql_vectorstore size:", sql_examples_vectorstore._collection.count()) + diff --git a/chat/core/src/main/python/llm/sql/examples_reload_run.py b/chat/core/src/main/python/llm/sql/examples_reload_run.py new file mode 100644 index 000000000..5d7b72621 --- /dev/null +++ b/chat/core/src/main/python/llm/sql/examples_reload_run.py @@ -0,0 +1,31 @@ +# -*- coding:utf-8 -*- +from typing import Any, List, Mapping, Optional, Union +import os +import sys +import requests +import json + +sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +sys.path.append(os.path.dirname(os.path.abspath(__file__))) + +from run_config import TEXT2DSL_FEW_SHOTS_EXAMPLE_NUM +from few_shot_example.sql_exampler import examplars as sql_examplars + +def text2dsl_setting_update(llm_host:str, llm_port:str, + sql_examplars:List[Mapping[str, str]], example_nums:int): + + url = f"http://{llm_host}:{llm_port}/query2sql_setting_update/" + payload = {"sqlExamplars":sql_examplars, "exampleNums":example_nums} + headers = {'content-type': 'application/json'} + response = requests.post(url, data=json.dumps(payload), headers=headers) + print(response.text) + + +if __name__ == "__main__": + arguments = sys.argv + + llm_host = str(arguments[1]) + llm_port = str(arguments[2]) + + text2dsl_setting_update(llm_host, llm_port, + sql_examplars, TEXT2DSL_FEW_SHOTS_EXAMPLE_NUM) diff --git a/chat/core/src/main/python/llm/sql/run.py b/chat/core/src/main/python/llm/sql/run.py index 34919799b..a7ece82d8 100644 --- a/chat/core/src/main/python/llm/sql/run.py +++ b/chat/core/src/main/python/llm/sql/run.py @@ -8,53 +8,75 @@ sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) sys.path.append(os.path.dirname(os.path.abspath(__file__))) from sql.prompt_maker import schema_linking_exampler, sql_exampler -from sql.constructor import schema_linking_example_selector, sql_example_selector +from sql.constructor import schema_linking_example_selector, sql_example_selector,sql_examples_vectorstore, reload_sql_example_collection from sql.output_parser import schema_link_parse from util.llm_instance import llm -def query2sql(query_text: str, +class Text2DSLAgent(object): + def __init__(self): + self.schema_linking_exampler = schema_linking_exampler + self.sql_exampler = sql_exampler + + self.sql_examples_vectorstore = sql_examples_vectorstore + self.schema_linking_example_selector = schema_linking_example_selector + self.sql_example_selector = sql_example_selector + + self.schema_link_parse = schema_link_parse + + self.llm = llm + + def update_examples(self, sql_examplars, example_nums): + self.sql_examples_vectorstore, self.schema_linking_example_selector, self.sql_example_selector = reload_sql_example_collection(self.sql_examples_vectorstore, + sql_examplars, + self.schema_linking_example_selector, + self.sql_example_selector, + example_nums) + + def query2sql(self, query_text: str, schema : Union[dict, None] = None, current_date: str = None, linking: Union[List[Mapping[str, str]], None] = None ): - - print("query_text: ", query_text) - print("schema: ", schema) - print("current_date: ", current_date) - print("prior_schema_links: ", linking) - if linking is not None: - prior_schema_links = {item['fieldValue']:item['fieldName'] for item in linking} - else: - prior_schema_links = {} + print("query_text: ", query_text) + print("schema: ", schema) + print("current_date: ", current_date) + print("prior_schema_links: ", linking) - model_name = schema['modelName'] - fields_list = schema['fieldNameList'] + if linking is not None: + prior_schema_links = {item['fieldValue']:item['fieldName'] for item in linking} + else: + prior_schema_links = {} - schema_linking_prompt = schema_linking_exampler(query_text, model_name, fields_list, prior_schema_links, schema_linking_example_selector) - print("schema_linking_prompt->", schema_linking_prompt) - schema_link_output = llm(schema_linking_prompt) - schema_link_str = schema_link_parse(schema_link_output) - - sql_prompt = sql_exampler(query_text, model_name, schema_link_str, current_date, sql_example_selector) - print("sql_prompt->", sql_prompt) - sql_output = llm(sql_prompt) + model_name = schema['modelName'] + fields_list = schema['fieldNameList'] - resp = dict() - resp['query'] = query_text - resp['model'] = model_name - resp['fields'] = fields_list - resp['priorSchemaLinking'] = linking - resp['dataDate'] = current_date + schema_linking_prompt = self.schema_linking_exampler(query_text, model_name, fields_list, prior_schema_links, self.schema_linking_example_selector) + print("schema_linking_prompt->", schema_linking_prompt) + schema_link_output = self.llm(schema_linking_prompt) + schema_link_str = self.schema_link_parse(schema_link_output) + + sql_prompt = self.sql_exampler(query_text, model_name, schema_link_str, current_date, self.sql_example_selector) + print("sql_prompt->", sql_prompt) + sql_output = llm(sql_prompt) - resp['schemaLinkingOutput'] = schema_link_output - resp['schemaLinkStr'] = schema_link_str - - resp['sqlOutput'] = sql_output + resp = dict() + resp['query'] = query_text + resp['model'] = model_name + resp['fields'] = fields_list + resp['priorSchemaLinking'] = linking + resp['dataDate'] = current_date - print("resp: ", resp) + resp['schemaLinkingOutput'] = schema_link_output + resp['schemaLinkStr'] = schema_link_str + + resp['sqlOutput'] = sql_output - return resp + print("resp: ", resp) + + return resp + +text2sql_agent = Text2DSLAgent() diff --git a/chat/core/src/main/python/llm/util/chromadb_instance.py b/chat/core/src/main/python/llm/util/chromadb_instance.py index f0fe6ce01..ac2af57ca 100644 --- a/chat/core/src/main/python/llm/util/chromadb_instance.py +++ b/chat/core/src/main/python/llm/util/chromadb_instance.py @@ -1,5 +1,8 @@ # -*- coding:utf-8 -*- +from typing import Any, List, Mapping, Optional, Union + import chromadb +from chromadb.api import Collection, Documents, Embeddings from chromadb.config import Settings from run_config import CHROMA_DB_PERSIST_PATH @@ -7,4 +10,28 @@ from run_config import CHROMA_DB_PERSIST_PATH client = chromadb.Client(Settings( chroma_db_impl="duckdb+parquet", persist_directory=CHROMA_DB_PERSIST_PATH # Optional, defaults to .chromadb/ in the current directory -)) \ No newline at end of file +)) + + +def empty_chroma_collection_2(collection:Collection): + collection_name = collection.name + client = collection._client + metadata = collection.metadata + embedding_function = collection._embedding_function + + client.delete_collection(collection_name) + + new_collection = client.get_or_create_collection(name=collection_name, + metadata=metadata, + embedding_function=embedding_function) + + size_of_new_collection = new_collection.count() + + print(f'Collection {collection_name} emptied. Size of new collection: {size_of_new_collection}') + + return new_collection + + +def empty_chroma_collection(collection:Collection): + collection.delete() + diff --git a/chat/core/src/main/python/requirements.txt b/chat/core/src/main/python/requirements.txt index a5a48d046..44750f464 100644 --- a/chat/core/src/main/python/requirements.txt +++ b/chat/core/src/main/python/requirements.txt @@ -4,4 +4,5 @@ fastapi==0.95.1 chromadb==0.3.21 tiktoken==0.3.3 uvicorn[standard]==0.21.1 -pandas==1.5.3 \ No newline at end of file + + diff --git a/docs/images/text2sql_config.png b/docs/images/text2sql_config.png new file mode 100644 index 0000000000000000000000000000000000000000..af552aca34d9b37bcadc0c7becef7c01128c0cfa GIT binary patch literal 125579 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 mMdtqRVP}0XO)X$<{Lg-7Q*Imc3PDE(An + +

图1-1 LLM配置文件

+ + +1. LLM模型相关的配置,在 supersonic/chat/core/src/main/python/llm/run_config.py 进行配置。 +2. LLM采用OpenAI的闭源模型 gpt-3.5-turbo-16k,在使用时需要提供OpenAI的API-Key才能调用LLM模型,通过 OPENAI_API_KEY 变量进行配置。 +3. Embedding模型采用开源模型 GanymedeNil/text2vec-large-chinese,通过 HF_TEXT2VEC_MODEL_NAME 变量进行位置,为了使用方便采用托管在HuggingFace的源,初次启动时自动下载模型文件。 + +### **FAQ** +1. 可以用开源的LLM模型替代OpenAI的GPT模型吗? + - 暂时不能。我们测试过大部分主流的开源LLM,在实际使用中,在本项目需要LLM提供的逻辑推理和代码生成场景上,开源模型还不能满足需求。 + - 我们会持续跟进开源LLM的最新进展,在有满足要求的开源LLM后,在项目中集成私有化部署开源LLM的能力。 +2. GPT4、GPT3.5、GPT3.5-16k 这几个模型用哪个比较好? + - GPT3.5、GPT3.5-16k 均能基本满足要求,但会有输出结果不稳定的情况;GPT3.5的token长度限制为4k,在现有CoT策略下,容易出现超过长度限制的情况。 + - GPT4的输出更稳定,但费用成本远超GPT3.5,可以根据实际使用场景进行选择。 +3. Embedding模型用其他的可以吗? + - 可以。可以以该项目[text2vec]([URL](https://github.com/shibing624/text2vec))的榜单作为参考,然后在HuggingFace找到对应模型的model card,修改HF_TEXT2VEC_MODEL_NAME变量的取值。 diff --git a/docs/userguides/text2sql_cn.md b/docs/userguides/text2sql_cn.md new file mode 100644 index 000000000..71c1efacc --- /dev/null +++ b/docs/userguides/text2sql_cn.md @@ -0,0 +1,25 @@ +# text2sql功能相关配置 + +### **简介** +text2sql的功能实现,高度依赖对LLM的应用。通过LLM生成SQL的过程中,利用小样本(few-shots-examples)通过思维链(chain-of-thoughts)的方式对LLM in-context-learning的能力进行引导,对于生成较为稳定且符合下游语法解析规则的SQL非常重要。用户可以根据自身需要,对样本池及样本的数量进行配置,使其更加符合自身业务特点。 + +### **配置方式** +1. 样本池的配置。 + - supersonic/chat/core/src/main/python/llm/few_shot_example/sql_exampler.py为样本池配置文件。用户可以以已有的样本作为参考,配置更贴近自身业务需求的样本,用于更好的引导LLM生成SQL。 +2. 样本数量的配置。 + - 在supersonic/chat/core/src/main/python/llm/run_config.py 中通过 TEXT2DSL_FEW_SHOTS_EXAMPLE_NUM 变量进行配置。 + - 默认值为15,为项目在内部实践后较优的经验值。样本少太少,对导致LLM在生成SQL的过程中缺少引导和示范,生成的SQL会更不稳定;样本太多,会增加生成SQL需要的时间和LLM的token消耗(或超过LLM的token上限)。 + -
+ +

图1-1 样本数量的配置文件

+
+ +3. 运行中更新配置的脚本。 + - 如果在启动项目后,用户需要对text2sql功能的相关配置进行调试,可以在修改相关配置文件后,通过脚本 supersonic/chat/core/src/main/python/bin/text2sql_resetting.sh 在项目运行中让配置生效。 + +### **FAQ** +1. 生成一个SQL需要消耗的的LLM token数量太多了,按照openAI对token的收费标准,生成一个SQL太贵了,可以少用一些token吗? + - 可以。 用户可以根据自身需求,如配置方式1.中所示,修改样本池中的样本,选用一些更加简短的样本。如配置方式2.中所示,减少使用的样本数量。 + - 需要注意,样本和样本数量的选择对生成SQL的质量有很大的影响。过于激进的降低输入的token数量可能会降低生成SQL的质量。需要用户根据自身业务特点实测后进行平衡。 + +