ai-gateway/providers/palm/base.go

43 lines
950 B
Go
Raw Permalink Normal View History

package palm
2023-11-28 10:32:26 +00:00
import (
"fmt"
"one-api/providers/base"
2023-11-28 10:32:26 +00:00
"strings"
"github.com/gin-gonic/gin"
)
2023-12-02 10:14:48 +00:00
type PalmProviderFactory struct{}
2023-11-28 10:32:26 +00:00
// 创建 PalmProvider
2023-12-02 10:14:48 +00:00
func (f PalmProviderFactory) Create(c *gin.Context) base.ProviderInterface {
2023-11-28 10:32:26 +00:00
return &PalmProvider{
BaseProvider: base.BaseProvider{
2023-11-28 10:32:26 +00:00
BaseURL: "https://generativelanguage.googleapis.com",
ChatCompletions: "/v1beta2/models/chat-bison-001:generateMessage",
Context: c,
},
}
}
2023-12-02 10:14:48 +00:00
type PalmProvider struct {
base.BaseProvider
}
2023-11-28 10:32:26 +00:00
// 获取请求头
func (p *PalmProvider) GetRequestHeaders() (headers map[string]string) {
headers = make(map[string]string)
p.CommonRequestHeaders(headers)
headers["x-goog-api-key"] = p.Channel.Key
2023-11-28 10:32:26 +00:00
return headers
}
// 获取完整请求 URL
func (p *PalmProvider) GetFullRequestURL(requestURL string, modelName string) string {
baseURL := strings.TrimSuffix(p.GetBaseURL(), "/")
return fmt.Sprintf("%s%s", baseURL, requestURL)
2023-11-28 10:32:26 +00:00
}