mirror of
https://github.com/mudler/LocalAI.git
synced 2024-06-07 19:40:48 +00:00
255748bcba
This PR specifically introduces a `core` folder and moves the following packages over, without any other changes: - `api/backend` - `api/config` - `api/options` - `api/schema` Once this is merged and we confirm there's no regressions, I can migrate over the remaining changes piece by piece to split up application startup, backend services, http, and mqtt as was the goal of the earlier PRs!
57 lines
1.6 KiB
Go
57 lines
1.6 KiB
Go
package config_test
|
|
|
|
import (
|
|
"os"
|
|
|
|
. "github.com/go-skynet/LocalAI/core/config"
|
|
"github.com/go-skynet/LocalAI/core/options"
|
|
"github.com/go-skynet/LocalAI/pkg/model"
|
|
. "github.com/onsi/ginkgo/v2"
|
|
. "github.com/onsi/gomega"
|
|
)
|
|
|
|
var _ = Describe("Test cases for config related functions", func() {
|
|
|
|
var (
|
|
configFile string
|
|
)
|
|
|
|
Context("Test Read configuration functions", func() {
|
|
configFile = os.Getenv("CONFIG_FILE")
|
|
It("Test ReadConfigFile", func() {
|
|
config, err := ReadConfigFile(configFile)
|
|
Expect(err).To(BeNil())
|
|
Expect(config).ToNot(BeNil())
|
|
// two configs in config.yaml
|
|
Expect(config[0].Name).To(Equal("list1"))
|
|
Expect(config[1].Name).To(Equal("list2"))
|
|
})
|
|
|
|
It("Test LoadConfigs", func() {
|
|
cm := NewConfigLoader()
|
|
opts := options.NewOptions()
|
|
modelLoader := model.NewModelLoader(os.Getenv("MODELS_PATH"))
|
|
options.WithModelLoader(modelLoader)(opts)
|
|
|
|
err := cm.LoadConfigs(opts.Loader.ModelPath)
|
|
Expect(err).To(BeNil())
|
|
Expect(cm.ListConfigs()).ToNot(BeNil())
|
|
|
|
// config should includes gpt4all models's api.config
|
|
Expect(cm.ListConfigs()).To(ContainElements("gpt4all"))
|
|
|
|
// config should includes gpt2 models's api.config
|
|
Expect(cm.ListConfigs()).To(ContainElements("gpt4all-2"))
|
|
|
|
// config should includes text-embedding-ada-002 models's api.config
|
|
Expect(cm.ListConfigs()).To(ContainElements("text-embedding-ada-002"))
|
|
|
|
// config should includes rwkv_test models's api.config
|
|
Expect(cm.ListConfigs()).To(ContainElements("rwkv_test"))
|
|
|
|
// config should includes whisper-1 models's api.config
|
|
Expect(cm.ListConfigs()).To(ContainElements("whisper-1"))
|
|
})
|
|
})
|
|
})
|