mirror of
https://github.com/stulzq/azure-openai-proxy.git
synced 2025-12-18 23:04:19 +01:00
59 lines
1.3 KiB
Go
59 lines
1.3 KiB
Go
package azure
|
|
|
|
import (
|
|
"log"
|
|
"net/url"
|
|
"os"
|
|
"regexp"
|
|
"strings"
|
|
|
|
"github.com/stulzq/azure-openai-proxy/constant"
|
|
)
|
|
|
|
const (
|
|
AuthHeaderKey = "api-key"
|
|
)
|
|
|
|
var (
|
|
AzureOpenAIEndpoint = ""
|
|
AzureOpenAIEndpointParse *url.URL
|
|
|
|
AzureOpenAIAPIVer = ""
|
|
|
|
AzureOpenAIModelMapper = map[string]string{
|
|
"gpt-3.5-turbo": "gpt-35-turbo",
|
|
"gpt-3.5-turbo-0301": "gpt-35-turbo-0301",
|
|
}
|
|
fallbackModelMapper = regexp.MustCompile(`[.:]`)
|
|
)
|
|
|
|
func init() {
|
|
AzureOpenAIAPIVer = os.Getenv(constant.ENV_AZURE_OPENAI_API_VER)
|
|
AzureOpenAIEndpoint = os.Getenv(constant.ENV_AZURE_OPENAI_ENDPOINT)
|
|
|
|
if AzureOpenAIAPIVer == "" {
|
|
AzureOpenAIAPIVer = "2023-03-15-preview"
|
|
}
|
|
|
|
var err error
|
|
AzureOpenAIEndpointParse, err = url.Parse(AzureOpenAIEndpoint)
|
|
if err != nil {
|
|
log.Fatal("parse AzureOpenAIEndpoint error: ", err)
|
|
}
|
|
|
|
if v := os.Getenv(constant.ENV_AZURE_OPENAI_MODEL_MAPPER); v != "" {
|
|
for _, pair := range strings.Split(v, ",") {
|
|
info := strings.Split(pair, "=")
|
|
if len(info) != 2 {
|
|
log.Fatalf("error parsing %s, invalid value %s", constant.ENV_AZURE_OPENAI_MODEL_MAPPER, pair)
|
|
}
|
|
|
|
AzureOpenAIModelMapper[info[0]] = info[1]
|
|
}
|
|
}
|
|
|
|
log.Println("AzureOpenAIAPIVer: ", AzureOpenAIAPIVer)
|
|
log.Println("AzureOpenAIEndpoint: ", AzureOpenAIEndpoint)
|
|
log.Println("AzureOpenAIModelMapper: ", AzureOpenAIModelMapper)
|
|
}
|