Merge pull request #1094 from trheyi/main
Refactor KnowledgeBase loading process to compute features after prov…
This commit is contained in:
commit
6950a1481a
2 changed files with 11 additions and 7 deletions
15
kb/kb.go
15
kb/kb.go
|
|
@ -41,6 +41,12 @@ func Load(appConfig config.Config) (*KnowledgeBase, error) {
|
|||
return nil, nil
|
||||
}
|
||||
|
||||
// Load providers from directories first
|
||||
providers, err := kbtypes.LoadProviders("kb")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Parse the configuration
|
||||
var config kbtypes.Config
|
||||
raw, err := application.App.Read(filepath.Join("kb", "kb.yao"))
|
||||
|
|
@ -53,13 +59,12 @@ func Load(appConfig config.Config) (*KnowledgeBase, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
// Load providers from directories
|
||||
providers, err := kbtypes.LoadProviders("kb")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// Assign providers to config
|
||||
config.Providers = providers
|
||||
|
||||
// Compute features after both config and providers are loaded
|
||||
config.Features = config.ComputeFeatures()
|
||||
|
||||
// Set global configurations for providers to use
|
||||
kbtypes.SetGlobalPDF(config.PDF)
|
||||
kbtypes.SetGlobalFFmpeg(config.FFmpeg)
|
||||
|
|
|
|||
|
|
@ -323,8 +323,7 @@ func (c *Config) UnmarshalJSON(data []byte) error {
|
|||
c.Uploader = "__yao.attachment"
|
||||
}
|
||||
|
||||
// Compute features after parsing and resolving env vars
|
||||
c.Features = c.ComputeFeatures()
|
||||
// Note: Features will be computed later after providers are loaded
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue