mirror of
https://github.com/alibaba/higress.git
synced 2026-03-11 04:00:49 +08:00
fix: Fix a bug in openaiCustomUrl support (#1790)
This commit is contained in:
@@ -80,13 +80,16 @@ func (c *PluginConfig) Complete(log wrapper.Log) error {
|
||||
c.activeProvider = nil
|
||||
return nil
|
||||
}
|
||||
|
||||
var err error
|
||||
|
||||
c.activeProvider, err = provider.CreateProvider(*c.activeProviderConfig)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
providerConfig := c.GetProviderConfig()
|
||||
err = providerConfig.SetApiTokensFailover(log, c.activeProvider)
|
||||
|
||||
return err
|
||||
return providerConfig.SetApiTokensFailover(log, c.activeProvider)
|
||||
}
|
||||
|
||||
func (c *PluginConfig) GetProvider() provider.Provider {
|
||||
|
||||
@@ -40,9 +40,11 @@ func parseGlobalConfig(json gjson.Result, pluginConfig *config.PluginConfig, log
|
||||
|
||||
pluginConfig.FromJson(json)
|
||||
if err := pluginConfig.Validate(); err != nil {
|
||||
log.Errorf("global rule config is invalid: %v", err)
|
||||
return err
|
||||
}
|
||||
if err := pluginConfig.Complete(log); err != nil {
|
||||
log.Errorf("failed to apply global rule config: %v", err)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -56,9 +58,11 @@ func parseOverrideRuleConfig(json gjson.Result, global config.PluginConfig, plug
|
||||
|
||||
pluginConfig.FromJson(json)
|
||||
if err := pluginConfig.Validate(); err != nil {
|
||||
log.Errorf("overriden rule config is invalid: %v", err)
|
||||
return err
|
||||
}
|
||||
if err := pluginConfig.Complete(log); err != nil {
|
||||
log.Errorf("failed to apply overriden rule config: %v", err)
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@ package provider
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"path"
|
||||
"strings"
|
||||
@@ -58,10 +57,10 @@ func (m *openaiProviderInitializer) CreateProvider(config ProviderConfig) (Provi
|
||||
}
|
||||
customUrl := strings.TrimPrefix(strings.TrimPrefix(config.openaiCustomUrl, "http://"), "https://")
|
||||
pairs := strings.SplitN(customUrl, "/", 2)
|
||||
if len(pairs) != 2 {
|
||||
return nil, fmt.Errorf("invalid openaiCustomUrl:%s", config.openaiCustomUrl)
|
||||
customPath := "/"
|
||||
if len(pairs) == 2 {
|
||||
customPath += pairs[1]
|
||||
}
|
||||
customPath := "/" + pairs[1]
|
||||
isDirectCustomPath := isDirectPath(customPath)
|
||||
capabilities := m.DefaultCapabilities()
|
||||
if !isDirectCustomPath {
|
||||
|
||||
Reference in New Issue
Block a user