mirror of
https://github.com/Tencent/WeKnora.git
synced 2026-06-04 13:30:32 +08:00
验证完毕
This commit is contained in:
@@ -512,3 +512,6 @@ DOCREADER_TRANSPORT=grpc
|
||||
# 用于OIDC用于信息中提取用户数据
|
||||
# OIDC_USER_INFO_MAPPING_USER_NAME=name
|
||||
# OIDC_USER_INFO_MAPPING_EMAIL=email
|
||||
|
||||
# Document processing task timeout. Large files may need more than Asynq's default 30m.
|
||||
# WEKNORA_DOCUMENT_PROCESS_TIMEOUT=2h
|
||||
|
||||
@@ -42,6 +42,7 @@ knowledge_base:
|
||||
chunk_size: 512
|
||||
chunk_overlap: 50
|
||||
split_markers: ["\n\n", "\n", "。"]
|
||||
document_process_timeout: 2h
|
||||
image_processing:
|
||||
enable_multimodal: true
|
||||
|
||||
|
||||
@@ -154,11 +154,12 @@ type ServerConfig struct {
|
||||
|
||||
// KnowledgeBaseConfig 知识库配置
|
||||
type KnowledgeBaseConfig struct {
|
||||
ChunkSize int `yaml:"chunk_size" json:"chunk_size"`
|
||||
ChunkOverlap int `yaml:"chunk_overlap" json:"chunk_overlap"`
|
||||
SplitMarkers []string `yaml:"split_markers" json:"split_markers"`
|
||||
KeepSeparator bool `yaml:"keep_separator" json:"keep_separator"`
|
||||
ImageProcessing *ImageProcessingConfig `yaml:"image_processing" json:"image_processing"`
|
||||
ChunkSize int `yaml:"chunk_size" json:"chunk_size"`
|
||||
ChunkOverlap int `yaml:"chunk_overlap" json:"chunk_overlap"`
|
||||
SplitMarkers []string `yaml:"split_markers" json:"split_markers"`
|
||||
KeepSeparator bool `yaml:"keep_separator" json:"keep_separator"`
|
||||
ImageProcessing *ImageProcessingConfig `yaml:"image_processing" json:"image_processing"`
|
||||
DocumentProcessTimeout time.Duration `yaml:"document_process_timeout" json:"document_process_timeout"`
|
||||
}
|
||||
|
||||
// ImageProcessingConfig 图像处理配置
|
||||
@@ -434,6 +435,7 @@ func LoadConfig() (*Config, error) {
|
||||
// Validate configuration values
|
||||
applyOIDCEnvOverrides(&cfg)
|
||||
applyAgentEnvOverrides(&cfg)
|
||||
applyKnowledgeBaseEnvOverrides(&cfg)
|
||||
|
||||
if err := ValidateConfig(&cfg); err != nil {
|
||||
return nil, err
|
||||
@@ -561,6 +563,20 @@ func applyOIDCEnvOverrides(cfg *Config) {
|
||||
}
|
||||
}
|
||||
|
||||
func applyKnowledgeBaseEnvOverrides(cfg *Config) {
|
||||
if cfg.KnowledgeBase == nil {
|
||||
cfg.KnowledgeBase = &KnowledgeBaseConfig{}
|
||||
}
|
||||
if cfg.KnowledgeBase.DocumentProcessTimeout <= 0 {
|
||||
cfg.KnowledgeBase.DocumentProcessTimeout = 2 * time.Hour
|
||||
}
|
||||
if value := strings.TrimSpace(os.Getenv("WEKNORA_DOCUMENT_PROCESS_TIMEOUT")); value != "" {
|
||||
if d, err := time.ParseDuration(value); err == nil {
|
||||
cfg.KnowledgeBase.DocumentProcessTimeout = d
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func applyAgentEnvOverrides(cfg *Config) {
|
||||
if cfg.Agent == nil {
|
||||
cfg.Agent = &AgentConfig{}
|
||||
|
||||
Reference in New Issue
Block a user