101 lines
3.8 KiB
Go
101 lines
3.8 KiB
Go
// Code generated by Wire. DO NOT EDIT.
|
|
|
|
//go:generate go run -mod=mod github.com/google/wire/cmd/wire
|
|
//go:build !wireinject
|
|
// +build !wireinject
|
|
|
|
package main
|
|
|
|
import (
|
|
"github.com/chaitin/panda-wiki/config"
|
|
"github.com/chaitin/panda-wiki/log"
|
|
"github.com/chaitin/panda-wiki/migration"
|
|
"github.com/chaitin/panda-wiki/migration/fns"
|
|
"github.com/chaitin/panda-wiki/mq"
|
|
cache2 "github.com/chaitin/panda-wiki/repo/cache"
|
|
mq2 "github.com/chaitin/panda-wiki/repo/mq"
|
|
pg2 "github.com/chaitin/panda-wiki/repo/pg"
|
|
"github.com/chaitin/panda-wiki/store/cache"
|
|
"github.com/chaitin/panda-wiki/store/pg"
|
|
"github.com/chaitin/panda-wiki/store/rag"
|
|
"github.com/chaitin/panda-wiki/store/s3"
|
|
"github.com/chaitin/panda-wiki/usecase"
|
|
)
|
|
|
|
// Injectors from wire.go:
|
|
|
|
func createApp() (*App, error) {
|
|
configConfig, err := config.NewConfig()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
db, err := pg.NewDB(configConfig)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
logger := log.NewLogger(configConfig)
|
|
nodeRepository := pg2.NewNodeRepository(db, logger)
|
|
navRepository := pg2.NewNavRepository(db, logger)
|
|
appRepository := pg2.NewAppRepository(db, logger)
|
|
mqProducer, err := mq.NewMQProducer(configConfig, logger)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
ragRepository := mq2.NewRAGRepository(mqProducer)
|
|
userRepository := pg2.NewUserRepository(db, logger)
|
|
ragService, err := rag.NewRAGService(configConfig, logger)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
knowledgeBaseRepository := pg2.NewKnowledgeBaseRepository(db, configConfig, logger, ragService)
|
|
conversationRepository := pg2.NewConversationRepository(db, logger)
|
|
modelRepository := pg2.NewModelRepository(db, logger)
|
|
promptRepo := pg2.NewPromptRepo(db, logger)
|
|
llmUsecase := usecase.NewLLMUsecase(configConfig, ragService, conversationRepository, knowledgeBaseRepository, nodeRepository, modelRepository, promptRepo, logger)
|
|
minioClient, err := s3.NewMinioClient(configConfig)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cacheCache, err := cache.NewCache(configConfig)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
authRepo := pg2.NewAuthRepo(db, logger, cacheCache)
|
|
systemSettingRepo := pg2.NewSystemSettingRepo(db, logger)
|
|
modelUsecase := usecase.NewModelUsecase(modelRepository, nodeRepository, ragRepository, ragService, logger, configConfig, knowledgeBaseRepository, systemSettingRepo)
|
|
nodeUsecase := usecase.NewNodeUsecase(nodeRepository, navRepository, appRepository, ragRepository, userRepository, knowledgeBaseRepository, llmUsecase, ragService, logger, minioClient, modelRepository, authRepo, modelUsecase)
|
|
kbRepo := cache2.NewKBRepo(cacheCache)
|
|
knowledgeBaseUsecase, err := usecase.NewKnowledgeBaseUsecase(knowledgeBaseRepository, nodeRepository, navRepository, ragRepository, userRepository, ragService, kbRepo, logger, configConfig)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
migrationNodeVersion := fns.NewMigrationNodeVersion(logger, nodeUsecase, knowledgeBaseUsecase, ragRepository)
|
|
migrationCreateBotAuth := fns.NewMigrationCreateBotAuth(logger)
|
|
migrationFixGroupIds := fns.NewMigrationFixGroupIds(logger, ragRepository)
|
|
migrationUpdateNodeStatusUnreleased := fns.NewMigrationUpdateNodeStatusUnreleased(logger)
|
|
migrationCreateFirstNavs := fns.NewMigrationCreateFirstNavs(logger)
|
|
migrationFuncs := &migration.MigrationFuncs{
|
|
NodeMigration: migrationNodeVersion,
|
|
BotAuthMigration: migrationCreateBotAuth,
|
|
FixGroupIdsMigration: migrationFixGroupIds,
|
|
UpdateNodeStatusUnreleasedMigration: migrationUpdateNodeStatusUnreleased,
|
|
CreateFirstNavs: migrationCreateFirstNavs,
|
|
}
|
|
manager, err := migration.NewManager(db, logger, migrationFuncs)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
app := &App{
|
|
Config: configConfig,
|
|
MigrationManager: manager,
|
|
}
|
|
return app, nil
|
|
}
|
|
|
|
// wire.go:
|
|
|
|
type App struct {
|
|
Config *config.Config
|
|
MigrationManager *migration.Manager
|
|
}
|