Spaces:
Build error
Build error
| package controller | |
| import ( | |
| "errors" | |
| "fmt" | |
| "one-api/common" | |
| "one-api/constant" | |
| "one-api/middleware" | |
| "one-api/model" | |
| "one-api/types" | |
| "time" | |
| "github.com/gin-gonic/gin" | |
| ) | |
| func Playground(c *gin.Context) { | |
| var newAPIError *types.NewAPIError | |
| defer func() { | |
| if newAPIError != nil { | |
| c.JSON(newAPIError.StatusCode, gin.H{ | |
| "error": newAPIError.ToOpenAIError(), | |
| }) | |
| } | |
| }() | |
| useAccessToken := c.GetBool("use_access_token") | |
| if useAccessToken { | |
| newAPIError = types.NewError(errors.New("暂不支持使用 access token"), types.ErrorCodeAccessDenied, types.ErrOptionWithSkipRetry()) | |
| return | |
| } | |
| group := c.GetString("group") | |
| modelName := c.GetString("original_model") | |
| userId := c.GetInt("id") | |
| // Write user context to ensure acceptUnsetRatio is available | |
| userCache, err := model.GetUserCache(userId) | |
| if err != nil { | |
| newAPIError = types.NewError(err, types.ErrorCodeQueryDataError, types.ErrOptionWithSkipRetry()) | |
| return | |
| } | |
| userCache.WriteContext(c) | |
| tempToken := &model.Token{ | |
| UserId: userId, | |
| Name: fmt.Sprintf("playground-%s", group), | |
| Group: group, | |
| } | |
| _ = middleware.SetupContextForToken(c, tempToken) | |
| _, newAPIError = getChannel(c, group, modelName, 0) | |
| if newAPIError != nil { | |
| return | |
| } | |
| //middleware.SetupContextForSelectedChannel(c, channel, playgroundRequest.Model) | |
| common.SetContextKey(c, constant.ContextKeyRequestStartTime, time.Now()) | |
| Relay(c, types.RelayFormatOpenAI) | |
| } | |