one-api/providers/azure/base.go
Buer ef041e28a1
♻️ refactor: provider refactor (#41)
* ♻️ refactor: provider refactor
* 完善百度/讯飞的函数调用,现在可以在`lobe-chat`中正常调用函数了
2024-01-19 02:47:10 +08:00

43 lines
1019 B
Go

package azure
import (
"one-api/common/requester"
"one-api/model"
"one-api/providers/base"
"one-api/providers/openai"
)
type AzureProviderFactory struct{}
// 创建 AzureProvider
func (f AzureProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
config := getAzureConfig()
return &AzureProvider{
OpenAIProvider: openai.OpenAIProvider{
BaseProvider: base.BaseProvider{
Config: config,
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, openai.RequestErrorHandle),
},
IsAzure: true,
BalanceAction: false,
},
}
}
func getAzureConfig() base.ProviderConfig {
return base.ProviderConfig{
BaseURL: "",
Completions: "/completions",
ChatCompletions: "/chat/completions",
Embeddings: "/embeddings",
AudioTranscriptions: "/audio/transcriptions",
AudioTranslations: "/audio/translations",
ImagesGenerations: "/images/generations",
}
}
type AzureProvider struct {
openai.OpenAIProvider
}