Files
selfrelease 65dc805eb5 feat: 系统优化 - ESLint、Tailwind、前端健壮性、后端工程化、运维可观测性
- 前端: ESLint+Prettier配置、Tailwind v4配置、ErrorBoundary、全局AuthLoader优化、ReactQuery分层
- 后端: MinIO凭证移除、Docker统一为govai品牌、zerolog日志封装、错误码枚举、文件上传校验、单元测试(13项全通过)
- 运维: 健康检查增强(PG/Redis ping)、Prometheus指标(/metrics端点)、多租户tenant包、RateLimit nil防御
- 移动: citation_prompt.txt → internal/assets/
2026-06-23 14:48:31 +08:00

54 lines
1.6 KiB
Go

package config
import "time"
// ==================== 分页与查询 ====================
const (
DefaultPage = 1
DefaultPageSize = 20
MaxPageSize = 100
)
// ==================== Token 与会话 ====================
const (
DefaultAccessTokenExpiry = 24 * time.Hour
DefaultRefreshTokenExpiry = 7 * 24 * time.Hour
TokenHeader = "Authorization"
TokenPrefix = "Bearer "
)
// ==================== 文件上传 ====================
const (
MaxFileSize = 10 * 1024 * 1024 // 10MB
AllowedFileExtensions = ".pdf,.doc,.docx,.txt,.md,.jpg,.jpeg,.png,.gif,.xlsx,.xls"
AllowedMimeTypes = "application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown,image/jpeg,image/png,image/gif,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
)
// ==================== AI 模型 ====================
const (
DefaultEmbeddingDimensions = 1024
DefaultEmbeddingModel = "text-embedding-v3"
DefaultLLMTemperature = 0.7
DefaultLLMTopP = 0.95
DefaultLLMMaxTokens = 8192
)
// ==================== RateLimit ====================
const (
DefaultRateLimitMax = 100
DefaultRateLimitWindow = 1 * time.Minute
)
// ==================== Redis Key 前缀 ====================
const (
RedisKeyPrefixRateLimit = "rl:"
RedisKeyPrefixSession = "session:"
RedisKeyPrefixToken = "token:"
RedisKeyPrefixCache = "cache:"
)
// ==================== Chat ====================
const (
MaxConversationHistory = 50
MaxMessageLength = 4000
)