Просмотр исходного кода

fix: 修复自定义渠道出错 #243

CaIon 1 год назад
Родитель
Сommit
fd19798c92
5 измененных файлов с 11 добавлено и 17 удалено
  1. 1 1
      controller/channel-test.go
  2. 2 2
      controller/model.go
  3. 1 1
      relay/common/relay_info.go
  4. 5 10
      relay/constant/api_type.go
  5. 2 3
      web/src/helpers/render.js

+ 1 - 1
controller/channel-test.go

@@ -53,7 +53,7 @@ func testChannel(channel *model.Channel, testModel string) (err error, openaiErr
 	}
 	}
 
 
 	meta := relaycommon.GenRelayInfo(c)
 	meta := relaycommon.GenRelayInfo(c)
-	apiType := constant.ChannelType2APIType(channel.Type)
+	apiType, _ := constant.ChannelType2APIType(channel.Type)
 	adaptor := relay.GetAdaptor(apiType)
 	adaptor := relay.GetAdaptor(apiType)
 	if adaptor == nil {
 	if adaptor == nil {
 		return fmt.Errorf("invalid api type: %d, adaptor is nil", apiType), nil
 		return fmt.Errorf("invalid api type: %d, adaptor is nil", apiType), nil

+ 2 - 2
controller/model.go

@@ -138,8 +138,8 @@ func init() {
 	}
 	}
 	channelId2Models = make(map[int][]string)
 	channelId2Models = make(map[int][]string)
 	for i := 1; i <= common.ChannelTypeDummy; i++ {
 	for i := 1; i <= common.ChannelTypeDummy; i++ {
-		apiType := relayconstant.ChannelType2APIType(i)
-		if apiType == -1 || apiType == relayconstant.APITypeAIProxyLibrary {
+		apiType, success := relayconstant.ChannelType2APIType(i)
+		if !success || apiType == relayconstant.APITypeAIProxyLibrary {
 			continue
 			continue
 		}
 		}
 		meta := &relaycommon.RelayInfo{ChannelType: i}
 		meta := &relaycommon.RelayInfo{ChannelType: i}

+ 1 - 1
relay/common/relay_info.go

@@ -38,7 +38,7 @@ func GenRelayInfo(c *gin.Context) *RelayInfo {
 	tokenUnlimited := c.GetBool("token_unlimited_quota")
 	tokenUnlimited := c.GetBool("token_unlimited_quota")
 	startTime := time.Now()
 	startTime := time.Now()
 
 
-	apiType := constant.ChannelType2APIType(channelType)
+	apiType, _ := constant.ChannelType2APIType(channelType)
 
 
 	info := &RelayInfo{
 	info := &RelayInfo{
 		RelayMode:      constant.Path2RelayMode(c.Request.URL.Path),
 		RelayMode:      constant.Path2RelayMode(c.Request.URL.Path),

+ 5 - 10
relay/constant/api_type.go

@@ -24,19 +24,11 @@ const (
 	APITypeDummy // this one is only for count, do not add any channel after this
 	APITypeDummy // this one is only for count, do not add any channel after this
 )
 )
 
 
-func ChannelType2APIType(channelType int) int {
+func ChannelType2APIType(channelType int) (int, bool) {
 	apiType := -1
 	apiType := -1
 	switch channelType {
 	switch channelType {
 	case common.ChannelTypeOpenAI:
 	case common.ChannelTypeOpenAI:
 		apiType = APITypeOpenAI
 		apiType = APITypeOpenAI
-	case common.ChannelTypeAzure:
-		apiType = APITypeOpenAI
-	case common.ChannelTypeMoonshot:
-		apiType = APITypeOpenAI
-	case common.ChannelTypeLingYiWanWu:
-		apiType = APITypeOpenAI
-	case common.ChannelType360:
-		apiType = APITypeOpenAI
 	case common.ChannelTypeAnthropic:
 	case common.ChannelTypeAnthropic:
 		apiType = APITypeAnthropic
 		apiType = APITypeAnthropic
 	case common.ChannelTypeBaidu:
 	case common.ChannelTypeBaidu:
@@ -66,5 +58,8 @@ func ChannelType2APIType(channelType int) int {
 	case common.ChannelTypeCohere:
 	case common.ChannelTypeCohere:
 		apiType = APITypeCohere
 		apiType = APITypeCohere
 	}
 	}
-	return apiType
+	if apiType == -1 {
+		return APITypeOpenAI, false
+	}
+	return apiType, true
 }
 }

+ 2 - 3
web/src/helpers/render.js

@@ -1,4 +1,3 @@
-import { Label } from 'semantic-ui-react';
 import { Tag } from '@douyinfe/semi-ui';
 import { Tag } from '@douyinfe/semi-ui';
 
 
 export function renderText(text, limit) {
 export function renderText(text, limit) {
@@ -152,9 +151,9 @@ export function renderModelPrice(
     let completionRatioPrice =
     let completionRatioPrice =
       modelRatio * completionRatio * 0.002 * groupRatio;
       modelRatio * completionRatio * 0.002 * groupRatio;
     return (
     return (
-      '输入$' +
+      '输入 $' +
       inputRatioPrice.toFixed(3) +
       inputRatioPrice.toFixed(3) +
-      '/1K tokens,补全$' +
+      '/1K tokens,补全 $' +
       completionRatioPrice.toFixed(3) +
       completionRatioPrice.toFixed(3) +
       '/1K tokens'
       '/1K tokens'
     );
     );