🔥 del: Remove redundant providers (#112)
This commit is contained in:
parent
b81808e839
commit
b99281e05e
@ -1,27 +0,0 @@
|
|||||||
package aigc2d
|
|
||||||
|
|
||||||
import (
|
|
||||||
"errors"
|
|
||||||
"one-api/providers/base"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (p *Aigc2dProvider) Balance() (float64, error) {
|
|
||||||
fullRequestURL := p.GetFullRequestURL("/dashboard/billing/credit_grants", "")
|
|
||||||
headers := p.GetRequestHeaders()
|
|
||||||
|
|
||||||
req, err := p.Requester.NewRequest("GET", fullRequestURL, p.Requester.WithHeader(headers))
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送请求
|
|
||||||
var response base.BalanceResponse
|
|
||||||
_, errWithCode := p.Requester.SendRequest(req, &response, false)
|
|
||||||
if errWithCode != nil {
|
|
||||||
return 0, errors.New(errWithCode.OpenAIError.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
p.Channel.UpdateBalance(response.TotalAvailable)
|
|
||||||
|
|
||||||
return response.TotalAvailable, nil
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
package aigc2d
|
|
||||||
|
|
||||||
import (
|
|
||||||
"one-api/model"
|
|
||||||
"one-api/providers/base"
|
|
||||||
"one-api/providers/openai"
|
|
||||||
)
|
|
||||||
|
|
||||||
type Aigc2dProviderFactory struct{}
|
|
||||||
|
|
||||||
type Aigc2dProvider struct {
|
|
||||||
*openai.OpenAIProvider
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f Aigc2dProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
|
|
||||||
return &Aigc2dProvider{
|
|
||||||
OpenAIProvider: openai.CreateOpenAIProvider(channel, "https://api.aigc2d.com"),
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,32 +0,0 @@
|
|||||||
package aiproxy
|
|
||||||
|
|
||||||
import (
|
|
||||||
"errors"
|
|
||||||
"fmt"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (p *AIProxyProvider) Balance() (float64, error) {
|
|
||||||
fullRequestURL := "https://aiproxy.io/api/report/getUserOverview"
|
|
||||||
headers := make(map[string]string)
|
|
||||||
headers["Api-Key"] = p.Channel.Key
|
|
||||||
|
|
||||||
req, err := p.Requester.NewRequest("GET", fullRequestURL, p.Requester.WithHeader(headers))
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送请求
|
|
||||||
var response AIProxyUserOverviewResponse
|
|
||||||
_, errWithCode := p.Requester.SendRequest(req, &response, false)
|
|
||||||
if errWithCode != nil {
|
|
||||||
return 0, errors.New(errWithCode.OpenAIError.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
if !response.Success {
|
|
||||||
return 0, fmt.Errorf("code: %d, message: %s", response.ErrorCode, response.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
p.Channel.UpdateBalance(response.Data.TotalPoints)
|
|
||||||
|
|
||||||
return response.Data.TotalPoints, nil
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
package aiproxy
|
|
||||||
|
|
||||||
import (
|
|
||||||
"one-api/model"
|
|
||||||
"one-api/providers/base"
|
|
||||||
"one-api/providers/openai"
|
|
||||||
)
|
|
||||||
|
|
||||||
type AIProxyProviderFactory struct{}
|
|
||||||
|
|
||||||
type AIProxyProvider struct {
|
|
||||||
*openai.OpenAIProvider
|
|
||||||
}
|
|
||||||
|
|
||||||
func (f AIProxyProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
|
|
||||||
return &AIProxyProvider{
|
|
||||||
OpenAIProvider: openai.CreateOpenAIProvider(channel, "https://api.aiproxy.io"),
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
package aiproxy
|
|
||||||
|
|
||||||
type AIProxyUserOverviewResponse struct {
|
|
||||||
Success bool `json:"success"`
|
|
||||||
Message string `json:"message"`
|
|
||||||
ErrorCode int `json:"error_code"`
|
|
||||||
Data struct {
|
|
||||||
TotalPoints float64 `json:"totalPoints"`
|
|
||||||
} `json:"data"`
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
package api2d
|
|
||||||
|
|
||||||
import (
|
|
||||||
"errors"
|
|
||||||
"one-api/providers/base"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (p *Api2dProvider) Balance() (float64, error) {
|
|
||||||
fullRequestURL := p.GetFullRequestURL("/dashboard/billing/credit_grants", "")
|
|
||||||
headers := p.GetRequestHeaders()
|
|
||||||
|
|
||||||
req, err := p.Requester.NewRequest("GET", fullRequestURL, p.Requester.WithHeader(headers))
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送请求
|
|
||||||
var response base.BalanceResponse
|
|
||||||
_, errWithCode := p.Requester.SendRequest(req, &response, false)
|
|
||||||
if errWithCode != nil {
|
|
||||||
return 0, errors.New(errWithCode.OpenAIError.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
p.Channel.UpdateBalance(response.TotalAvailable)
|
|
||||||
|
|
||||||
return response.TotalAvailable, nil
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
package api2d
|
|
||||||
|
|
||||||
import (
|
|
||||||
"one-api/model"
|
|
||||||
"one-api/providers/base"
|
|
||||||
"one-api/providers/openai"
|
|
||||||
)
|
|
||||||
|
|
||||||
type Api2dProviderFactory struct{}
|
|
||||||
|
|
||||||
// 创建 Api2dProvider
|
|
||||||
func (f Api2dProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
|
|
||||||
return &Api2dProvider{
|
|
||||||
OpenAIProvider: openai.CreateOpenAIProvider(channel, "https://oa.api2d.net"),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type Api2dProvider struct {
|
|
||||||
*openai.OpenAIProvider
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
package api2gpt
|
|
||||||
|
|
||||||
import (
|
|
||||||
"errors"
|
|
||||||
"one-api/providers/base"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (p *Api2gptProvider) Balance() (float64, error) {
|
|
||||||
fullRequestURL := p.GetFullRequestURL("/dashboard/billing/credit_grants", "")
|
|
||||||
headers := p.GetRequestHeaders()
|
|
||||||
|
|
||||||
req, err := p.Requester.NewRequest("GET", fullRequestURL, p.Requester.WithHeader(headers))
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送请求
|
|
||||||
var response base.BalanceResponse
|
|
||||||
_, errWithCode := p.Requester.SendRequest(req, &response, false)
|
|
||||||
if errWithCode != nil {
|
|
||||||
return 0, errors.New(errWithCode.OpenAIError.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
p.Channel.UpdateBalance(response.TotalAvailable)
|
|
||||||
|
|
||||||
return response.TotalRemaining, nil
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
package api2gpt
|
|
||||||
|
|
||||||
import (
|
|
||||||
"one-api/model"
|
|
||||||
"one-api/providers/base"
|
|
||||||
"one-api/providers/openai"
|
|
||||||
)
|
|
||||||
|
|
||||||
type Api2gptProviderFactory struct{}
|
|
||||||
|
|
||||||
func (f Api2gptProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
|
|
||||||
return &Api2gptProvider{
|
|
||||||
OpenAIProvider: openai.CreateOpenAIProvider(channel, "https://api.api2gpt.com"),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type Api2gptProvider struct {
|
|
||||||
*openai.OpenAIProvider
|
|
||||||
}
|
|
@ -1,26 +0,0 @@
|
|||||||
package closeai
|
|
||||||
|
|
||||||
import (
|
|
||||||
"errors"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (p *CloseaiProxyProvider) Balance() (float64, error) {
|
|
||||||
fullRequestURL := p.GetFullRequestURL("/dashboard/billing/credit_grants", "")
|
|
||||||
headers := p.GetRequestHeaders()
|
|
||||||
|
|
||||||
req, err := p.Requester.NewRequest("GET", fullRequestURL, p.Requester.WithHeader(headers))
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送请求
|
|
||||||
var response OpenAICreditGrants
|
|
||||||
_, errWithCode := p.Requester.SendRequest(req, &response, false)
|
|
||||||
if errWithCode != nil {
|
|
||||||
return 0, errors.New(errWithCode.OpenAIError.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
p.Channel.UpdateBalance(response.TotalAvailable)
|
|
||||||
|
|
||||||
return response.TotalAvailable, nil
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
package closeai
|
|
||||||
|
|
||||||
import (
|
|
||||||
"one-api/model"
|
|
||||||
"one-api/providers/base"
|
|
||||||
"one-api/providers/openai"
|
|
||||||
)
|
|
||||||
|
|
||||||
type CloseaiProviderFactory struct{}
|
|
||||||
|
|
||||||
// 创建 CloseaiProvider
|
|
||||||
func (f CloseaiProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
|
|
||||||
return &CloseaiProxyProvider{
|
|
||||||
OpenAIProvider: openai.CreateOpenAIProvider(channel, "https://api.closeai-proxy.xyz"),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type CloseaiProxyProvider struct {
|
|
||||||
*openai.OpenAIProvider
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
package closeai
|
|
||||||
|
|
||||||
type OpenAICreditGrants struct {
|
|
||||||
Object string `json:"object"`
|
|
||||||
TotalGranted float64 `json:"total_granted"`
|
|
||||||
TotalUsed float64 `json:"total_used"`
|
|
||||||
TotalAvailable float64 `json:"total_available"`
|
|
||||||
}
|
|
@ -1,35 +0,0 @@
|
|||||||
package openaisb
|
|
||||||
|
|
||||||
import (
|
|
||||||
"errors"
|
|
||||||
"fmt"
|
|
||||||
"strconv"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (p *OpenaiSBProvider) Balance() (float64, error) {
|
|
||||||
fullRequestURL := p.GetFullRequestURL("/sb-api/user/status", "")
|
|
||||||
fullRequestURL = fmt.Sprintf("%s?api_key=%s", fullRequestURL, p.Channel.Key)
|
|
||||||
headers := p.GetRequestHeaders()
|
|
||||||
|
|
||||||
req, err := p.Requester.NewRequest("GET", fullRequestURL, p.Requester.WithHeader(headers))
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// 发送请求
|
|
||||||
var response OpenAISBUsageResponse
|
|
||||||
_, errWithCode := p.Requester.SendRequest(req, &response, false)
|
|
||||||
if err != nil {
|
|
||||||
return 0, errors.New(errWithCode.OpenAIError.Message)
|
|
||||||
}
|
|
||||||
|
|
||||||
if response.Data == nil {
|
|
||||||
return 0, errors.New(response.Msg)
|
|
||||||
}
|
|
||||||
balance, err := strconv.ParseFloat(response.Data.Credit, 64)
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
p.Channel.UpdateBalance(balance)
|
|
||||||
return balance, nil
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
package openaisb
|
|
||||||
|
|
||||||
import (
|
|
||||||
"one-api/model"
|
|
||||||
"one-api/providers/base"
|
|
||||||
"one-api/providers/openai"
|
|
||||||
)
|
|
||||||
|
|
||||||
type OpenaiSBProviderFactory struct{}
|
|
||||||
|
|
||||||
// 创建 OpenaiSBProvider
|
|
||||||
func (f OpenaiSBProviderFactory) Create(channel *model.Channel) base.ProviderInterface {
|
|
||||||
return &OpenaiSBProvider{
|
|
||||||
OpenAIProvider: openai.CreateOpenAIProvider(channel, "https://api.openai-sb.com"),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type OpenaiSBProvider struct {
|
|
||||||
*openai.OpenAIProvider
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
package openaisb
|
|
||||||
|
|
||||||
type OpenAISBUsageResponse struct {
|
|
||||||
Msg string `json:"msg"`
|
|
||||||
Data *struct {
|
|
||||||
Credit string `json:"credit"`
|
|
||||||
} `json:"data"`
|
|
||||||
}
|
|
@ -3,11 +3,7 @@ package providers
|
|||||||
import (
|
import (
|
||||||
"one-api/common"
|
"one-api/common"
|
||||||
"one-api/model"
|
"one-api/model"
|
||||||
"one-api/providers/aigc2d"
|
|
||||||
"one-api/providers/aiproxy"
|
|
||||||
"one-api/providers/ali"
|
"one-api/providers/ali"
|
||||||
"one-api/providers/api2d"
|
|
||||||
"one-api/providers/api2gpt"
|
|
||||||
"one-api/providers/azure"
|
"one-api/providers/azure"
|
||||||
azurespeech "one-api/providers/azureSpeech"
|
azurespeech "one-api/providers/azureSpeech"
|
||||||
"one-api/providers/baichuan"
|
"one-api/providers/baichuan"
|
||||||
@ -15,14 +11,12 @@ import (
|
|||||||
"one-api/providers/base"
|
"one-api/providers/base"
|
||||||
"one-api/providers/bedrock"
|
"one-api/providers/bedrock"
|
||||||
"one-api/providers/claude"
|
"one-api/providers/claude"
|
||||||
"one-api/providers/closeai"
|
|
||||||
"one-api/providers/deepseek"
|
"one-api/providers/deepseek"
|
||||||
"one-api/providers/gemini"
|
"one-api/providers/gemini"
|
||||||
"one-api/providers/groq"
|
"one-api/providers/groq"
|
||||||
"one-api/providers/minimax"
|
"one-api/providers/minimax"
|
||||||
"one-api/providers/mistral"
|
"one-api/providers/mistral"
|
||||||
"one-api/providers/openai"
|
"one-api/providers/openai"
|
||||||
"one-api/providers/openaisb"
|
|
||||||
"one-api/providers/palm"
|
"one-api/providers/palm"
|
||||||
"one-api/providers/tencent"
|
"one-api/providers/tencent"
|
||||||
"one-api/providers/xunfei"
|
"one-api/providers/xunfei"
|
||||||
@ -50,12 +44,6 @@ func init() {
|
|||||||
providerFactories[common.ChannelTypePaLM] = palm.PalmProviderFactory{}
|
providerFactories[common.ChannelTypePaLM] = palm.PalmProviderFactory{}
|
||||||
providerFactories[common.ChannelTypeZhipu] = zhipu.ZhipuProviderFactory{}
|
providerFactories[common.ChannelTypeZhipu] = zhipu.ZhipuProviderFactory{}
|
||||||
providerFactories[common.ChannelTypeXunfei] = xunfei.XunfeiProviderFactory{}
|
providerFactories[common.ChannelTypeXunfei] = xunfei.XunfeiProviderFactory{}
|
||||||
providerFactories[common.ChannelTypeAIProxy] = aiproxy.AIProxyProviderFactory{}
|
|
||||||
providerFactories[common.ChannelTypeAPI2D] = api2d.Api2dProviderFactory{}
|
|
||||||
providerFactories[common.ChannelTypeCloseAI] = closeai.CloseaiProviderFactory{}
|
|
||||||
providerFactories[common.ChannelTypeOpenAISB] = openaisb.OpenaiSBProviderFactory{}
|
|
||||||
providerFactories[common.ChannelTypeAIGC2D] = aigc2d.Aigc2dProviderFactory{}
|
|
||||||
providerFactories[common.ChannelTypeAPI2GPT] = api2gpt.Api2gptProviderFactory{}
|
|
||||||
providerFactories[common.ChannelTypeAzureSpeech] = azurespeech.AzureSpeechProviderFactory{}
|
providerFactories[common.ChannelTypeAzureSpeech] = azurespeech.AzureSpeechProviderFactory{}
|
||||||
providerFactories[common.ChannelTypeGemini] = gemini.GeminiProviderFactory{}
|
providerFactories[common.ChannelTypeGemini] = gemini.GeminiProviderFactory{}
|
||||||
providerFactories[common.ChannelTypeBaichuan] = baichuan.BaichuanProviderFactory{}
|
providerFactories[common.ChannelTypeBaichuan] = baichuan.BaichuanProviderFactory{}
|
||||||
|
@ -118,77 +118,5 @@ export const CHANNEL_OPTIONS = {
|
|||||||
text: '自定义渠道',
|
text: '自定义渠道',
|
||||||
value: 8,
|
value: 8,
|
||||||
color: 'primary'
|
color: 'primary'
|
||||||
},
|
|
||||||
22: {
|
|
||||||
key: 22,
|
|
||||||
text: '知识库:FastGPT',
|
|
||||||
value: 22,
|
|
||||||
color: 'default'
|
|
||||||
},
|
|
||||||
21: {
|
|
||||||
key: 21,
|
|
||||||
text: '知识库:AI Proxy',
|
|
||||||
value: 21,
|
|
||||||
color: 'purple'
|
|
||||||
},
|
|
||||||
20: {
|
|
||||||
key: 20,
|
|
||||||
text: '代理:OpenRouter',
|
|
||||||
value: 20,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
2: {
|
|
||||||
key: 2,
|
|
||||||
text: '代理:API2D',
|
|
||||||
value: 2,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
5: {
|
|
||||||
key: 5,
|
|
||||||
text: '代理:OpenAI-SB',
|
|
||||||
value: 5,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
7: {
|
|
||||||
key: 7,
|
|
||||||
text: '代理:OhMyGPT',
|
|
||||||
value: 7,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
10: {
|
|
||||||
key: 10,
|
|
||||||
text: '代理:AI Proxy',
|
|
||||||
value: 10,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
4: {
|
|
||||||
key: 4,
|
|
||||||
text: '代理:CloseAI',
|
|
||||||
value: 4,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
6: {
|
|
||||||
key: 6,
|
|
||||||
text: '代理:OpenAI Max',
|
|
||||||
value: 6,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
9: {
|
|
||||||
key: 9,
|
|
||||||
text: '代理:AI.LS',
|
|
||||||
value: 9,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
12: {
|
|
||||||
key: 12,
|
|
||||||
text: '代理:API2GPT',
|
|
||||||
value: 12,
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
13: {
|
|
||||||
key: 13,
|
|
||||||
text: '代理:AIGC2D',
|
|
||||||
value: 13,
|
|
||||||
color: 'primary'
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user