// 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 ( "ai_scheduler/internal/config" "ai_scheduler/internal/services" "ai_scheduler/internal/tools" "ai_scheduler/pkg/ollama" "ai_scheduler/pkg/types" ) import ( _ "ai_scheduler/docs" ) // Injectors from wire.go: // InitializeApp 初始化应用程序 func InitializeApp(configPath string) (*App, error) { configConfig, err := config.LoadConfig(configPath) if err != nil { return nil, err } aiClient := provideOllamaClient(configConfig) toolsConfig := provideToolsConfig(configConfig) manager := tools.NewManager(toolsConfig) routerService := provideRouterService(aiClient, manager) app := NewApp(configConfig, routerService) return app, nil } // wire.go: // provideOllamaClient 提供Ollama客户端 func provideOllamaClient(cfg *config.Config) types.AIClient { client, _ := ollama.NewClient(&cfg.Ollama) return client } // provideToolsConfig 提供工具配置 func provideToolsConfig(cfg *config.Config) *config.ToolsConfig { return &cfg.Tools } // provideRouterService 提供路由服务 func provideRouterService(aiClient types.AIClient, toolManager *tools.Manager) types.RouterService { return services.NewRouterService(aiClient, toolManager) } // App 应用程序结构 type App struct { Config *config.Config RouterService types.RouterService } // NewApp 创建应用程序 func NewApp(cfg *config.Config, routerService types.RouterService) *App { return &App{ Config: cfg, RouterService: routerService, } }