From 79e045bf140427cb60d8fab79ba6ccc9b3eeb0e5 Mon Sep 17 00:00:00 2001 From: LXW <1264174498@qq.com> Date: Tue, 21 May 2024 11:47:00 +0800 Subject: [PATCH] =?UTF-8?q?Updated=20LLM=E4=B8=8Etext2sql=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=20(markdown)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LLM与text2sql配置.md | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/LLM与text2sql配置.md b/LLM与text2sql配置.md index 438dbc1..2a27f03 100644 --- a/LLM与text2sql配置.md +++ b/LLM与text2sql配置.md @@ -1,24 +1,33 @@ -语言模型的使用是SuperSonic的重要一环。能显著增强对用户的问题的理解能力,是通过对话形式与用户交互的基石之一。在本项目中对语言模型能力的应用主要在 LLM 和 Embedding 两方面, 且支持Java和Python两种访问语言模型的方式, 下面分别介绍这两种访问方式的配置。 -## JavaLLMProxy -服务默认启动方式就为Java访问语言模型的方式, 语言模型相关配置可直接通过YAML文件来配置, 目前在配置中支持配置访问open-ai的key和LLM模型的名称 +语言模型的使用是SuperSonic的重要一环。能显著增强对用户的问题的理解能力,是通过对话形式与用户交互的基石之一。在本项目中对语言模型能力的应用主要在 LLM 和 Embedding 两方面, 且支持Java和Python两种访问语言模型的方式。 + +首先,关于LLM的配置,我们专门在launchers/standalone/src/main/resources下创建了一个supersonic-env.sh文件,用于LLM的配置,通过在这里配置,Java和Python两种访问LLM的方式都能生效。
- +

图1-1 配置文件

+除了这里以外,Java和Python两种请求LLM的方式也都能分别配置LLM相关的配置。下面分别介绍这两种访问方式的配置。 + +## JavaLLMProxy +服务默认启动方式就为Java访问语言模型的方式,语言模型相关配置可直接通过YAML文件来配置,目前在配置中支持配置访问open-ai的key和LLM模型的名称 +
+ +

图2-1 配置文件

+
## PythonLLMProxy Python访问LLM的方式需要通过`sh assembly/bin/supersonic-daemon.sh start pyllm`来启动Python服务, 该命令同时也会启动Java服务, 但通过Python服务来访问LLM。 -Python服务默认使用的模型中,LLM选用闭源模型 gpt-3.5-turbo-16k,Embedding模型选用开源模型 GanymedeNil/text2vec-large-chinese。用户可以根据自己实际需求进行配置更改。 +Python服务默认使用的模型中,LLM选用闭源模型 gpt-3.5-turbo,Embedding模型选用开源模型 GanymedeNil/text2vec-large-chinese。用户可以根据自己实际需求进行配置更改。 **配置方式**
- -

图2-1 配置文件

+ +

图2-2 配置文件

+ #### LLM模型的配置 -1. LLM模型相关的配置,在 supersonic/chat/core/src/main/python/config/run_config.ini 进行配置。 -2. LLM默认采用OpenAI的闭源模型 gpt-3.5-turbo-16k,用户可以根据自己的实际需要选择LLM模型的提供方,例如Azure、文心一言等。通过[LLMProvider]下的LLM_PROVIDER_NAME 变量进行配置。需要注意的是,现阶段支持配置的模型提供方必须能够被langchain所支持,提供方的名字可以在langchain文档中查询。 +1. LLM模型相关的配置,在 supersonic/headless/core/src/main/python/config/run_config.ini 进行配置。 +2. LLM默认采用OpenAI的闭源模型 gpt-3.5-turbo,用户可以根据自己的实际需要选择LLM模型的提供方,例如Azure、文心一言等。通过[LLMProvider]下的LLM_PROVIDER_NAME 变量进行配置。需要注意的是,现阶段支持配置的模型提供方必须能够被langchain所支持,提供方的名字可以在langchain文档中查询。 3. LLM的相关变量在[LLMModel]下进行配置,例如openAI的模型,需要提供 MODEL_NAME、OPENAI_API_KEY、TEMPERATURE 等参数配置。不同的LLM提供方需要的配置各不相同,用户可以根据实际情况配置相关变量。 #### Embedding模型配置