43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
package constant
|
|
|
|
import "strings"
|
|
|
|
const (
|
|
RelayModeUnknown = iota
|
|
RelayModeChatCompletions
|
|
RelayModeCompletions
|
|
RelayModeEmbeddings
|
|
RelayModeModerations
|
|
RelayModeImagesGenerations
|
|
RelayModeEdits
|
|
RelayModeAudioSpeech
|
|
RelayModeAudioTranscription
|
|
RelayModeAudioTranslation
|
|
)
|
|
|
|
func Path2RelayMode(path string) int {
|
|
relayMode := RelayModeUnknown
|
|
if strings.HasPrefix(path, "/v1/chat/completions") {
|
|
relayMode = RelayModeChatCompletions
|
|
} else if strings.HasPrefix(path, "/v1/completions") {
|
|
relayMode = RelayModeCompletions
|
|
} else if strings.HasPrefix(path, "/v1/embeddings") {
|
|
relayMode = RelayModeEmbeddings
|
|
} else if strings.HasSuffix(path, "embeddings") {
|
|
relayMode = RelayModeEmbeddings
|
|
} else if strings.HasPrefix(path, "/v1/moderations") {
|
|
relayMode = RelayModeModerations
|
|
} else if strings.HasPrefix(path, "/v1/images/generations") {
|
|
relayMode = RelayModeImagesGenerations
|
|
} else if strings.HasPrefix(path, "/v1/edits") {
|
|
relayMode = RelayModeEdits
|
|
} else if strings.HasPrefix(path, "/v1/audio/speech") {
|
|
relayMode = RelayModeAudioSpeech
|
|
} else if strings.HasPrefix(path, "/v1/audio/transcriptions") {
|
|
relayMode = RelayModeAudioTranscription
|
|
} else if strings.HasPrefix(path, "/v1/audio/translations") {
|
|
relayMode = RelayModeAudioTranslation
|
|
}
|
|
return relayMode
|
|
}
|