Documentation
¶
Index ¶
- type BackwardsInvocation
- type BaseInvokeDifyRequest
- type EncryptNamespace
- type EncryptOpt
- type InvokeAppRequest
- type InvokeAppSchema
- type InvokeEncryptRequest
- type InvokeEncryptSchema
- type InvokeEncryptionResponse
- type InvokeLLMRequest
- type InvokeLLMSchema
- type InvokeModerationRequest
- type InvokeNodeResponse
- type InvokeParameterExtractorRequest
- type InvokeQuestionClassifierRequest
- type InvokeRerankRequest
- type InvokeSpeech2TextRequest
- type InvokeStorageRequest
- type InvokeSummaryRequest
- type InvokeSummaryResponse
- type InvokeSummarySchema
- type InvokeTTSRequest
- type InvokeTextEmbeddingRequest
- type InvokeToolRequest
- type InvokeType
- type ModelConfig
- type StorageOpt
- type UploadFileRequest
- type UploadFileResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BackwardsInvocation ¶
type BackwardsInvocation interface {
// InvokeLLM
InvokeLLM(payload *InvokeLLMRequest) (*stream.Stream[model_entities.LLMResultChunk], error)
// InvokeTextEmbedding
InvokeTextEmbedding(payload *InvokeTextEmbeddingRequest) (*model_entities.TextEmbeddingResult, error)
// InvokeRerank
InvokeRerank(payload *InvokeRerankRequest) (*model_entities.RerankResult, error)
// InvokeTTS
InvokeTTS(payload *InvokeTTSRequest) (*stream.Stream[model_entities.TTSResult], error)
// InvokeSpeech2Text
InvokeSpeech2Text(payload *InvokeSpeech2TextRequest) (*model_entities.Speech2TextResult, error)
// InvokeModeration
InvokeModeration(payload *InvokeModerationRequest) (*model_entities.ModerationResult, error)
// InvokeTool
InvokeTool(payload *InvokeToolRequest) (*stream.Stream[tool_entities.ToolResponseChunk], error)
// InvokeApp
InvokeApp(payload *InvokeAppRequest) (*stream.Stream[map[string]any], error)
// InvokeParameterExtractor
InvokeParameterExtractor(payload *InvokeParameterExtractorRequest) (*InvokeNodeResponse, error)
// InvokeQuestionClassifier
InvokeQuestionClassifier(payload *InvokeQuestionClassifierRequest) (*InvokeNodeResponse, error)
// InvokeEncrypt
InvokeEncrypt(payload *InvokeEncryptRequest) (map[string]any, error)
// InvokeSummary
InvokeSummary(payload *InvokeSummaryRequest) (*InvokeSummaryResponse, error)
// UploadFile
UploadFile(payload *UploadFileRequest) (*UploadFileResponse, error)
}
type BaseInvokeDifyRequest ¶
type BaseInvokeDifyRequest struct {
TenantId string `json:"tenant_id"`
UserId string `json:"user_id"`
Type InvokeType `json:"type"`
}
type EncryptNamespace ¶
type EncryptNamespace string
const (
ENCRYPT_NAMESPACE_ENDPOINT EncryptNamespace = "endpoint"
)
type EncryptOpt ¶
type EncryptOpt string
const ( ENCRYPT_OPT_ENCRYPT EncryptOpt = "encrypt" ENCRYPT_OPT_DECRYPT EncryptOpt = "decrypt" ENCRYPT_OPT_CLEAR EncryptOpt = "clear" )
type InvokeAppRequest ¶
type InvokeAppRequest struct {
BaseInvokeDifyRequest
InvokeAppSchema
}
type InvokeAppSchema ¶
type InvokeAppSchema struct {
AppId string `json:"app_id" validate:"required"`
Inputs map[string]any `json:"inputs" validate:"omitempty"`
Query string `json:"query" validate:"omitempty"`
ResponseMode string `json:"response_mode"`
ConversationId string `json:"conversation_id" validate:"omitempty"`
User string `json:"user" validate:"omitempty"`
}
type InvokeEncryptRequest ¶
type InvokeEncryptRequest struct {
BaseInvokeDifyRequest
InvokeEncryptSchema
}
func (*InvokeEncryptRequest) EncryptRequired ¶
func (r *InvokeEncryptRequest) EncryptRequired(settings map[string]any) bool
type InvokeEncryptSchema ¶
type InvokeEncryptSchema struct {
Opt EncryptOpt `json:"opt" validate:"required,encrypt_opt"`
Namespace EncryptNamespace `json:"namespace" validate:"required,encrypt_namespace"`
Identity string `json:"identity" validate:"required"`
Data map[string]any `json:"data" validate:"omitempty"`
Config []plugin_entities.ProviderConfig `json:"config" validate:"omitempty,dive"`
}
type InvokeLLMRequest ¶
type InvokeLLMRequest struct {
BaseInvokeDifyRequest
requests.BaseRequestInvokeModel
// requests.InvokeLLMSchema,
// TODO: as completion_params in requests.InvokeLLMSchema is "model_parameters", we declare another one here
InvokeLLMSchema
}
type InvokeLLMSchema ¶
type InvokeLLMSchema struct {
Mode string `json:"mode" validate:"required"`
CompletionParams map[string]any `json:"completion_params" validate:"omitempty"`
PromptMessages []model_entities.PromptMessage `json:"prompt_messages" validate:"omitempty"`
Tools []model_entities.PromptMessageTool `json:"tools" validate:"omitempty,dive"`
Stop []string `json:"stop" validate:"omitempty"`
Stream bool `json:"stream"`
}
type InvokeModerationRequest ¶
type InvokeModerationRequest struct {
BaseInvokeDifyRequest
requests.BaseRequestInvokeModel
requests.InvokeModerationSchema
}
type InvokeNodeResponse ¶
type InvokeParameterExtractorRequest ¶
type InvokeParameterExtractorRequest struct {
BaseInvokeDifyRequest
Parameters []struct {
Name string `json:"name" validate:"required"`
Type string `json:"type" validate:"required,oneof=string number bool select array[string] array[number] array[object]"`
Options []string `json:"options" validate:"omitempty"`
Description string `json:"description" validate:"omitempty"`
Required bool `json:"required" validate:"omitempty"`
} `json:"parameters" validate:"required,dive"`
Model ModelConfig `json:"model" validate:"required"`
Instruction string `json:"instruction" validate:"omitempty"`
Query string `json:"query" validate:"required"`
}
type InvokeQuestionClassifierRequest ¶
type InvokeQuestionClassifierRequest struct {
BaseInvokeDifyRequest
Classes []struct {
ID string `json:"id" validate:"required"`
Name string `json:"name" validate:"required"`
} `json:"classes" validate:"required,dive"`
Model ModelConfig `json:"model" validate:"required"`
Instruction string `json:"instruction" validate:"omitempty"`
Query string `json:"query" validate:"required"`
}
type InvokeRerankRequest ¶
type InvokeRerankRequest struct {
BaseInvokeDifyRequest
requests.BaseRequestInvokeModel
requests.InvokeRerankSchema
}
type InvokeSpeech2TextRequest ¶
type InvokeSpeech2TextRequest struct {
BaseInvokeDifyRequest
requests.BaseRequestInvokeModel
requests.InvokeSpeech2TextSchema
}
type InvokeStorageRequest ¶
type InvokeStorageRequest struct {
Opt StorageOpt `json:"opt" validate:"required,storage_opt"`
Key string `json:"key" validate:"required"`
Value string `json:"value"` // encoded in hex, optional
}
type InvokeSummaryRequest ¶
type InvokeSummaryRequest struct {
BaseInvokeDifyRequest
InvokeSummarySchema
}
type InvokeSummaryResponse ¶
type InvokeSummaryResponse struct {
Summary string `json:"summary"`
}
type InvokeSummarySchema ¶
type InvokeTTSRequest ¶
type InvokeTTSRequest struct {
// BaseInvokeDifyRequest
// # TODO: BaseInvokeDifyRequest has a duplicate field with InvokeTTSSchema,
// # we should consider to refactor it in the future
UserId string `json:"user_id"`
Type InvokeType `json:"type"`
requests.BaseRequestInvokeModel
requests.InvokeTTSSchema
}
type InvokeTextEmbeddingRequest ¶
type InvokeTextEmbeddingRequest struct {
BaseInvokeDifyRequest
requests.BaseRequestInvokeModel
requests.InvokeTextEmbeddingSchema
}
type InvokeToolRequest ¶
type InvokeToolRequest struct {
BaseInvokeDifyRequest
ToolType requests.ToolType `json:"tool_type" validate:"required,tool_type"`
requests.InvokeToolSchema
}
type InvokeType ¶
type InvokeType string
const ( INVOKE_TYPE_LLM InvokeType = "llm" INVOKE_TYPE_TEXT_EMBEDDING InvokeType = "text_embedding" INVOKE_TYPE_RERANK InvokeType = "rerank" INVOKE_TYPE_TTS InvokeType = "tts" INVOKE_TYPE_SPEECH2TEXT InvokeType = "speech2text" INVOKE_TYPE_MODERATION InvokeType = "moderation" INVOKE_TYPE_TOOL InvokeType = "tool" INVOKE_TYPE_NODE_PARAMETER_EXTRACTOR InvokeType = "node_parameter_extractor" INVOKE_TYPE_NODE_QUESTION_CLASSIFIER InvokeType = "node_question_classifier" INVOKE_TYPE_APP InvokeType = "app" INVOKE_TYPE_STORAGE InvokeType = "storage" INVOKE_TYPE_ENCRYPT InvokeType = "encrypt" INVOKE_TYPE_SYSTEM_SUMMARY InvokeType = "system_summary" INVOKE_TYPE_UPLOAD_FILE InvokeType = "upload_file" )
type ModelConfig ¶
type StorageOpt ¶
type StorageOpt string
const ( STORAGE_OPT_GET StorageOpt = "get" STORAGE_OPT_SET StorageOpt = "set" STORAGE_OPT_DEL StorageOpt = "del" )
type UploadFileRequest ¶
type UploadFileRequest struct {
BaseInvokeDifyRequest
Filename string `json:"filename" validate:"required"`
MimeType string `json:"mimetype" validate:"required"`
}
type UploadFileResponse ¶
type UploadFileResponse struct {
URL string `json:"url"`
}
Click to show internal directories.
Click to hide internal directories.