Files
Yeuoly 0d282de6a1 feat: support multimodal rerank and embedding (#503)
* fix: align multimodal permission mapping

* fix: implement mock interface for multimodal embeddings

* fix: support multimodal embedding

* fix: incorrect reference
2025-12-09 14:56:11 +08:00

194 lines
4.9 KiB
Go

// Code generated by controller generator. DO NOT EDIT.
package controllers
import (
"github.com/gin-gonic/gin"
"github.com/langgenius/dify-plugin-daemon/internal/service"
"github.com/langgenius/dify-plugin-daemon/internal/types/app"
"github.com/langgenius/dify-plugin-daemon/pkg/entities/plugin_entities"
"github.com/langgenius/dify-plugin-daemon/pkg/entities/requests"
)
func InvokeLLM(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeLLM]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeLLM(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func GetLLMNumTokens(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestGetLLMNumTokens]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.GetLLMNumTokens(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeTextEmbedding(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeTextEmbedding]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeTextEmbedding(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeMultimodalEmbedding(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeMultimodalEmbedding]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeMultimodalEmbedding(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func GetTextEmbeddingNumTokens(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestGetTextEmbeddingNumTokens]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.GetTextEmbeddingNumTokens(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeRerank(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeRerank]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeRerank(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeMultimodalRerank(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeMultimodalRerank]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeMultimodalRerank(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeTTS(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeTTS]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeTTS(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func GetTTSModelVoices(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestGetTTSModelVoices]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.GetTTSModelVoices(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeSpeech2Text(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeSpeech2Text]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeSpeech2Text(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func InvokeModeration(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestInvokeModeration]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.InvokeModeration(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func ValidateProviderCredentials(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestValidateProviderCredentials]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.ValidateProviderCredentials(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func ValidateModelCredentials(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestValidateModelCredentials]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.ValidateModelCredentials(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}
func GetAIModelSchema(config *app.Config) gin.HandlerFunc {
type request = plugin_entities.InvokePluginRequest[requests.RequestGetAIModelSchema]
return func(c *gin.Context) {
BindPluginDispatchRequest(
c,
func(itr request) {
service.GetAIModelSchema(&itr, c, config.PluginMaxExecutionTimeout)
},
)
}
}