mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-03-13 20:53:42 +08:00
405 lines
11 KiB
YAML
405 lines
11 KiB
YAML
# 项目相关配置
|
||
ruoyi:
|
||
# 名称
|
||
name: "ruoyi-ai"
|
||
# 版本
|
||
version: ${revision}
|
||
# 版权年份
|
||
copyrightYear: 2025
|
||
# 实例演示开关
|
||
demoEnabled: false
|
||
|
||
captcha:
|
||
enable: false
|
||
# 页面 <参数设置> 可开启关闭 验证码校验
|
||
# 验证码类型 math 数组计算 char 字符验证
|
||
type: MATH
|
||
# line 线段干扰 circle 圆圈干扰 shear 扭曲干扰
|
||
category: CIRCLE
|
||
# 数字验证码位数
|
||
numberLength: 1
|
||
# 字符验证码长度
|
||
charLength: 4
|
||
|
||
# 开发环境配置
|
||
server:
|
||
# 服务器的HTTP端口,默认为8080
|
||
port: 6039
|
||
servlet:
|
||
# 应用的访问路径
|
||
context-path: /
|
||
# undertow 配置
|
||
undertow:
|
||
# HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
|
||
max-http-post-size: -1
|
||
# 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
|
||
# 每块buffer的空间大小,越小的空间被利用越充分
|
||
buffer-size: 512
|
||
# 是否分配的直接内存
|
||
direct-buffers: true
|
||
threads:
|
||
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
|
||
io: 8
|
||
# 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
|
||
worker: 256
|
||
|
||
# 日志配置
|
||
logging:
|
||
level:
|
||
org.ruoyi: @logging.level@
|
||
org.springframework: warn
|
||
org.mybatis.spring.mapper: error
|
||
org.apache.fury: warn
|
||
config: classpath:logback-plus.xml
|
||
|
||
# 用户配置
|
||
user:
|
||
password:
|
||
# 密码最大错误次数
|
||
maxRetryCount: 5
|
||
# 密码锁定时间(默认10分钟)
|
||
lockTime: 10
|
||
|
||
# Spring配置
|
||
spring:
|
||
application:
|
||
name: ${ruoyi.name}
|
||
# 资源信息
|
||
messages:
|
||
# 国际化资源文件路径
|
||
basename: i18n/messages
|
||
profiles:
|
||
active: @profiles.active@
|
||
# 文件上传
|
||
servlet:
|
||
multipart:
|
||
# 单个文件大小
|
||
max-file-size: 50MB
|
||
# 设置总上传的文件大小
|
||
max-request-size: 200MB
|
||
mvc:
|
||
format:
|
||
date-time: yyyy-MM-dd HH:mm:ss
|
||
jackson:
|
||
# 日期格式化
|
||
date-format: yyyy-MM-dd HH:mm:ss
|
||
serialization:
|
||
# 格式化输出
|
||
indent_output: false
|
||
# 忽略无法转换的对象
|
||
fail_on_empty_beans: false
|
||
deserialization:
|
||
# 允许对象忽略json中不存在的属性
|
||
fail_on_unknown_properties: false
|
||
|
||
# Sa-Token配置
|
||
sa-token:
|
||
# token名称 (同时也是cookie名称)
|
||
token-name: Authorization
|
||
# token有效期 设为7天 (必定过期) 单位: 秒
|
||
timeout: 604800
|
||
# token临时有效期 (指定时间无操作就过期) 单位: 秒
|
||
activity-timeout: 604800
|
||
# 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录)
|
||
is-concurrent: true
|
||
# 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token)
|
||
is-share: false
|
||
# 是否尝试从header里读取token
|
||
is-read-header: true
|
||
# 是否尝试从cookie里读取token
|
||
is-read-cookie: false
|
||
# token前缀
|
||
token-prefix: "Bearer"
|
||
# jwt秘钥
|
||
jwt-secret-key: abcdefghijklmnopqrstuvwxyz
|
||
|
||
# security配置
|
||
security:
|
||
# 排除路径
|
||
excludes:
|
||
# 获取模型信息
|
||
- /system/model/modelList
|
||
# 支付回调
|
||
- /pay/returnUrl
|
||
- /pay/notifyUrl
|
||
# 上传文件
|
||
- /resource/oss/upload
|
||
# 重置密码
|
||
- /auth/reset/password
|
||
# 聊天接口
|
||
- /chat/send
|
||
# 文件上传
|
||
- /chat/upload
|
||
# 代码生成调用
|
||
- /tool/gen/getByTableName
|
||
- /tool/gen/batchGenCode
|
||
# 静态资源
|
||
- /*.html
|
||
- /**/*.html
|
||
- /**/*.css
|
||
- /**/*.js
|
||
# 公共路径
|
||
- /favicon.ico
|
||
- /error
|
||
# swagger 文档配置
|
||
- /*/api-docs
|
||
- /*/api-docs/**
|
||
- /v3/api-docs
|
||
- /v3/api-docs/**
|
||
- /v3/api-docs/swagger-config
|
||
- /swagger-ui.html
|
||
- /swagger-ui/**
|
||
- /doc.html
|
||
- /webjars/**
|
||
- /swagger-resources
|
||
- /swagger-resources/**
|
||
# actuator 监控配置
|
||
- /actuator
|
||
- /actuator/**
|
||
- /workflow/**
|
||
- /admin/workflow/**
|
||
# 多租户配置
|
||
tenant:
|
||
# 是否开启
|
||
enable: false
|
||
# 排除表
|
||
excludes:
|
||
- sys_menu
|
||
- sys_tenant
|
||
- sys_tenant_package
|
||
- sys_role_dept
|
||
- sys_role_menu
|
||
- sys_user_post
|
||
- sys_user_role
|
||
|
||
knowledge-role:
|
||
enable: false
|
||
|
||
# MyBatisPlus配置
|
||
# https://baomidou.com/config/
|
||
mybatis-plus:
|
||
# 不支持多包, 如有需要可在注解配置 或 提升扫包等级
|
||
# 例如 com.**.**.mapper
|
||
mapperPackage: org.ruoyi.**.mapper
|
||
# 对应的 XML 文件位置
|
||
mapperLocations: classpath*:mapper/**/*Mapper.xml
|
||
# 实体扫描,多个package用逗号或者分号分隔
|
||
typeAliasesPackage: org.ruoyi.**.domain
|
||
# 启动时是否检查 MyBatis XML 文件的存在,默认不检查
|
||
checkConfigLocation: false
|
||
configuration:
|
||
# 自动驼峰命名规则(camel case)映射
|
||
mapUnderscoreToCamelCase: true
|
||
# MyBatis 自动映射策略
|
||
# NONE:不启用 PARTIAL:只对非嵌套 resultMap 自动映射 FULL:对所有 resultMap 自动映射
|
||
autoMappingBehavior: FULL
|
||
# MyBatis 自动映射时未知列或未知属性处理策
|
||
# NONE:不做处理 WARNING:打印相关警告 FAILING:抛出异常和详细信息
|
||
autoMappingUnknownColumnBehavior: NONE
|
||
# 更详细的日志输出 会有性能损耗 org.apache.ibatis.logging.stdout.StdOutImpl
|
||
# 关闭日志记录 (可单纯使用 p6spy 分析) org.apache.ibatis.logging.nologging.NoLoggingImpl
|
||
# 默认日志输出 org.apache.ibatis.logging.slf4j.Slf4jImpl
|
||
logImpl: org.apache.ibatis.logging.slf4j.Slf4jImpl
|
||
global-config:
|
||
# 是否打印 Logo banner
|
||
banner: true
|
||
dbConfig:
|
||
# 主键类型
|
||
# AUTO 自增 NONE 空 INPUT 用户输入 ASSIGN_ID 雪花 ASSIGN_UUID 唯一 UUID
|
||
idType: ASSIGN_ID
|
||
# 逻辑已删除值
|
||
logicDeleteValue: 2
|
||
# 逻辑未删除值
|
||
logicNotDeleteValue: 0
|
||
# 字段验证策略之 insert,在 insert 的时候的字段验证策略
|
||
# IGNORED 忽略 NOT_NULL 非NULL NOT_EMPTY 非空 DEFAULT 默认 NEVER 不加入 SQL
|
||
insertStrategy: NOT_NULL
|
||
# 字段验证策略之 update,在 update 的时候的字段验证策略
|
||
updateStrategy: NOT_NULL
|
||
# 字段验证策略之 select,在 select 的时候的字段验证策略既 wrapper 根据内部 entity 生成的 where 条件
|
||
where-strategy: NOT_NULL
|
||
|
||
# 数据加密
|
||
mybatis-encryptor:
|
||
# 是否开启加密
|
||
enable: false
|
||
# 默认加密算法
|
||
algorithm: BASE64
|
||
# 编码方式 BASE64/HEX。默认BASE64
|
||
encode: BASE64
|
||
# 安全秘钥 对称算法的秘钥 如:AES,SM4
|
||
password:
|
||
# 公私钥 非对称算法的公私钥 如:SM2,RSA
|
||
publicKey:
|
||
privateKey:
|
||
|
||
springdoc:
|
||
api-docs:
|
||
# 是否开启接口文档
|
||
enabled: true
|
||
# swagger-ui:
|
||
# # 持久化认证数据
|
||
# persistAuthorization: true
|
||
info:
|
||
# 标题
|
||
title: '标题:ruoyi-ai 接口文档'
|
||
# 描述
|
||
description: ''
|
||
# 版本
|
||
version: '版本号: ${ruoyi.version}'
|
||
# 作者信息
|
||
contact:
|
||
name: ageerle
|
||
email: ageerle@163.com
|
||
url: https://gitee.com/ageerle/ruoyi-ai
|
||
components:
|
||
# 鉴权方式配置
|
||
security-schemes:
|
||
apiKey:
|
||
type: APIKEY
|
||
in: HEADER
|
||
name: ${sa-token.token-name}
|
||
#这里定义了两个分组,可定义多个,也可以不定义
|
||
packages-to-scan: org.ruoyi
|
||
|
||
knife4j:
|
||
enable: true
|
||
setting:
|
||
language: zh_cn
|
||
|
||
# 防止XSS攻击
|
||
xss:
|
||
# 过滤开关
|
||
enabled: true
|
||
# 排除链接(多个用逗号分隔)
|
||
excludes: /system/notice,/v3/api-docs/**,/doc.html,/swagger-ui/**,/swagger-ui.html,/swagger-resources/**,/webjars/**,/druid/**,/actuator/**,/favicon.ico
|
||
# 匹配链接
|
||
urlPatterns: /system/*,/monitor/*,/tool/*
|
||
|
||
# 全局线程池相关配置
|
||
thread-pool:
|
||
# 是否开启线程池
|
||
enabled: false
|
||
# 队列最大长度
|
||
queueCapacity: 128
|
||
# 线程池维护线程所允许的空闲时间
|
||
keepAliveSeconds: 300
|
||
|
||
--- # 分布式锁 lock4j 全局配置
|
||
lock4j:
|
||
# 获取分布式锁超时时间,默认为 3000 毫秒
|
||
acquire-timeout: 3000
|
||
# 分布式锁的超时时间,默认为 30 秒
|
||
expire: 30000
|
||
|
||
--- # Actuator 监控端点的配置项
|
||
management:
|
||
endpoints:
|
||
web:
|
||
exposure:
|
||
include: '*'
|
||
endpoint:
|
||
health:
|
||
show-details: ALWAYS
|
||
logfile:
|
||
external-file: ./logs/sys-console.log
|
||
health:
|
||
# 禁用 Neo4j 健康检查(当知识图谱功能未启用时)
|
||
neo4j:
|
||
enabled: false
|
||
|
||
# websocket
|
||
# websocket
|
||
websocket:
|
||
enabled: true
|
||
# 路径
|
||
path: '/resource/websocket'
|
||
# 设置访问源地址
|
||
allowedOrigins: '*'
|
||
|
||
spring:
|
||
ai:
|
||
openai:
|
||
api-key: sk-xx
|
||
base-url: https://api.pandarobot.chat/
|
||
mcp:
|
||
client:
|
||
enabled: false
|
||
name: ruoyi-ai-mcp
|
||
sse:
|
||
connections:
|
||
server:
|
||
url: http://127.0.0.1:8081
|
||
stdio:
|
||
servers-configuration: classpath:mcp-server.json
|
||
request-timeout: 300s
|
||
|
||
# 向量库配置
|
||
vector-store:
|
||
# 向量存储类型 可选(weaviate/milvus)
|
||
# 如需修改向量库类型,请修改此配置值!
|
||
type: weaviate
|
||
|
||
# Weaviate配置
|
||
weaviate:
|
||
protocol: http
|
||
host: 127.0.0.1:6038
|
||
classname: LocalKnowledge
|
||
# Milvus配置
|
||
milvus:
|
||
url: http://localhost:19530
|
||
collectionname: LocalKnowledge
|
||
|
||
|
||
--- # Neo4j 知识图谱配置
|
||
#neo4j:
|
||
# uri: bolt://117.72.192.162:7687
|
||
# username: neo4j
|
||
# password: MySecurePass123!
|
||
# database: neo4j
|
||
# max-connection-pool-size: 50
|
||
# connection-timeout-seconds: 30
|
||
|
||
# 知识图谱配置
|
||
knowledge:
|
||
graph:
|
||
# 是否启用知识图谱功能
|
||
enabled: false
|
||
# 图数据库类型: neo4j 或 apache-age
|
||
database-type: neo4j
|
||
# 是否自动创建索引
|
||
auto-create-index: true
|
||
# 批量处理大小
|
||
batch-size: 1000
|
||
# 最大重试次数
|
||
max-retry-count: 3
|
||
|
||
# 实体抽取配置
|
||
extraction:
|
||
# 置信度阈值(低于此值的实体将被过滤)
|
||
confidence-threshold: 0.7
|
||
# 最大实体数量(每个文档)
|
||
max-entities-per-doc: 100
|
||
# 最大关系数量(每个文档)
|
||
max-relations-per-doc: 200
|
||
# 文本分片大小(用于长文档)
|
||
chunk-size: 2000
|
||
# 分片重叠大小
|
||
chunk-overlap: 200
|
||
|
||
# 查询配置
|
||
query:
|
||
# 默认查询限制数量
|
||
default-limit: 100
|
||
# 最大查询限制数量
|
||
max-limit: 1000
|
||
# 路径查询最大深度
|
||
max-path-depth: 5
|
||
# 查询超时时间(秒)
|
||
timeout-seconds: 30
|
||
# 是否启用查询缓存
|
||
cache-enabled: true
|
||
# 缓存过期时间(分钟)
|
||
cache-expire-minutes: 60
|
||
|