diff --git a/main.go b/main.go index 11fb797..b2be408 100644 --- a/main.go +++ b/main.go @@ -31,7 +31,7 @@ func main() { plugins.RegisterLogs(bot) plugins.RegisterEconomy(bot) - plugins.RegisterRelations(bot) + //plugins.RegisterRelations(bot) plugins.RegisterWaifus(bot) plugins.RegisterRP(bot) plugins.RegisterAi(bot) diff --git a/plugins/admin.go b/plugins/admin.go index 6fa1948..74a319f 100644 --- a/plugins/admin.go +++ b/plugins/admin.go @@ -17,7 +17,7 @@ func RegisterAdmin(b *laniakea.Bot) { } func AdminMiddleware() *laniakea.PluginMiddleware { - return laniakea.NewPluginMiddleware(func(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) bool { + m := laniakea.NewPluginMiddleware(func(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) bool { rep := psql.NewUserRepository(db) u, err := rep.GetById(ctx.FromID) if err != nil { @@ -25,6 +25,7 @@ func AdminMiddleware() *laniakea.PluginMiddleware { } return u.Group.IsAdmin }) + return m } func test(ctx *laniakea.MsgContext, _ *laniakea.DatabaseContext) { diff --git a/utils/ai/openai.go b/utils/ai/openai.go index 13aab29..7c4d8bb 100644 --- a/utils/ai/openai.go +++ b/utils/ai/openai.go @@ -61,12 +61,14 @@ type OpenAIAPI struct { } func NewOpenAIAPI(baseURL, token, model string) *OpenAIAPI { + logger := slog.CreateLogger() level := slog.FATAL if os.Getenv("DEBUG") == "true" { level = slog.DEBUG } - logger := slog.CreateLogger().Prefix("AI").Level(level) - logger = logger.AddWriter(logger.CreateJsonStdoutWriter()) + logger = logger.Prefix("AI").Level(level) + // FIXME Leak here + //logger = logger.AddWriter(logger.CreateJsonStdoutWriter()) proxy, err := url.Parse(os.Getenv("HTTPS_PROXY")) if err != nil { logger.Error(err) @@ -146,11 +148,7 @@ func (o *OpenAIAPI) DoRequest(url string, params any, retries int) ([]byte, erro } // {"error":{"message":"openai_error","type":"bad_response_status_code","param":"","code":"bad_response_status_code"}} if errorData, ok := tempData["error"]; ok { - o.Logger.Error(errorData) - if x, ok := errorData.(bool); ok { - o.Logger.Errorf("[%d %s] %v", res.StatusCode, res.Status, x) - } else if errorPayload, ok := errorData.(map[string]interface{}); ok { - + if errorPayload, ok := errorData.(map[string]interface{}); ok { code := errorPayload["code"].(string) if code == "bad_response_status_code" { if retries >= 3 { @@ -165,6 +163,20 @@ func (o *OpenAIAPI) DoRequest(url string, params any, retries int) ([]byte, erro return nil, errors.New(string(responseBody)) } + //if errorData, ok := tempData["error"]; ok { + // o.Logger.Error(errorData) + // errorPayload := errorData.(map[string]interface{}) + // code := errorPayload["code"].(string) + // if code == "bad_response_status_code" { + // if retries >= 3 { + // return responseBody, BadResponseErr + // } + // o.Logger.Debug("Retrying because of bad response status code") + // return o.DoRequest(url, params, retries+1) + // } + // return nil, errors.New(code) + //} + return responseBody, err }