relay_mode.go 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. RelayModeMidjourneyAction
  23. RelayModeMidjourneyModal
  24. RelayModeMidjourneyShorten
  25. )
  26. func Path2RelayMode(path string) int {
  27. relayMode := RelayModeUnknown
  28. if strings.HasPrefix(path, "/v1/chat/completions") {
  29. relayMode = RelayModeChatCompletions
  30. } else if strings.HasPrefix(path, "/v1/completions") {
  31. relayMode = RelayModeCompletions
  32. } else if strings.HasPrefix(path, "/v1/embeddings") {
  33. relayMode = RelayModeEmbeddings
  34. } else if strings.HasSuffix(path, "embeddings") {
  35. relayMode = RelayModeEmbeddings
  36. } else if strings.HasPrefix(path, "/v1/moderations") {
  37. relayMode = RelayModeModerations
  38. } else if strings.HasPrefix(path, "/v1/images/generations") {
  39. relayMode = RelayModeImagesGenerations
  40. } else if strings.HasPrefix(path, "/v1/edits") {
  41. relayMode = RelayModeEdits
  42. } else if strings.HasPrefix(path, "/v1/audio/speech") {
  43. relayMode = RelayModeAudioSpeech
  44. } else if strings.HasPrefix(path, "/v1/audio/transcriptions") {
  45. relayMode = RelayModeAudioTranscription
  46. } else if strings.HasPrefix(path, "/v1/audio/translations") {
  47. relayMode = RelayModeAudioTranslation
  48. }
  49. return relayMode
  50. }
  51. func Path2RelayModeMidjourney(path string) int {
  52. relayMode := RelayModeUnknown
  53. if strings.HasPrefix(path, "/mj/submit/action") {
  54. // midjourney plus
  55. relayMode = RelayModeMidjourneyAction
  56. } else if strings.HasPrefix(path, "/mj/submit/modal") {
  57. // midjourney plus
  58. relayMode = RelayModeMidjourneyModal
  59. } else if strings.HasPrefix(path, "/mj/submit/shorten") {
  60. // midjourney plus
  61. relayMode = RelayModeMidjourneyShorten
  62. } else if strings.HasPrefix(path, "/mj/submit/imagine") {
  63. relayMode = RelayModeMidjourneyImagine
  64. } else if strings.HasPrefix(path, "/mj/submit/blend") {
  65. relayMode = RelayModeMidjourneyBlend
  66. } else if strings.HasPrefix(path, "/mj/submit/describe") {
  67. relayMode = RelayModeMidjourneyDescribe
  68. } else if strings.HasPrefix(path, "/mj/notify") {
  69. relayMode = RelayModeMidjourneyNotify
  70. } else if strings.HasPrefix(path, "/mj/submit/change") {
  71. relayMode = RelayModeMidjourneyChange
  72. } else if strings.HasPrefix(path, "/mj/submit/simple-change") {
  73. relayMode = RelayModeMidjourneyChange
  74. } else if strings.HasSuffix(path, "/fetch") {
  75. relayMode = RelayModeMidjourneyTaskFetch
  76. } else if strings.HasSuffix(path, "/list-by-condition") {
  77. relayMode = RelayModeMidjourneyTaskFetchByCondition
  78. }
  79. return relayMode
  80. }