65dc805eb5
- 前端: 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/
54 lines
1.6 KiB
Go
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
|
|
) |