# ================================================================ # Support Bot - AI智能客服系统 通用配置 # ================================================================ # 本文件仅保留所有环境共享的通用配置。 # 环境差异化的配置(端口、数据库连接、日志级别、API 文档开关等) # 已拆分到 application-dev.yml / application-test.yml / application-prod.yml。 # 打包时通过 Maven Profile 选择目标环境:mvn clean package -P test / -P prod # ================================================================ spring: # ==================== Spring AI Alibaba DashScope 配置 ==================== # 模型名称、温度、API Key 等参数已迁移到前端「AI 大模型配置管理」页面管理 ai: dashscope: # 关闭 DashScope 自动配置:所有 ChatModel/EmbeddingModel 由 # ChatModelFactory / EmbeddingModelFactory 按 DB(ai_model_config 表) 手动构建 enabled: false # ==================== 连接池通用配置 ==================== # 具体的数据源 url/username/password 在各环境 yml 中配置 datasource: driver-class-name: org.postgresql.Driver hikari: maximum-pool-size: 10 minimum-idle: 5 idle-timeout: 300000 connection-timeout: 20000 # ==================== 文件上传大小限制 ==================== servlet: multipart: max-file-size: 50MB max-request-size: 50MB # ==================== MyBatis Plus 配置 ==================== mybatis-plus: type-aliases-package: com.wok.supportbot.entity mapper-locations: classpath*:mapper/**/*.xml configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl map-underscore-to-camel-case: true global-config: db-config: logic-delete-field: isDelete logic-delete-value: true logic-not-delete-value: false id-type: assign_id # ==================== 知识库文档处理配置 ==================== knowledge: chunk: chunk-size: 200 overlap: 100 min-chunk-size-chars: 10 max-num-chunks: 5000 keep-separator: true vector: # 向量维度,需与 Embedding 模型输出维度一致 # 千问 text-embedding-v2: 1024 | 豆包 doubao-embedding-text-240515: 2048 | OpenAI text-embedding-3-small: 1536 dimension: 1024 role: # 严格隔离:true=角色未绑定知识库分类时禁止检索任何内容;false=可检索全部知识库 strict-isolation: false faq: # FAQ 语义匹配阈值(0-1),低于此值自动降级到 RAG 检索 semantic-threshold: 0.85 # ==================== Knife4j API 文档通用配置 ==================== # knife4j.enable 开关在各环境 yml 中配置(生产环境建议关闭) springdoc: swagger-ui: path: /swagger-ui.html tags-sorter: alpha operations-sorter: alpha api-docs: path: /v3/api-docs group-configs: - group: default paths-to-match: /** packages-to-scan: com.wok.supportbot.controller - group: open-api display-name: 开放API paths-to-match: /open-api/** packages-to-scan: com.wok.supportbot.controller knife4j: setting: language: zh_cn swagger-model-name: 实体类列表 # ==================== 日志输出格式(通用) ==================== # 具体的 logging.level 在各环境 yml 中配置 logging: pattern: console: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n" # ==================== JWT 认证配置 ==================== jwt: # 签名密钥(生产环境务必通过环境变量 JWT_SECRET 覆盖) secret: support-bot-jwt-secret-key-2026-please-change-in-production # 访问令牌有效期:24小时(毫秒) expiration: 86400000 # 刷新令牌有效期:7天(毫秒) refresh-expiration: 604800000