refactor: add GetRatio to Adaptor

This commit is contained in:
WqyJh
2025-01-14 14:38:26 +08:00
parent 3915ce9814
commit 0ad609ade6
70 changed files with 1038 additions and 467 deletions

View File

@@ -2,16 +2,18 @@ package tencent
import (
"errors"
"github.com/gin-gonic/gin"
"github.com/songquanpeng/one-api/common/helper"
"github.com/songquanpeng/one-api/relay/adaptor"
"github.com/songquanpeng/one-api/relay/adaptor/openai"
"github.com/songquanpeng/one-api/relay/meta"
"github.com/songquanpeng/one-api/relay/model"
"io"
"net/http"
"strconv"
"strings"
"github.com/gin-gonic/gin"
"github.com/songquanpeng/one-api/common/helper"
"github.com/songquanpeng/one-api/relay/adaptor"
"github.com/songquanpeng/one-api/relay/adaptor/openai"
"github.com/songquanpeng/one-api/relay/billing/ratio"
"github.com/songquanpeng/one-api/relay/meta"
"github.com/songquanpeng/one-api/relay/model"
)
// https://cloud.tencent.com/document/api/1729/101837
@@ -80,8 +82,12 @@ func (a *Adaptor) DoResponse(c *gin.Context, resp *http.Response, meta *meta.Met
return
}
func (a *Adaptor) GetRatio(meta *meta.Meta) *ratio.Ratio {
return adaptor.GetRatioHelper(meta, RatioMap)
}
func (a *Adaptor) GetModelList() []string {
return ModelList
return adaptor.GetModelListHelper(RatioMap)
}
func (a *Adaptor) GetChannelName() string {

View File

@@ -1,9 +1,19 @@
package tencent
var ModelList = []string{
"hunyuan-lite",
"hunyuan-standard",
"hunyuan-standard-256K",
"hunyuan-pro",
"hunyuan-vision",
import "github.com/songquanpeng/one-api/relay/billing/ratio"
// https://cloud.tencent.com/document/product/1729/97731
var RatioMap = map[string]ratio.Ratio{
"hunyuan-turbo": {Input: 0.015 * ratio.RMB, Output: 0.05 * ratio.RMB},
"hunyuan-large": {Input: 0.004 * ratio.RMB, Output: 0.012 * ratio.RMB},
"hunyuan-large-longcontext": {Input: 0.006 * ratio.RMB, Output: 0.018 * ratio.RMB},
"hunyuan-standard": {Input: 0.0008 * ratio.RMB, Output: 0.002 * ratio.RMB},
"hunyuan-standard-256K": {Input: 0.0005 * ratio.RMB, Output: 0.002 * ratio.RMB},
"hunyuan-translation-lite": {Input: 0.005 * ratio.RMB, Output: 0.015 * ratio.RMB},
"hunyuan-role": {Input: 0.004 * ratio.RMB, Output: 0.008 * ratio.RMB},
"hunyuan-functioncall": {Input: 0.004 * ratio.RMB, Output: 0.008 * ratio.RMB},
"hunyuan-code": {Input: 0.004 * ratio.RMB, Output: 0.008 * ratio.RMB},
"hunyuan-turbo-vision": {Input: 0.08 * ratio.RMB, Output: 0.08 * ratio.RMB},
"hunyuan-vision": {Input: 0.018 * ratio.RMB, Output: 0.018 * ratio.RMB},
"hunyuan-embedding": {Input: 0.0007 * ratio.RMB, Output: 0.0007 * ratio.RMB},
}