model_service.go 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package plugin_daemon
  2. import (
  3. "github.com/langgenius/dify-plugin-daemon/internal/core/session_manager"
  4. "github.com/langgenius/dify-plugin-daemon/internal/types/entities/model_entities"
  5. "github.com/langgenius/dify-plugin-daemon/internal/types/entities/requests"
  6. "github.com/langgenius/dify-plugin-daemon/internal/utils/stream"
  7. )
  8. func InvokeLLM(
  9. session *session_manager.Session,
  10. request *requests.RequestInvokeLLM,
  11. ) (
  12. *stream.Stream[model_entities.LLMResultChunk], error,
  13. ) {
  14. return genericInvokePlugin[requests.RequestInvokeLLM, model_entities.LLMResultChunk](
  15. session,
  16. request,
  17. 512,
  18. )
  19. }
  20. func InvokeTextEmbedding(
  21. session *session_manager.Session,
  22. request *requests.RequestInvokeTextEmbedding,
  23. ) (
  24. *stream.Stream[model_entities.TextEmbeddingResult], error,
  25. ) {
  26. return genericInvokePlugin[requests.RequestInvokeTextEmbedding, model_entities.TextEmbeddingResult](
  27. session,
  28. request,
  29. 1,
  30. )
  31. }
  32. func InvokeRerank(
  33. session *session_manager.Session,
  34. request *requests.RequestInvokeRerank,
  35. ) (
  36. *stream.Stream[model_entities.RerankResult], error,
  37. ) {
  38. return genericInvokePlugin[requests.RequestInvokeRerank, model_entities.RerankResult](
  39. session,
  40. request,
  41. 1,
  42. )
  43. }
  44. func InvokeTTS(
  45. session *session_manager.Session,
  46. request *requests.RequestInvokeTTS,
  47. ) (
  48. *stream.Stream[model_entities.TTSResult], error,
  49. ) {
  50. return genericInvokePlugin[requests.RequestInvokeTTS, model_entities.TTSResult](
  51. session,
  52. request,
  53. 1,
  54. )
  55. }
  56. func InvokeSpeech2Text(
  57. session *session_manager.Session,
  58. request *requests.RequestInvokeSpeech2Text,
  59. ) (
  60. *stream.Stream[model_entities.Speech2TextResult], error,
  61. ) {
  62. return genericInvokePlugin[requests.RequestInvokeSpeech2Text, model_entities.Speech2TextResult](
  63. session,
  64. request,
  65. 1,
  66. )
  67. }
  68. func InvokeModeration(
  69. session *session_manager.Session,
  70. request *requests.RequestInvokeModeration,
  71. ) (
  72. *stream.Stream[model_entities.ModerationResult], error,
  73. ) {
  74. return genericInvokePlugin[requests.RequestInvokeModeration, model_entities.ModerationResult](
  75. session,
  76. request,
  77. 1,
  78. )
  79. }
  80. func ValidateProviderCredentials(
  81. session *session_manager.Session,
  82. request *requests.RequestValidateProviderCredentials,
  83. ) (
  84. *stream.Stream[model_entities.ValidateCredentialsResult], error,
  85. ) {
  86. return genericInvokePlugin[requests.RequestValidateProviderCredentials, model_entities.ValidateCredentialsResult](
  87. session,
  88. request,
  89. 1,
  90. )
  91. }
  92. func ValidateModelCredentials(
  93. session *session_manager.Session,
  94. request *requests.RequestValidateModelCredentials,
  95. ) (
  96. *stream.Stream[model_entities.ValidateCredentialsResult], error,
  97. ) {
  98. return genericInvokePlugin[requests.RequestValidateModelCredentials, model_entities.ValidateCredentialsResult](
  99. session,
  100. request,
  101. 1,
  102. )
  103. }