fix: Improve error handling and logging in channel update abilities

- Improve error handling in `UpdateAbilities()` method
- Log model name change request to the mapped model
This commit is contained in:
Laisky.Cai 2024-02-29 06:44:31 +00:00
parent 4625a0b97d
commit 3da0f62055
2 changed files with 16 additions and 3 deletions

View File

@ -3,6 +3,8 @@ package model
import (
"encoding/json"
"fmt"
"github.com/pkg/errors"
"github.com/songquanpeng/one-api/common"
"github.com/songquanpeng/one-api/common/config"
"github.com/songquanpeng/one-api/common/helper"
@ -122,8 +124,12 @@ func (channel *Channel) Update() error {
return err
}
DB.Model(channel).First(channel, "id = ?", channel.Id)
err = channel.UpdateAbilities()
return err
if err = channel.UpdateAbilities(); err != nil {
logger.SysError("failed to update abilities: " + err.Error())
return errors.Wrap(err, "failed to update abilities")
}
return nil
}
func (channel *Channel) UpdateResponseTime(responseTime int64) {

View File

@ -29,9 +29,16 @@ func RelayTextHelper(c *gin.Context) *model.ErrorWithStatusCode {
meta.IsStream = textRequest.Stream
// map model name
var isModelMapped bool
var (
originRequestModel = textRequest.Model
isModelMapped bool
)
meta.OriginModelName = textRequest.Model
textRequest.Model, isModelMapped = util.GetMappedModelName(textRequest.Model, meta.ModelMapping)
if isModelMapped {
logger.Info(c.Request.Context(), fmt.Sprintf("rewrite model name from %s to %s", originRequestModel, textRequest.Model))
}
meta.ActualModelName = textRequest.Model
// get model ratio & group ratio
modelRatio := common.GetModelRatio(textRequest.Model)