JDK版本: 1.8+Maven:2+ (源码编译)
Node版本:16+pnpm: 8+
Python版本: 3.9+pip版本: 3.9+
langchain==0.0.207openai==0.27.4fastapi==0.95.1chromadb==0.3.21tiktoken==0.3.3vicorn[standard]==0.21.1(windows: uvicorn==0.21.1)pandas==1.5.3
pip路径:在supersonic-common.sh中修改 python路径:在supersonic-common.sh中修改 默认pip路径:/usr/local/bin/pip3,默认python路径:/usr/local/bin/python3 Windows系统需要将python和pip指令配置好
下载最新版release包 https://github.com/tencentmusic/supersonic/releases 启动脚本: 1)unzip supersonic-release-xxx.zip 浏览器访问:http://localhost:9080 日志:目录../runtime/supersonic-standalone/logs
源码编译 启动运行 浏览器访问:http://localhost:9080
后端直接访问前端资源的方式 1)sh assembly/bin/supersonic-build.sh 执行构建 2)IDE本地启动Java类StandaloneLauncher
前后端分开启动的方式
Windows环境同样提供对应的bat脚本 系统目前支持两种访问LLM和向量库的方式: Ubuntu环境,若出现报错, 可尝试访问: https://support.huaweicloud.com/intl/zh-cn/deployman_faq/deployman_faq_1016.html
sh supersonic-build.sh 编译java服务、前端代码 sh supersonic-build.sh pyllm 编译java服务、前端代码、python代码
sh supersonic-daemon.sh start 启动java服务 sh supersonic-daemon.sh restart 重启java服务 sh supersonic-daemon.sh start pyllm 启动java、python服务 sh supersonic-daemon.sh restart pyllm 重启java、python服务 sh supersonic-daemon.sh stop 重启所有服务 window环境命令与linux系统类似,执行bat命令;
现我们对各工程主要功能进行说明
bin文件夹用于存放编译和启动脚本;支持window、linux两套系统; build文件夹用于存储编译后的文件包;执行build命令后,编译后的前后端包存放在build文件夹下; 执行启动命令后,会将编译的包copy至runtime目录,解压并启动服务;如需修改配置文件参数,可在supersonic-standalone/conf目录下配置文件进行修改;其中supersonic-standalone/logs是java服务日志保存目录;supersonic-standalone/pyllm/pyllm.log是python服务日志文件;
server工程主要是对外提供rest接口、集成业务增删查改功能; core工程主要集成chat模块最核心功能:如mapper、parser、corrector、query等 api工程主要是定义pojo对象包括request、response、以及共用的pojo类; python工程主要是与LLM、向量库交互的python版本的实现;
server工程,和chat中的server功能类似; core工程主要集成headless模块最核心功能:如queryCache、queryParser、queryPlan、queryExecute等; api工程,和chat中的api功能类似;