AI 业务逻辑初始化
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
package com.vetti.web.controller.ai;
|
||||
|
||||
import com.vetti.common.ai.elevenLabs.ElevenLabsClient;
|
||||
import com.vetti.common.ai.gpt.ChatGPTClient;
|
||||
import com.vetti.common.core.controller.BaseController;
|
||||
import com.vetti.common.core.domain.AjaxResult;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* AI 共通测试接口处理
|
||||
*
|
||||
* @author wangxiangshun
|
||||
*/
|
||||
@Api(tags ="AI 共通测试接口处理")
|
||||
@RestController
|
||||
@RequestMapping("/aiCommon")
|
||||
public class AiCommonController extends BaseController
|
||||
{
|
||||
@Autowired
|
||||
private ElevenLabsClient elevenLabsClient;
|
||||
|
||||
|
||||
@Autowired
|
||||
private ChatGPTClient chatGPTClient;
|
||||
|
||||
/**
|
||||
* 进行文本转语音处理
|
||||
*/
|
||||
@ApiOperation("进行文本转语音处理")
|
||||
@GetMapping("/handleTextToVice")
|
||||
public AjaxResult handleTextToVice()
|
||||
{
|
||||
elevenLabsClient.handleTextToVoice("我只是测试的文本转换成语音","/Users/wangxiangshun/Desktop/临时文件/output.mp3");
|
||||
return success();
|
||||
}
|
||||
|
||||
/**
|
||||
* AI 聊天
|
||||
*/
|
||||
@ApiOperation("AI 聊天")
|
||||
@GetMapping("/handleAiChat")
|
||||
public AjaxResult handleAiChat()
|
||||
{
|
||||
String resultMsg = chatGPTClient.handleAiChat("你好,我叫wangxiangshun");
|
||||
return AjaxResult.success(resultMsg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
167
vetti-admin/src/main/resources/application-dev.yml
Normal file
167
vetti-admin/src/main/resources/application-dev.yml
Normal file
@@ -0,0 +1,167 @@
|
||||
|
||||
# 开发环境配置
|
||||
server:
|
||||
# 服务器的HTTP端口,默认为8080
|
||||
port: 8080
|
||||
servlet:
|
||||
# 应用的访问路径
|
||||
context-path: /
|
||||
tomcat:
|
||||
# tomcat的URI编码
|
||||
uri-encoding: UTF-8
|
||||
# 连接数满后的排队数,默认为100
|
||||
accept-count: 1000
|
||||
threads:
|
||||
# tomcat最大线程数,默认为200
|
||||
max: 800
|
||||
# Tomcat启动初始化的线程数,默认值10
|
||||
min-spare: 100
|
||||
|
||||
# 日志配置
|
||||
logging:
|
||||
level:
|
||||
com.vetti: debug
|
||||
org.springframework: warn
|
||||
pathUrl: ./logs/
|
||||
|
||||
# 用户配置
|
||||
user:
|
||||
password:
|
||||
# 密码最大错误次数
|
||||
maxRetryCount: 5
|
||||
# 密码锁定时间(默认10分钟)
|
||||
lockTime: 10
|
||||
|
||||
# 数据源配置
|
||||
spring:
|
||||
datasource:
|
||||
type: com.alibaba.druid.pool.DruidDataSource
|
||||
driverClassName: com.mysql.cj.jdbc.Driver
|
||||
druid:
|
||||
# 主库数据源
|
||||
master:
|
||||
url: jdbc:mysql://13.211.168.80:3306/vetti_service?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
username: vetti_service
|
||||
password: Hotake@2025
|
||||
# 从库数据源
|
||||
slave:
|
||||
# 从数据源开关/默认关闭
|
||||
enabled: false
|
||||
url:
|
||||
username:
|
||||
password:
|
||||
# 初始连接数
|
||||
initialSize: 5
|
||||
# 最小连接池数量
|
||||
minIdle: 10
|
||||
# 最大连接池数量
|
||||
maxActive: 20
|
||||
# 配置获取连接等待超时的时间
|
||||
maxWait: 60000
|
||||
# 配置连接超时时间
|
||||
connectTimeout: 30000
|
||||
# 配置网络超时时间
|
||||
socketTimeout: 60000
|
||||
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
|
||||
timeBetweenEvictionRunsMillis: 60000
|
||||
# 配置一个连接在池中最小生存的时间,单位是毫秒
|
||||
minEvictableIdleTimeMillis: 300000
|
||||
# 配置一个连接在池中最大生存的时间,单位是毫秒
|
||||
maxEvictableIdleTimeMillis: 900000
|
||||
# 配置检测连接是否有效
|
||||
validationQuery: SELECT 1 FROM DUAL
|
||||
testWhileIdle: true
|
||||
testOnBorrow: false
|
||||
testOnReturn: false
|
||||
webStatFilter:
|
||||
enabled: true
|
||||
statViewServlet:
|
||||
enabled: true
|
||||
# 设置白名单,不填则允许所有访问
|
||||
allow:
|
||||
url-pattern: /druid/*
|
||||
# 控制台管理用户名和密码
|
||||
login-username: ruoyi
|
||||
login-password: 123456
|
||||
filter:
|
||||
stat:
|
||||
enabled: true
|
||||
# 慢SQL记录
|
||||
log-slow-sql: true
|
||||
slow-sql-millis: 1000
|
||||
merge-sql: true
|
||||
wall:
|
||||
config:
|
||||
multi-statement-allow: true
|
||||
# redis 配置
|
||||
redis:
|
||||
# 地址
|
||||
host: localhost
|
||||
# 端口,默认为6379
|
||||
port: 6379
|
||||
# 数据库索引
|
||||
database: 0
|
||||
# 密码
|
||||
password: Hamkke@2021
|
||||
# 连接超时时间
|
||||
timeout: 10s
|
||||
lettuce:
|
||||
pool:
|
||||
# 连接池中的最小空闲连接
|
||||
min-idle: 0
|
||||
# 连接池中的最大空闲连接
|
||||
max-idle: 8
|
||||
# 连接池的最大数据库连接数
|
||||
max-active: 8
|
||||
# #连接池最大阻塞等待时间(使用负值表示没有限制)
|
||||
max-wait: -1ms
|
||||
fs:
|
||||
minio:
|
||||
endpoint: http://test.hotake.cn:19000 # MinIO 服务地址
|
||||
access-key: minioadmin # 访问密钥(替换为你的 Access Key)
|
||||
secret-key: minioadmin # 密钥(替换为你的 Secret Key)
|
||||
max-file-size: 104857600 #字节(Byte)
|
||||
bucket-name.: # 存储桶名称(提前在 MinIO 控制台创建)
|
||||
system-fs: system-fs
|
||||
|
||||
# Twilio SendGrid 配置
|
||||
twilio:
|
||||
sendgrid:
|
||||
#你的SendGrid API Key
|
||||
api-key: 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
|
||||
#已验证的发送邮箱地址
|
||||
from-email: noreply@routez.app
|
||||
#你的应用名称
|
||||
from-name: RouteZ
|
||||
template-ids:
|
||||
routez-verification-code: d-321fee8a85704983849eb1f69313ae24
|
||||
verification:
|
||||
code:
|
||||
email:
|
||||
# 验证码长度
|
||||
length: 5
|
||||
# 验证码过期时间(分钟)
|
||||
expiration-minutes: 10
|
||||
# 文本转语音
|
||||
elevenLabs:
|
||||
baseUrl: https://api.elevenlabs.io/v1
|
||||
apiKey: sk_5240d8f56cb1eb5225fffcf903f62479884d1af5b3de6812
|
||||
modelId: eleven_monolingual_v1
|
||||
# 语音转文本
|
||||
whisper:
|
||||
apiUrl: https://api.openai.com/v1/audio/transcriptions
|
||||
model: whisper-1
|
||||
apiKey: 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
|
||||
language: zh
|
||||
|
||||
# AI 聊天
|
||||
chatGpt:
|
||||
apiKey:
|
||||
apiUrl: https://api.openai.com/v1/chat/completions
|
||||
model: gpt-3.5-turbo
|
||||
role: user
|
||||
|
||||
|
||||
http:
|
||||
client:
|
||||
connect-timeout-seconds: 10
|
||||
@@ -123,6 +123,7 @@ fs:
|
||||
max-file-size: 104857600 #字节(Byte)
|
||||
bucket-name.: # 存储桶名称(提前在 MinIO 控制台创建)
|
||||
system-fs: system-fs
|
||||
|
||||
# Twilio SendGrid 配置
|
||||
twilio:
|
||||
sendgrid:
|
||||
@@ -141,12 +142,25 @@ verification:
|
||||
length: 5
|
||||
# 验证码过期时间(分钟)
|
||||
expiration-minutes: 10
|
||||
# 文本转语音
|
||||
elevenLabs:
|
||||
baseUrl: https://api.elevenlabs.io/v1
|
||||
apiKey: sk_5240d8f56cb1eb5225fffcf903f62479884d1af5b3de6812
|
||||
modelId: eleven_monolingual_v1
|
||||
# 语音转文本
|
||||
whisper:
|
||||
apiUrl: https://api.openai.com/v1/audio/transcriptions
|
||||
model: whisper-1
|
||||
apiKey: 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
|
||||
language: zh
|
||||
|
||||
# AI 聊天
|
||||
chatGpt:
|
||||
apiKey:
|
||||
apiUrl: https://api.openai.com/v1/chat/completions
|
||||
model: gpt-3.5-turbo
|
||||
role: user
|
||||
|
||||
here-map:
|
||||
api-key: q1gsOSZ899P8dVaoW2HZXq40W-AqCwB6iON5tw7-sqI
|
||||
geocoding-api-url: https://geocode.search.hereapi.com/v1/geocode
|
||||
reverse-geocoding-api-url: https://revgeocode.search.hereapi.com/v1/revgeocode
|
||||
router-api-url: https://router.hereapi.com/v8/routes
|
||||
|
||||
http:
|
||||
client:
|
||||
|
||||
@@ -78,17 +78,3 @@ xss:
|
||||
excludes: /system/notice
|
||||
# 匹配链接
|
||||
urlPatterns: /system/*,/monitor/*,/tool/*
|
||||
|
||||
# 安全配置
|
||||
security:
|
||||
# 不校验白名单
|
||||
ignore:
|
||||
whites:
|
||||
- /v1/app/system/i18nGain/getInfo
|
||||
- /v1/app/verificationEmail/send
|
||||
- /v1/app/verificationEmail/verify
|
||||
- /v1/app/auth/appLogin
|
||||
- /v1/app/auth/appRegister
|
||||
- /v1/app/auth/appResetPassword
|
||||
- /v1/app/auth/getUserInfoByEmail
|
||||
- /v1/app/verificationEmail/register/send
|
||||
Reference in New Issue
Block a user