relay_mode.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package constant
  2. import "strings"
  3. const (
  4. RelayModeUnknown = iota
  5. RelayModeChatCompletions
  6. RelayModeCompletions
  7. RelayModeEmbeddings
  8. RelayModeModerations
  9. RelayModeImagesGenerations
  10. RelayModeEdits
  11. RelayModeMidjourneyImagine
  12. RelayModeMidjourneyDescribe
  13. RelayModeMidjourneyBlend
  14. RelayModeMidjourneyChange
  15. RelayModeMidjourneySimpleChange
  16. RelayModeMidjourneyNotify
  17. RelayModeMidjourneyTaskFetch
  18. RelayModeMidjourneyTaskFetchByCondition
  19. RelayModeAudioSpeech
  20. RelayModeAudioTranscription
  21. RelayModeAudioTranslation
  22. )
  23. func Path2RelayMode(path string) int {
  24. relayMode := RelayModeUnknown
  25. if strings.HasPrefix(path, "/v1/chat/completions") {
  26. relayMode = RelayModeChatCompletions
  27. } else if strings.HasPrefix(path, "/v1/completions") {
  28. relayMode = RelayModeCompletions
  29. } else if strings.HasPrefix(path, "/v1/embeddings") {
  30. relayMode = RelayModeEmbeddings
  31. } else if strings.HasSuffix(path, "embeddings") {
  32. relayMode = RelayModeEmbeddings
  33. } else if strings.HasPrefix(path, "/v1/moderations") {
  34. relayMode = RelayModeModerations
  35. } else if strings.HasPrefix(path, "/v1/images/generations") {
  36. relayMode = RelayModeImagesGenerations
  37. } else if strings.HasPrefix(path, "/v1/edits") {
  38. relayMode = RelayModeEdits
  39. } else if strings.HasPrefix(path, "/v1/audio/speech") {
  40. relayMode = RelayModeAudioSpeech
  41. } else if strings.HasPrefix(path, "/v1/audio/transcriptions") {
  42. relayMode = RelayModeAudioTranscription
  43. } else if strings.HasPrefix(path, "/v1/audio/translations") {
  44. relayMode = RelayModeAudioTranslation
  45. }
  46. return relayMode
  47. }