package embedding import ( "github.com/tmc/langchaingo/llms/openai" "leafdev.top/Leaf/leaf-library/internal/base/conf" "leafdev.top/Leaf/leaf-library/internal/base/logger" "leafdev.top/Leaf/leaf-library/internal/base/redis" "leafdev.top/Leaf/leaf-library/internal/dao" ) type Service struct { OpenAI *openai.LLM Logger *logger.Logger config *conf.Config dao *dao.Query redis *redis.Redis } func NewService(config *conf.Config, logger *logger.Logger, dao *dao.Query, redis *redis.Redis) *Service { llm, err := openai.New( openai.WithToken(config.OpenAI.ApiKey), openai.WithBaseURL(config.OpenAI.InternalBaseUrl), openai.WithEmbeddingModel(config.OpenAI.EmbeddingModel), ) if err != nil { panic(err) } return &Service{llm, logger, config, dao, redis} }