package request import ( "io" "code.tczkiot.com/wlw/ai-agent/internal/pkg/enums" ) type CreateKnowledgeBaseRequest struct { Name string `json:"name"` Description string `json:"description"` KnowledgeType string `json:"knowledge_type"` DefaultTopK int `json:"default_top_k"` DefaultScoreThreshold float64 `json:"default_score_threshold"` DefaultRerankLimit int `json:"default_rerank_limit"` ChunkProvider string `json:"chunk_provider"` ChunkTargetTokens int `json:"chunk_target_tokens"` ChunkMaxTokens int `json:"chunk_max_tokens"` ChunkOverlapTokens int `json:"chunk_overlap_tokens"` AnswerMode int `json:"answer_mode"` Remark string `json:"remark"` } type UpdateKnowledgeBaseRequest struct { ID int64 `json:"id"` CreateKnowledgeBaseRequest } type CreateKnowledgeDirectoryRequest struct { KnowledgeBaseID int64 `json:"knowledge_base_id"` ParentID int64 `json:"parent_id"` Name string `json:"name"` Remark string `json:"remark"` } type UpdateKnowledgeDirectoryRequest struct { ID int64 `json:"id"` CreateKnowledgeDirectoryRequest } type DeleteKnowledgeDirectoryRequest struct { ID int64 `json:"id"` } type CreateKnowledgeDocumentRequest struct { KnowledgeBaseID int64 `json:"knowledge_base_id"` DirectoryID int64 `json:"directory_id"` Title string `json:"title"` ContentType enums.KnowledgeDocumentContentType `json:"content_type"` Content string `json:"content"` } type UpdateKnowledgeDocumentRequest struct { ID int64 `json:"id"` CreateKnowledgeDocumentRequest } type BatchMoveKnowledgeDocumentRequest struct { KnowledgeBaseID int64 `json:"knowledge_base_id"` DirectoryID int64 `json:"directory_id"` IDs []int64 `json:"ids"` } type BatchDeleteKnowledgeDocumentRequest struct { IDs []int64 `json:"ids"` } type CreateKnowledgeFAQRequest struct { KnowledgeBaseID int64 `json:"knowledge_base_id"` DirectoryID int64 `json:"directory_id"` Question string `json:"question"` Answer string `json:"answer"` SimilarQuestions []string `json:"similar_questions"` Remark string `json:"remark"` } type UpdateKnowledgeFAQRequest struct { ID int64 `json:"id"` CreateKnowledgeFAQRequest } type BatchMoveKnowledgeFAQRequest struct { KnowledgeBaseID int64 `json:"knowledge_base_id"` DirectoryID int64 `json:"directory_id"` IDs []int64 `json:"ids"` } type BatchDeleteKnowledgeFAQRequest struct { IDs []int64 `json:"ids"` } type KnowledgeFAQImportMode string const ( KnowledgeFAQImportModeAppend KnowledgeFAQImportMode = "append" KnowledgeFAQImportModeOverwrite KnowledgeFAQImportMode = "overwrite" ) type ImportKnowledgeFAQRequest struct { KnowledgeBaseID int64 Mode KnowledgeFAQImportMode Filename string Reader io.Reader Locale string } type KnowledgeSearchRequest struct { KnowledgeBaseIDs []int64 `json:"knowledge_base_ids"` Question string `json:"question"` TopK int `json:"top_k"` ScoreThreshold float64 `json:"score_threshold"` RerankLimit int `json:"rerank_limit"` Channel string `json:"channel"` Scene string `json:"scene"` SessionID string `json:"session_id"` ConversationID int64 `json:"conversation_id"` } type KnowledgeAnswerRequest struct { KnowledgeBaseIDs []int64 `json:"knowledge_base_ids"` Question string `json:"question"` TopK int `json:"top_k"` ScoreThreshold float64 `json:"score_threshold"` RerankLimit int `json:"rerank_limit"` Channel string `json:"channel"` Scene string `json:"scene"` SessionID string `json:"session_id"` ConversationID int64 `json:"conversation_id"` AnswerMode int `json:"answer_mode"` } type CreateKnowledgeFeedbackRequest struct { RetrieveLogID int64 `json:"retrieve_log_id"` FeedbackType int `json:"feedback_type"` FeedbackReason string `json:"feedback_reason"` Remark string `json:"remark"` }