SYMBOL INDEX (5773 symbols across 499 files) FILE: client/agent.go type MentionedItem (line 16) | type MentionedItem struct type AgentQARequest (line 24) | type AgentQARequest struct type AgentResponseType (line 39) | type AgentResponseType constant AgentResponseTypeThinking (line 42) | AgentResponseTypeThinking AgentResponseType = "thinking" constant AgentResponseTypeToolCall (line 43) | AgentResponseTypeToolCall AgentResponseType = "tool_call" constant AgentResponseTypeToolResult (line 44) | AgentResponseTypeToolResult AgentResponseType = "tool_result" constant AgentResponseTypeReferences (line 45) | AgentResponseTypeReferences AgentResponseType = "references" constant AgentResponseTypeAnswer (line 46) | AgentResponseTypeAnswer AgentResponseType = "answer" constant AgentResponseTypeReflection (line 47) | AgentResponseTypeReflection AgentResponseType = "reflection" constant AgentResponseTypeError (line 48) | AgentResponseTypeError AgentResponseType = "error" type AgentStreamResponse (line 52) | type AgentStreamResponse struct type AgentEventCallback (line 63) | type AgentEventCallback method AgentQAStream (line 67) | func (c *Client) AgentQAStream(ctx context.Context, sessionID string, qu... method AgentQAStreamWithRequest (line 76) | func (c *Client) AgentQAStreamWithRequest(ctx context.Context, method processAgentSSEStream (line 103) | func (c *Client) processAgentSSEStream(reader io.Reader, callback AgentE... type AgentSession (line 147) | type AgentSession struct method Ask (line 161) | func (as *AgentSession) Ask(ctx context.Context, query string, callbac... method AskWithRequest (line 166) | func (as *AgentSession) AskWithRequest( method GetSessionID (line 175) | func (as *AgentSession) GetSessionID() string { method NewAgentSession (line 153) | func (c *Client) NewAgentSession(sessionID string) *AgentSession { FILE: client/agent_manage.go type Agent (line 14) | type Agent struct type AgentConfig (line 28) | type AgentConfig struct type CreateAgentRequest (line 66) | type CreateAgentRequest struct type UpdateAgentRequest (line 74) | type UpdateAgentRequest struct type AgentResponse (line 82) | type AgentResponse struct type AgentListResponse (line 88) | type AgentListResponse struct type AgentPlaceholdersResponse (line 94) | type AgentPlaceholdersResponse struct method CreateAgent (line 100) | func (c *Client) CreateAgent(ctx context.Context, request *CreateAgentRe... method ListAgents (line 115) | func (c *Client) ListAgents(ctx context.Context) ([]Agent, error) { method GetAgent (line 130) | func (c *Client) GetAgent(ctx context.Context, agentID string) (*Agent, ... method UpdateAgent (line 146) | func (c *Client) UpdateAgent(ctx context.Context, agentID string, reques... method DeleteAgent (line 162) | func (c *Client) DeleteAgent(ctx context.Context, agentID string) error { method CopyAgent (line 178) | func (c *Client) CopyAgent(ctx context.Context, agentID string) (*Agent,... method GetAgentPlaceholders (line 194) | func (c *Client) GetAgentPlaceholders(ctx context.Context) (map[string]j... FILE: client/chunk.go type Chunk (line 16) | type Chunk struct type ChunkResponse (line 44) | type ChunkResponse struct type ChunkListResponse (line 51) | type ChunkListResponse struct type UpdateChunkRequest (line 61) | type UpdateChunkRequest struct method ListKnowledgeChunks (line 83) | func (c *Client) ListKnowledgeChunks(ctx context.Context, method UpdateChunk (line 116) | func (c *Client) UpdateChunk(ctx context.Context, method DeleteChunk (line 142) | func (c *Client) DeleteChunk(ctx context.Context, knowledgeID string, ch... method GetChunkByIDOnly (line 158) | func (c *Client) GetChunkByIDOnly(ctx context.Context, chunkID string) (... method DeleteGeneratedQuestion (line 174) | func (c *Client) DeleteGeneratedQuestion(ctx context.Context, chunkID st... method DeleteChunksByKnowledgeID (line 198) | func (c *Client) DeleteChunksByKnowledgeID(ctx context.Context, knowledg... FILE: client/client.go type Client (line 17) | type Client struct method doRequest (line 57) | func (c *Client) doRequest(ctx context.Context, type ClientOption (line 24) | type ClientOption function WithTimeout (line 27) | func WithTimeout(timeout time.Duration) ClientOption { function WithToken (line 34) | func WithToken(token string) ClientOption { function NewClient (line 41) | func NewClient(baseURL string, options ...ClientOption) *Client { function parseResponse (line 91) | func parseResponse(resp *http.Response, target interface{}) error { FILE: client/evaluation.go type EvaluationTask (line 15) | type EvaluationTask struct type EvaluationResult (line 30) | type EvaluationResult struct type EvaluationRequest (line 45) | type EvaluationRequest struct type EvaluationTaskResponse (line 54) | type EvaluationTaskResponse struct type EvaluationResultResponse (line 61) | type EvaluationResultResponse struct method StartEvaluation (line 75) | func (c *Client) StartEvaluation(ctx context.Context, request *Evaluatio... method GetEvaluationResult (line 98) | func (c *Client) GetEvaluationResult(ctx context.Context, taskID string)... FILE: client/example.go function ExampleUsage (line 22) | func ExampleUsage() { function min (line 249) | func min(a, b int) int { FILE: client/faq.go type FAQEntry (line 14) | type FAQEntry struct type FAQEntryPayload (line 40) | type FAQEntryPayload struct type FAQBatchUpsertPayload (line 55) | type FAQBatchUpsertPayload struct type FAQEntryFieldsUpdate (line 64) | type FAQEntryFieldsUpdate struct type FAQEntryFieldsBatchRequest (line 74) | type FAQEntryFieldsBatchRequest struct type FAQEntryTagBatchRequest (line 85) | type FAQEntryTagBatchRequest struct type FAQDeleteRequest (line 90) | type FAQDeleteRequest struct type FAQSearchRequest (line 95) | type FAQSearchRequest struct type FAQEntriesPage (line 105) | type FAQEntriesPage struct type FAQEntriesResponse (line 113) | type FAQEntriesResponse struct type FAQUpsertResponse (line 121) | type FAQUpsertResponse struct type FAQTaskPayload (line 129) | type FAQTaskPayload struct type FAQSearchResponse (line 134) | type FAQSearchResponse struct type FAQEntryResponse (line 142) | type FAQEntryResponse struct type faqSimpleResponse (line 149) | type faqSimpleResponse struct method ListFAQEntries (line 159) | func (c *Client) ListFAQEntries(ctx context.Context, method UpsertFAQEntries (line 199) | func (c *Client) UpsertFAQEntries(ctx context.Context, method CreateFAQEntry (line 219) | func (c *Client) CreateFAQEntry(ctx context.Context, method GetFAQEntry (line 236) | func (c *Client) GetFAQEntry(ctx context.Context, method UpdateFAQEntry (line 253) | func (c *Client) UpdateFAQEntry(ctx context.Context, type AddSimilarQuestionsPayload (line 270) | type AddSimilarQuestionsPayload struct method AddSimilarQuestions (line 276) | func (c *Client) AddSimilarQuestions(ctx context.Context, method UpdateFAQEntryFieldsBatch (line 297) | func (c *Client) UpdateFAQEntryFieldsBatch(ctx context.Context, method UpdateFAQEntryTagBatch (line 312) | func (c *Client) UpdateFAQEntryTagBatch(ctx context.Context, method DeleteFAQEntries (line 326) | func (c *Client) DeleteFAQEntries(ctx context.Context, method SearchFAQEntries (line 340) | func (c *Client) SearchFAQEntries(ctx context.Context, method ExportFAQEntries (line 362) | func (c *Client) ExportFAQEntries(ctx context.Context, knowledgeBaseID s... type FAQFailedEntry (line 380) | type FAQFailedEntry struct type FAQSuccessEntry (line 393) | type FAQSuccessEntry struct type FAQImportProgress (line 403) | type FAQImportProgress struct type FAQImportProgressResponse (line 431) | type FAQImportProgressResponse struct method GetFAQImportProgress (line 440) | func (c *Client) GetFAQImportProgress(ctx context.Context, taskID string... type updateLastFAQImportResultDisplayStatusRequest (line 454) | type updateLastFAQImportResultDisplayStatusRequest struct method UpdateLastFAQImportResultDisplayStatus (line 459) | func (c *Client) UpdateLastFAQImportResultDisplayStatus(ctx context.Cont... FILE: client/initialization.go type InitializationConfig (line 12) | type InitializationConfig struct type OllamaModelInfo (line 20) | type OllamaModelInfo struct type DownloadTask (line 27) | type DownloadTask struct type ModelCheckResult (line 38) | type ModelCheckResult struct method GetInitializationConfig (line 44) | func (c *Client) GetInitializationConfig(ctx context.Context, kbID strin... method InitializeByKB (line 60) | func (c *Client) InitializeByKB(ctx context.Context, kbID string, config... method UpdateKBConfig (line 69) | func (c *Client) UpdateKBConfig(ctx context.Context, kbID string, config... method CheckOllamaStatus (line 78) | func (c *Client) CheckOllamaStatus(ctx context.Context) (bool, error) { method ListOllamaModels (line 96) | func (c *Client) ListOllamaModels(ctx context.Context) ([]OllamaModelInf... method CheckOllamaModels (line 112) | func (c *Client) CheckOllamaModels(ctx context.Context, models []string)... method DownloadOllamaModel (line 129) | func (c *Client) DownloadOllamaModel(ctx context.Context, modelName stri... method GetOllamaDownloadProgress (line 146) | func (c *Client) GetOllamaDownloadProgress(ctx context.Context, taskID s... method ListOllamaDownloadTasks (line 162) | func (c *Client) ListOllamaDownloadTasks(ctx context.Context) ([]*Downlo... method CheckRemoteModel (line 178) | func (c *Client) CheckRemoteModel(ctx context.Context, params map[string... method TestEmbeddingModel (line 194) | func (c *Client) TestEmbeddingModel(ctx context.Context, params map[stri... method CheckRerankModel (line 210) | func (c *Client) CheckRerankModel(ctx context.Context, params map[string... method TestMultimodalFunction (line 226) | func (c *Client) TestMultimodalFunction(ctx context.Context, params map[... method ExtractTextRelations (line 242) | func (c *Client) ExtractTextRelations(ctx context.Context, params any) (... FILE: client/knowledge.go type Knowledge (line 23) | type Knowledge struct type KnowledgeResponse (line 50) | type KnowledgeResponse struct type KnowledgeListResponse (line 58) | type KnowledgeListResponse struct type KnowledgeBatchResponse (line 67) | type KnowledgeBatchResponse struct type UpdateImageInfoRequest (line 74) | type UpdateImageInfoRequest struct method CreateKnowledgeFromFile (line 91) | func (c *Client) CreateKnowledgeFromFile(ctx context.Context, type CreateKnowledgeFromURLRequest (line 194) | type CreateKnowledgeFromURLRequest struct method CreateKnowledgeFromURL (line 212) | func (c *Client) CreateKnowledgeFromURL( method GetKnowledge (line 240) | func (c *Client) GetKnowledge(ctx context.Context, knowledgeID string) (... method GetKnowledgeBatch (line 256) | func (c *Client) GetKnowledgeBatch(ctx context.Context, knowledgeIDs []s... method ListKnowledge (line 278) | func (c *Client) ListKnowledge(ctx context.Context, method DeleteKnowledge (line 307) | func (c *Client) DeleteKnowledge(ctx context.Context, knowledgeID string... method DownloadKnowledgeFile (line 323) | func (c *Client) DownloadKnowledgeFile(ctx context.Context, knowledgeID ... method UpdateKnowledge (line 353) | func (c *Client) UpdateKnowledge(ctx context.Context, knowledge *Knowled... method ReparseKnowledge (line 389) | func (c *Client) ReparseKnowledge(ctx context.Context, knowledgeID strin... method UpdateImageInfo (line 419) | func (c *Client) UpdateImageInfo(ctx context.Context, type CreateManualKnowledgeRequest (line 437) | type CreateManualKnowledgeRequest struct type UpdateManualKnowledgeRequest (line 444) | type UpdateManualKnowledgeRequest struct type BatchUpdateKnowledgeTagsRequest (line 450) | type BatchUpdateKnowledgeTagsRequest struct method CreateManualKnowledge (line 455) | func (c *Client) CreateManualKnowledge(ctx context.Context, knowledgeBas... method UpdateManualKnowledge (line 471) | func (c *Client) UpdateManualKnowledge(ctx context.Context, knowledgeID ... type FilterKnowledgeResponse (line 487) | type FilterKnowledgeResponse struct method FilterKnowledge (line 494) | func (c *Client) FilterKnowledge(ctx context.Context, keyword string, of... type MoveKnowledgeRequest (line 524) | type MoveKnowledgeRequest struct type MoveKnowledgeResponse (line 532) | type MoveKnowledgeResponse struct method MoveKnowledge (line 541) | func (c *Client) MoveKnowledge(ctx context.Context, req *MoveKnowledgeRe... type KnowledgeMoveProgress (line 558) | type KnowledgeMoveProgress struct method GetKnowledgeMoveProgress (line 569) | func (c *Client) GetKnowledgeMoveProgress(ctx context.Context, taskID st... method PreviewKnowledgeFile (line 588) | func (c *Client) PreviewKnowledgeFile(ctx context.Context, knowledgeID s... method BatchUpdateKnowledgeTags (line 595) | func (c *Client) BatchUpdateKnowledgeTags(ctx context.Context, updates m... FILE: client/knowledgebase.go type KnowledgeBase (line 16) | type KnowledgeBase struct method UnmarshalJSON (line 112) | func (kb *KnowledgeBase) UnmarshalJSON(data []byte) error { type KnowledgeBaseConfig (line 42) | type KnowledgeBaseConfig struct type ChunkingConfig (line 49) | type ChunkingConfig struct type FAQConfig (line 56) | type FAQConfig struct type ImageProcessingConfig (line 62) | type ImageProcessingConfig struct type VLMConfig (line 67) | type VLMConfig struct type StorageProviderConfig (line 73) | type StorageProviderConfig struct type StorageConfig (line 79) | type StorageConfig struct type ExtractConfig (line 90) | type ExtractConfig struct type GraphNode (line 99) | type GraphNode struct type GraphRelation (line 104) | type GraphRelation struct type KnowledgeBaseResponse (line 130) | type KnowledgeBaseResponse struct type KnowledgeBaseListResponse (line 136) | type KnowledgeBaseListResponse struct type SearchResult (line 142) | type SearchResult struct type HybridSearchResponse (line 163) | type HybridSearchResponse struct type CopyKnowledgeBaseRequest (line 168) | type CopyKnowledgeBaseRequest struct type CopyKnowledgeBaseResponse (line 175) | type CopyKnowledgeBaseResponse struct type KBCloneProgress (line 183) | type KBCloneProgress struct method CreateKnowledgeBase (line 198) | func (c *Client) CreateKnowledgeBase(ctx context.Context, knowledgeBase ... method GetKnowledgeBase (line 213) | func (c *Client) GetKnowledgeBase(ctx context.Context, knowledgeBaseID s... method ListKnowledgeBases (line 229) | func (c *Client) ListKnowledgeBases(ctx context.Context) ([]KnowledgeBas... type UpdateKnowledgeBaseRequest (line 244) | type UpdateKnowledgeBaseRequest struct method UpdateKnowledgeBase (line 251) | func (c *Client) UpdateKnowledgeBase(ctx context.Context, method DeleteKnowledgeBase (line 270) | func (c *Client) DeleteKnowledgeBase(ctx context.Context, knowledgeBaseI... type SearchParams (line 286) | type SearchParams struct method HybridSearch (line 298) | func (c *Client) HybridSearch(ctx context.Context, knowledgeBaseID strin... method TogglePinKnowledgeBase (line 315) | func (c *Client) TogglePinKnowledgeBase(ctx context.Context, knowledgeBa... type MoveTarget (line 331) | type MoveTarget struct method ListMoveTargets (line 339) | func (c *Client) ListMoveTargets(ctx context.Context, knowledgeBaseID st... method CopyKnowledgeBase (line 355) | func (c *Client) CopyKnowledgeBase(ctx context.Context, request *CopyKno... method GetKBCloneProgress (line 376) | func (c *Client) GetKBCloneProgress(ctx context.Context, taskID string) ... FILE: client/mcp_service.go type MCPTransportType (line 11) | type MCPTransportType constant MCPTransportSSE (line 14) | MCPTransportSSE MCPTransportType = "sse" constant MCPTransportHTTPStreamable (line 15) | MCPTransportHTTPStreamable MCPTransportType = "http-streamable" constant MCPTransportStdio (line 16) | MCPTransportStdio MCPTransportType = "stdio" type MCPService (line 20) | type MCPService struct type MCPAuthConfig (line 39) | type MCPAuthConfig struct type MCPAdvancedConfig (line 46) | type MCPAdvancedConfig struct type MCPStdioConfig (line 53) | type MCPStdioConfig struct type MCPTool (line 59) | type MCPTool struct type MCPResource (line 66) | type MCPResource struct type MCPTestResult (line 74) | type MCPTestResult struct method CreateMCPService (line 82) | func (c *Client) CreateMCPService(ctx context.Context, service *MCPServi... method ListMCPServices (line 99) | func (c *Client) ListMCPServices(ctx context.Context) ([]*MCPService, er... method GetMCPService (line 116) | func (c *Client) GetMCPService(ctx context.Context, serviceID string) (*... method UpdateMCPService (line 133) | func (c *Client) UpdateMCPService(ctx context.Context, serviceID string,... method DeleteMCPService (line 150) | func (c *Client) DeleteMCPService(ctx context.Context, serviceID string)... method TestMCPService (line 159) | func (c *Client) TestMCPService(ctx context.Context, serviceID string) (... method GetMCPServiceTools (line 176) | func (c *Client) GetMCPServiceTools(ctx context.Context, serviceID strin... method GetMCPServiceResources (line 193) | func (c *Client) GetMCPServiceResources(ctx context.Context, serviceID s... FILE: client/message.go type ToolResult (line 16) | type ToolResult struct type ToolCall (line 24) | type ToolCall struct type AgentStep (line 34) | type AgentStep struct type Message (line 42) | type Message struct type MessageListResponse (line 56) | type MessageListResponse struct method LoadMessages (line 62) | func (c *Client) LoadMessages( method GetRecentMessages (line 91) | func (c *Client) GetRecentMessages(ctx context.Context, sessionID string... method GetMessagesBefore (line 96) | func (c *Client) GetMessagesBefore( type SearchMessagesRequest (line 106) | type SearchMessagesRequest struct type MessageSearchGroupItem (line 114) | type MessageSearchGroupItem struct type MessageSearchResult (line 126) | type MessageSearchResult struct type ChatHistoryKBStats (line 132) | type ChatHistoryKBStats struct method SearchMessages (line 142) | func (c *Client) SearchMessages(ctx context.Context, req *SearchMessages... method GetChatHistoryKBStats (line 159) | func (c *Client) GetChatHistoryKBStats(ctx context.Context) (*ChatHistor... method DeleteMessage (line 176) | func (c *Client) DeleteMessage(ctx context.Context, sessionID string, me... FILE: client/model.go type ModelType (line 14) | type ModelType type ModelSource (line 17) | type ModelSource type ModelParameters (line 20) | type ModelParameters type Model (line 23) | type Model struct type CreateModelRequest (line 37) | type CreateModelRequest struct type UpdateModelRequest (line 47) | type UpdateModelRequest struct type ModelResponse (line 55) | type ModelResponse struct type ModelListResponse (line 61) | type ModelListResponse struct constant ModelTypeEmbedding (line 68) | ModelTypeEmbedding ModelType = "embedding" constant ModelTypeChat (line 69) | ModelTypeChat ModelType = "chat" constant ModelTypeRerank (line 70) | ModelTypeRerank ModelType = "rerank" constant ModelTypeSummary (line 71) | ModelTypeSummary ModelType = "summary" constant ModelSourceInternal (line 76) | ModelSourceInternal ModelSource = "internal" constant ModelSourceExternal (line 77) | ModelSourceExternal ModelSource = "external" method CreateModel (line 81) | func (c *Client) CreateModel(ctx context.Context, request *CreateModelRe... method GetModel (line 96) | func (c *Client) GetModel(ctx context.Context, modelID string) (*Model, ... method ListModels (line 112) | func (c *Client) ListModels(ctx context.Context) ([]Model, error) { method UpdateModel (line 127) | func (c *Client) UpdateModel(ctx context.Context, modelID string, reques... method DeleteModel (line 143) | func (c *Client) DeleteModel(ctx context.Context, modelID string) error { type ModelProvider (line 159) | type ModelProvider struct type ModelProviderListResponse (line 168) | type ModelProviderListResponse struct method ListModelProviders (line 175) | func (c *Client) ListModelProviders(ctx context.Context, modelType strin... FILE: client/organization.go type Organization (line 12) | type Organization struct type OrganizationResponse (line 29) | type OrganizationResponse struct type CreateOrganizationRequest (line 53) | type CreateOrganizationRequest struct type UpdateOrganizationRequest (line 62) | type UpdateOrganizationRequest struct type OrganizationMemberResponse (line 73) | type OrganizationMemberResponse struct type KnowledgeBaseShareResponse (line 85) | type KnowledgeBaseShareResponse struct type AgentShareResponse (line 101) | type AgentShareResponse struct type JoinRequestResponse (line 115) | type JoinRequestResponse struct type UserInfo (line 130) | type UserInfo struct type SharedKnowledgeBaseInfo (line 143) | type SharedKnowledgeBaseInfo struct type SharedAgentInfo (line 153) | type SharedAgentInfo struct type UserInfo (line 163) | type UserInfo struct method CreateOrganization (line 178) | func (c *Client) CreateOrganization(ctx context.Context, req *CreateOrga... method ListMyOrganizations (line 194) | func (c *Client) ListMyOrganizations(ctx context.Context) ([]Organizatio... method GetOrganization (line 212) | func (c *Client) GetOrganization(ctx context.Context, orgID string) (*Or... method UpdateOrganization (line 228) | func (c *Client) UpdateOrganization(ctx context.Context, orgID string, r... method DeleteOrganization (line 244) | func (c *Client) DeleteOrganization(ctx context.Context, orgID string) e... method JoinOrganizationByInviteCode (line 255) | func (c *Client) JoinOrganizationByInviteCode(ctx context.Context, invit... method SubmitJoinRequest (line 265) | func (c *Client) SubmitJoinRequest(ctx context.Context, inviteCode, mess... method SearchOrganizations (line 279) | func (c *Client) SearchOrganizations(ctx context.Context, keyword string... method JoinByOrganizationID (line 307) | func (c *Client) JoinByOrganizationID(ctx context.Context, orgID, messag... method PreviewOrganizationByInviteCode (line 321) | func (c *Client) PreviewOrganizationByInviteCode(ctx context.Context, co... method LeaveOrganization (line 337) | func (c *Client) LeaveOrganization(ctx context.Context, orgID string) er... method RequestRoleUpgrade (line 346) | func (c *Client) RequestRoleUpgrade(ctx context.Context, orgID, requeste... method GenerateInviteCode (line 359) | func (c *Client) GenerateInviteCode(ctx context.Context, orgID string) (... method SearchUsersForInvite (line 377) | func (c *Client) SearchUsersForInvite(ctx context.Context, orgID, keywor... method InviteMember (line 397) | func (c *Client) InviteMember(ctx context.Context, orgID, userID, role s... method ListOrgMembers (line 410) | func (c *Client) ListOrgMembers(ctx context.Context, orgID string) ([]Or... method UpdateMemberRole (line 428) | func (c *Client) UpdateMemberRole(ctx context.Context, orgID, userID, ro... method RemoveMember (line 438) | func (c *Client) RemoveMember(ctx context.Context, orgID, userID string)... method ListJoinRequests (line 449) | func (c *Client) ListJoinRequests(ctx context.Context, orgID string) ([]... method ReviewJoinRequest (line 467) | func (c *Client) ReviewJoinRequest(ctx context.Context, orgID, requestID... method ShareKnowledgeBase (line 483) | func (c *Client) ShareKnowledgeBase(ctx context.Context, kbID, orgID, pe... method ListKBShares (line 503) | func (c *Client) ListKBShares(ctx context.Context, kbID string) ([]Knowl... method UpdateSharePermission (line 521) | func (c *Client) UpdateSharePermission(ctx context.Context, kbID, shareI... method RemoveKBShare (line 531) | func (c *Client) RemoveKBShare(ctx context.Context, kbID, shareID string... method ShareAgent (line 542) | func (c *Client) ShareAgent(ctx context.Context, agentID, orgID, permiss... method ListAgentShares (line 562) | func (c *Client) ListAgentShares(ctx context.Context, agentID string) ([... method RemoveAgentShare (line 580) | func (c *Client) RemoveAgentShare(ctx context.Context, agentID, shareID ... method ListOrgShares (line 591) | func (c *Client) ListOrgShares(ctx context.Context, orgID string) ([]Kno... method ListOrgAgentShares (line 609) | func (c *Client) ListOrgAgentShares(ctx context.Context, orgID string) (... method ListSharedKnowledgeBases (line 627) | func (c *Client) ListSharedKnowledgeBases(ctx context.Context) ([]Shared... method ListSharedAgents (line 643) | func (c *Client) ListSharedAgents(ctx context.Context) ([]SharedAgentInf... FILE: client/session.go type SummaryConfig (line 20) | type SummaryConfig struct type CreateSessionRequest (line 39) | type CreateSessionRequest struct type Session (line 45) | type Session struct type SessionResponse (line 55) | type SessionResponse struct type SessionListResponse (line 61) | type SessionListResponse struct method CreateSession (line 70) | func (c *Client) CreateSession(ctx context.Context, request *CreateSessi... method GetSession (line 85) | func (c *Client) GetSession(ctx context.Context, sessionID string) (*Ses... method GetSessionsByTenant (line 101) | func (c *Client) GetSessionsByTenant(ctx context.Context, page int, page... method UpdateSession (line 119) | func (c *Client) UpdateSession(ctx context.Context, sessionID string, re... method DeleteSession (line 135) | func (c *Client) DeleteSession(ctx context.Context, sessionID string) er... method BatchDeleteSessions (line 151) | func (c *Client) BatchDeleteSessions(ctx context.Context, sessionIDs []s... type GenerateTitleRequest (line 170) | type GenerateTitleRequest struct type GenerateTitleResponse (line 175) | type GenerateTitleResponse struct type StopSessionRequest (line 181) | type StopSessionRequest struct method GenerateTitle (line 186) | func (c *Client) GenerateTitle(ctx context.Context, sessionID string, re... type ImageAttachment (line 204) | type ImageAttachment struct type KnowledgeQARequest (line 211) | type KnowledgeQARequest struct type LLMToolCall (line 224) | type LLMToolCall struct type FunctionCall (line 231) | type FunctionCall struct type ResponseType (line 236) | type ResponseType constant ResponseTypeAnswer (line 239) | ResponseTypeAnswer ResponseType = "answer" constant ResponseTypeReferences (line 240) | ResponseTypeReferences ResponseType = "references" constant ResponseTypeThinking (line 241) | ResponseTypeThinking ResponseType = "thinking" constant ResponseTypeToolCall (line 242) | ResponseTypeToolCall ResponseType = "tool_call" constant ResponseTypeToolResult (line 243) | ResponseTypeToolResult ResponseType = "tool_result" constant ResponseTypeError (line 244) | ResponseTypeError ResponseType = "error" constant ResponseTypeReflection (line 245) | ResponseTypeReflection ResponseType = "reflection" constant ResponseTypeSessionTitle (line 246) | ResponseTypeSessionTitle ResponseType = "session_title" constant ResponseTypeAgentQuery (line 247) | ResponseTypeAgentQuery ResponseType = "agent_query" constant ResponseTypeComplete (line 248) | ResponseTypeComplete ResponseType = "complete" type StreamResponse (line 252) | type StreamResponse struct method KnowledgeQAStream (line 265) | func (c *Client) KnowledgeQAStream( method ContinueStream (line 345) | func (c *Client) ContinueStream( method StopSession (line 411) | func (c *Client) StopSession(ctx context.Context, sessionID string, mess... type SearchKnowledgeRequest (line 436) | type SearchKnowledgeRequest struct type SearchKnowledgeResponse (line 444) | type SearchKnowledgeResponse struct method SearchKnowledge (line 450) | func (c *Client) SearchKnowledge(ctx context.Context, request *SearchKno... FILE: client/skill.go type SkillInfo (line 9) | type SkillInfo struct type SkillListResponse (line 15) | type SkillListResponse struct method ListSkills (line 22) | func (c *Client) ListSkills(ctx context.Context) ([]SkillInfo, bool, err... FILE: client/system.go type SystemInfo (line 10) | type SystemInfo struct type ParserEngine (line 24) | type ParserEngine struct type StorageEngineStatusItem (line 32) | type StorageEngineStatusItem struct type StorageEngineStatusResponse (line 39) | type StorageEngineStatusResponse struct type StorageCheckRequest (line 45) | type StorageCheckRequest struct type StorageCheckResponse (line 54) | type StorageCheckResponse struct type MinioBucketInfo (line 61) | type MinioBucketInfo struct method GetSystemInfo (line 68) | func (c *Client) GetSystemInfo(ctx context.Context) (*SystemInfo, error) { method ListParserEngines (line 84) | func (c *Client) ListParserEngines(ctx context.Context) ([]ParserEngine,... method CheckParserEngines (line 101) | func (c *Client) CheckParserEngines(ctx context.Context, config any) ([]... method ReconnectDocReader (line 117) | func (c *Client) ReconnectDocReader(ctx context.Context, addr string) er... method GetStorageEngineStatus (line 127) | func (c *Client) GetStorageEngineStatus(ctx context.Context) (*StorageEn... method CheckStorageEngine (line 143) | func (c *Client) CheckStorageEngine(ctx context.Context, req *StorageChe... method ListMinioBuckets (line 159) | func (c *Client) ListMinioBuckets(ctx context.Context) ([]MinioBucketInf... FILE: client/tag.go type Tag (line 13) | type Tag struct type TagWithStats (line 26) | type TagWithStats struct type CreateTagPayload (line 33) | type CreateTagPayload struct type UpdateTagPayload (line 40) | type UpdateTagPayload struct type TagsPage (line 47) | type TagsPage struct type TagsResponse (line 55) | type TagsResponse struct type TagResponse (line 63) | type TagResponse struct type tagSimpleResponse (line 70) | type tagSimpleResponse struct method ListTags (line 77) | func (c *Client) ListTags(ctx context.Context, method CreateTag (line 108) | func (c *Client) CreateTag(ctx context.Context, method UpdateTag (line 126) | func (c *Client) UpdateTag(ctx context.Context, method UpdateTagBySeqID (line 143) | func (c *Client) UpdateTagBySeqID(ctx context.Context, method DeleteTag (line 154) | func (c *Client) DeleteTag(ctx context.Context, method DeleteTagBySeqID (line 183) | func (c *Client) DeleteTagBySeqID(ctx context.Context, FILE: client/tenant.go type RetrieverEngines (line 18) | type RetrieverEngines struct type RetrieverEngineParams (line 23) | type RetrieverEngineParams struct type Tenant (line 29) | type Tenant struct type TenantResponse (line 54) | type TenantResponse struct type TenantListResponse (line 60) | type TenantListResponse struct method CreateTenant (line 68) | func (c *Client) CreateTenant(ctx context.Context, tenant *Tenant) (*Ten... method GetTenant (line 83) | func (c *Client) GetTenant(ctx context.Context, tenantID uint64) (*Tenan... method UpdateTenant (line 99) | func (c *Client) UpdateTenant(ctx context.Context, tenant *Tenant) (*Ten... method DeleteTenant (line 115) | func (c *Client) DeleteTenant(ctx context.Context, tenantID uint64) error { method ListTenants (line 131) | func (c *Client) ListTenants(ctx context.Context) ([]Tenant, error) { method ListAllTenants (line 146) | func (c *Client) ListAllTenants(ctx context.Context) ([]Tenant, error) { type TenantSearchResponse (line 161) | type TenantSearchResponse struct method SearchTenants (line 172) | func (c *Client) SearchTenants(ctx context.Context, keyword string, tena... method GetTenantKV (line 197) | func (c *Client) GetTenantKV(ctx context.Context, key string) (json.RawM... method UpdateTenantKV (line 215) | func (c *Client) UpdateTenantKV(ctx context.Context, key string, value a... FILE: client/web_search.go type WebSearchProvider (line 10) | type WebSearchProvider struct method GetWebSearchProviders (line 18) | func (c *Client) GetWebSearchProviders(ctx context.Context) ([]json.RawM... FILE: cmd/download/duckdb/duckdb.go function downloadSpatial (line 10) | func downloadSpatial() { function main (line 32) | func main() { FILE: dataset/qa_dataset.py function read_parquet (line 36) | def read_parquet(path): function save_to_parquet (line 40) | def save_to_parquet(df: pd.DataFrame, path: str): function print_stats (line 47) | def print_stats(df: pd.DataFrame, name: str): function sample_data (line 59) | def sample_data( class QAAnsweringSystem (line 102) | class QAAnsweringSystem: method __init__ (line 103) | def __init__( method get_context_for_qid (line 127) | def get_context_for_qid(self, qid: str) -> str: method answer_question (line 148) | def answer_question(self, qid: str, model: str = "gpt-4o-2024-05-13") ... function sample_command (line 183) | def sample_command(args): function generate_answers (line 217) | def generate_answers(input_dir: str, output_dir: str, max_retries: int =... function show_results (line 288) | def show_results(input_dir: str, n: int = 5): function main (line 330) | def main(): FILE: docreader/client/client.go function getMaxMessageSize (line 16) | func getMaxMessageSize() int { type ImageRefInfo (line 28) | type ImageRefInfo struct type Client (line 36) | type Client struct method Close (line 71) | func (c *Client) Close() error { method SetDebug (line 76) | func (c *Client) SetDebug(debug bool) { method Log (line 80) | func (c *Client) Log(level string, format string, args ...interface{}) { function NewClient (line 42) | func NewClient(addr string) (*Client, error) { function GetImageRefsFromResponse (line 88) | func GetImageRefsFromResponse(resp *proto.ReadResponse) []ImageRefInfo { FILE: docreader/client/client_test.go function init (line 13) | func init() { function TestReadURL (line 19) | func TestReadURL(t *testing.T) { function TestReadFile (line 49) | func TestReadFile(t *testing.T) { FILE: docreader/config.py function _get_first_env (line 10) | def _get_first_env(keys: Iterable[str]) -> Tuple[Optional[str], Optional... function _get_str (line 18) | def _get_str(keys: Iterable[str], default: str = "") -> str: function _get_int (line 23) | def _get_int(keys: Iterable[str], default: int) -> int: function _get_bool (line 33) | def _get_bool(keys: Iterable[str], default: bool) -> bool: function _mask_secret (line 40) | def _mask_secret(v: str) -> str: class DocReaderConfig (line 49) | class DocReaderConfig: function load_config (line 63) | def load_config() -> DocReaderConfig: function dump_config (line 98) | def dump_config(mask_secrets: bool = True) -> Dict[str, Any]: function print_config (line 111) | def print_config() -> None: FILE: docreader/main.py function to_valid_utf8_text (line 31) | def to_valid_utf8_text(s: Optional[str]) -> str: function _resolve_images (line 54) | def _resolve_images(images: dict, request_id: str, storage_map: dict | N... class DocReaderServicer (line 98) | class DocReaderServicer(docreader_pb2_grpc.DocReaderServicer): method __init__ (line 99) | def __init__(self): method Read (line 103) | def Read(self, request: ReadRequest, context): method ListEngines (line 167) | def ListEngines(self, request, context): function main (line 183) | def main(): FILE: docreader/models/document.py class Chunk (line 9) | class Chunk(BaseModel): method to_dict (line 25) | def to_dict(self, **kwargs: Any) -> Dict[str, Any]: method to_json (line 33) | def to_json(self, **kwargs: Any) -> str: method __hash__ (line 38) | def __hash__(self): method __eq__ (line 42) | def __eq__(self, other): method from_dict (line 47) | def from_dict(cls, data: Dict[str, Any], **kwargs: Any): # type: ignore method from_json (line 56) | def from_json(cls, data_str: str, **kwargs: Any): # type: ignore class Document (line 62) | class Document(BaseModel): method set_content (line 78) | def set_content(self, content: str) -> None: method get_content (line 82) | def get_content(self) -> str: method is_valid (line 86) | def is_valid(self) -> bool: FILE: docreader/models/read_config.py class ChunkingConfig (line 5) | class ChunkingConfig: FILE: docreader/ocr/__init__.py class OCREngine (line 12) | class OCREngine: method get_instance (line 19) | def get_instance(cls, backend_type: str) -> OCRBackend: FILE: docreader/ocr/base.py class OCRBackend (line 10) | class OCRBackend(ABC): method predict (line 14) | def predict(self, image: Union[str, bytes, Image.Image]) -> str: class DummyOCRBackend (line 26) | class DummyOCRBackend(OCRBackend): method predict (line 29) | def predict(self, image: Union[str, bytes, Image.Image]) -> str: FILE: docreader/ocr/paddle.py class PaddleOCRBackend (line 16) | class PaddleOCRBackend(OCRBackend): method __init__ (line 19) | def __init__(self): method predict (line 118) | def predict(self, image: Union[str, bytes, Image.Image]) -> str: method _predict (line 137) | def _predict(self, image: Image.Image) -> str: FILE: docreader/ocr/vlm.py class VLMOCRBackend (line 14) | class VLMOCRBackend(OCRBackend): method __init__ (line 17) | def __init__(self): method predict (line 41) | def predict(self, image: Union[str, bytes, Image.Image]) -> str: FILE: docreader/parser/base_parser.py class BaseParser (line 13) | class BaseParser(ABC): method __init__ (line 21) | def __init__( method parse_into_text (line 37) | def parse_into_text(self, content: bytes) -> Document: method parse (line 45) | def parse(self, content: bytes) -> Document: FILE: docreader/parser/chain_parser.py class FirstParser (line 20) | class FirstParser(BaseParser): method __init__ (line 38) | def __init__(self, *args, **kwargs): method parse_into_text (line 48) | def parse_into_text(self, content: bytes) -> Document: method create (line 75) | def create(cls, *parser_classes: Type["BaseParser"]) -> Type["FirstPar... class PipelineParser (line 94) | class PipelineParser(BaseParser): method __init__ (line 112) | def __init__(self, *args, **kwargs): method parse_into_text (line 122) | def parse_into_text(self, content: bytes) -> Document: method create (line 151) | def create(cls, *parser_classes: Type["BaseParser"]) -> Type["Pipeline... FILE: docreader/parser/doc_parser.py class SandboxExecutor (line 16) | class SandboxExecutor: method __init__ (line 19) | def __init__(self, proxy: Optional[str] = None, default_timeout: int =... method execute_in_sandbox (line 31) | def execute_in_sandbox(self, cmd: List[str]) -> tuple: method _execute_with_proxy (line 54) | def _execute_with_proxy(self, cmd: List[str]) -> tuple: class DocParser (line 95) | class DocParser(Docx2Parser): method __init__ (line 98) | def __init__(self, *args, **kwargs): method parse_into_text (line 103) | def parse_into_text(self, content: bytes) -> Document: method _parse_with_docx (line 129) | def _parse_with_docx(self, temp_file_path: str) -> Document: method _parse_with_antiword (line 142) | def _parse_with_antiword(self, temp_file_path: str) -> Document: method _parse_with_textract (line 164) | def _parse_with_textract(self, temp_file_path: str) -> Document: method _try_convert_doc_to_docx (line 170) | def _try_convert_doc_to_docx(self, doc_path: str) -> Optional[bytes]: method _try_find_executable_path (line 231) | def _try_find_executable_path( method _try_find_soffice (line 269) | def _try_find_soffice(self) -> Optional[str]: method _try_find_antiword (line 293) | def _try_find_antiword(self) -> Optional[str]: FILE: docreader/parser/docx2_parser.py class Docx2Parser (line 10) | class Docx2Parser(FirstParser): FILE: docreader/parser/docx_parser.py class ImageData (line 29) | class ImageData: class LineData (line 38) | class LineData: class DocxParser (line 52) | class DocxParser(BaseParser): method __init__ (line 55) | def __init__( method parse_into_text (line 79) | def parse_into_text(self, content: bytes) -> DocumentModel: method _parse_using_simple_method (line 185) | def _parse_using_simple_method(self, content: bytes) -> DocumentModel: class Docx (line 268) | class Docx: method __init__ (line 269) | def __init__(self, max_image_size=1920, enable_multimodal=False, uploa... method get_picture (line 277) | def get_picture(self, document, paragraph) -> Optional[Image.Image]: method _identify_page_paragraph_mapping (line 319) | def _identify_page_paragraph_mapping(self, max_page=100000): method __call__ (line 453) | def __call__( method _load_document (line 521) | def _load_document(self, binary): method _init_shared_resources (line 538) | def _init_shared_resources(self): method _get_request_id (line 546) | def _get_request_id(self): method _apply_page_limit (line 560) | def _apply_page_limit(self, para_page_mapping, from_page, to_page): method _process_document (line 609) | def _process_document( method _check_document_has_images (line 655) | def _check_document_has_images(self): method _calculate_optimal_workers (line 669) | def _calculate_optimal_workers( method _prepare_document_sharing (line 690) | def _prepare_document_sharing(self, binary): method _prepare_multiprocess_args (line 706) | def _prepare_multiprocess_args( method _execute_multiprocess_tasks (line 743) | def _execute_multiprocess_tasks(self, args_list, max_workers): method _collect_process_results (line 778) | def _collect_process_results(self, future_to_idx, args_list, batch_sta... method _process_multiprocess_results (line 837) | def _process_multiprocess_results(self, results: List[LineData]): method _cleanup_temp_image_files (line 956) | def _cleanup_temp_image_files(self, temp_paths): method _cleanup_temp_file (line 992) | def _cleanup_temp_file(self, temp_file_path): method _process_tables (line 1005) | def _process_tables(self): method _convert_table_to_html (line 1030) | def _convert_table_to_html(self, table): method _safe_concat_images (line 1060) | def _safe_concat_images(self, images): function _save_image_to_temp (line 1110) | def _save_image_to_temp(logger, image, page_num, img_idx): function process_page_multiprocess (line 1145) | def process_page_multiprocess( function _load_document_in_process (line 1270) | def _load_document_in_process(logger, page_num, temp_file_path): function _extract_page_content_in_process (line 1300) | def _extract_page_content_in_process( function _extract_image_in_process (line 1400) | def _extract_image_in_process( FILE: docreader/parser/excel_parser.py class ExcelParser (line 20) | class ExcelParser(BaseParser): method parse_into_text (line 43) | def parse_into_text(self, content: bytes) -> Document: FILE: docreader/parser/image_parser.py class ImageParser (line 11) | class ImageParser(BaseParser): method parse_into_text (line 19) | def parse_into_text(self, content: bytes) -> Document: FILE: docreader/parser/markdown_parser.py class MarkdownTableUtil (line 30) | class MarkdownTableUtil: method __init__ (line 49) | def __init__(self): method format_table (line 61) | def format_table(self, content: str) -> str: method _self_test (line 106) | def _self_test(): class MarkdownTableFormatter (line 127) | class MarkdownTableFormatter(BaseParser): method __init__ (line 143) | def __init__(self, **kwargs): method parse_into_text (line 147) | def parse_into_text(self, content: bytes) -> Document: class MarkdownImageUtil (line 163) | class MarkdownImageUtil: method __init__ (line 177) | def __init__(self): method extract_image (line 188) | def extract_image( method extract_base64 (line 235) | def extract_base64( method replace_path (line 296) | def replace_path(self, content: str, images: Dict[str, str]) -> str: method _self_test (line 339) | def _self_test(): class MarkdownImageBase64 (line 350) | class MarkdownImageBase64(BaseParser): method __init__ (line 358) | def __init__(self, **kwargs): method parse_into_text (line 362) | def parse_into_text(self, content: bytes) -> Document: class MarkdownParser (line 374) | class MarkdownParser(PipelineParser): FILE: docreader/parser/markitdown_parser.py class StdMarkitdownParser (line 14) | class StdMarkitdownParser(BaseParser): method __init__ (line 22) | def __init__(self, *args, **kwargs): method parse_into_text (line 27) | def parse_into_text(self, content: bytes) -> Document: class MarkitdownParser (line 45) | class MarkitdownParser(PipelineParser): FILE: docreader/parser/parser.py class Parser (line 11) | class Parser: method __init__ (line 18) | def __init__(self): method parse_file (line 25) | def parse_file( method parse_url (line 65) | def parse_url( FILE: docreader/parser/pdf_parser.py class PDFParser (line 5) | class PDFParser(FirstParser): FILE: docreader/parser/registry.py class ParserEngineRegistry (line 18) | class ParserEngineRegistry: method __init__ (line 26) | def __init__(self): method register (line 32) | def register( method get_parser_class (line 51) | def get_parser_class(self, engine: str, file_type: str) -> Type[BasePa... method list_engines (line 77) | def list_engines(self, overrides: Optional[Dict[str, str]] = None) -> ... method get_engine_names (line 108) | def get_engine_names(self) -> List[str]: function _build_default_registry (line 112) | def _build_default_registry() -> ParserEngineRegistry: FILE: docreader/parser/storage.py function _cfg (line 18) | def _cfg(storage_config: Optional[Dict], key: str, *env_keys: str, defau... class Storage (line 31) | class Storage(ABC): method upload_file (line 35) | def upload_file(self, file_path: str) -> str: method upload_bytes (line 39) | def upload_bytes(self, content: bytes, file_ext: str = ".png") -> str: class CosStorage (line 43) | class CosStorage(Storage): method __init__ (line 46) | def __init__(self, storage_config: Optional[Dict] = None): method _init_cos_client (line 52) | def _init_cos_client(self): method _get_download_url (line 85) | def _get_download_url(self, bucket_name, region, object_key): method upload_file (line 88) | def upload_file(self, file_path: str) -> str: method upload_bytes (line 106) | def upload_bytes(self, content: bytes, file_ext: str = ".png") -> str: class MinioStorage (line 127) | class MinioStorage(Storage): method __init__ (line 130) | def __init__(self, storage_config: Optional[Dict] = None): method _init_minio_client (line 136) | def _init_minio_client(self): method _get_download_url (line 177) | def _get_download_url(self, object_key: str): method upload_file (line 184) | def upload_file(self, file_path: str) -> str: method upload_bytes (line 210) | def upload_bytes(self, content: bytes, file_ext: str = ".png") -> str: class LocalStorage (line 235) | class LocalStorage(Storage): method __init__ (line 242) | def __init__(self, storage_config: Optional[Dict] = None): method _to_url (line 259) | def _to_url(self, fpath: str) -> str: method upload_file (line 265) | def upload_file(self, file_path: str) -> str: method upload_bytes (line 268) | def upload_bytes(self, content: bytes, file_ext: str = ".png") -> str: class Base64Storage (line 277) | class Base64Storage(Storage): method upload_file (line 278) | def upload_file(self, file_path: str) -> str: method upload_bytes (line 281) | def upload_bytes(self, content: bytes, file_ext: str = ".png") -> str: class DummyStorage (line 286) | class DummyStorage(Storage): method upload_file (line 289) | def upload_file(self, file_path: str) -> str: method upload_bytes (line 292) | def upload_bytes(self, content: bytes, file_ext: str = ".png") -> str: function create_storage (line 296) | def create_storage(storage_config: Optional[Dict[str, str]] = None) -> S... FILE: docreader/parser/web_parser.py class StdWebParser (line 17) | class StdWebParser(BaseParser): method __init__ (line 25) | def __init__(self, title: str, **kwargs): method scrape (line 38) | async def scrape(self, url: str) -> str: method parse_into_text (line 85) | def parse_into_text(self, content: bytes) -> Document: class WebParser (line 116) | class WebParser(PipelineParser): FILE: docreader/proto/docreader.pb.go constant _ (line 19) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) constant _ (line 21) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) type ReadConfig (line 24) | type ReadConfig struct method Reset (line 32) | func (x *ReadConfig) Reset() { method String (line 39) | func (x *ReadConfig) String() string { method ProtoMessage (line 43) | func (*ReadConfig) ProtoMessage() {} method ProtoReflect (line 45) | func (x *ReadConfig) ProtoReflect() protoreflect.Message { method Descriptor (line 58) | func (*ReadConfig) Descriptor() ([]byte, []int) { method GetParserEngine (line 62) | func (x *ReadConfig) GetParserEngine() string { method GetParserEngineOverrides (line 69) | func (x *ReadConfig) GetParserEngineOverrides() map[string]string { type ReadRequest (line 77) | type ReadRequest struct method Reset (line 90) | func (x *ReadRequest) Reset() { method String (line 97) | func (x *ReadRequest) String() string { method ProtoMessage (line 101) | func (*ReadRequest) ProtoMessage() {} method ProtoReflect (line 103) | func (x *ReadRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 116) | func (*ReadRequest) Descriptor() ([]byte, []int) { method GetFileContent (line 120) | func (x *ReadRequest) GetFileContent() []byte { method GetFileName (line 127) | func (x *ReadRequest) GetFileName() string { method GetFileType (line 134) | func (x *ReadRequest) GetFileType() string { method GetUrl (line 141) | func (x *ReadRequest) GetUrl() string { method GetTitle (line 148) | func (x *ReadRequest) GetTitle() string { method GetConfig (line 155) | func (x *ReadRequest) GetConfig() *ReadConfig { method GetRequestId (line 162) | func (x *ReadRequest) GetRequestId() string { type ImageRef (line 169) | type ImageRef struct method Reset (line 180) | func (x *ImageRef) Reset() { method String (line 187) | func (x *ImageRef) String() string { method ProtoMessage (line 191) | func (*ImageRef) ProtoMessage() {} method ProtoReflect (line 193) | func (x *ImageRef) ProtoReflect() protoreflect.Message { method Descriptor (line 206) | func (*ImageRef) Descriptor() ([]byte, []int) { method GetFilename (line 210) | func (x *ImageRef) GetFilename() string { method GetOriginalRef (line 217) | func (x *ImageRef) GetOriginalRef() string { method GetMimeType (line 224) | func (x *ImageRef) GetMimeType() string { method GetStorageKey (line 231) | func (x *ImageRef) GetStorageKey() string { method GetImageData (line 238) | func (x *ImageRef) GetImageData() []byte { type ReadResponse (line 245) | type ReadResponse struct method Reset (line 256) | func (x *ReadResponse) Reset() { method String (line 263) | func (x *ReadResponse) String() string { method ProtoMessage (line 267) | func (*ReadResponse) ProtoMessage() {} method ProtoReflect (line 269) | func (x *ReadResponse) ProtoReflect() protoreflect.Message { method Descriptor (line 282) | func (*ReadResponse) Descriptor() ([]byte, []int) { method GetMarkdownContent (line 286) | func (x *ReadResponse) GetMarkdownContent() string { method GetImageRefs (line 293) | func (x *ReadResponse) GetImageRefs() []*ImageRef { method GetImageDirPath (line 300) | func (x *ReadResponse) GetImageDirPath() string { method GetMetadata (line 307) | func (x *ReadResponse) GetMetadata() map[string]string { method GetError (line 314) | func (x *ReadResponse) GetError() string { type ListEnginesRequest (line 321) | type ListEnginesRequest struct method Reset (line 328) | func (x *ListEnginesRequest) Reset() { method String (line 335) | func (x *ListEnginesRequest) String() string { method ProtoMessage (line 339) | func (*ListEnginesRequest) ProtoMessage() {} method ProtoReflect (line 341) | func (x *ListEnginesRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 354) | func (*ListEnginesRequest) Descriptor() ([]byte, []int) { method GetConfigOverrides (line 358) | func (x *ListEnginesRequest) GetConfigOverrides() map[string]string { type ParserEngineInfo (line 365) | type ParserEngineInfo struct method Reset (line 376) | func (x *ParserEngineInfo) Reset() { method String (line 383) | func (x *ParserEngineInfo) String() string { method ProtoMessage (line 387) | func (*ParserEngineInfo) ProtoMessage() {} method ProtoReflect (line 389) | func (x *ParserEngineInfo) ProtoReflect() protoreflect.Message { method Descriptor (line 402) | func (*ParserEngineInfo) Descriptor() ([]byte, []int) { method GetName (line 406) | func (x *ParserEngineInfo) GetName() string { method GetDescription (line 413) | func (x *ParserEngineInfo) GetDescription() string { method GetFileTypes (line 420) | func (x *ParserEngineInfo) GetFileTypes() []string { method GetAvailable (line 427) | func (x *ParserEngineInfo) GetAvailable() bool { method GetUnavailableReason (line 434) | func (x *ParserEngineInfo) GetUnavailableReason() string { type ListEnginesResponse (line 441) | type ListEnginesResponse struct method Reset (line 448) | func (x *ListEnginesResponse) Reset() { method String (line 455) | func (x *ListEnginesResponse) String() string { method ProtoMessage (line 459) | func (*ListEnginesResponse) ProtoMessage() {} method ProtoReflect (line 461) | func (x *ListEnginesResponse) ProtoReflect() protoreflect.Message { method Descriptor (line 474) | func (*ListEnginesResponse) Descriptor() ([]byte, []int) { method GetEngines (line 478) | func (x *ListEnginesResponse) GetEngines() []*ParserEngineInfo { constant file_docreader_proto_rawDesc (line 487) | file_docreader_proto_rawDesc = "" + function file_docreader_proto_rawDescGZIP (line 547) | func file_docreader_proto_rawDescGZIP() []byte { function init (line 585) | func init() { file_docreader_proto_init() } function file_docreader_proto_init (line 586) | func file_docreader_proto_init() { FILE: docreader/proto/docreader_grpc.pb.go constant _ (line 19) | _ = grpc.SupportPackageIsVersion9 constant DocReader_Read_FullMethodName (line 22) | DocReader_Read_FullMethodName = "/docreader.DocReader/Read" constant DocReader_ListEngines_FullMethodName (line 23) | DocReader_ListEngines_FullMethodName = "/docreader.DocReader/ListEngines" type DocReaderClient (line 29) | type DocReaderClient interface type docReaderClient (line 34) | type docReaderClient struct method Read (line 42) | func (c *docReaderClient) Read(ctx context.Context, in *ReadRequest, o... method ListEngines (line 52) | func (c *docReaderClient) ListEngines(ctx context.Context, in *ListEng... function NewDocReaderClient (line 38) | func NewDocReaderClient(cc grpc.ClientConnInterface) DocReaderClient { type DocReaderServer (line 65) | type DocReaderServer interface type UnimplementedDocReaderServer (line 76) | type UnimplementedDocReaderServer struct method Read (line 78) | func (UnimplementedDocReaderServer) Read(context.Context, *ReadRequest... method ListEngines (line 81) | func (UnimplementedDocReaderServer) ListEngines(context.Context, *List... method mustEmbedUnimplementedDocReaderServer (line 84) | func (UnimplementedDocReaderServer) mustEmbedUnimplementedDocReaderSer... method testEmbeddedByValue (line 85) | func (UnimplementedDocReaderServer) testEmbeddedByValue() ... type UnsafeDocReaderServer (line 90) | type UnsafeDocReaderServer interface function RegisterDocReaderServer (line 94) | func RegisterDocReaderServer(s grpc.ServiceRegistrar, srv DocReaderServe... function _DocReader_Read_Handler (line 105) | func _DocReader_Read_Handler(srv interface{}, ctx context.Context, dec f... function _DocReader_ListEngines_Handler (line 123) | func _DocReader_ListEngines_Handler(srv interface{}, ctx context.Context... FILE: docreader/proto/docreader_pb2.pyi class ReadConfig (line 9) | class ReadConfig(_message.Message): class ParserEngineOverridesEntry (line 11) | class ParserEngineOverridesEntry(_message.Message): method __init__ (line 17) | def __init__(self, key: _Optional[str] = ..., value: _Optional[str] ... method __init__ (line 22) | def __init__(self, parser_engine: _Optional[str] = ..., parser_engine_... class ReadRequest (line 24) | class ReadRequest(_message.Message): method __init__ (line 40) | def __init__(self, file_content: _Optional[bytes] = ..., file_name: _O... class ImageRef (line 42) | class ImageRef(_message.Message): method __init__ (line 54) | def __init__(self, filename: _Optional[str] = ..., original_ref: _Opti... class ReadResponse (line 56) | class ReadResponse(_message.Message): class MetadataEntry (line 58) | class MetadataEntry(_message.Message): method __init__ (line 64) | def __init__(self, key: _Optional[str] = ..., value: _Optional[str] ... method __init__ (line 75) | def __init__(self, markdown_content: _Optional[str] = ..., image_refs:... class ListEnginesRequest (line 77) | class ListEnginesRequest(_message.Message): class ConfigOverridesEntry (line 79) | class ConfigOverridesEntry(_message.Message): method __init__ (line 85) | def __init__(self, key: _Optional[str] = ..., value: _Optional[str] ... method __init__ (line 88) | def __init__(self, config_overrides: _Optional[_Mapping[str, str]] = .... class ParserEngineInfo (line 90) | class ParserEngineInfo(_message.Message): method __init__ (line 102) | def __init__(self, name: _Optional[str] = ..., description: _Optional[... class ListEnginesResponse (line 104) | class ListEnginesResponse(_message.Message): method __init__ (line 108) | def __init__(self, engines: _Optional[_Iterable[_Union[ParserEngineInf... FILE: docreader/proto/docreader_pb2_grpc.py class DocReaderStub (line 28) | class DocReaderStub(object): method __init__ (line 31) | def __init__(self, channel): class DocReaderServicer (line 49) | class DocReaderServicer(object): method Read (line 52) | def Read(self, request, context): method ListEngines (line 58) | def ListEngines(self, request, context): function add_DocReaderServicer_to_server (line 65) | def add_DocReaderServicer_to_server(servicer, server): class DocReader (line 85) | class DocReader(object): method Read (line 89) | def Read(request, method ListEngines (line 116) | def ListEngines(request, FILE: docreader/scripts/download_deps.py function init_ocr_model (line 26) | def init_ocr_model(): FILE: docreader/splitter/header_hook.py class HeaderTrackerHook (line 7) | class HeaderTrackerHook(BaseModel): method __init__ (line 23) | def __init__( class HeaderTracker (line 67) | class HeaderTracker(BaseModel): method update (line 74) | def update(self, split: str) -> Dict[int, str]: method get_headers (line 104) | def get_headers(self) -> str: FILE: docreader/splitter/splitter.py class TextSplitter (line 31) | class TextSplitter(BaseModel, Generic[T]): method __init__ (line 65) | def __init__( method split_text (line 116) | def split_text(self, text: str) -> List[Tuple[int, int, str]]: method _split (line 146) | def _split(self, text: str) -> List[str]: method _merge (line 183) | def _merge(self, splits: List[str]) -> List[Tuple[int, int, str]]: method _split_protected (line 299) | def _split_protected(self, text: str) -> List[Tuple[int, str]]: method _join (line 335) | def _join(self, splits: List[str], protect: List[Tuple[int, str]]) -> ... method _validate_chunks (line 409) | def _validate_chunks( method restore_text (line 517) | def restore_text(self, chunks: List[Tuple[int, int, str]]) -> str: FILE: docreader/utils/__init__.py function singleton (line 25) | def singleton(cls, *args, **kw): function rmSpace (line 40) | def rmSpace(txt): function findMaxDt (line 46) | def findMaxDt(fnm): function findMaxTm (line 66) | def findMaxTm(fnm): FILE: docreader/utils/endecode.py function decode_image (line 23) | def decode_image(image: Union[str, bytes, Image.Image, np.ndarray]) -> str: function encode_image (line 78) | def encode_image(image: str, errors="strict") -> bytes: function encode_bytes (line 115) | def encode_bytes(content: str) -> bytes: function decode_bytes (line 133) | def decode_bytes( FILE: docreader/utils/request.py function set_request_id (line 17) | def set_request_id(request_id: str) -> None: function get_request_id (line 22) | def get_request_id() -> Optional[str]: class MillisecondFormatter (line 27) | class MillisecondFormatter(logging.Formatter): method formatTime (line 30) | def formatTime(self, record, datefmt=None): function init_logging_request_id (line 47) | def init_logging_request_id(): class RequestIdFilter (line 84) | class RequestIdFilter(logging.Filter): method filter (line 87) | def filter(self, record: LogRecord) -> bool: function request_id_context (line 121) | def request_id_context(request_id: str = None): FILE: docreader/utils/split.py function split_text_keep_separator (line 5) | def split_text_keep_separator(text: str, separator: str) -> List[str]: function split_by_sep (line 27) | def split_by_sep(sep: str, keep_sep: bool = True) -> Callable[[str], Lis... function split_by_char (line 43) | def split_by_char() -> Callable[[str], List[str]]: function split_by_regex (line 52) | def split_by_regex(regex: str) -> Callable[[str], List[str]]: function match_by_regex (line 68) | def match_by_regex(regex: str) -> Callable[[str], bool]: FILE: docreader/utils/tempfile.py class TempFileContext (line 8) | class TempFileContext: method __init__ (line 9) | def __init__(self, file_content: bytes, suffix: str): method __enter__ (line 19) | def __enter__(self): method __exit__ (line 31) | def __exit__(self, exc_type, exc_val, exc_tb): class TempDirContext (line 44) | class TempDirContext: method __init__ (line 45) | def __init__(self): method __enter__ (line 51) | def __enter__(self): method __exit__ (line 59) | def __exit__(self, exc_type, exc_val, exc_tb): FILE: docs/docs.go constant docTemplate (line 6) | docTemplate = `{ function init (line 10707) | func init() { FILE: examples/skills/pdf-processing/scripts/analyze_form.py function analyze_form (line 10) | def analyze_form(pdf_path): FILE: examples/skills/pdf-processing/scripts/extract_text.py function extract_text (line 9) | def extract_text(pdf_path, page_num=None): FILE: frontend/src/api/agent/index.ts type CustomAgentConfig (line 4) | interface CustomAgentConfig { type CustomAgent (line 78) | interface CustomAgent { type CreateAgentRequest (line 92) | interface CreateAgentRequest { type UpdateAgentRequest (line 100) | interface UpdateAgentRequest { constant BUILTIN_QUICK_ANSWER_ID (line 108) | const BUILTIN_QUICK_ANSWER_ID = 'builtin-quick-answer'; constant BUILTIN_SMART_REASONING_ID (line 109) | const BUILTIN_SMART_REASONING_ID = 'builtin-smart-reasoning'; constant AGENT_MODE_QUICK_ANSWER (line 112) | const AGENT_MODE_QUICK_ANSWER = 'quick-answer'; constant AGENT_MODE_SMART_REASONING (line 113) | const AGENT_MODE_SMART_REASONING = 'smart-reasoning'; constant BUILTIN_AGENT_NORMAL_ID (line 116) | const BUILTIN_AGENT_NORMAL_ID = BUILTIN_QUICK_ANSWER_ID; constant BUILTIN_AGENT_AGENT_ID (line 118) | const BUILTIN_AGENT_AGENT_ID = BUILTIN_SMART_REASONING_ID; function listAgents (line 122) | function listAgents() { function getAgentById (line 127) | function getAgentById(id: string) { function createAgent (line 132) | function createAgent(data: CreateAgentRequest) { function updateAgent (line 137) | function updateAgent(id: string, data: UpdateAgentRequest) { function deleteAgent (line 142) | function deleteAgent(id: string) { function copyAgent (line 147) | function copyAgent(id: string) { function isBuiltinAgent (line 152) | function isBuiltinAgent(agentId: string): boolean { type PlaceholderDefinition (line 157) | interface PlaceholderDefinition { type PlaceholdersResponse (line 164) | interface PlaceholdersResponse { function getPlaceholders (line 175) | function getPlaceholders() { type IMChannel (line 181) | interface IMChannel { function listIMChannels (line 196) | function listIMChannels(agentId: string) { function createIMChannel (line 200) | function createIMChannel(agentId: string, data: Partial) { function updateIMChannel (line 204) | function updateIMChannel(id: string, data: Partial) { function deleteIMChannel (line 208) | function deleteIMChannel(id: string) { function toggleIMChannel (line 212) | function toggleIMChannel(id: string) { FILE: frontend/src/api/auth/index.ts type LoginRequest (line 7) | interface LoginRequest { type LoginResponse (line 12) | interface LoginResponse { type RegisterRequest (line 43) | interface RegisterRequest { type RegisterResponse (line 49) | interface RegisterResponse { type UserInfo (line 67) | interface UserInfo { type TenantInfo (line 79) | interface TenantInfo { type KnowledgeBaseInfo (line 95) | interface KnowledgeBaseInfo { type ModelInfo (line 107) | interface ModelInfo { function login (line 121) | async function login(data: LoginRequest): Promise { function register (line 136) | async function register(data: RegisterRequest): Promise { function getCurrentUser (line 151) | async function getCurrentUser(): Promise<{ success: boolean; data?: { us... function getCurrentTenant (line 166) | async function getCurrentTenant(): Promise<{ success: boolean; data?: Te... function refreshToken (line 181) | async function refreshToken(refreshToken: string): Promise<{ success: bo... function logout (line 212) | async function logout(): Promise<{ success: boolean; message?: string }> { function validateToken (line 229) | async function validateToken(): Promise<{ success: boolean; valid?: bool... FILE: frontend/src/api/chat-history.ts type ChatHistoryConfig (line 5) | interface ChatHistoryConfig { type ChatHistoryKBStats (line 12) | interface ChatHistoryKBStats { type MessageSearchRequest (line 22) | interface MessageSearchRequest { type MessageSearchGroupItem (line 30) | interface MessageSearchGroupItem { type MessageSearchResult (line 42) | interface MessageSearchResult { function getTenantChatHistoryConfig (line 48) | function getTenantChatHistoryConfig() { function updateTenantChatHistoryConfig (line 53) | function updateTenantChatHistoryConfig(config: ChatHistoryConfig) { function getChatHistoryKBStats (line 58) | function getChatHistoryKBStats() { function searchMessages (line 63) | function searchMessages(data: MessageSearchRequest) { FILE: frontend/src/api/chat/index.ts function createSessions (line 5) | async function createSessions(data = {}) { function getSessionsList (line 9) | async function getSessionsList(page: number, page_size: number) { function generateSessionsTitle (line 13) | async function generateSessionsTitle(session_id: string, data: any) { function knowledgeChat (line 17) | async function knowledgeChat(data: { session_id: string; query: string; ... function agentChat (line 22) | async function agentChat(data: { function getMessageList (line 35) | async function getMessageList(data: { session_id: string; limit: number,... function delSession (line 43) | async function delSession(session_id: string) { function batchDelSessions (line 47) | async function batchDelSessions(ids: string[]) { function deleteAllSessions (line 51) | async function deleteAllSessions() { function getSession (line 55) | async function getSession(session_id: string) { function stopSession (line 59) | async function stopSession(session_id: string, message_id: string) { function clearSessionMessages (line 63) | async function clearSessionMessages(session_id: string) { FILE: frontend/src/api/chat/streame.ts type StreamOptions (line 8) | interface StreamOptions { function useStream (line 19) | function useStream() { FILE: frontend/src/api/initialization/index.ts type InitializationConfig (line 7) | interface InitializationConfig { type DownloadTask (line 66) | interface DownloadTask { type KBModelConfigRequest (line 77) | interface KBModelConfigRequest { function updateKBConfig (line 111) | function updateKBConfig(kbId: string, config: KBModelConfigRequest): Pro... function initializeSystemByKB (line 127) | function initializeSystemByKB(kbId: string, config: InitializationConfig... function checkOllamaStatus (line 143) | function checkOllamaStatus(): Promise<{ available: boolean; version?: st... type OllamaModelInfo (line 157) | interface OllamaModelInfo { function listOllamaModels (line 165) | function listOllamaModels(): Promise { function checkOllamaModels (line 179) | function checkOllamaModels(models: string[]): Promise<{ models: Record { function listDownloadTasks (line 221) | function listDownloadTasks(): Promise { function getCurrentConfigByKB (line 235) | function getCurrentConfigByKB(kbId: string): Promise { type FabriTagRequest (line 471) | interface FabriTagRequest { type FabriTagResponse (line 474) | interface FabriTagResponse { function fabriTag (line 479) | function fabriTag(request: FabriTagRequest): Promise { type ModelProviderOption (line 493) | interface ModelProviderOption { function listModelProviders (line 502) | function listModelProviders(modelType?: string): Promise { type FAQBlockedEntry (line 272) | interface FAQBlockedEntry { type FAQSuccessEntry (line 278) | interface FAQSuccessEntry { type FAQImportProgress (line 286) | interface FAQImportProgress { function getFAQImportProgress (line 303) | function getFAQImportProgress(taskId: string) { function updateFAQImportResultDisplayStatus (line 307) | function updateFAQImportResultDisplayStatus(knowledgeBaseId: string, dis... function searchKnowledge (line 313) | function searchKnowledge( function knowledgeSemanticSearch (line 331) | function knowledgeSemanticSearch(data: { FILE: frontend/src/api/mcp-service.ts type MCPService (line 3) | interface MCPService { type MCPTool (line 32) | interface MCPTool { type MCPResource (line 38) | interface MCPResource { type MCPTestResult (line 45) | interface MCPTestResult { function listMCPServices (line 53) | async function listMCPServices(): Promise { function getMCPService (line 59) | async function getMCPService(id: string): Promise { function createMCPService (line 65) | async function createMCPService(data: Partial): Promise): ... function deleteMCPService (line 77) | async function deleteMCPService(id: string): Promise { function testMCPService (line 82) | async function testMCPService(id: string): Promise { function getMCPServiceTools (line 94) | async function getMCPServiceTools(id: string): Promise { function getMCPServiceResources (line 100) | async function getMCPServiceResources(id: string): Promise { FILE: frontend/src/api/model/index.ts type ModelConfig (line 7) | interface ModelConfig { function createModel (line 36) | function createModel(data: ModelConfig): Promise { function listModels (line 54) | function listModels(type?: string): Promise { function getModel (line 76) | function getModel(id: string): Promise { function updateModel (line 94) | function updateModel(id: string, data: Partial): Promise { FILE: frontend/src/api/organization/index.ts type Organization (line 4) | interface Organization { type OrganizationMember (line 28) | interface OrganizationMember { type KnowledgeBaseShare (line 39) | interface KnowledgeBaseShare { type SharedKnowledgeBase (line 60) | interface SharedKnowledgeBase { type SourceFromAgentInfo (line 78) | interface SourceFromAgentInfo { type OrganizationSharedKnowledgeBaseItem (line 86) | type OrganizationSharedKnowledgeBaseItem = SharedKnowledgeBase & { type OrganizationPreview (line 92) | interface OrganizationPreview { type SearchableOrganizationItem (line 106) | interface SearchableOrganizationItem { type CreateOrganizationRequest (line 120) | interface CreateOrganizationRequest { type UpdateOrganizationRequest (line 128) | interface UpdateOrganizationRequest { type UpdateMemberRoleRequest (line 138) | interface UpdateMemberRoleRequest { type JoinOrganizationRequest (line 142) | interface JoinOrganizationRequest { type ShareKnowledgeBaseRequest (line 146) | interface ShareKnowledgeBaseRequest { type UpdateSharePermissionRequest (line 151) | interface UpdateSharePermissionRequest { type ApiResponse (line 156) | interface ApiResponse { type ResourceCountsByOrg (line 163) | interface ResourceCountsByOrg { type ListOrganizationsResponse (line 168) | interface ListOrganizationsResponse { type ListMembersResponse (line 174) | interface ListMembersResponse { type JoinRequestResponse (line 179) | interface JoinRequestResponse { type ListJoinRequestsResponse (line 193) | interface ListJoinRequestsResponse { type SubmitJoinRequestRequest (line 198) | interface SubmitJoinRequestRequest { type ReviewJoinRequestRequest (line 204) | interface ReviewJoinRequestRequest { type RequestRoleUpgradeRequest (line 210) | interface RequestRoleUpgradeRequest { type InviteMemberRequest (line 215) | interface InviteMemberRequest { type UserSearchResult (line 220) | interface UserSearchResult { type ListSharesResponse (line 227) | interface ListSharesResponse { type AgentShareResponse (line 233) | interface AgentShareResponse { type SharedAgentInfo (line 256) | interface SharedAgentInfo { type OrganizationSharedAgentItem (line 271) | type OrganizationSharedAgentItem = SharedAgentInfo & { is_mine: boolean } type ListAgentSharesResponse (line 273) | interface ListAgentSharesResponse { function createOrganization (line 283) | async function createOrganization(req: CreateOrganizationRequest): Promi... function getOrganization (line 295) | async function getOrganization(id: string): Promise> { function joinOrganization (line 343) | async function joinOrganization(req: JoinOrganizationRequest): Promise> { function requestRoleUpgrade (line 434) | async function requestRoleUpgrade( function generateInviteCode (line 449) | async function generateInviteCode(id: string): Promise { function getAgentConfig (line 92) | function getAgentConfig(): Promise<{ data: AgentConfig }> { function updateAgentConfig (line 96) | function updateAgentConfig(config: AgentConfig): Promise<{ data: AgentCo... function getConversationConfig (line 100) | function getConversationConfig(): Promise<{ data: ConversationConfig }> { function updateConversationConfig (line 104) | function updateConversationConfig(config: ConversationConfig): Promise<{... function getPromptTemplates (line 108) | function getPromptTemplates(): Promise<{ data: PromptTemplatesConfig }> { type MinioBucketInfo (line 112) | interface MinioBucketInfo { type ListMinioBucketsResponse (line 118) | interface ListMinioBucketsResponse { function listMinioBuckets (line 122) | function listMinioBuckets(): Promise<{ data: ListMinioBucketsResponse }> { type ParserEngineInfo (line 126) | interface ParserEngineInfo { type ParserEngineConfig (line 135) | interface ParserEngineConfig { type ParserEnginesResponse (line 154) | interface ParserEnginesResponse { function getParserEngines (line 162) | function getParserEngines(): Promise { function checkParserEngines (line 167) | function checkParserEngines(config: ParserEngineConfig): Promise { function updateParserEngineConfig (line 175) | function updateParserEngineConfig(config: ParserEngineConfig): Promise<{... function reconnectDocReader (line 179) | function reconnectDocReader(addr: string): Promise { function updateStorageEngineConfig (line 230) | function updateStorageEngineConfig(config: StorageEngineConfig): Promise... function getStorageEngineStatus (line 234) | function getStorageEngineStatus(): Promise<{ data: GetStorageEngineStatu... type StorageCheckRequest (line 238) | interface StorageCheckRequest { type StorageCheckResponse (line 246) | interface StorageCheckResponse { function checkStorageEngine (line 252) | function checkStorageEngine(req: StorageCheckRequest): Promise<{ data: S... FILE: frontend/src/api/tenant/index.ts type TenantInfo (line 7) | interface TenantInfo { type SearchTenantsParams (line 21) | interface SearchTenantsParams { type SearchTenantsResponse (line 29) | interface SearchTenantsResponse { function listAllTenants (line 44) | async function listAllTenants(): Promise<{ success: boolean; data?: { it... function searchTenants (line 59) | async function searchTenants(params: SearchTenantsParams = {}): Promise<... FILE: frontend/src/api/web-search.ts type WebSearchProviderConfig (line 4) | interface WebSearchProviderConfig { type WebSearchConfig (line 14) | interface WebSearchConfig { function getWebSearchProviders (line 28) | function getWebSearchProviders() { function getTenantWebSearchConfig (line 33) | function getTenantWebSearchConfig() { function updateTenantWebSearchConfig (line 38) | function updateTenantWebSearchConfig(config: WebSearchConfig) { FILE: frontend/src/composables/useTheme.ts type ThemeMode (line 3) | type ThemeMode = 'light' | 'dark' | 'system' constant STORAGE_KEY (line 5) | const STORAGE_KEY = 'WeKnora_theme' function getSystemTheme (line 12) | function getSystemTheme(): 'light' | 'dark' { function applyTheme (line 16) | function applyTheme(mode: ThemeMode) { function useTheme (line 21) | function useTheme() { function initTheme (line 32) | function initTheme() { FILE: frontend/src/stores/menu.ts type MenuChild (line 5) | type MenuChild = Record type MenuItem (line 7) | interface MenuItem { FILE: frontend/src/stores/organization.ts function fetchOrganizations (line 64) | async function fetchOrganizations() { function create (line 92) | async function create(name: string, description?: string) { function update (line 115) | async function update(id: string, name?: string, description?: string) { function remove (line 144) | async function remove(id: string) { function preview (line 170) | async function preview(inviteCode: string) { function join (line 194) | async function join(inviteCode: string) { function leave (line 221) | async function leave(id: string) { function refreshInviteCode (line 247) | async function refreshInviteCode(id: string) { function fetchMembers (line 276) | async function fetchMembers(orgId: string) { function changeMemberRole (line 299) | async function changeMemberRole(orgId: string, userId: string, role: 'ad... function kickMember (line 325) | async function kickMember(orgId: string, userId: string) { function fetchSharedKnowledgeBases (line 348) | async function fetchSharedKnowledgeBases() { function fetchSharedAgents (line 372) | async function fetchSharedAgents() { function setCurrentOrganization (line 388) | function setCurrentOrganization(org: Organization | null) { function getKBPermission (line 396) | function getKBPermission(kbId: string): 'owner' | 'admin' | 'editor' | '... function canEditKB (line 406) | function canEditKB(kbId: string, isOwner: boolean): boolean { function canManageKB (line 415) | function canManageKB(kbId: string, isOwner: boolean): boolean { function clearState (line 424) | function clearState() { FILE: frontend/src/stores/settings.ts type Settings (line 5) | interface Settings { type AgentConfig (line 24) | interface AgentConfig { type ConversationModels (line 31) | interface ConversationModels { type ModelItem (line 38) | interface ModelItem { type ModelConfig (line 51) | interface ModelConfig { type OllamaConfig (line 59) | interface OllamaConfig { method saveSettings (line 154) | saveSettings(settings: Settings) { method getSettings (line 161) | getSettings(): Settings { method getEndpoint (line 166) | getEndpoint(): string { method getApiKey (line 171) | getApiKey(): string { method getKnowledgeBaseId (line 176) | getKnowledgeBaseId(): string { method toggleAgent (line 181) | toggleAgent(enabled: boolean) { method updateAgentConfig (line 187) | updateAgentConfig(config: Partial) { method updateConversationModels (line 192) | updateConversationModels(models: Partial) { method updateModelConfig (line 199) | updateModelConfig(config: Partial) { method addModel (line 205) | addModel(type: 'chat' | 'embedding' | 'rerank' | 'vllm', model: ModelIte... method updateModel (line 222) | updateModel(type: 'chat' | 'embedding' | 'rerank' | 'vllm', modelId: str... method deleteModel (line 238) | deleteModel(type: 'chat' | 'embedding' | 'rerank' | 'vllm', modelId: str... method setDefaultModel (line 252) | setDefaultModel(type: 'chat' | 'embedding' | 'rerank' | 'vllm', modelId:... method updateOllamaConfig (line 261) | updateOllamaConfig(config: Partial) { method selectKnowledgeBases (line 267) | selectKnowledgeBases(kbIds: string[]) { method addKnowledgeBase (line 273) | addKnowledgeBase(kbId: string) { method removeKnowledgeBase (line 281) | removeKnowledgeBase(kbId: string) { method clearKnowledgeBases (line 288) | clearKnowledgeBases() { method getSelectedKnowledgeBases (line 294) | getSelectedKnowledgeBases(): string[] { method toggleWebSearch (line 299) | toggleWebSearch(enabled: boolean) { method toggleMemory (line 305) | toggleMemory(enabled: boolean) { method addFile (line 311) | addFile(fileId: string) { method removeFile (line 319) | removeFile(fileId: string) { method clearFiles (line 326) | clearFiles() { method setFileKbMap (line 332) | setFileKbMap(updates: Record) { method removeFileKbId (line 338) | removeFileKbId(fileId: string) { method getSelectedFiles (line 343) | getSelectedFiles(): string[] { method selectAgent (line 348) | selectAgent(agentId: string, sourceTenantId?: string | null) { method getSelectedAgentId (line 368) | getSelectedAgentId(): string { FILE: frontend/src/stores/ui.ts method openSettings (line 27) | openSettings(section?: string, subSection?: string) { method closeSettings (line 33) | closeSettings() { method toggleSettings (line 39) | toggleSettings() { method openKBSettings (line 43) | openKBSettings(kbId: string, initialSection?: string) { method openEditKB (line 51) | openEditKB(kbId: string, initialSection?: string) { method openCreateKB (line 55) | openCreateKB(type: 'document' | 'faq' = 'document') { method closeKBEditor (line 63) | closeKBEditor() { method openManualEditor (line 70) | openManualEditor(options: { method closeManualEditor (line 89) | closeManualEditor() { method notifyManualEditorSuccess (line 98) | notifyManualEditorSuccess(payload: { kbId: string; knowledgeId: string; ... method setSelectedTagId (line 110) | setSelectedTagId(tagId: string) { method toggleSidebar (line 114) | toggleSidebar() { method collapseSidebar (line 119) | collapseSidebar() { method expandSidebar (line 124) | expandSidebar() { FILE: frontend/src/types/tool-results.ts type RelevanceLevel (line 8) | type RelevanceLevel = 'High Relevance' | 'Medium Relevance' | 'Low Relev... type DisplayType (line 11) | type DisplayType = type SearchResultItem (line 26) | interface SearchResultItem { type ChunkItem (line 38) | interface ChunkItem { type KnowledgeBaseItem (line 47) | interface KnowledgeBaseItem { type GraphConfig (line 55) | interface GraphConfig { type SearchResultsData (line 61) | interface SearchResultsData { type ChunkDetailData (line 71) | interface ChunkDetailData { type RelatedChunksData (line 81) | interface RelatedChunksData { type KnowledgeBaseListData (line 90) | interface KnowledgeBaseListData { type DocumentInfoDocument (line 97) | interface DocumentInfoDocument { type DocumentInfoData (line 112) | interface DocumentInfoData { type GraphQueryResultsData (line 122) | interface GraphQueryResultsData { type ThinkingData (line 130) | interface ThinkingData { type PlanStep (line 136) | interface PlanStep { type PlanData (line 144) | interface PlanData { type DatabaseQueryData (line 152) | interface DatabaseQueryData { type WebSearchResultItem (line 161) | interface WebSearchResultItem { type WebSearchResultsData (line 172) | interface WebSearchResultsData { type WebFetchResultItem (line 180) | interface WebFetchResultItem { type WebFetchResultsData (line 191) | interface WebFetchResultsData { type GrepKnowledgeResult (line 198) | interface GrepKnowledgeResult { type GrepResultsData (line 209) | interface GrepResultsData { type ToolResultData (line 220) | type ToolResultData = type ActionData (line 235) | interface ActionData { FILE: frontend/src/utils/caret.ts type CaretCoordinates (line 1) | interface CaretCoordinates { function getCaretCoordinates (line 7) | function getCaretCoordinates(element: HTMLTextAreaElement, position: num... FILE: frontend/src/utils/chatMessageShared.ts constant STREAMING_IMAGE_PLACEHOLDER (line 3) | const STREAMING_IMAGE_PLACEHOLDER = ' { function hydrateProtectedFileImages (line 296) | async function hydrateProtectedFileImages(root: ParentNode | null | unde... FILE: frontend/src/utils/tool-icons.ts function getToolIcon (line 46) | function getToolIcon(toolName: string): string { function getMatchTypeIcon (line 51) | function getMatchTypeIcon(matchType: string): string { function getToolDisplayName (line 70) | function getToolDisplayName(toolName: string): string { FILE: frontend/vite.config.ts function resolveVueOfficePptxEntry (line 12) | function resolveVueOfficePptxEntry(): string { FILE: internal/agent/const.go constant DefaultAgentTemperature (line 5) | DefaultAgentTemperature = 0.7 constant DefaultAgentMaxIterations (line 7) | DefaultAgentMaxIterations = 20 constant DefaultAgentReflectionEnabled (line 9) | DefaultAgentReflectionEnabled = false constant DefaultUseCustomSystemPrompt (line 11) | DefaultUseCustomSystemPrompt = false FILE: internal/agent/engine.go constant llmPerCallTimeout (line 25) | llmPerCallTimeout = 120 * time.Second function generateEventID (line 29) | func generateEventID(suffix string) string { type AgentEngine (line 34) | type AgentEngine struct method SetAppConfig (line 115) | func (e *AgentEngine) SetAppConfig(cfg *appconfig.Config) { method SetSkillsManager (line 120) | func (e *AgentEngine) SetSkillsManager(manager *skills.Manager) { method GetSkillsManager (line 125) | func (e *AgentEngine) GetSkillsManager() *skills.Manager { method Execute (line 131) | func (e *AgentEngine) Execute( method executeLoop (line 241) | func (e *AgentEngine) executeLoop( method buildToolsForLLM (line 658) | func (e *AgentEngine) buildToolsForLLM() []chat.Tool { method appendToolResults (line 677) | func (e *AgentEngine) appendToolResults( method streamLLMToEventBus (line 751) | func (e *AgentEngine) streamLLMToEventBus( method streamReflectionToEventBus (line 804) | func (e *AgentEngine) streamReflectionToEventBus( method streamThinkingToEventBus (line 857) | func (e *AgentEngine) streamThinkingToEventBus( method streamFinalAnswerToEventBus (line 979) | func (e *AgentEngine) streamFinalAnswerToEventBus( method buildMessagesWithLLMContext (line 1101) | func (e *AgentEngine) buildMessagesWithLLMContext( function listToolNames (line 49) | func listToolNames(ts []chat.Tool) []string { function NewAgentEngine (line 58) | func NewAgentEngine( function NewAgentEngineWithSkills (line 86) | func NewAgentEngineWithSkills( function countTotalToolCalls (line 1092) | func countTotalToolCalls(steps []types.AgentStep) int { FILE: internal/agent/prompts.go function formatFileSize (line 14) | func formatFileSize(size int64) string { function formatDocSummary (line 32) | func formatDocSummary(summary string, maxLen int) string { type RecentDocInfo (line 49) | type RecentDocInfo struct type SelectedDocumentInfo (line 66) | type SelectedDocumentInfo struct type KnowledgeBaseInfo (line 75) | type KnowledgeBaseInfo struct type PlaceholderDefinition (line 86) | type PlaceholderDefinition struct function AvailablePlaceholders (line 94) | func AvailablePlaceholders() []PlaceholderDefinition { function formatKnowledgeBaseList (line 109) | func formatKnowledgeBaseList(kbInfos []*KnowledgeBaseInfo) string { function renderPromptPlaceholders (line 186) | func renderPromptPlaceholders(template string, knowledgeBases []*Knowled... function formatSkillsMetadata (line 200) | func formatSkillsMetadata(skillsMetadata []*skills.SkillMetadata) string { function formatSelectedDocuments (line 234) | func formatSelectedDocuments(docs []*SelectedDocumentInfo) string { function renderPromptPlaceholdersWithStatus (line 272) | func renderPromptPlaceholdersWithStatus( type BuildSystemPromptOptions (line 297) | type BuildSystemPromptOptions struct function BuildSystemPrompt (line 305) | func BuildSystemPrompt( function BuildSystemPromptWithOptions (line 315) | func BuildSystemPromptWithOptions( function GetPureAgentSystemPrompt (line 365) | func GetPureAgentSystemPrompt(cfg *config.Config) string { function GetProgressiveRAGSystemPrompt (line 377) | func GetProgressiveRAGSystemPrompt(cfg *config.Config) string { FILE: internal/agent/skills/integration_test.go function TestExampleSkillsIntegration (line 11) | func TestExampleSkillsIntegration(t *testing.T) { function TestManagerWithExampleSkills (line 93) | func TestManagerWithExampleSkills(t *testing.T) { function truncate (line 156) | func truncate(s string, maxLen int) string { FILE: internal/agent/skills/loader.go type Loader (line 13) | type Loader struct method DiscoverSkills (line 31) | func (l *Loader) DiscoverSkills() ([]*SkillMetadata, error) { method discoverInDirectory (line 47) | func (l *Loader) discoverInDirectory(dir string) ([]*SkillMetadata, er... method LoadSkillInstructions (line 108) | func (l *Loader) LoadSkillInstructions(skillName string) (*Skill, erro... method loadSkillFromDirectory (line 129) | func (l *Loader) loadSkillFromDirectory(dir, skillName string) (*Skill... method loadSkillFile (line 177) | func (l *Loader) loadSkillFile(basePath, filePath string) (*Skill, err... method LoadSkillFile (line 196) | func (l *Loader) LoadSkillFile(skillName, relativePath string) (*Skill... method ListSkillFiles (line 246) | func (l *Loader) ListSkillFiles(skillName string) ([]string, error) { method GetSkillByName (line 285) | func (l *Loader) GetSkillByName(name string) (*Skill, bool) { method GetSkillBasePath (line 291) | func (l *Loader) GetSkillBasePath(skillName string) (string, error) { method Reload (line 305) | func (l *Loader) Reload() ([]*SkillMetadata, error) { function NewLoader (line 21) | func NewLoader(skillDirs []string) *Loader { FILE: internal/agent/skills/manager.go type Manager (line 13) | type Manager struct method IsEnabled (line 52) | func (m *Manager) IsEnabled() bool { method Initialize (line 58) | func (m *Manager) Initialize(ctx context.Context) error { method filterAllowedSkills (line 81) | func (m *Manager) filterAllowedSkills(metadata []*SkillMetadata) []*Sk... method GetAllMetadata (line 102) | func (m *Manager) GetAllMetadata() []*SkillMetadata { method LoadSkill (line 117) | func (m *Manager) LoadSkill(ctx context.Context, skillName string) (*S... method isSkillAllowed (line 131) | func (m *Manager) isSkillAllowed(skillName string) bool { method ReadSkillFile (line 144) | func (m *Manager) ReadSkillFile(ctx context.Context, skillName, filePa... method ListSkillFiles (line 162) | func (m *Manager) ListSkillFiles(ctx context.Context, skillName string... method ExecuteScript (line 175) | func (m *Manager) ExecuteScript(ctx context.Context, skillName, script... method GetSkillInfo (line 218) | func (m *Manager) GetSkillInfo(ctx context.Context, skillName string) ... method Reload (line 256) | func (m *Manager) Reload(ctx context.Context) error { method Cleanup (line 278) | func (m *Manager) Cleanup(ctx context.Context) error { type ManagerConfig (line 28) | type ManagerConfig struct function NewManager (line 35) | func NewManager(config *ManagerConfig, sandboxMgr sandbox.Manager) *Mana... type SkillInfo (line 247) | type SkillInfo struct FILE: internal/agent/skills/skill.go constant MaxNameLength (line 18) | MaxNameLength = 64 constant MaxDescriptionLength (line 19) | MaxDescriptionLength = 1024 constant SkillFileName (line 20) | SkillFileName = "SKILL.md" type Skill (line 37) | type Skill struct method Validate (line 68) | func (s *Skill) Validate() error { method ToMetadata (line 103) | func (s *Skill) ToMetadata() *SkillMetadata { type SkillMetadata (line 53) | type SkillMetadata struct type SkillFile (line 60) | type SkillFile struct function ParseSkillFile (line 113) | func ParseSkillFile(content string) (*Skill, error) { function ParseSkillMetadata (line 177) | func ParseSkillMetadata(content string) (*SkillMetadata, error) { function IsScript (line 186) | func IsScript(path string) bool { function GetScriptLanguage (line 202) | func GetScriptLanguage(path string) string { FILE: internal/agent/skills/skills_test.go function TestParseSkillFile (line 10) | func TestParseSkillFile(t *testing.T) { function TestSkillValidation (line 49) | func TestSkillValidation(t *testing.T) { function containsString (line 123) | func containsString(s, substr string) bool { function containsSubstring (line 127) | func containsSubstring(s, substr string) bool { function TestLoaderDiscoverSkills (line 136) | func TestLoaderDiscoverSkills(t *testing.T) { function TestLoaderLoadSkillInstructions (line 181) | func TestLoaderLoadSkillInstructions(t *testing.T) { function TestLoaderLoadSkillFile (line 234) | func TestLoaderLoadSkillFile(t *testing.T) { function TestManagerIntegration (line 309) | func TestManagerIntegration(t *testing.T) { function TestIsScript (line 370) | func TestIsScript(t *testing.T) { FILE: internal/agent/tools/data_analysis.go type DataAnalysisInput (line 22) | type DataAnalysisInput struct type DataAnalysisTool (line 27) | type DataAnalysisTool struct method recordCreatedTable (line 53) | func (t *DataAnalysisTool) recordCreatedTable(tableName string) bool { method Cleanup (line 64) | func (t *DataAnalysisTool) Cleanup(ctx context.Context) { method Execute (line 87) | func (t *DataAnalysisTool) Execute(ctx context.Context, args json.RawM... method executeSingleQuery (line 177) | func (t *DataAnalysisTool) executeSingleQuery(ctx context.Context, sql... method formatQueryResults (line 228) | func (t *DataAnalysisTool) formatQueryResults(results []map[string]str... method LoadFromCSV (line 281) | func (t *DataAnalysisTool) LoadFromCSV(ctx context.Context, filename s... method LoadFromExcel (line 314) | func (t *DataAnalysisTool) LoadFromExcel(ctx context.Context, filename... method LoadFromKnowledge (line 345) | func (t *DataAnalysisTool) LoadFromKnowledge(ctx context.Context, know... method LoadFromKnowledgeID (line 383) | func (t *DataAnalysisTool) LoadFromKnowledgeID(ctx context.Context, kn... method LoadFromTable (line 404) | func (t *DataAnalysisTool) LoadFromTable(ctx context.Context, tableNam... method TableName (line 470) | func (t *DataAnalysisTool) TableName(knowledge *types.Knowledge) string { function NewDataAnalysisTool (line 36) | func NewDataAnalysisTool( type TableSchema (line 258) | type TableSchema struct method Description (line 475) | func (t *TableSchema) Description() string { type ColumnInfo (line 266) | type ColumnInfo struct FILE: internal/agent/tools/data_schema.go type DataSchemaInput (line 19) | type DataSchemaInput struct type DataSchemaTool (line 23) | type DataSchemaTool struct method Execute (line 43) | func (t *DataSchemaTool) Execute(ctx context.Context, args json.RawMes... function NewDataSchemaTool (line 30) | func NewDataSchemaTool(knowledgeService interfaces.KnowledgeService, chu... FILE: internal/agent/tools/database_query.go type DatabaseQueryInput (line 100) | type DatabaseQueryInput struct type DatabaseQueryTool (line 105) | type DatabaseQueryTool struct method Execute (line 119) | func (t *DatabaseQueryTool) Execute(ctx context.Context, args json.Raw... method validateAndSecureSQL (line 257) | func (t *DatabaseQueryTool) validateAndSecureSQL(sqlQuery string, tena... method formatQueryResults (line 282) | func (t *DatabaseQueryTool) formatQueryResults( function NewDatabaseQueryTool (line 111) | func NewDatabaseQueryTool(db *gorm.DB) *DatabaseQueryTool { FILE: internal/agent/tools/definitions.go constant maxFunctionNameLength (line 5) | maxFunctionNameLength = 64 constant ToolThinking (line 9) | ToolThinking = "thinking" constant ToolTodoWrite (line 10) | ToolTodoWrite = "todo_write" constant ToolGrepChunks (line 11) | ToolGrepChunks = "grep_chunks" constant ToolKnowledgeSearch (line 12) | ToolKnowledgeSearch = "knowledge_search" constant ToolListKnowledgeChunks (line 13) | ToolListKnowledgeChunks = "list_knowledge_chunks" constant ToolQueryKnowledgeGraph (line 14) | ToolQueryKnowledgeGraph = "query_knowledge_graph" constant ToolGetDocumentInfo (line 15) | ToolGetDocumentInfo = "get_document_info" constant ToolDatabaseQuery (line 16) | ToolDatabaseQuery = "database_query" constant ToolDataAnalysis (line 17) | ToolDataAnalysis = "data_analysis" constant ToolDataSchema (line 18) | ToolDataSchema = "data_schema" constant ToolWebSearch (line 19) | ToolWebSearch = "web_search" constant ToolWebFetch (line 20) | ToolWebFetch = "web_fetch" constant ToolFinalAnswer (line 21) | ToolFinalAnswer = "final_answer" constant ToolExecuteSkillScript (line 23) | ToolExecuteSkillScript = "execute_skill_script" constant ToolReadSkill (line 24) | ToolReadSkill = "read_skill" type AvailableTool (line 28) | type AvailableTool struct function AvailableToolDefinitions (line 36) | func AvailableToolDefinitions() []AvailableTool { function DefaultAllowedTools (line 55) | func DefaultAllowedTools() []string { FILE: internal/agent/tools/final_answer.go type FinalAnswerInput (line 45) | type FinalAnswerInput struct type FinalAnswerTool (line 50) | type FinalAnswerTool struct method Execute (line 62) | func (t *FinalAnswerTool) Execute(ctx context.Context, args json.RawMe... function NewFinalAnswerTool (line 55) | func NewFinalAnswerTool() *FinalAnswerTool { FILE: internal/agent/tools/get_document_info.go type GetDocumentInfoInput (line 48) | type GetDocumentInfoInput struct type GetDocumentInfoTool (line 53) | type GetDocumentInfoTool struct method Execute (line 75) | func (t *GetDocumentInfoTool) Execute(ctx context.Context, args json.R... function NewGetDocumentInfoTool (line 61) | func NewGetDocumentInfoTool( function formatSource (line 260) | func formatSource(knowledgeType, source string) string { function formatFileSize (line 273) | func formatFileSize(size int64) string { function formatParseStatus (line 289) | func formatParseStatus(status string) string { FILE: internal/agent/tools/grep_chunks.go type GrepChunksInput (line 87) | type GrepChunksInput struct type GrepChunksTool (line 95) | type GrepChunksTool struct method Execute (line 111) | func (t *GrepChunksTool) Execute(ctx context.Context, args json.RawMes... method searchChunks (line 269) | func (t *GrepChunksTool) searchChunks( method formatOutput (line 343) | func (t *GrepChunksTool) formatOutput( method aggregateByKnowledge (line 403) | func (t *GrepChunksTool) aggregateByKnowledge(results []chunkWithTitle... method countPatternOccurrences (line 481) | func (t *GrepChunksTool) countPatternOccurrences(content string, patte... method deduplicateChunks (line 516) | func (t *GrepChunksTool) deduplicateChunks(ctx context.Context, result... method buildContentSignature (line 574) | func (t *GrepChunksTool) buildContentSignature(content string) string { method scoreChunks (line 579) | func (t *GrepChunksTool) scoreChunks( method calculateMatchScore (line 595) | func (t *GrepChunksTool) calculateMatchScore(content string, patterns ... method applyMMR (line 633) | func (t *GrepChunksTool) applyMMR( method tokenizeSimple (line 715) | func (t *GrepChunksTool) tokenizeSimple(text string) map[string]struct... method jaccard (line 720) | func (t *GrepChunksTool) jaccard(a, b map[string]struct{}) float64 { function NewGrepChunksTool (line 102) | func NewGrepChunksTool(db *gorm.DB, searchTargets types.SearchTargets) *... type chunkWithTitle (line 259) | type chunkWithTitle struct type knowledgeAggregation (line 392) | type knowledgeAggregation struct function countOccurrences (line 498) | func countOccurrences(text string, pattern string) int { FILE: internal/agent/tools/knowledge_search.go type KnowledgeSearchInput (line 106) | type KnowledgeSearchInput struct type searchResultWithMeta (line 112) | type searchResultWithMeta struct type KnowledgeSearchTool (line 121) | type KnowledgeSearchTool struct method Execute (line 155) | func (t *KnowledgeSearchTool) Execute(ctx context.Context, args json.R... method getKnowledgeBaseTypes (line 410) | func (t *KnowledgeSearchTool) getKnowledgeBaseTypes(ctx context.Contex... method concurrentSearchByTargets (line 437) | func (t *KnowledgeSearchTool) concurrentSearchByTargets( method rerankResults (line 570) | func (t *KnowledgeSearchTool) rerankResults( method getFAQMetadata (line 655) | func (t *KnowledgeSearchTool) getFAQMetadata( method rerankWithLLM (line 689) | func (t *KnowledgeSearchTool) rerankWithLLM( method parseScoresFromResponse (line 857) | func (t *KnowledgeSearchTool) parseScoresFromResponse(responseText str... method rerankWithModel (line 927) | func (t *KnowledgeSearchTool) rerankWithModel( method deduplicateResults (line 966) | func (t *KnowledgeSearchTool) deduplicateResults(results []*searchResu... method buildContentSignature (line 1034) | func (t *KnowledgeSearchTool) buildContentSignature(content string) st... method formatOutput (line 1039) | func (t *KnowledgeSearchTool) formatOutput( method getEnrichedPassage (line 1313) | func (t *KnowledgeSearchTool) getEnrichedPassage(ctx context.Context, ... method compositeScore (line 1359) | func (t *KnowledgeSearchTool) compositeScore( method clampFloat (line 1393) | func (t *KnowledgeSearchTool) clampFloat(v, minV, maxV float64) float64 { method applyMMR (line 1398) | func (t *KnowledgeSearchTool) applyMMR( method tokenizeSimple (line 1475) | func (t *KnowledgeSearchTool) tokenizeSimple(text string) map[string]s... method jaccard (line 1480) | func (t *KnowledgeSearchTool) jaccard(a, b map[string]struct{}) float64 { function NewKnowledgeSearchTool (line 133) | func NewKnowledgeSearchTool( type chunkRange (line 1307) | type chunkRange struct FILE: internal/agent/tools/list_knowledge_chunks.go type ListKnowledgeChunksInput (line 59) | type ListKnowledgeChunksInput struct type ListKnowledgeChunksTool (line 66) | type ListKnowledgeChunksTool struct method Execute (line 88) | func (t *ListKnowledgeChunksTool) Execute(ctx context.Context, args js... method lookupKnowledgeTitle (line 228) | func (t *ListKnowledgeChunksTool) lookupKnowledgeTitle(ctx context.Con... method buildOutput (line 240) | func (t *ListKnowledgeChunksTool) buildOutput( function NewListKnowledgeChunksTool (line 74) | func NewListKnowledgeChunksTool( function summarizeContent (line 309) | func summarizeContent(content string) string { FILE: internal/agent/tools/mcp_tool.go type MCPTool (line 18) | type MCPTool struct method Name (line 38) | func (t *MCPTool) Name() string { method Description (line 62) | func (t *MCPTool) Description() string { method Parameters (line 71) | func (t *MCPTool) Parameters() json.RawMessage { method Execute (line 83) | func (t *MCPTool) Execute(ctx context.Context, args json.RawMessage) (... function NewMCPTool (line 25) | func NewMCPTool(service *types.MCPService, mcpTool *types.MCPTool, mcpMa... function extractContentText (line 160) | func extractContentText(content []mcp.ContentItem) string { function sanitizeName (line 197) | func sanitizeName(name string) string { function RegisterMCPTools (line 215) | func RegisterMCPTools( function GetMCPToolsInfo (line 282) | func GetMCPToolsInfo( function SerializeMCPToolResult (line 320) | func SerializeMCPToolResult(result *types.ToolResult) (string, error) { FILE: internal/agent/tools/query_knowledge_graph.go type QueryKnowledgeGraphInput (line 58) | type QueryKnowledgeGraphInput struct type QueryKnowledgeGraphTool (line 64) | type QueryKnowledgeGraphTool struct method Execute (line 78) | func (t *QueryKnowledgeGraphTool) Execute(ctx context.Context, args js... function NewQueryKnowledgeGraphTool (line 70) | func NewQueryKnowledgeGraphTool(knowledgeService interfaces.KnowledgeBas... function buildGraphVisualizationData (line 362) | func buildGraphVisualizationData( FILE: internal/agent/tools/registry.go type ToolRegistry (line 13) | type ToolRegistry struct method RegisterTool (line 27) | func (r *ToolRegistry) RegisterTool(tool types.Tool) { method GetTool (line 36) | func (r *ToolRegistry) GetTool(name string) (types.Tool, error) { method ListTools (line 45) | func (r *ToolRegistry) ListTools() []string { method GetFunctionDefinitions (line 54) | func (r *ToolRegistry) GetFunctionDefinitions() []types.FunctionDefini... method ExecuteTool (line 67) | func (r *ToolRegistry) ExecuteTool( method Cleanup (line 112) | func (r *ToolRegistry) Cleanup(ctx context.Context) { function NewToolRegistry (line 18) | func NewToolRegistry() *ToolRegistry { FILE: internal/agent/tools/sequentialthinking.go type SequentialThinkingTool (line 133) | type SequentialThinkingTool struct method Execute (line 162) | func (t *SequentialThinkingTool) Execute(ctx context.Context, args jso... method validate (line 242) | func (t *SequentialThinkingTool) validate(data SequentialThinkingInput... type SequentialThinkingInput (line 140) | type SequentialThinkingInput struct function NewSequentialThinkingTool (line 153) | func NewSequentialThinkingTool() *SequentialThinkingTool { FILE: internal/agent/tools/skill_execute.go type ExecuteSkillScriptInput (line 43) | type ExecuteSkillScriptInput struct type ExecuteSkillScriptTool (line 51) | type ExecuteSkillScriptTool struct method Execute (line 65) | func (t *ExecuteSkillScriptTool) Execute(ctx context.Context, args jso... method Cleanup (line 188) | func (t *ExecuteSkillScriptTool) Cleanup(ctx context.Context) error { function NewExecuteSkillScriptTool (line 57) | func NewExecuteSkillScriptTool(skillManager *skills.Manager) *ExecuteSki... FILE: internal/agent/tools/skill_read.go type ReadSkillInput (line 38) | type ReadSkillInput struct type ReadSkillTool (line 44) | type ReadSkillTool struct method Execute (line 58) | func (t *ReadSkillTool) Execute(ctx context.Context, args json.RawMess... method Cleanup (line 163) | func (t *ReadSkillTool) Cleanup(ctx context.Context) error { function NewReadSkillTool (line 50) | func NewReadSkillTool(skillManager *skills.Manager) *ReadSkillTool { FILE: internal/agent/tools/todo_write.go type TodoWriteTool (line 140) | type TodoWriteTool struct method Execute (line 165) | func (t *TodoWriteTool) Execute(ctx context.Context, args json.RawMess... type TodoWriteInput (line 145) | type TodoWriteInput struct type PlanStep (line 151) | type PlanStep struct function NewTodoWriteTool (line 158) | func NewTodoWriteTool() *TodoWriteTool { function getStringField (line 203) | func getStringField(m map[string]interface{}, key string) string { function getStringArrayField (line 211) | func getStringArrayField(m map[string]interface{}, key string) []string { function generatePlanOutput (line 229) | func generatePlanOutput(task string, steps []PlanStep) string { function formatPlanStep (line 301) | func formatPlanStep(index int, step PlanStep) string { FILE: internal/agent/tools/tool.go type BaseTool (line 11) | type BaseTool struct method Name (line 27) | func (t *BaseTool) Name() string { method Description (line 32) | func (t *BaseTool) Description() string { method Parameters (line 37) | func (t *BaseTool) Parameters() json.RawMessage { function NewBaseTool (line 18) | func NewBaseTool(name, description string, schema json.RawMessage) BaseT... type ToolExecutor (line 42) | type ToolExecutor interface function GetRelevanceLevel (line 52) | func GetRelevanceLevel(score float64) string { function FormatMatchType (line 66) | func FormatMatchType(mt types.MatchType) string { FILE: internal/agent/tools/web_fetch.go constant webFetchTimeout (line 26) | webFetchTimeout = 60 * time.Second constant webFetchMaxChars (line 27) | webFetchMaxChars = 100000 type WebFetchInput (line 47) | type WebFetchInput struct type WebFetchItem (line 52) | type WebFetchItem struct type webFetchParams (line 58) | type webFetchParams struct type validatedParams (line 65) | type validatedParams struct type webFetchItemResult (line 74) | type webFetchItemResult struct type WebFetchTool (line 81) | type WebFetchTool struct method Execute (line 101) | func (t *WebFetchTool) Execute(ctx context.Context, args json.RawMessa... method parseParams (line 239) | func (t *WebFetchTool) parseParams(item interface{}) webFetchParams { method validateAndResolve (line 254) | func (t *WebFetchTool) validateAndResolve(p webFetchParams) (*validate... method executeFetch (line 310) | func (t *WebFetchTool) executeFetch( method normalizeGitHubURL (line 353) | func (t *WebFetchTool) normalizeGitHubURL(source string) string { method processWithLLM (line 362) | func (t *WebFetchTool) processWithLLM(ctx context.Context, params webF... method buildOutputText (line 397) | func (t *WebFetchTool) buildOutputText(params webFetchParams, content ... method fetchHTMLContent (line 416) | func (t *WebFetchTool) fetchHTMLContent(ctx context.Context, vp *valid... method fetchWithChromedp (line 438) | func (t *WebFetchTool) fetchWithChromedp(ctx context.Context, vp *vali... method fetchWithHTTP (line 481) | func (t *WebFetchTool) fetchWithHTTP(ctx context.Context, vp *validate... method fetchWithTimeout (line 502) | func (t *WebFetchTool) fetchWithTimeout(ctx context.Context, vp *valid... method convertHTMLToText (line 527) | func (t *WebFetchTool) convertHTMLToText(html string) string { method processNode (line 546) | func (t *WebFetchTool) processNode(s *goquery.Selection, markdown *str... method basicTextExtraction (line 656) | func (t *WebFetchTool) basicTextExtraction(html string) string { function NewWebFetchTool (line 88) | func NewWebFetchTool(chatModel chat.Chat) *WebFetchTool { FILE: internal/agent/tools/web_search.go type WebSearchInput (line 72) | type WebSearchInput struct type WebSearchTool (line 77) | type WebSearchTool struct method Execute (line 111) | func (t *WebSearchTool) Execute(ctx context.Context, args json.RawMess... function NewWebSearchTool (line 88) | func NewWebSearchTool( FILE: internal/application/repository/agent_share.go type agentShareRepository (line 18) | type agentShareRepository struct method Create (line 28) | func (r *agentShareRepository) Create(ctx context.Context, share *type... method GetByID (line 41) | func (r *agentShareRepository) GetByID(ctx context.Context, id string)... method GetByAgentAndOrg (line 54) | func (r *agentShareRepository) GetByAgentAndOrg(ctx context.Context, a... method Update (line 69) | func (r *agentShareRepository) Update(ctx context.Context, share *type... method Delete (line 75) | func (r *agentShareRepository) Delete(ctx context.Context, id string) ... method DeleteByAgentIDAndSourceTenant (line 80) | func (r *agentShareRepository) DeleteByAgentIDAndSourceTenant(ctx cont... method DeleteByOrganizationID (line 87) | func (r *agentShareRepository) DeleteByOrganizationID(ctx context.Cont... method ListByAgent (line 92) | func (r *agentShareRepository) ListByAgent(ctx context.Context, agentI... method ListByOrganization (line 106) | func (r *agentShareRepository) ListByOrganization(ctx context.Context,... method ListByOrganizations (line 122) | func (r *agentShareRepository) ListByOrganizations(ctx context.Context... method CountByOrganizations (line 141) | func (r *agentShareRepository) CountByOrganizations(ctx context.Contex... method ListSharedAgentsForUser (line 170) | func (r *agentShareRepository) ListSharedAgentsForUser(ctx context.Con... method GetShareByAgentIDForUser (line 189) | func (r *agentShareRepository) GetShareByAgentIDForUser(ctx context.Co... function NewAgentShareRepository (line 23) | func NewAgentShareRepository(db *gorm.DB) interfaces.AgentShareRepository { FILE: internal/application/repository/chunk.go type chunkRepository (line 16) | type chunkRepository struct method CreateChunks (line 26) | func (r *chunkRepository) CreateChunks(ctx context.Context, chunks []*... method GetChunkByID (line 36) | func (r *chunkRepository) GetChunkByID(ctx context.Context, tenantID u... method GetChunkByIDOnly (line 48) | func (r *chunkRepository) GetChunkByIDOnly(ctx context.Context, id str... method GetChunkBySeqID (line 60) | func (r *chunkRepository) GetChunkBySeqID(ctx context.Context, tenantI... method ListChunksByID (line 72) | func (r *chunkRepository) ListChunksByID( method ListChunksByIDOnly (line 85) | func (r *chunkRepository) ListChunksByIDOnly(ctx context.Context, ids ... method ListChunksBySeqID (line 97) | func (r *chunkRepository) ListChunksBySeqID( method ListChunksByKnowledgeID (line 113) | func (r *chunkRepository) ListChunksByKnowledgeID( method ListPagedChunksByKnowledgeID (line 127) | func (r *chunkRepository) ListPagedChunksByKnowledgeID( method ListChunkByParentID (line 235) | func (r *chunkRepository) ListChunkByParentID( method ListChunksByParentIDs (line 249) | func (r *chunkRepository) ListChunksByParentIDs( method UpdateChunk (line 269) | func (r *chunkRepository) UpdateChunk(ctx context.Context, chunk *type... method UpdateChunks (line 291) | func (r *chunkRepository) UpdateChunks(ctx context.Context, chunks []*... method DeleteChunk (line 397) | func (r *chunkRepository) DeleteChunk(ctx context.Context, tenantID ui... method DeleteChunks (line 403) | func (r *chunkRepository) DeleteChunks(ctx context.Context, tenantID u... method DeleteChunksByKnowledgeID (line 421) | func (r *chunkRepository) DeleteChunksByKnowledgeID(ctx context.Contex... method DeleteByKnowledgeList (line 428) | func (r *chunkRepository) DeleteByKnowledgeList(ctx context.Context, t... method MoveChunksByKnowledgeID (line 435) | func (r *chunkRepository) MoveChunksByKnowledgeID(ctx context.Context,... method DeleteChunksByTagID (line 443) | func (r *chunkRepository) DeleteChunksByTagID(ctx context.Context, ten... method CountChunksByKnowledgeBaseID (line 489) | func (r *chunkRepository) CountChunksByKnowledgeBaseID( method DeleteUnindexedChunks (line 502) | func (r *chunkRepository) DeleteUnindexedChunks( method ListAllFAQChunksByKnowledgeID (line 525) | func (r *chunkRepository) ListAllFAQChunksByKnowledgeID( method ListAllFAQChunksWithMetadataByKnowledgeBaseID (line 566) | func (r *chunkRepository) ListAllFAQChunksWithMetadataByKnowledgeBaseID( method ListAllFAQChunksForExport (line 607) | func (r *chunkRepository) ListAllFAQChunksForExport( method UpdateChunkFlagsBatch (line 651) | func (r *chunkRepository) UpdateChunkFlagsBatch( method UpdateChunkFieldsByTagID (line 731) | func (r *chunkRepository) UpdateChunkFieldsByTagID( method FAQChunkDiff (line 817) | func (r *chunkRepository) FAQChunkDiff( function NewChunkRepository (line 21) | func NewChunkRepository(db *gorm.DB) interfaces.ChunkRepository { FILE: internal/application/repository/custom_agent.go type customAgentRepository (line 16) | type customAgentRepository struct method CreateAgent (line 26) | func (r *customAgentRepository) CreateAgent(ctx context.Context, agent... method GetAgentByID (line 31) | func (r *customAgentRepository) GetAgentByID(ctx context.Context, id s... method ListAgentsByTenantID (line 43) | func (r *customAgentRepository) ListAgentsByTenantID(ctx context.Conte... method UpdateAgent (line 55) | func (r *customAgentRepository) UpdateAgent(ctx context.Context, agent... method DeleteAgent (line 60) | func (r *customAgentRepository) DeleteAgent(ctx context.Context, id st... function NewCustomAgentRepository (line 21) | func NewCustomAgentRepository(db *gorm.DB) interfaces.CustomAgentReposit... FILE: internal/application/repository/kbshare.go type kbShareRepository (line 18) | type kbShareRepository struct method Create (line 28) | func (r *kbShareRepository) Create(ctx context.Context, share *types.K... method GetByID (line 43) | func (r *kbShareRepository) GetByID(ctx context.Context, id string) (*... method GetByKBAndOrg (line 59) | func (r *kbShareRepository) GetByKBAndOrg(ctx context.Context, kbID st... method Update (line 75) | func (r *kbShareRepository) Update(ctx context.Context, share *types.K... method Delete (line 82) | func (r *kbShareRepository) Delete(ctx context.Context, id string) err... method DeleteByKnowledgeBaseID (line 87) | func (r *kbShareRepository) DeleteByKnowledgeBaseID(ctx context.Contex... method DeleteByOrganizationID (line 92) | func (r *kbShareRepository) DeleteByOrganizationID(ctx context.Context... method ListByKnowledgeBase (line 97) | func (r *kbShareRepository) ListByKnowledgeBase(ctx context.Context, k... method ListByOrganization (line 113) | func (r *kbShareRepository) ListByOrganization(ctx context.Context, or... method ListByOrganizations (line 130) | func (r *kbShareRepository) ListByOrganizations(ctx context.Context, o... method ListSharedKBsForUser (line 150) | func (r *kbShareRepository) ListSharedKBsForUser(ctx context.Context, ... method CountSharesByKnowledgeBaseID (line 172) | func (r *kbShareRepository) CountSharesByKnowledgeBaseID(ctx context.C... method CountSharesByKnowledgeBaseIDs (line 184) | func (r *kbShareRepository) CountSharesByKnowledgeBaseIDs(ctx context.... method CountByOrganizations (line 213) | func (r *kbShareRepository) CountByOrganizations(ctx context.Context, ... function NewKBShareRepository (line 23) | func NewKBShareRepository(db *gorm.DB) interfaces.KBShareRepository { FILE: internal/application/repository/knowledge.go type knowledgeRepository (line 19) | type knowledgeRepository struct method CreateKnowledge (line 29) | func (r *knowledgeRepository) CreateKnowledge(ctx context.Context, kno... method GetKnowledgeByID (line 35) | func (r *knowledgeRepository) GetKnowledgeByID( method GetKnowledgeByIDOnly (line 51) | func (r *knowledgeRepository) GetKnowledgeByIDOnly(ctx context.Context... method ListKnowledgeByKnowledgeBaseID (line 63) | func (r *knowledgeRepository) ListKnowledgeByKnowledgeBaseID( method ListPagedKnowledgeByKnowledgeBaseID (line 75) | func (r *knowledgeRepository) ListPagedKnowledgeByKnowledgeBaseID( method UpdateKnowledge (line 141) | func (r *knowledgeRepository) UpdateKnowledge(ctx context.Context, kno... method UpdateKnowledgeBatch (line 147) | func (r *knowledgeRepository) UpdateKnowledgeBatch(ctx context.Context... method DeleteKnowledge (line 155) | func (r *knowledgeRepository) DeleteKnowledge(ctx context.Context, ten... method DeleteKnowledgeList (line 160) | func (r *knowledgeRepository) DeleteKnowledgeList(ctx context.Context,... method GetKnowledgeBatch (line 165) | func (r *knowledgeRepository) GetKnowledgeBatch( method CheckKnowledgeExists (line 178) | func (r *knowledgeRepository) CheckKnowledgeExists( method AminusB (line 247) | func (r *knowledgeRepository) AminusB( method UpdateKnowledgeColumn (line 266) | func (r *knowledgeRepository) UpdateKnowledgeColumn( method CountKnowledgeByKnowledgeBaseID (line 277) | func (r *knowledgeRepository) CountKnowledgeByKnowledgeBaseID( method CountKnowledgeByStatus (line 290) | func (r *knowledgeRepository) CountKnowledgeByStatus( method SearchKnowledge (line 316) | func (r *knowledgeRepository) SearchKnowledge( method SearchKnowledgeInScopes (line 418) | func (r *knowledgeRepository) SearchKnowledgeInScopes( method ListIDsByTagID (line 523) | func (r *knowledgeRepository) ListIDsByTagID( function NewKnowledgeRepository (line 24) | func NewKnowledgeRepository(db *gorm.DB) interfaces.KnowledgeRepository { FILE: internal/application/repository/knowledgebase.go type knowledgeBaseRepository (line 16) | type knowledgeBaseRepository struct method CreateKnowledgeBase (line 26) | func (r *knowledgeBaseRepository) CreateKnowledgeBase(ctx context.Cont... method GetKnowledgeBaseByID (line 31) | func (r *knowledgeBaseRepository) GetKnowledgeBaseByID(ctx context.Con... method GetKnowledgeBaseByIDAndTenant (line 43) | func (r *knowledgeBaseRepository) GetKnowledgeBaseByIDAndTenant(ctx co... method GetKnowledgeBaseByIDs (line 55) | func (r *knowledgeBaseRepository) GetKnowledgeBaseByIDs(ctx context.Co... method ListKnowledgeBases (line 67) | func (r *knowledgeBaseRepository) ListKnowledgeBases(ctx context.Conte... method ListKnowledgeBasesByTenantID (line 76) | func (r *knowledgeBaseRepository) ListKnowledgeBasesByTenantID( method TogglePinKnowledgeBase (line 88) | func (r *knowledgeBaseRepository) TogglePinKnowledgeBase(ctx context.C... method UpdateKnowledgeBase (line 116) | func (r *knowledgeBaseRepository) UpdateKnowledgeBase(ctx context.Cont... method DeleteKnowledgeBase (line 121) | func (r *knowledgeBaseRepository) DeleteKnowledgeBase(ctx context.Cont... function NewKnowledgeBaseRepository (line 21) | func NewKnowledgeBaseRepository(db *gorm.DB) interfaces.KnowledgeBaseRep... FILE: internal/application/repository/mcp_service.go type mcpServiceRepository (line 13) | type mcpServiceRepository struct method Create (line 23) | func (r *mcpServiceRepository) Create(ctx context.Context, service *ty... method GetByID (line 29) | func (r *mcpServiceRepository) GetByID(ctx context.Context, tenantID u... method List (line 47) | func (r *mcpServiceRepository) List(ctx context.Context, tenantID uint... method ListEnabled (line 62) | func (r *mcpServiceRepository) ListEnabled(ctx context.Context, tenant... method ListByIDs (line 77) | func (r *mcpServiceRepository) ListByIDs( method Update (line 98) | func (r *mcpServiceRepository) Update(ctx context.Context, service *ty... method Delete (line 142) | func (r *mcpServiceRepository) Delete(ctx context.Context, tenantID ui... function NewMCPServiceRepository (line 18) | func NewMCPServiceRepository(db *gorm.DB) interfaces.MCPServiceRepository { FILE: internal/application/repository/memory/neo4j/repository.go type MemoryRepository (line 14) | type MemoryRepository struct method IsAvailable (line 22) | func (r *MemoryRepository) IsAvailable(ctx context.Context) bool { method SaveEpisode (line 26) | func (r *MemoryRepository) SaveEpisode(ctx context.Context, episode *t... method FindRelatedEpisodes (line 101) | func (r *MemoryRepository) FindRelatedEpisodes(ctx context.Context, us... function NewMemoryRepository (line 18) | func NewMemoryRepository(driver neo4j.Driver) interfaces.MemoryRepository { FILE: internal/application/repository/message.go type messageRepository (line 15) | type messageRepository struct method CreateMessage (line 27) | func (r *messageRepository) CreateMessage( method GetMessage (line 37) | func (r *messageRepository) GetMessage( method GetMessagesBySession (line 50) | func (r *messageRepository) GetMessagesBySession( method GetRecentMessagesBySession (line 62) | func (r *messageRepository) GetRecentMessagesBySession( method GetMessagesBySessionBeforeTime (line 88) | func (r *messageRepository) GetMessagesBySessionBeforeTime( method UpdateMessage (line 111) | func (r *messageRepository) UpdateMessage(ctx context.Context, message... method DeleteMessage (line 118) | func (r *messageRepository) DeleteMessage(ctx context.Context, session... method GetFirstMessageOfUser (line 125) | func (r *messageRepository) GetFirstMessageOfUser(ctx context.Context,... method GetMessageByRequestID (line 136) | func (r *messageRepository) GetMessageByRequestID( method SearchMessagesByKeyword (line 156) | func (r *messageRepository) SearchMessagesByKeyword( method GetMessagesByKnowledgeIDs (line 185) | func (r *messageRepository) GetMessagesByKnowledgeIDs( method GetMessagesByRequestIDs (line 205) | func (r *messageRepository) GetMessagesByRequestIDs( method GetKnowledgeIDsBySessionID (line 225) | func (r *messageRepository) GetKnowledgeIDsBySessionID( method UpdateMessageImages (line 241) | func (r *messageRepository) UpdateMessageImages(ctx context.Context, s... method DeleteMessagesBySessionID (line 249) | func (r *messageRepository) DeleteMessagesBySessionID(ctx context.Cont... method UpdateMessageKnowledgeID (line 254) | func (r *messageRepository) UpdateMessageKnowledgeID( function NewMessageRepository (line 20) | func NewMessageRepository(db *gorm.DB) interfaces.MessageRepository { FILE: internal/application/repository/model.go type modelRepository (line 13) | type modelRepository struct method Create (line 23) | func (r *modelRepository) Create(ctx context.Context, m *types.Model) ... method GetByID (line 28) | func (r *modelRepository) GetByID(ctx context.Context, tenantID uint64... method List (line 42) | func (r *modelRepository) List( method Update (line 66) | func (r *modelRepository) Update(ctx context.Context, m *types.Model) ... method Delete (line 74) | func (r *modelRepository) Delete(ctx context.Context, tenantID uint64,... method ClearDefaultByType (line 82) | func (r *modelRepository) ClearDefaultByType( function NewModelRepository (line 18) | func NewModelRepository(db *gorm.DB) interfaces.ModelRepository { FILE: internal/application/repository/organization.go type organizationRepository (line 22) | type organizationRepository struct method Create (line 32) | func (r *organizationRepository) Create(ctx context.Context, org *type... method GetByID (line 37) | func (r *organizationRepository) GetByID(ctx context.Context, id strin... method GetByInviteCode (line 49) | func (r *organizationRepository) GetByInviteCode(ctx context.Context, ... method ListByUserID (line 64) | func (r *organizationRepository) ListByUserID(ctx context.Context, use... method ListSearchable (line 81) | func (r *organizationRepository) ListSearchable(ctx context.Context, q... method Update (line 100) | func (r *organizationRepository) Update(ctx context.Context, org *type... method Delete (line 107) | func (r *organizationRepository) Delete(ctx context.Context, id string... method AddMember (line 112) | func (r *organizationRepository) AddMember(ctx context.Context, member... method RemoveMember (line 127) | func (r *organizationRepository) RemoveMember(ctx context.Context, org... method UpdateMemberRole (line 142) | func (r *organizationRepository) UpdateMemberRole(ctx context.Context,... method ListMembers (line 158) | func (r *organizationRepository) ListMembers(ctx context.Context, orgI... method GetMember (line 173) | func (r *organizationRepository) GetMember(ctx context.Context, orgID ... method ListMembersByUserForOrgs (line 189) | func (r *organizationRepository) ListMembersByUserForOrgs(ctx context.... method CountMembers (line 210) | func (r *organizationRepository) CountMembers(ctx context.Context, org... method UpdateInviteCode (line 220) | func (r *organizationRepository) UpdateInviteCode(ctx context.Context,... method CreateJoinRequest (line 235) | func (r *organizationRepository) CreateJoinRequest(ctx context.Context... method GetJoinRequestByID (line 240) | func (r *organizationRepository) GetJoinRequestByID(ctx context.Contex... method GetPendingJoinRequest (line 256) | func (r *organizationRepository) GetPendingJoinRequest(ctx context.Con... method GetPendingRequestByType (line 271) | func (r *organizationRepository) GetPendingRequestByType(ctx context.C... method ListJoinRequests (line 286) | func (r *organizationRepository) ListJoinRequests(ctx context.Context,... method CountJoinRequests (line 304) | func (r *organizationRepository) CountJoinRequests(ctx context.Context... method UpdateJoinRequestStatus (line 315) | func (r *organizationRepository) UpdateJoinRequestStatus(ctx context.C... function NewOrganizationRepository (line 27) | func NewOrganizationRepository(db *gorm.DB) interfaces.OrganizationRepos... FILE: internal/application/repository/retriever/elasticsearch/structs.go type VectorEmbedding (line 11) | type VectorEmbedding struct type VectorEmbeddingWithScore (line 25) | type VectorEmbeddingWithScore struct function ToDBVectorEmbedding (line 31) | func ToDBVectorEmbedding(embedding *types.IndexInfo, additionalParams ma... function FromDBVectorEmbeddingWithScore (line 61) | func FromDBVectorEmbeddingWithScore(id string, FILE: internal/application/repository/retriever/elasticsearch/v7/repository.go type elasticsearchRepository (line 28) | type elasticsearchRepository struct method EngineType (line 50) | func (e *elasticsearchRepository) EngineType() typesLocal.RetrieverEng... method Support (line 54) | func (e *elasticsearchRepository) Support() []typesLocal.RetrieverType { method EstimateStorageSize (line 59) | func (e *elasticsearchRepository) EstimateStorageSize(ctx context.Cont... method calculateStorageSize (line 80) | func (e *elasticsearchRepository) calculateStorageSize(embedding *elas... method Save (line 104) | func (e *elasticsearchRepository) Save(ctx context.Context, method BatchSave (line 153) | func (e *elasticsearchRepository) BatchSave(ctx context.Context, method prepareBulkRequestBody (line 199) | func (e *elasticsearchRepository) prepareBulkRequestBody(ctx context.C... method processBulkResponse (line 236) | func (e *elasticsearchRepository) processBulkResponse(ctx context.Cont... method countBulkErrors (line 266) | func (e *elasticsearchRepository) countBulkErrors(ctx context.Context, method DeleteByChunkIDList (line 290) | func (e *elasticsearchRepository) DeleteByChunkIDList(ctx context.Cont... method DeleteBySourceIDList (line 295) | func (e *elasticsearchRepository) DeleteBySourceIDList(ctx context.Con... method DeleteByKnowledgeIDList (line 300) | func (e *elasticsearchRepository) DeleteByKnowledgeIDList(ctx context.... method deleteByFieldList (line 307) | func (e *elasticsearchRepository) deleteByFieldList(ctx context.Contex... method getBaseConds (line 360) | func (e *elasticsearchRepository) getBaseConds(params typesLocal.Retri... method Retrieve (line 448) | func (e *elasticsearchRepository) Retrieve(ctx context.Context, method VectorRetrieve (line 465) | func (e *elasticsearchRepository) VectorRetrieve(ctx context.Context, method buildVectorSearchQuery (line 495) | func (e *elasticsearchRepository) buildVectorSearchQuery(ctx context.C... method executeVectorSearch (line 542) | func (e *elasticsearchRepository) executeVectorSearch( method KeywordsRetrieve (line 568) | func (e *elasticsearchRepository) KeywordsRetrieve(ctx context.Context, method buildKeywordSearchQuery (line 597) | func (e *elasticsearchRepository) buildKeywordSearchQuery(ctx context.... method executeKeywordSearch (line 618) | func (e *elasticsearchRepository) executeKeywordSearch( method processSearchResponse (line 645) | func (e *elasticsearchRepository) processSearchResponse(ctx context.Co... method decodeSearchResponse (line 681) | func (e *elasticsearchRepository) decodeSearchResponse(ctx context.Con... method extractHitsFromResponse (line 696) | func (e *elasticsearchRepository) extractHitsFromResponse(ctx context.... method processHits (line 718) | func (e *elasticsearchRepository) processHits(ctx context.Context, method processHit (line 741) | func (e *elasticsearchRepository) processHit(ctx context.Context, method convertSourceToEmbedding (line 789) | func (e *elasticsearchRepository) convertSourceToEmbedding(ctx context... method logResultsSummary (line 812) | func (e *elasticsearchRepository) logResultsSummary(ctx context.Context, method CopyIndices (line 834) | func (e *elasticsearchRepository) CopyIndices(ctx context.Context, method querySourceBatch (line 910) | func (e *elasticsearchRepository) querySourceBatch(ctx context.Context, method processSourceBatch (line 978) | func (e *elasticsearchRepository) processSourceBatch(ctx context.Context, method processSingleHit (line 1011) | func (e *elasticsearchRepository) processSingleHit(ctx context.Context, method saveCopiedIndices (line 1127) | func (e *elasticsearchRepository) saveCopiedIndices(ctx context.Contex... method BatchUpdateChunkEnabledStatus (line 1159) | func (e *elasticsearchRepository) BatchUpdateChunkEnabledStatus( method BatchUpdateChunkTagID (line 1258) | func (e *elasticsearchRepository) BatchUpdateChunkTagID( function NewElasticsearchEngineRepository (line 33) | func NewElasticsearchEngineRepository(client *elasticsearch.Client, FILE: internal/application/repository/retriever/elasticsearch/v8/repository.go type elasticsearchRepository (line 23) | type elasticsearchRepository struct method EngineType (line 54) | func (e *elasticsearchRepository) EngineType() typesLocal.RetrieverEng... method Support (line 59) | func (e *elasticsearchRepository) Support() []typesLocal.RetrieverType { method calculateStorageSize (line 64) | func (e *elasticsearchRepository) calculateStorageSize(embedding *elas... method EstimateStorageSize (line 88) | func (e *elasticsearchRepository) EstimateStorageSize(ctx context.Cont... method Save (line 104) | func (e *elasticsearchRepository) Save(ctx context.Context, method BatchSave (line 132) | func (e *elasticsearchRepository) BatchSave(ctx context.Context, method DeleteByChunkIDList (line 168) | func (e *elasticsearchRepository) DeleteByChunkIDList(ctx context.Cont... method DeleteBySourceIDList (line 191) | func (e *elasticsearchRepository) DeleteBySourceIDList(ctx context.Con... method DeleteByKnowledgeIDList (line 214) | func (e *elasticsearchRepository) DeleteByKnowledgeIDList(ctx context.... method getBaseConds (line 240) | func (e *elasticsearchRepository) getBaseConds(params typesLocal.Retri... method createIndexIfNotExists (line 291) | func (e *elasticsearchRepository) createIndexIfNotExists(ctx context.C... method Retrieve (line 321) | func (e *elasticsearchRepository) Retrieve(ctx context.Context, method VectorRetrieve (line 342) | func (e *elasticsearchRepository) VectorRetrieve(ctx context.Context, method KeywordsRetrieve (line 414) | func (e *elasticsearchRepository) KeywordsRetrieve(ctx context.Context, method CopyIndices (line 468) | func (e *elasticsearchRepository) CopyIndices(ctx context.Context, method BatchUpdateChunkEnabledStatus (line 614) | func (e *elasticsearchRepository) BatchUpdateChunkEnabledStatus( method BatchUpdateChunkTagID (line 695) | func (e *elasticsearchRepository) BatchUpdateChunkTagID( function NewElasticsearchEngineRepository (line 30) | func NewElasticsearchEngineRepository(client *elasticsearch.TypedClient, FILE: internal/application/repository/retriever/milvus/filter.go constant operatorAnd (line 14) | operatorAnd = "and" constant operatorOr (line 17) | operatorOr = "or" constant operatorEqual (line 20) | operatorEqual = "eq" constant operatorNotEqual (line 23) | operatorNotEqual = "ne" constant operatorGreaterThan (line 26) | operatorGreaterThan = "gt" constant operatorGreaterThanOrEqual (line 29) | operatorGreaterThanOrEqual = "gte" constant operatorLessThan (line 32) | operatorLessThan = "lt" constant operatorLessThanOrEqual (line 35) | operatorLessThanOrEqual = "lte" constant operatorIn (line 38) | operatorIn = "in" constant operatorNotIn (line 41) | operatorNotIn = "not in" constant operatorLike (line 44) | operatorLike = "like" constant operatorNotLike (line 47) | operatorNotLike = "not like" constant operatorBetween (line 50) | operatorBetween = "between" type convertResult (line 64) | type convertResult struct type filter (line 69) | type filter struct method Convert (line 71) | func (c *filter) Convert(cond *universalFilterCondition) (*convertResu... method convertComparisonCondition (line 76) | func (c *filter) convertComparisonCondition( method convertLogicalCondition (line 96) | func (c *filter) convertLogicalCondition( method convertCondition (line 137) | func (c *filter) convertCondition( method convertInCondition (line 160) | func (c *filter) convertInCondition( method convertBetweenCondition (line 181) | func (c *filter) convertBetweenCondition( method convertParamName (line 236) | func (c *filter) convertParamName(field string, counter *int) string { function formatValue (line 207) | func formatValue(value any) string { function escapeDoubleQuotes (line 230) | func escapeDoubleQuotes(s string) string { type universalFilterCondition (line 241) | type universalFilterCondition struct method UnmarshalJSON (line 247) | func (c *universalFilterCondition) UnmarshalJSON(data []byte) error { method MarshalJSON (line 292) | func (c *universalFilterCondition) MarshalJSON() ([]byte, error) { FILE: internal/application/repository/retriever/milvus/repository.go constant envMilvusCollection (line 23) | envMilvusCollection = "MILVUS_COLLECTION" constant defaultCollectionName (line 24) | defaultCollectionName = "weknora_embeddings" constant fieldContent (line 25) | fieldContent = "content" constant fieldSourceID (line 26) | fieldSourceID = "source_id" constant fieldSourceType (line 27) | fieldSourceType = "source_type" constant fieldChunkID (line 28) | fieldChunkID = "chunk_id" constant fieldKnowledgeID (line 29) | fieldKnowledgeID = "knowledge_id" constant fieldKnowledgeBaseID (line 30) | fieldKnowledgeBaseID = "knowledge_base_id" constant fieldTagID (line 31) | fieldTagID = "tag_id" constant fieldEmbedding (line 32) | fieldEmbedding = "embedding" constant fieldIsEnabled (line 33) | fieldIsEnabled = "is_enabled" constant fieldID (line 34) | fieldID = "id" constant fieldContentSparse (line 35) | fieldContentSparse = "content_sparse" function NewMilvusRetrieveEngineRepository (line 44) | func NewMilvusRetrieveEngineRepository(client *client.Client) interfaces... method getCollectionName (line 65) | func (m *milvusRepository) getCollectionName(dimension int) string { method ensureCollection (line 70) | func (m *milvusRepository) ensureCollection(ctx context.Context, dimensi... method EngineType (line 186) | func (m *milvusRepository) EngineType() types.RetrieverEngineType { method Support (line 190) | func (m *milvusRepository) Support() []types.RetrieverType { method EstimateStorageSize (line 195) | func (m *milvusRepository) EstimateStorageSize(ctx context.Context, method Save (line 210) | func (m *milvusRepository) Save(ctx context.Context, method BatchSave (line 245) | func (m *milvusRepository) BatchSave(ctx context.Context, method DeleteByChunkIDList (line 307) | func (m *milvusRepository) DeleteByChunkIDList(ctx context.Context, chun... method DeleteByKnowledgeIDList (line 330) | func (m *milvusRepository) DeleteByKnowledgeIDList(ctx context.Context, method DeleteBySourceIDList (line 355) | func (m *milvusRepository) DeleteBySourceIDList(ctx context.Context, method BatchUpdateChunkEnabledStatus (line 380) | func (m *milvusRepository) BatchUpdateChunkEnabledStatus(ctx context.Con... method searchByFilter (line 466) | func (m *milvusRepository) searchByFilter(ctx context.Context, collectio... method BatchUpdateChunkTagID (line 497) | func (m *milvusRepository) BatchUpdateChunkTagID(ctx context.Context, ch... method getBaseFilterForQuery (line 558) | func (m *milvusRepository) getBaseFilterForQuery(params types.RetrievePa... method Retrieve (line 614) | func (m *milvusRepository) Retrieve(ctx context.Context, method VectorRetrieve (line 633) | func (m *milvusRepository) VectorRetrieve(ctx context.Context, method KeywordsRetrieve (line 703) | func (m *milvusRepository) KeywordsRetrieve(ctx context.Context, method CopyIndices (line 771) | func (m *milvusRepository) CopyIndices(ctx context.Context, function buildRetrieveResult (line 876) | func buildRetrieveResult(results []*types.IndexWithScore, retrieverType ... method calculateStorageSize (line 887) | func (m *milvusRepository) calculateStorageSize(embedding *MilvusVectorE... function toMilvusVectorEmbedding (line 919) | func toMilvusVectorEmbedding(embedding *types.IndexInfo, additionalParam... function fromMilvusVectorEmbedding (line 939) | func fromMilvusVectorEmbedding(id string, function createUpsert (line 957) | func createUpsert(collectionName string, embeddings []*MilvusVectorEmbed... function convertResultSet (line 996) | func convertResultSet(resultSet []client.ResultSet) ([]*MilvusVectorEmbe... FILE: internal/application/repository/retriever/milvus/structs.go type milvusRepository (line 9) | type milvusRepository struct type MilvusVectorEmbedding (line 17) | type MilvusVectorEmbedding struct type MilvusVectorEmbeddingWithScore (line 30) | type MilvusVectorEmbeddingWithScore struct FILE: internal/application/repository/retriever/neo4j/repository.go type Neo4jRepository (line 15) | type Neo4jRepository struct method Labels (line 31) | func (n *Neo4jRepository) Labels(namespace types.NameSpace) []string { method Label (line 40) | func (n *Neo4jRepository) Label(namespace types.NameSpace) string { method AddGraph (line 46) | func (n *Neo4jRepository) AddGraph(ctx context.Context, namespace type... method addGraph (line 60) | func (n *Neo4jRepository) addGraph(ctx context.Context, namespace type... method DelGraph (line 118) | func (n *Neo4jRepository) DelGraph(ctx context.Context, namespaces []t... method SearchNode (line 164) | func (n *Neo4jRepository) SearchNode( function NewNeo4jRepository (line 21) | func NewNeo4jRepository(driver neo4j.Driver) interfaces.RetrieveGraphRep... function _remove_hyphen (line 26) | func _remove_hyphen(s string) string { function listI2listS (line 230) | func listI2listS(list []any) []string { FILE: internal/application/repository/retriever/postgres/repository.go type pgRepository (line 20) | type pgRepository struct method EngineType (line 31) | func (r *pgRepository) EngineType() types.RetrieverEngineType { method Support (line 36) | func (r *pgRepository) Support() []types.RetrieverType { method calculateIndexStorageSize (line 41) | func (g *pgRepository) calculateIndexStorageSize(embeddingDB *pgVector... method EstimateStorageSize (line 64) | func (g *pgRepository) EstimateStorageSize( method Save (line 80) | func (g *pgRepository) Save(ctx context.Context, indexInfo *types.Inde... method BatchSave (line 93) | func (g *pgRepository) BatchSave( method DeleteByChunkIDList (line 111) | func (g *pgRepository) DeleteByChunkIDList(ctx context.Context, chunkI... method DeleteBySourceIDList (line 123) | func (g *pgRepository) DeleteBySourceIDList(ctx context.Context, sourc... method DeleteByKnowledgeIDList (line 138) | func (g *pgRepository) DeleteByKnowledgeIDList(ctx context.Context, kn... method Retrieve (line 150) | func (g *pgRepository) Retrieve(ctx context.Context, params types.Retr... method KeywordsRetrieve (line 164) | func (g *pgRepository) KeywordsRetrieve(ctx context.Context, method VectorRetrieve (line 262) | func (g *pgRepository) VectorRetrieve(ctx context.Context, method CopyIndices (line 424) | func (g *pgRepository) CopyIndices(ctx context.Context, method BatchUpdateChunkEnabledStatus (line 557) | func (g *pgRepository) BatchUpdateChunkEnabledStatus(ctx context.Conte... method BatchUpdateChunkTagID (line 608) | func (g *pgRepository) BatchUpdateChunkTagID(ctx context.Context, chun... function NewPostgresRetrieveEngineRepository (line 25) | func NewPostgresRetrieveEngineRepository(db *gorm.DB) interfaces.Retriev... FILE: internal/application/repository/retriever/postgres/structs.go type pgVector (line 15) | type pgVector struct method TableName (line 55) | func (pgVector) TableName() string { type pgVectorWithScore (line 32) | type pgVectorWithScore struct method TableName (line 50) | func (pgVectorWithScore) TableName() string { function toDBVectorEmbedding (line 60) | func toDBVectorEmbedding(indexInfo *types.IndexInfo, additionalParams ma... function fromDBVectorEmbeddingWithScore (line 90) | func fromDBVectorEmbeddingWithScore(embedding *pgVectorWithScore, matchT... FILE: internal/application/repository/retriever/qdrant/repository.go constant envQdrantCollection (line 20) | envQdrantCollection = "QDRANT_COLLECTION" constant defaultCollectionName (line 21) | defaultCollectionName = "weknora_embeddings" constant fieldContent (line 22) | fieldContent = "content" constant fieldSourceID (line 23) | fieldSourceID = "source_id" constant fieldSourceType (line 24) | fieldSourceType = "source_type" constant fieldChunkID (line 25) | fieldChunkID = "chunk_id" constant fieldKnowledgeID (line 26) | fieldKnowledgeID = "knowledge_id" constant fieldKnowledgeBaseID (line 27) | fieldKnowledgeBaseID = "knowledge_base_id" constant fieldTagID (line 28) | fieldTagID = "tag_id" constant fieldEmbedding (line 29) | fieldEmbedding = "embedding" constant fieldIsEnabled (line 30) | fieldIsEnabled = "is_enabled" function NewQdrantRetrieveEngineRepository (line 34) | func NewQdrantRetrieveEngineRepository(client *qdrant.Client) interfaces... method getCollectionName (line 54) | func (q *qdrantRepository) getCollectionName(dimension int) string { method ensureCollection (line 59) | func (q *qdrantRepository) ensureCollection(ctx context.Context, dimensi... method EngineType (line 142) | func (q *qdrantRepository) EngineType() types.RetrieverEngineType { method Support (line 146) | func (q *qdrantRepository) Support() []types.RetrieverType { method EstimateStorageSize (line 151) | func (q *qdrantRepository) EstimateStorageSize(ctx context.Context, method Save (line 166) | func (q *qdrantRepository) Save(ctx context.Context, method BatchSave (line 207) | func (q *qdrantRepository) BatchSave(ctx context.Context, method DeleteByChunkIDList (line 268) | func (q *qdrantRepository) DeleteByChunkIDList(ctx context.Context, chun... method DeleteByKnowledgeIDList (line 296) | func (q *qdrantRepository) DeleteByKnowledgeIDList(ctx context.Context, method DeleteBySourceIDList (line 326) | func (q *qdrantRepository) DeleteBySourceIDList(ctx context.Context, method BatchUpdateChunkEnabledStatus (line 357) | func (q *qdrantRepository) BatchUpdateChunkEnabledStatus(ctx context.Con... method BatchUpdateChunkTagID (line 431) | func (q *qdrantRepository) BatchUpdateChunkTagID(ctx context.Context, ch... method getBaseFilter (line 482) | func (q *qdrantRepository) getBaseFilter(params types.RetrieveParams) *q... method Retrieve (line 521) | func (q *qdrantRepository) Retrieve(ctx context.Context, method VectorRetrieve (line 540) | func (q *qdrantRepository) VectorRetrieve(ctx context.Context, method KeywordsRetrieve (line 612) | func (q *qdrantRepository) KeywordsRetrieve(ctx context.Context, method CopyIndices (line 709) | func (q *qdrantRepository) CopyIndices(ctx context.Context, function createPayload (line 864) | func createPayload(embedding *QdrantVectorEmbedding) map[string]*qdrant.... function buildRetrieveResult (line 878) | func buildRetrieveResult(results []*types.IndexWithScore, retrieverType ... method calculateStorageSize (line 890) | func (q *qdrantRepository) calculateStorageSize(embedding *QdrantVectorE... function toQdrantVectorEmbedding (line 923) | func toQdrantVectorEmbedding(embedding *types.IndexInfo, additionalParam... function fromQdrantVectorEmbedding (line 943) | func fromQdrantVectorEmbedding(id string, function tokenizeQuery (line 963) | func tokenizeQuery(query string) []string { FILE: internal/application/repository/retriever/qdrant/structs.go type qdrantRepository (line 9) | type qdrantRepository struct type QdrantVectorEmbedding (line 16) | type QdrantVectorEmbedding struct type QdrantVectorEmbeddingWithScore (line 28) | type QdrantVectorEmbeddingWithScore struct FILE: internal/application/repository/retriever/sqlite/repository.go type sqliteEmbedding (line 21) | type sqliteEmbedding struct method TableName (line 36) | func (sqliteEmbedding) TableName() string { return "lite_embeddings" } type sqliteRepository (line 38) | type sqliteRepository struct method ensureVecTable (line 77) | func (r *sqliteRepository) ensureVecTable(dim int) { method ensureExistingVecTables (line 97) | func (r *sqliteRepository) ensureExistingVecTables() { method EngineType (line 105) | func (r *sqliteRepository) EngineType() types.RetrieverEngineType { method Support (line 109) | func (r *sqliteRepository) Support() []types.RetrieverType { method Save (line 113) | func (r *sqliteRepository) Save(ctx context.Context, indexInfo *types.... method BatchSave (line 129) | func (r *sqliteRepository) BatchSave(ctx context.Context, indexInfoLis... method EstimateStorageSize (line 155) | func (r *sqliteRepository) EstimateStorageSize(_ context.Context, inde... method DeleteByChunkIDList (line 163) | func (r *sqliteRepository) DeleteByChunkIDList(ctx context.Context, ch... method DeleteBySourceIDList (line 170) | func (r *sqliteRepository) DeleteBySourceIDList(ctx context.Context, s... method DeleteByKnowledgeIDList (line 177) | func (r *sqliteRepository) DeleteByKnowledgeIDList(ctx context.Context... method CopyIndices (line 184) | func (r *sqliteRepository) CopyIndices(ctx context.Context, method BatchUpdateChunkEnabledStatus (line 219) | func (r *sqliteRepository) BatchUpdateChunkEnabledStatus(ctx context.C... method BatchUpdateChunkTagID (line 226) | func (r *sqliteRepository) BatchUpdateChunkTagID(ctx context.Context, ... method Retrieve (line 235) | func (r *sqliteRepository) Retrieve(ctx context.Context, params types.... method keywordsRetrieve (line 268) | func (r *sqliteRepository) keywordsRetrieve(ctx context.Context, param... method vectorRetrieve (line 344) | func (r *sqliteRepository) vectorRetrieve(ctx context.Context, params ... method insertVec (line 465) | func (r *sqliteRepository) insertVec(_ context.Context, rowID uint, di... method deleteRowsAndVecs (line 475) | func (r *sqliteRepository) deleteRowsAndVecs(_ context.Context, rows [... method copyVec (line 493) | func (r *sqliteRepository) copyVec(_ context.Context, srcID, dstID uin... method syncFTS5Insert (line 504) | func (r *sqliteRepository) syncFTS5Insert(_ context.Context, row *sqli... function NewSQLiteRetrieveEngineRepository (line 43) | func NewSQLiteRetrieveEngineRepository(db *gorm.DB) interfaces.RetrieveE... function initFTS5 (line 62) | func initFTS5(db *gorm.DB) { function vecTableName (line 73) | func vecTableName(dim int) string { function toSQLiteEmbedding (line 439) | func toSQLiteEmbedding(info *types.IndexInfo) *sqliteEmbedding { function extractEmbedding (line 454) | func extractEmbedding(params map[string]any, sourceID string) []float32 { type whereClause (line 512) | type whereClause struct function buildFilterWhere (line 517) | func buildFilterWhere(params types.RetrieveParams) []whereClause { function placeholders (line 540) | func placeholders(n int) string { function toInterfaceSlice (line 548) | func toInterfaceSlice(ss []string) []interface{} { function sanitizeFTS5Query (line 561) | func sanitizeFTS5Query(q string) string { FILE: internal/application/repository/retriever/weaviate/repository.go constant envWeaviateCollection (line 24) | envWeaviateCollection = "WEAVIATE_COLLECTION" constant defaultCollectionName (line 25) | defaultCollectionName = "Weknora_embeddings" constant fieldContent (line 26) | fieldContent = "content" constant fieldSourceID (line 27) | fieldSourceID = "source_id" constant fieldSourceType (line 28) | fieldSourceType = "source_type" constant fieldChunkID (line 29) | fieldChunkID = "chunk_id" constant fieldKnowledgeID (line 30) | fieldKnowledgeID = "knowledge_id" constant fieldKnowledgeBaseID (line 31) | fieldKnowledgeBaseID = "knowledge_base_id" constant fieldTagID (line 32) | fieldTagID = "tag_id" constant fieldEmbedding (line 33) | fieldEmbedding = "embedding" constant fieldIsEnabled (line 34) | fieldIsEnabled = "is_enabled" constant fieldID (line 35) | fieldID = "id" function NewWeaviateRetrieveEngineRepository (line 38) | func NewWeaviateRetrieveEngineRepository(client *weaviate.Client) interf... method getCollectionName (line 57) | func (w *weaviateRepository) getCollectionName(dimension int) string { method ensureCollection (line 61) | func (w *weaviateRepository) ensureCollection(ctx context.Context, dimen... method EngineType (line 151) | func (w *weaviateRepository) EngineType() types.RetrieverEngineType { method Support (line 155) | func (w *weaviateRepository) Support() []types.RetrieverType { method EstimateStorageSize (line 160) | func (w *weaviateRepository) EstimateStorageSize(ctx context.Context, method Save (line 175) | func (w *weaviateRepository) Save(ctx context.Context, method BatchSave (line 213) | func (w *weaviateRepository) BatchSave(ctx context.Context, method DeleteByChunkIDList (line 278) | func (w *weaviateRepository) DeleteByChunkIDList(ctx context.Context, ch... method DeleteByKnowledgeIDList (line 307) | func (w *weaviateRepository) DeleteByKnowledgeIDList(ctx context.Context, method DeleteBySourceIDList (line 338) | func (w *weaviateRepository) DeleteBySourceIDList(ctx context.Context, method BatchUpdateChunkEnabledStatus (line 368) | func (w *weaviateRepository) BatchUpdateChunkEnabledStatus(ctx context.C... method BatchUpdateChunkTagID (line 420) | func (w *weaviateRepository) BatchUpdateChunkTagID(ctx context.Context, ... method getBaseFilter (line 466) | func (w *weaviateRepository) getBaseFilter(params types.RetrieveParams) ... method Retrieve (line 511) | func (w *weaviateRepository) Retrieve(ctx context.Context, method VectorRetrieve (line 530) | func (w *weaviateRepository) VectorRetrieve(ctx context.Context, method KeywordsRetrieve (line 594) | func (w *weaviateRepository) KeywordsRetrieve(ctx context.Context, method CopyIndices (line 666) | func (w *weaviateRepository) CopyIndices(ctx context.Context, method ListCollections (line 807) | func (w *weaviateRepository) ListCollections(ctx context.Context) ([]str... function createPayload (line 820) | func createPayload(embedding *WeaviateVectorEmbedding) map[string]interf... function buildRetrieveResult (line 834) | func buildRetrieveResult(results []*types.IndexWithScore, retrieverType ... function getKeywordsFields (line 845) | func getKeywordsFields() []graphql.Field { function getEmbeddingFields (line 864) | func getEmbeddingFields() []graphql.Field { function getVectorFields (line 883) | func getVectorFields() []graphql.Field { function parseGraphQLResponse (line 903) | func parseGraphQLResponse(items []interface{}, collectionName string, ma... method calculateStorageSize (line 957) | func (w *weaviateRepository) calculateStorageSize(embedding *WeaviateVec... function toWeaviateVectorEmbedding (line 990) | func toWeaviateVectorEmbedding(embedding *types.IndexInfo, additionalPar... function fromWeaviateVectorEmbedding (line 1010) | func fromWeaviateVectorEmbedding(id string, function tokenizeQuery (line 1030) | func tokenizeQuery(query string) []string { FILE: internal/application/repository/retriever/weaviate/structs.go type weaviateRepository (line 9) | type weaviateRepository struct type WeaviateVectorEmbedding (line 16) | type WeaviateVectorEmbedding struct type WeaviateVectorEmbeddingWithScore (line 28) | type WeaviateVectorEmbeddingWithScore struct FILE: internal/application/repository/session.go type sessionRepository (line 13) | type sessionRepository struct method Create (line 23) | func (r *sessionRepository) Create(ctx context.Context, session *types... method Get (line 34) | func (r *sessionRepository) Get(ctx context.Context, tenantID uint64, ... method GetByTenantID (line 44) | func (r *sessionRepository) GetByTenantID(ctx context.Context, tenantI... method GetPagedByTenantID (line 54) | func (r *sessionRepository) GetPagedByTenantID( method Update (line 81) | func (r *sessionRepository) Update(ctx context.Context, session *types... method Delete (line 94) | func (r *sessionRepository) Delete(ctx context.Context, tenantID uint6... method BatchDelete (line 99) | func (r *sessionRepository) BatchDelete(ctx context.Context, tenantID ... method DeleteAllByTenantID (line 107) | func (r *sessionRepository) DeleteAllByTenantID(ctx context.Context, t... function NewSessionRepository (line 18) | func NewSessionRepository(db *gorm.DB) interfaces.SessionRepository { FILE: internal/application/repository/tag.go type knowledgeTagRepository (line 13) | type knowledgeTagRepository struct method Create (line 23) | func (r *knowledgeTagRepository) Create(ctx context.Context, tag *type... method Update (line 28) | func (r *knowledgeTagRepository) Update(ctx context.Context, tag *type... method GetByID (line 33) | func (r *knowledgeTagRepository) GetByID(ctx context.Context, tenantID... method GetByIDs (line 44) | func (r *knowledgeTagRepository) GetByIDs(ctx context.Context, tenantI... method GetBySeqID (line 58) | func (r *knowledgeTagRepository) GetBySeqID(ctx context.Context, tenan... method GetBySeqIDs (line 69) | func (r *knowledgeTagRepository) GetBySeqIDs(ctx context.Context, tena... method GetByName (line 83) | func (r *knowledgeTagRepository) GetByName(ctx context.Context, tenant... method ListByKB (line 94) | func (r *knowledgeTagRepository) ListByKB( method Delete (line 136) | func (r *knowledgeTagRepository) Delete(ctx context.Context, tenantID ... method CountReferences (line 143) | func (r *knowledgeTagRepository) CountReferences( method BatchCountReferences (line 171) | func (r *knowledgeTagRepository) BatchCountReferences( method DeleteUnusedTags (line 224) | func (r *knowledgeTagRepository) DeleteUnusedTags(ctx context.Context,... function NewKnowledgeTagRepository (line 18) | func NewKnowledgeTagRepository(db *gorm.DB) interfaces.KnowledgeTagRepos... type tagCountResult (line 165) | type tagCountResult struct FILE: internal/application/repository/tenant.go type tenantRepository (line 20) | type tenantRepository struct method CreateTenant (line 30) | func (r *tenantRepository) CreateTenant(ctx context.Context, tenant *t... method GetTenantByID (line 35) | func (r *tenantRepository) GetTenantByID(ctx context.Context, id uint6... method ListTenants (line 47) | func (r *tenantRepository) ListTenants(ctx context.Context) ([]*types.... method SearchTenants (line 56) | func (r *tenantRepository) SearchTenants(ctx context.Context, keyword ... method UpdateTenant (line 97) | func (r *tenantRepository) UpdateTenant(ctx context.Context, tenant *t... method DeleteTenant (line 102) | func (r *tenantRepository) DeleteTenant(ctx context.Context, id uint64... method AdjustStorageUsed (line 106) | func (r *tenantRepository) AdjustStorageUsed(ctx context.Context, tena... function NewTenantRepository (line 25) | func NewTenantRepository(db *gorm.DB) interfaces.TenantRepository { FILE: internal/application/repository/tenant_disabled_shared_agent.go type tenantDisabledSharedAgentRepository (line 11) | type tenantDisabledSharedAgentRepository struct method ListByTenantID (line 20) | func (r *tenantDisabledSharedAgentRepository) ListByTenantID(ctx conte... method ListDisabledOwnAgentIDs (line 26) | func (r *tenantDisabledSharedAgentRepository) ListDisabledOwnAgentIDs(... method Add (line 34) | func (r *tenantDisabledSharedAgentRepository) Add(ctx context.Context,... method Remove (line 43) | func (r *tenantDisabledSharedAgentRepository) Remove(ctx context.Conte... function NewTenantDisabledSharedAgentRepository (line 16) | func NewTenantDisabledSharedAgentRepository(db *gorm.DB) interfaces.Tena... FILE: internal/application/repository/user.go type userRepository (line 19) | type userRepository struct method CreateUser (line 29) | func (r *userRepository) CreateUser(ctx context.Context, user *types.U... method GetUserByID (line 34) | func (r *userRepository) GetUserByID(ctx context.Context, id string) (... method GetUserByEmail (line 46) | func (r *userRepository) GetUserByEmail(ctx context.Context, email str... method GetUserByUsername (line 58) | func (r *userRepository) GetUserByUsername(ctx context.Context, userna... method GetUserByTenantID (line 70) | func (r *userRepository) GetUserByTenantID(ctx context.Context, tenant... method UpdateUser (line 82) | func (r *userRepository) UpdateUser(ctx context.Context, user *types.U... method DeleteUser (line 87) | func (r *userRepository) DeleteUser(ctx context.Context, id string) er... method ListUsers (line 92) | func (r *userRepository) ListUsers(ctx context.Context, offset, limit ... method SearchUsers (line 111) | func (r *userRepository) SearchUsers(ctx context.Context, query string... function NewUserRepository (line 24) | func NewUserRepository(db *gorm.DB) interfaces.UserRepository { type authTokenRepository (line 133) | type authTokenRepository struct method CreateToken (line 143) | func (r *authTokenRepository) CreateToken(ctx context.Context, token *... method GetTokenByValue (line 148) | func (r *authTokenRepository) GetTokenByValue(ctx context.Context, tok... method GetTokensByUserID (line 160) | func (r *authTokenRepository) GetTokensByUserID(ctx context.Context, u... method UpdateToken (line 169) | func (r *authTokenRepository) UpdateToken(ctx context.Context, token *... method DeleteToken (line 174) | func (r *authTokenRepository) DeleteToken(ctx context.Context, id stri... method DeleteExpiredTokens (line 179) | func (r *authTokenRepository) DeleteExpiredTokens(ctx context.Context)... method RevokeTokensByUserID (line 184) | func (r *authTokenRepository) RevokeTokensByUserID(ctx context.Context... function NewAuthTokenRepository (line 138) | func NewAuthTokenRepository(db *gorm.DB) interfaces.AuthTokenRepository { FILE: internal/application/service/agent_service.go constant MAX_ITERATIONS (line 26) | MAX_ITERATIONS = 100 type agentService (line 29) | type agentService struct method CreateAgentEngine (line 79) | func (s *agentService) CreateAgentEngine( method initializeSkillsManager (line 223) | func (s *agentService) initializeSkillsManager( method registerTools (line 298) | func (s *agentService) registerTools( method ValidateConfig (line 427) | func (s *agentService) ValidateConfig(config *types.AgentConfig) error { method getKnowledgeBaseInfos (line 444) | func (s *agentService) getKnowledgeBaseInfos(ctx context.Context, kbID... method getSelectedDocumentInfos (line 551) | func (s *agentService) getSelectedDocumentInfos(ctx context.Context, k... function NewAgentService (line 46) | func NewAgentService( FILE: internal/application/service/agent_share.go type agentShareService (line 26) | type agentShareService struct method ShareAgent (line 52) | func (s *agentShareService) ShareAgent(ctx context.Context, agentID st... method RemoveShare (line 126) | func (s *agentShareService) RemoveShare(ctx context.Context, shareID s... method ListSharesByAgent (line 145) | func (s *agentShareService) ListSharesByAgent(ctx context.Context, age... method ListSharesByOrganization (line 150) | func (s *agentShareService) ListSharesByOrganization(ctx context.Conte... method ListSharedAgents (line 155) | func (s *agentShareService) ListSharedAgents(ctx context.Context, user... method ListSharedAgentsInOrganization (line 228) | func (s *agentShareService) ListSharedAgentsInOrganization(ctx context... method ListSharedAgentsInOrganizations (line 298) | func (s *agentShareService) ListSharedAgentsInOrganizations(ctx contex... method CountByOrganizations (line 368) | func (s *agentShareService) CountByOrganizations(ctx context.Context, ... method SetSharedAgentDisabledByMe (line 373) | func (s *agentShareService) SetSharedAgentDisabledByMe(ctx context.Con... method GetSharedAgentForUser (line 381) | func (s *agentShareService) GetSharedAgentForUser(ctx context.Context,... method UserCanAccessKBViaSomeSharedAgent (line 403) | func (s *agentShareService) UserCanAccessKBViaSomeSharedAgent(ctx cont... method GetShare (line 438) | func (s *agentShareService) GetShare(ctx context.Context, shareID stri... method GetShareByAgentAndOrg (line 450) | func (s *agentShareService) GetShareByAgentAndOrg(ctx context.Context,... method GetShareByAgentIDForUser (line 462) | func (s *agentShareService) GetShareByAgentIDForUser(ctx context.Conte... function NewAgentShareService (line 35) | func NewAgentShareService( FILE: internal/application/service/chat_pipline/chat_completion.go type PluginChatCompletion (line 12) | type PluginChatCompletion struct method ActivationEvents (line 27) | func (p *PluginChatCompletion) ActivationEvents() []types.EventType { method OnEvent (line 33) | func (p *PluginChatCompletion) OnEvent( function NewPluginChatCompletion (line 18) | func NewPluginChatCompletion(eventManager *EventManager, modelService in... FILE: internal/application/service/chat_pipline/chat_completion_stream.go type PluginChatCompletionStream (line 17) | type PluginChatCompletionStream struct method ActivationEvents (line 34) | func (p *PluginChatCompletionStream) ActivationEvents() []types.EventT... method OnEvent (line 40) | func (p *PluginChatCompletionStream) OnEvent(ctx context.Context, function NewPluginChatCompletionStream (line 23) | func NewPluginChatCompletionStream(eventManager *EventManager, FILE: internal/application/service/chat_pipline/chat_pipline.go type Plugin (line 11) | type Plugin interface type EventManager (line 24) | type EventManager struct method Register (line 40) | func (e *EventManager) Register(plugin Plugin) { method buildHandler (line 54) | func (e *EventManager) buildHandler(plugins []Plugin) func( method Trigger (line 71) | func (e *EventManager) Trigger(ctx context.Context, function NewEventManager (line 32) | func NewEventManager() *EventManager { type PluginError (line 81) | type PluginError struct method clone (line 128) | func (p *PluginError) clone() *PluginError { method WithError (line 136) | func (p *PluginError) WithError(err error) *PluginError { FILE: internal/application/service/chat_pipline/chat_pipline_test.go type testPlugin (line 12) | type testPlugin struct method OnEvent (line 19) | func (p *testPlugin) OnEvent(ctx context.Context, method ActivationEvents (line 31) | func (p *testPlugin) ActivationEvents() []types.EventType { function TestTrigger (line 35) | func TestTrigger(t *testing.T) { FILE: internal/application/service/chat_pipline/common.go function pipelineInfo (line 15) | func pipelineInfo(ctx context.Context, stage, action string, fields map[... function pipelineWarn (line 20) | func pipelineWarn(ctx context.Context, stage, action string, fields map[... function pipelineError (line 25) | func pipelineError(ctx context.Context, stage, action string, fields map... function prepareChatModel (line 31) | func prepareChatModel(ctx context.Context, modelService interfaces.Model... function prepareMessagesWithHistory (line 55) | func prepareMessagesWithHistory(chatManage *types.ChatManage) []chat.Mes... function extractImageCaptions (line 83) | func extractImageCaptions(images types.MessageImages) string { function renderSystemPromptPlaceholders (line 97) | func renderSystemPromptPlaceholders(prompt string, language ...string) s... FILE: internal/application/service/chat_pipline/data_analysis.go type PluginDataAnalysis (line 19) | type PluginDataAnalysis struct method ActivationEvents (line 46) | func (p *PluginDataAnalysis) ActivationEvents() []types.EventType { method OnEvent (line 50) | func (p *PluginDataAnalysis) OnEvent( function NewPluginDataAnalysis (line 27) | func NewPluginDataAnalysis( function isDataFile (line 150) | func isDataFile(filename string) bool { function filterOutTableChunks (line 156) | func filterOutTableChunks(results []*types.SearchResult) []*types.Search... FILE: internal/application/service/chat_pipline/extract_entity.go type PluginExtractEntity (line 21) | type PluginExtractEntity struct method ActivationEvents (line 52) | func (p *PluginExtractEntity) ActivationEvents() []types.EventType { method OnEvent (line 58) | func (p *PluginExtractEntity) OnEvent(ctx context.Context, function NewPluginExtractEntity (line 31) | func NewPluginExtractEntity( type Extractor (line 156) | type Extractor struct method Extract (line 182) | func (e *Extractor) Extract(ctx context.Context, content string) (*typ... method RemoveUnknownRelation (line 204) | func (e *Extractor) RemoveUnknownRelation(ctx context.Context, graph *... function NewExtractor (line 164) | func NewExtractor( type QAPromptGenerator (line 222) | type QAPromptGenerator struct method System (line 244) | func (qa *QAPromptGenerator) System(ctx context.Context) string { method User (line 274) | func (qa *QAPromptGenerator) User(ctx context.Context, question string... method Render (line 283) | func (qa *QAPromptGenerator) Render(ctx context.Context, question stri... function NewQAPromptGenerator (line 232) | func NewQAPromptGenerator(formater *Formater, template *types.PromptTemp... type FormatType (line 297) | type FormatType constant FormatTypeJSON (line 301) | FormatTypeJSON FormatType = "json" constant FormatTypeYAML (line 303) | FormatTypeYAML FormatType = "yaml" constant _FENCE_START (line 307) | _FENCE_START = "```" constant _LANGUAGE_TAG (line 308) | _LANGUAGE_TAG = `(?P[A-Za-z0-9_+-]+)?` constant _FENCE_NEWLINE (line 309) | _FENCE_NEWLINE = `(?:\s*\n)?` constant _FENCE_BODY (line 310) | _FENCE_BODY = `(?P[\s\S]*?)` constant _FENCE_END (line 311) | _FENCE_END = "```" type Formater (line 319) | type Formater struct method formatExtraction (line 344) | func (f *Formater) formatExtraction(nodes []*types.GraphNode, relation... method parseOutput (line 378) | func (f *Formater) parseOutput(ctx context.Context, text string) ([]ma... method ParseGraph (line 420) | func (f *Formater) ParseGraph(ctx context.Context, text string) (*type... method rebuildGraph (line 468) | func (f *Formater) rebuildGraph(ctx context.Context, graph *types.Grap... method extractContent (line 515) | func (f *Formater) extractContent(ctx context.Context, text string) st... method addFences (line 554) | func (f *Formater) addFences(content string) string { method isValidLanguageTag (line 559) | func (f *Formater) isValidLanguageTag(lang string, validTags map[Forma... function NewFormater (line 331) | func NewFormater() *Formater { FILE: internal/application/service/chat_pipline/filter_top_k.go type PluginFilterTopK (line 10) | type PluginFilterTopK struct method ActivationEvents (line 20) | func (p *PluginFilterTopK) ActivationEvents() []types.EventType { method OnEvent (line 26) | func (p *PluginFilterTopK) OnEvent(ctx context.Context, function NewPluginFilterTopK (line 13) | func NewPluginFilterTopK(eventManager *EventManager) *PluginFilterTopK { FILE: internal/application/service/chat_pipline/into_chat_message.go type PluginIntoChatMessage (line 15) | type PluginIntoChatMessage struct method ActivationEvents (line 25) | func (p *PluginIntoChatMessage) ActivationEvents() []types.EventType { method OnEvent (line 30) | func (p *PluginIntoChatMessage) OnEvent(ctx context.Context, function NewPluginIntoChatMessage (line 18) | func NewPluginIntoChatMessage(eventManager *EventManager) *PluginIntoCha... function getEnrichedPassageForChat (line 165) | func getEnrichedPassageForChat(ctx context.Context, result *types.Search... function enrichContentWithImageInfo (line 184) | func enrichContentWithImageInfo(ctx context.Context, content string, ima... FILE: internal/application/service/chat_pipline/load_history.go type PluginLoadHistory (line 17) | type PluginLoadHistory struct method ActivationEvents (line 41) | func (p *PluginLoadHistory) ActivationEvents() []types.EventType { method OnEvent (line 47) | func (p *PluginLoadHistory) OnEvent(ctx context.Context, function NewPluginLoadHistory (line 27) | func NewPluginLoadHistory(eventManager *EventManager, FILE: internal/application/service/chat_pipline/memory.go type MemoryPlugin (line 13) | type MemoryPlugin struct method ActivationEvents (line 25) | func (p *MemoryPlugin) ActivationEvents() []types.EventType { method OnEvent (line 32) | func (p *MemoryPlugin) OnEvent( method handleRetrieval (line 48) | func (p *MemoryPlugin) handleRetrieval( method handleStorage (line 86) | func (p *MemoryPlugin) handleStorage( function NewMemoryPlugin (line 17) | func NewMemoryPlugin(eventManager *EventManager, memoryService interface... FILE: internal/application/service/chat_pipline/merge.go type PluginMerge (line 13) | type PluginMerge struct method ActivationEvents (line 29) | func (p *PluginMerge) ActivationEvents() []types.EventType { method OnEvent (line 43) | func (p *PluginMerge) OnEvent(ctx context.Context, method selectInputResults (line 93) | func (p *PluginMerge) selectInputResults(ctx context.Context, chatMana... method dedup (line 108) | func (p *PluginMerge) dedup(ctx context.Context, label string, results... method injectHistoryResults (line 122) | func (p *PluginMerge) injectHistoryResults( method groupAndMergeOverlapping (line 141) | func (p *PluginMerge) groupAndMergeOverlapping(ctx context.Context, re... method resolveParentChunks (line 193) | func (p *PluginMerge) resolveParentChunks( method collectParentImageInfo (line 282) | func (p *PluginMerge) collectParentImageInfo( function NewPluginMerge (line 19) | func NewPluginMerge(eventManager *EventManager, chunkRepo interfaces.Chu... FILE: internal/application/service/chat_pipline/merge_expand.go method expandShortContextWithNeighbors (line 10) | func (p *PluginMerge) expandShortContextWithNeighbors( function runeLen (line 255) | func runeLen(s string) int { function mergeOrderedContent (line 260) | func mergeOrderedContent(prev, base, next string, maxLen int) string { function concatNoOverlap (line 276) | func concatNoOverlap(a, b string) string { function minInt (line 295) | func minInt(a, b int) int { function containsID (line 302) | func containsID(ids []string, target string) bool { method fetchChunksIfMissing (line 311) | func (p *PluginMerge) fetchChunksIfMissing( FILE: internal/application/service/chat_pipline/merge_faq.go method populateFAQAnswers (line 11) | func (p *PluginMerge) populateFAQAnswers( function buildFAQAnswerContent (line 100) | func buildFAQAnswerContent(meta *types.FAQChunkMetadata) string { FILE: internal/application/service/chat_pipline/merge_history.go function filterHistoryResults (line 17) | func filterHistoryResults( FILE: internal/application/service/chat_pipline/merge_overlap.go method mergeOverlappingChunks (line 14) | func (p *PluginMerge) mergeOverlappingChunks( function mergeImageInfo (line 75) | func mergeImageInfo(ctx context.Context, target *types.SearchResult, sou... FILE: internal/application/service/chat_pipline/query_expansion.go method runQueryExpansion (line 15) | func (p *PluginSearch) runQueryExpansion(ctx context.Context, chatManage... method expandQueries (line 104) | func (p *PluginSearch) expandQueries(ctx context.Context, chatManage *ty... function extractKeywords (line 183) | func extractKeywords(text string) []string { function extractPhrases (line 195) | func extractPhrases(text string) []string { function splitByDelimiters (line 208) | func splitByDelimiters(text string) []string { function removeQuestionWords (line 222) | func removeQuestionWords(text string) string { function tokenize (line 226) | func tokenize(text string) []string { FILE: internal/application/service/chat_pipline/rerank.go type PluginRerank (line 18) | type PluginRerank struct method ActivationEvents (line 32) | func (p *PluginRerank) ActivationEvents() []types.EventType { method OnEvent (line 37) | func (p *PluginRerank) OnEvent(ctx context.Context, method rerank (line 197) | func (p *PluginRerank) rerank(ctx context.Context, function NewPluginRerank (line 23) | func NewPluginRerank(eventManager *EventManager, modelService interfaces... function ensureMetadata (line 274) | func ensureMetadata(m map[string]string) map[string]string { function safeTopScore (line 281) | func safeTopScore(results []rerank.RankResult) float64 { function compositeScore (line 289) | func compositeScore(sr *types.SearchResult, modelScore, baseScore float6... function applyMMR (line 313) | func applyMMR( function cleanPassageForRerank (line 446) | func cleanPassageForRerank(text string) string { function getEnrichedPassage (line 481) | func getEnrichedPassage(ctx context.Context, result *types.SearchResult)... function logRerankInputScoreSample (line 532) | func logRerankInputScoreSample(ctx context.Context, results []*types.Sea... FILE: internal/application/service/chat_pipline/rerank_clean_test.go function TestCleanPassageForRerank (line 7) | func TestCleanPassageForRerank(t *testing.T) { FILE: internal/application/service/chat_pipline/rewrite.go type PluginRewrite (line 24) | type PluginRewrite struct method ActivationEvents (line 61) | func (p *PluginRewrite) ActivationEvents() []types.EventType { method OnEvent (line 70) | func (p *PluginRewrite) OnEvent(ctx context.Context, method updateUserMessageImageCaption (line 212) | func (p *PluginRewrite) updateUserMessageImageCaption(ctx context.Cont... method loadHistory (line 241) | func (p *PluginRewrite) loadHistory(ctx context.Context, chatManage *t... method selectModel (line 304) | func (p *PluginRewrite) selectModel(ctx context.Context, chatManage *t... method buildPrompts (line 346) | func (p *PluginRewrite) buildPrompts(chatManage *types.ChatManage, his... method parseRewriteOutput (line 377) | func (p *PluginRewrite) parseRewriteOutput(chatManage *types.ChatManag... constant noSearchPrefix (line 35) | noSearchPrefix = "[NO_SEARCH]" type rewriteOutput (line 38) | type rewriteOutput struct function NewPluginRewrite (line 46) | func NewPluginRewrite(eventManager *EventManager, function parseStructuredRewriteOutput (line 408) | func parseStructuredRewriteOutput(raw string) (rewriteOutput, bool) { function parseStructuredRewriteOutputJSON (line 432) | func parseStructuredRewriteOutputJSON(content string) (rewriteOutput, bo... function firstStringField (line 462) | func firstStringField(obj map[string]json.RawMessage, keys ...string) st... function firstBoolField (line 477) | func firstBoolField(obj map[string]json.RawMessage, keys ...string) (boo... function parseBoolJSON (line 490) | func parseBoolJSON(raw json.RawMessage) (bool, bool) { function mergeImageDescAndOCR (line 514) | func mergeImageDescAndOCR(desc, ocr string) (string, bool) { function formatConversationHistory (line 531) | func formatConversationHistory(historyList []*types.History) string { FILE: internal/application/service/chat_pipline/search.go type PluginSearch (line 17) | type PluginSearch struct method ActivationEvents (line 53) | func (p *PluginSearch) ActivationEvents() []types.EventType { method OnEvent (line 58) | func (p *PluginSearch) OnEvent(ctx context.Context, method searchByTargets (line 217) | func (p *PluginSearch) searchByTargets( method searchSingleTarget (line 365) | func (p *PluginSearch) searchSingleTarget( method tryDirectChunkLoading (line 436) | func (p *PluginSearch) tryDirectChunkLoading(ctx context.Context, tena... method searchWebIfEnabled (line 522) | func (p *PluginSearch) searchWebIfEnabled(ctx context.Context, chatMan... function NewPluginSearch (line 28) | func NewPluginSearch(eventManager *EventManager, function getSearchResultFromHistory (line 144) | func getSearchResultFromHistory(chatManage *types.ChatManage) []*types.S... function removeDuplicateResults (line 161) | func removeDuplicateResults(results []*types.SearchResult) []*types.Sear... function buildContentSignature (line 187) | func buildContentSignature(content string) string { function logSearchScoreSample (line 191) | func logSearchScoreSample(ctx context.Context, action string, results []... FILE: internal/application/service/chat_pipline/search_entity.go type PluginSearchEntity (line 13) | type PluginSearchEntity struct method ActivationEvents (line 36) | func (p *PluginSearchEntity) ActivationEvents() []types.EventType { method OnEvent (line 41) | func (p *PluginSearchEntity) OnEvent(ctx context.Context, function NewPluginSearchEntity (line 20) | func NewPluginSearchEntity( function filterSeenChunk (line 184) | func filterSeenChunk(ctx context.Context, graph *types.GraphData, search... function chunk2SearchResult (line 206) | func chunk2SearchResult(chunk *types.Chunk, knowledge *types.Knowledge) ... FILE: internal/application/service/chat_pipline/search_parallel.go type PluginSearchParallel (line 14) | type PluginSearchParallel struct method ActivationEvents (line 84) | func (p *PluginSearchParallel) ActivationEvents() []types.EventType { method OnEvent (line 89) | func (p *PluginSearchParallel) OnEvent(ctx context.Context, function NewPluginSearchParallel (line 34) | func NewPluginSearchParallel( FILE: internal/application/service/chat_pipline/stream_filter.go type PluginStreamFilter (line 15) | type PluginStreamFilter struct method ActivationEvents (line 25) | func (p *PluginStreamFilter) ActivationEvents() []types.EventType { method OnEvent (line 30) | func (p *PluginStreamFilter) OnEvent(ctx context.Context, method filterEventsWithPrefix (line 67) | func (p *PluginStreamFilter) filterEventsWithPrefix( function NewPluginStreamFilter (line 18) | func NewPluginStreamFilter(eventManager *EventManager) *PluginStreamFilt... FILE: internal/application/service/chat_pipline/tracing.go type PluginTracing (line 17) | type PluginTracing struct method ActivationEvents (line 27) | func (p *PluginTracing) ActivationEvents() []types.EventType { method OnEvent (line 52) | func (p *PluginTracing) OnEvent(ctx context.Context, method Search (line 79) | func (p *PluginTracing) Search(ctx context.Context, method Rerank (line 104) | func (p *PluginTracing) Rerank(ctx context.Context, method Merge (line 126) | func (p *PluginTracing) Merge(ctx context.Context, method IntoChatMessage (line 145) | func (p *PluginTracing) IntoChatMessage(ctx context.Context, method ChatCompletion (line 161) | func (p *PluginTracing) ChatCompletion(ctx context.Context, method ChatCompletionStream (line 183) | func (p *PluginTracing) ChatCompletionStream(ctx context.Context, method FilterTopK (line 232) | func (p *PluginTracing) FilterTopK(ctx context.Context, method RewriteQuery (line 252) | func (p *PluginTracing) RewriteQuery(ctx context.Context, method SearchParallel (line 268) | func (p *PluginTracing) SearchParallel(ctx context.Context, function NewPluginTracing (line 20) | func NewPluginTracing(eventManager *EventManager) *PluginTracing { FILE: internal/application/service/chunk.go type chunkService (line 19) | type chunkService struct method GetRepository (line 53) | func (s *chunkService) GetRepository() interfaces.ChunkRepository { method CreateChunks (line 65) | func (s *chunkService) CreateChunks(ctx context.Context, chunks []*typ... method GetChunkByID (line 88) | func (s *chunkService) GetChunkByID(ctx context.Context, id string) (*... method GetChunkByIDOnly (line 104) | func (s *chunkService) GetChunkByIDOnly(ctx context.Context, id string... method ListChunksByKnowledgeID (line 125) | func (s *chunkService) ListChunksByKnowledgeID(ctx context.Context, kn... method ListPagedChunksByKnowledgeID (line 155) | func (s *chunkService) ListPagedChunksByKnowledgeID(ctx context.Context, method UpdateChunk (line 193) | func (s *chunkService) UpdateChunk(ctx context.Context, chunk *types.C... method UpdateChunks (line 211) | func (s *chunkService) UpdateChunks(ctx context.Context, chunks []*typ... method DeleteChunk (line 238) | func (s *chunkService) DeleteChunk(ctx context.Context, id string) err... method DeleteChunks (line 259) | func (s *chunkService) DeleteChunks(ctx context.Context, ids []string)... method DeleteChunksByKnowledgeID (line 290) | func (s *chunkService) DeleteChunksByKnowledgeID(ctx context.Context, ... method DeleteByKnowledgeList (line 310) | func (s *chunkService) DeleteByKnowledgeList(ctx context.Context, ids ... method ListChunkByParentID (line 330) | func (s *chunkService) ListChunkByParentID( method DeleteGeneratedQuestion (line 353) | func (s *chunkService) DeleteGeneratedQuestion(ctx context.Context, ch... function NewChunkService (line 33) | func NewChunkService( FILE: internal/application/service/custom_agent.go type customAgentService (line 25) | type customAgentService struct method CreateAgent (line 37) | func (s *customAgentService) CreateAgent(ctx context.Context, agent *t... method GetAgentByID (line 86) | func (s *customAgentService) GetAgentByID(ctx context.Context, id stri... method GetAgentByIDAndTenant (line 128) | func (s *customAgentService) GetAgentByIDAndTenant(ctx context.Context... method ListAgents (line 144) | func (s *customAgentService) ListAgents(ctx context.Context) ([]*types... method UpdateAgent (line 200) | func (s *customAgentService) UpdateAgent(ctx context.Context, agent *t... method updateBuiltinAgent (line 260) | func (s *customAgentService) updateBuiltinAgent(ctx context.Context, a... method DeleteAgent (line 321) | func (s *customAgentService) DeleteAgent(ctx context.Context, id strin... method CopyAgent (line 366) | func (s *customAgentService) CopyAgent(ctx context.Context, id string)... function NewCustomAgentService (line 30) | func NewCustomAgentService(repo interfaces.CustomAgentRepository) interf... FILE: internal/application/service/dataset.go type DatasetService (line 15) | type DatasetService struct method GetDatasetByID (line 41) | func (d *DatasetService) GetDatasetByID(ctx context.Context, datasetID... function NewDatasetService (line 18) | func NewDatasetService() interfaces.DatasetService { type TextInfo (line 23) | type TextInfo struct type RelsInfo (line 29) | type RelsInfo struct type QaInfo (line 35) | type QaInfo struct function DefaultDataset (line 54) | func DefaultDataset() dataset { type dataset (line 103) | type dataset struct method Iterate (line 112) | func (d *dataset) Iterate() []*types.QAPair { method GetContextForQID (line 148) | func (d *dataset) GetContextForQID(qid int64) ([]string, error) { method PrintStats (line 165) | func (d *dataset) PrintStats(ctx context.Context) { method PrintRandomQA (line 186) | func (d *dataset) PrintRandomQA() error { function loadParquet (line 237) | func loadParquet[T any](filePath string) ([]T, error) { FILE: internal/application/service/evaluation.go type EvaluationService (line 28) | type EvaluationService struct method EvaluationResult (line 102) | func (e *EvaluationService) EvaluationResult(ctx context.Context, task... method Evaluation (line 133) | func (e *EvaluationService) Evaluation(ctx context.Context, method EvalDataset (line 331) | func (e *EvaluationService) EvalDataset(ctx context.Context, detail *t... function NewEvaluationService (line 39) | func NewEvaluationService( type evaluationMemoryStorage (line 60) | type evaluationMemoryStorage struct method register (line 73) | func (e *evaluationMemoryStorage) register(params *types.EvaluationDet... method get (line 80) | func (e *evaluationMemoryStorage) get(taskID string) (*types.Evaluatio... method update (line 91) | func (e *evaluationMemoryStorage) update(taskID string, fn func(params... function newEvaluationMemoryStorage (line 65) | func newEvaluationMemoryStorage() *evaluationMemoryStorage { function getPassageList (line 458) | func getPassageList(dataset []*types.QAPair) []string { FILE: internal/application/service/extract.go constant tableDescriptionPromptTemplate (line 27) | tableDescriptionPromptTemplate = `You are a data analysis expert. Based ... constant columnDescriptionsPromptTemplate (line 49) | columnDescriptionsPromptTemplate = `You are a data analysis expert. Base... function NewChunkExtractTask (line 83) | func NewChunkExtractTask( function NewDataTableSummaryTask (line 113) | func NewDataTableSummaryTask( type ChunkExtractService (line 142) | type ChunkExtractService struct method Handle (line 172) | func (s *ChunkExtractService) Handle(ctx context.Context, t *asynq.Tas... function NewChunkExtractService (line 151) | func NewChunkExtractService( type DataTableSummaryPayload (line 240) | type DataTableSummaryPayload struct type DataTableSummaryService (line 248) | type DataTableSummaryService struct method Handle (line 281) | func (s *DataTableSummaryService) Handle(ctx context.Context, t *asynq... method prepareResources (line 328) | func (s *DataTableSummaryService) prepareResources(ctx context.Context... method resolveFileServiceForKnowledge (line 382) | func (s *DataTableSummaryService) resolveFileServiceForKnowledge(ctx c... method processTableData (line 414) | func (s *DataTableSummaryService) processTableData(ctx context.Context... method buildChunks (line 472) | func (s *DataTableSummaryService) buildChunks(resources *extractionRes... method indexToVectorDB (line 512) | func (s *DataTableSummaryService) indexToVectorDB( method cleanupOnFailure (line 559) | func (s *DataTableSummaryService) cleanupOnFailure(ctx context.Context... method generateTableDescription (line 601) | func (s *DataTableSummaryService) generateTableDescription(ctx context... method generateColumnDescriptions (line 621) | func (s *DataTableSummaryService) generateColumnDescriptions(ctx conte... method buildSampleDataDescription (line 643) | func (s *DataTableSummaryService) buildSampleDataDescription(sampleDat... function NewDataTableSummaryService (line 259) | func NewDataTableSummaryService( type extractionResources (line 318) | type extractionResources struct FILE: internal/application/service/file/cos.go type cosFileService (line 23) | type cosFileService struct method CheckConnectivity (line 88) | func (s *cosFileService) CheckConnectivity(ctx context.Context) error { method SaveFile (line 107) | func (s *cosFileService) SaveFile(ctx context.Context, method GetFile (line 125) | func (s *cosFileService) GetFile(ctx context.Context, filePathUrl stri... method DeleteFile (line 138) | func (s *cosFileService) DeleteFile(ctx context.Context, filePath stri... method parseCosObjectName (line 153) | func (s *cosFileService) parseCosObjectName(filePath string) string { method SaveBytes (line 170) | func (s *cosFileService) SaveBytes(ctx context.Context, data []byte, t... method GetFileURL (line 200) | func (s *cosFileService) GetFileURL(ctx context.Context, filePath stri... constant cosScheme (line 33) | cosScheme = "cos://" function newCosClient (line 37) | func newCosClient(bucketName, region, secretID, secretKey string) (*cosF... function NewCosFileService (line 54) | func NewCosFileService(bucketName, region, secretId, secretKey, cosPathP... function NewCosFileServiceWithTempBucket (line 59) | func NewCosFileServiceWithTempBucket(bucketName, region, secretId, secre... function CheckCosConnectivity (line 97) | func CheckCosConnectivity(ctx context.Context, bucketName, region, secre... FILE: internal/application/service/file/dummy.go type DummyFileService (line 15) | type DummyFileService struct method CheckConnectivity (line 18) | func (s *DummyFileService) CheckConnectivity(ctx context.Context) error { method SaveFile (line 29) | func (s *DummyFileService) SaveFile(ctx context.Context, method GetFile (line 36) | func (s *DummyFileService) GetFile(ctx context.Context, filePath strin... method DeleteFile (line 41) | func (s *DummyFileService) DeleteFile(ctx context.Context, filePath st... method SaveBytes (line 46) | func (s *DummyFileService) SaveBytes(ctx context.Context, data []byte,... method GetFileURL (line 51) | func (s *DummyFileService) GetFileURL(ctx context.Context, filePath st... function NewDummyFileService (line 23) | func NewDummyFileService() interfaces.FileService { FILE: internal/application/service/file/factory.go function NewFileServiceFromStorageConfig (line 17) | func NewFileServiceFromStorageConfig( FILE: internal/application/service/file/local.go type localFileService (line 19) | type localFileService struct method CheckConnectivity (line 26) | func (s *localFileService) CheckConnectivity(ctx context.Context) error { method SaveFile (line 47) | func (s *localFileService) SaveFile(ctx context.Context, method GetFile (line 107) | func (s *localFileService) GetFile(ctx context.Context, filePath strin... method DeleteFile (line 130) | func (s *localFileService) DeleteFile(ctx context.Context, filePath st... method SaveBytes (line 153) | func (s *localFileService) SaveBytes(ctx context.Context, data []byte,... method GetFileURL (line 188) | func (s *localFileService) GetFileURL(ctx context.Context, filePath st... method normalizePathForBase (line 206) | func (s *localFileService) normalizePathForBase(filePath string) string { constant localScheme (line 23) | localScheme = "local://" function NewLocalFileService (line 38) | func NewLocalFileService(baseDir string) interfaces.FileService { FILE: internal/application/service/file/minio.go type minioFileService (line 21) | type minioFileService struct method CheckConnectivity (line 65) | func (s *minioFileService) CheckConnectivity(ctx context.Context) error { method parseMinioFilePath (line 94) | func (s *minioFileService) parseMinioFilePath(filePath string) (string... method SaveFile (line 115) | func (s *minioFileService) SaveFile(ctx context.Context, method GetFile (line 141) | func (s *minioFileService) GetFile(ctx context.Context, filePath strin... method DeleteFile (line 154) | func (s *minioFileService) DeleteFile(ctx context.Context, filePath st... method SaveBytes (line 169) | func (s *minioFileService) SaveBytes(ctx context.Context, data []byte,... method GetFileURL (line 190) | func (s *minioFileService) GetFileURL(ctx context.Context, filePath st... function newMinioClient (line 29) | func newMinioClient(endpoint, accessKeyID, secretAccessKey, bucketName s... function NewMinioFileService (line 42) | func NewMinioFileService(endpoint, function CheckMinioConnectivity (line 85) | func CheckMinioConnectivity(ctx context.Context, endpoint, accessKeyID, ... FILE: internal/application/service/file/s3.go type s3FileService (line 25) | type s3FileService struct method bucketExists (line 94) | func (s *s3FileService) bucketExists(ctx context.Context) (bool, error) { method createBucket (line 110) | func (s *s3FileService) createBucket(ctx context.Context) error { method CheckConnectivity (line 119) | func (s *s3FileService) CheckConnectivity(ctx context.Context) error { method parseS3FilePath (line 150) | func (s *s3FileService) parseS3FilePath(filePath string) (string, erro... method SaveFile (line 215) | func (s *s3FileService) SaveFile(ctx context.Context, method GetFile (line 251) | func (s *s3FileService) GetFile(ctx context.Context, filePath string) ... method DeleteFile (line 269) | func (s *s3FileService) DeleteFile(ctx context.Context, filePath strin... method SaveBytes (line 288) | func (s *s3FileService) SaveBytes(ctx context.Context, data []byte, te... method GetFileURL (line 313) | func (s *s3FileService) GetFileURL(ctx context.Context, filePath strin... function newS3Client (line 32) | func newS3Client(endpoint, accessKey, secretKey, bucketName, region, pat... function NewS3FileService (line 70) | func NewS3FileService(endpoint, function CheckS3Connectivity (line 141) | func CheckS3Connectivity(ctx context.Context, endpoint, accessKey, secre... function getContentTypeByExt (line 171) | func getContentTypeByExt(ext string) string { FILE: internal/application/service/file/tos.go type tosFileService (line 22) | type tosFileService struct method CheckConnectivity (line 78) | func (s *tosFileService) CheckConnectivity(ctx context.Context) error { method SaveFile (line 154) | func (s *tosFileService) SaveFile(ctx context.Context, file *multipart... method SaveBytes (line 184) | func (s *tosFileService) SaveBytes(ctx context.Context, data []byte, t... method GetFile (line 224) | func (s *tosFileService) GetFile(ctx context.Context, filePath string)... method DeleteFile (line 243) | func (s *tosFileService) DeleteFile(ctx context.Context, filePath stri... method GetFileURL (line 262) | func (s *tosFileService) GetFileURL(ctx context.Context, filePath stri... constant tosScheme (line 29) | tosScheme = "tos://" function NewTosFileService (line 32) | func NewTosFileService(endpoint, region, accessKey, secretKey, bucketNam... function NewTosFileServiceWithTempBucket (line 37) | func NewTosFileServiceWithTempBucket(endpoint, region, accessKey, secret... function CheckTosConnectivity (line 88) | func CheckTosConnectivity(ctx context.Context, endpoint, region, accessK... function ensureTOSBucket (line 105) | func ensureTOSBucket(client *tos.ClientV2, bucketName string) error { function joinTOSObjectKey (line 130) | func joinTOSObjectKey(parts ...string) string { function parseTOSFilePath (line 141) | func parseTOSFilePath(filePath string) (bucketName string, objectKey str... FILE: internal/application/service/graph.go constant DefaultLLMTemperature (line 25) | DefaultLLMTemperature = 0.1 constant PMIWeight (line 28) | PMIWeight = 0.6 constant StrengthWeight (line 31) | StrengthWeight = 0.4 constant IndirectRelationWeightDecay (line 34) | IndirectRelationWeightDecay = 0.5 constant MaxConcurrentEntityExtractions (line 37) | MaxConcurrentEntityExtractions = 4 constant MaxConcurrentRelationExtractions (line 40) | MaxConcurrentRelationExtractions = 4 constant DefaultRelationBatchSize (line 43) | DefaultRelationBatchSize = 5 constant MinEntitiesForRelation (line 46) | MinEntitiesForRelation = 2 constant MinWeightValue (line 49) | MinWeightValue = 1.0 constant WeightScaleFactor (line 52) | WeightScaleFactor = 9.0 type ChunkRelation (line 56) | type ChunkRelation struct type graphBuilder (line 65) | type graphBuilder struct method extractEntities (line 90) | func (b *graphBuilder) extractEntities(ctx context.Context, chunk *typ... method extractRelationships (line 185) | func (b *graphBuilder) extractRelationships(ctx context.Context, method findRelationChunkIDs (line 310) | func (b *graphBuilder) findRelationChunkIDs(source, target string, ent... method mergeChunkContents (line 339) | func (b *graphBuilder) mergeChunkContents(chunks []*types.Chunk) string { method BuildGraph (line 367) | func (b *graphBuilder) BuildGraph(ctx context.Context, chunks []*types... method calculateWeights (line 493) | func (b *graphBuilder) calculateWeights(ctx context.Context) { method calculateDegrees (line 585) | func (b *graphBuilder) calculateDegrees(ctx context.Context) { method buildChunkGraph (line 624) | func (b *graphBuilder) buildChunkGraph(ctx context.Context) { method GetAllEntities (line 668) | func (b *graphBuilder) GetAllEntities() []*types.Entity { method GetAllRelationships (line 680) | func (b *graphBuilder) GetAllRelationships() []*types.Relationship { method GetRelationChunks (line 693) | func (b *graphBuilder) GetRelationChunks(chunkID string, topK int) []s... method GetIndirectRelationChunks (line 758) | func (b *graphBuilder) GetIndirectRelationChunks(chunkID string, topK ... method getEntityByTitle (line 865) | func (b *graphBuilder) getEntityByTitle(title string) *types.Entity { method generateKnowledgeGraphDiagram (line 895) | func (b *graphBuilder) generateKnowledgeGraphDiagram(ctx context.Conte... function NewGraphBuilder (line 76) | func NewGraphBuilder(config *config.Config, chatModel chat.Chat) types.G... function dfs (line 870) | func dfs(entityTitle string, FILE: internal/application/service/image_multimodal.go constant vlmOCRPrompt (line 25) | vlmOCRPrompt = "Extract all body text content from this document image a... constant vlmCaptionPrompt (line 32) | vlmCaptionPrompt = "Provide a brief and concise description of the main ... type ImageMultimodalService (line 38) | type ImageMultimodalService struct method Handle (line 69) | func (s *ImageMultimodalService) Handle(ctx context.Context, task *asy... method finalizeImageKnowledge (line 222) | func (s *ImageMultimodalService) finalizeImageKnowledge(ctx context.Co... method indexChunks (line 250) | func (s *ImageMultimodalService) indexChunks(ctx context.Context, payl... method updateParentChunkImageInfo (line 313) | func (s *ImageMultimodalService) updateParentChunkImageInfo(ctx contex... method resolveVLM (line 353) | func (s *ImageMultimodalService) resolveVLM(ctx context.Context, kbID ... method resolveFileServiceForPayload (line 377) | func (s *ImageMultimodalService) resolveFileServiceForPayload(ctx cont... function NewImageMultimodalService (line 48) | func NewImageMultimodalService( function downloadImageFromURL (line 404) | func downloadImageFromURL(imageURL string) ([]byte, error) { FILE: internal/application/service/kbshare.go type kbShareService (line 25) | type kbShareService struct method ShareKnowledgeBase (line 51) | func (s *kbShareService) ShareKnowledgeBase(ctx context.Context, kbID ... method UpdateSharePermission (line 124) | func (s *kbShareService) UpdateSharePermission(ctx context.Context, sh... method RemoveShare (line 154) | func (s *kbShareService) RemoveShare(ctx context.Context, shareID stri... method ListSharesByKnowledgeBase (line 178) | func (s *kbShareService) ListSharesByKnowledgeBase(ctx context.Context... method ListSharesByOrganization (line 190) | func (s *kbShareService) ListSharesByOrganization(ctx context.Context,... method ListSharedKnowledgeBases (line 197) | func (s *kbShareService) ListSharedKnowledgeBases(ctx context.Context,... method ListSharedKnowledgeBasesInOrganization (line 293) | func (s *kbShareService) ListSharedKnowledgeBasesInOrganization(ctx co... method ListSharedKnowledgeBaseIDsByOrganizations (line 352) | func (s *kbShareService) ListSharedKnowledgeBaseIDsByOrganizations(ctx... method GetShare (line 381) | func (s *kbShareService) GetShare(ctx context.Context, shareID string)... method GetShareByKBAndOrg (line 393) | func (s *kbShareService) GetShareByKBAndOrg(ctx context.Context, kbID ... method CheckUserKBPermission (line 406) | func (s *kbShareService) CheckUserKBPermission(ctx context.Context, kb... method HasKBPermission (line 441) | func (s *kbShareService) HasKBPermission(ctx context.Context, kbID str... method GetKBSourceTenant (line 455) | func (s *kbShareService) GetKBSourceTenant(ctx context.Context, kbID s... method CountSharesByKnowledgeBaseIDs (line 476) | func (s *kbShareService) CountSharesByKnowledgeBaseIDs(ctx context.Con... method CountByOrganizations (line 481) | func (s *kbShareService) CountByOrganizations(ctx context.Context, org... function NewKBShareService (line 34) | func NewKBShareService( FILE: internal/application/service/knowledge.go type knowledgeService (line 62) | type knowledgeService struct method getParserEngineOverridesFromContext (line 131) | func (s *knowledgeService) getParserEngineOverridesFromContext(ctx con... method GetRepository (line 146) | func (s *knowledgeService) GetRepository() interfaces.KnowledgeReposit... method isKnowledgeDeleting (line 152) | func (s *knowledgeService) isKnowledgeDeleting(ctx context.Context, te... method CreateKnowledgeFromFile (line 182) | func (s *knowledgeService) CreateKnowledgeFromFile(ctx context.Context, method CreateKnowledgeFromURL (line 436) | func (s *knowledgeService) CreateKnowledgeFromURL(ctx context.Context, method createKnowledgeFromFileURL (line 622) | func (s *knowledgeService) createKnowledgeFromFileURL( method CreateKnowledgeFromPassage (line 792) | func (s *knowledgeService) CreateKnowledgeFromPassage(ctx context.Cont... method CreateKnowledgeFromPassageSync (line 799) | func (s *knowledgeService) CreateKnowledgeFromPassageSync(ctx context.... method CreateKnowledgeFromManual (line 806) | func (s *knowledgeService) CreateKnowledgeFromManual(ctx context.Context, method createKnowledgeFromPassageInternal (line 903) | func (s *knowledgeService) createKnowledgeFromPassageInternal(ctx cont... method GetKnowledgeByID (line 1007) | func (s *knowledgeService) GetKnowledgeByID(ctx context.Context, id st... method GetKnowledgeByIDOnly (line 1024) | func (s *knowledgeService) GetKnowledgeByIDOnly(ctx context.Context, i... method ListKnowledgeByKnowledgeBaseID (line 1029) | func (s *knowledgeService) ListKnowledgeByKnowledgeBaseID(ctx context.... method ListPagedKnowledgeByKnowledgeBaseID (line 1036) | func (s *knowledgeService) ListPagedKnowledgeByKnowledgeBaseID(ctx con... method DeleteKnowledge (line 1049) | func (s *knowledgeService) DeleteKnowledge(ctx context.Context, id str... method DeleteKnowledgeList (line 1138) | func (s *knowledgeService) DeleteKnowledgeList(ctx context.Context, id... method cloneKnowledge (line 1259) | func (s *knowledgeService) cloneKnowledge( method processDocumentFromPassage (line 1320) | func (s *knowledgeService) processDocumentFromPassage(ctx context.Cont... method processChunks (line 1387) | func (s *knowledgeService) processChunks(ctx context.Context, method getSummary (line 1802) | func (s *knowledgeService) getSummary(ctx context.Context, method enqueueQuestionGenerationTask (line 1909) | func (s *knowledgeService) enqueueQuestionGenerationTask(ctx context.C... method enqueueSummaryGenerationTask (line 1936) | func (s *knowledgeService) enqueueSummaryGenerationTask(ctx context.Co... method ProcessSummaryGeneration (line 1964) | func (s *knowledgeService) ProcessSummaryGeneration(ctx context.Contex... method ProcessQuestionGeneration (line 2149) | func (s *knowledgeService) ProcessQuestionGeneration(ctx context.Conte... method generateQuestionsWithContext (line 2320) | func (s *knowledgeService) generateQuestionsWithContext(ctx context.Co... method GetKnowledgeFile (line 2423) | func (s *knowledgeService) GetKnowledgeFile(ctx context.Context, id st... method UpdateKnowledge (line 2456) | func (s *knowledgeService) UpdateKnowledge(ctx context.Context, knowle... method UpdateManualKnowledge (line 2482) | func (s *knowledgeService) UpdateManualKnowledge(ctx context.Context, method enqueueManualProcessing (line 2588) | func (s *knowledgeService) enqueueManualProcessing(ctx context.Context, method ReparseKnowledge (line 2616) | func (s *knowledgeService) ReparseKnowledge(ctx context.Context, knowl... method GetKnowledgeBatch (line 2857) | func (s *knowledgeService) GetKnowledgeBatch(ctx context.Context, method GetKnowledgeBatchWithSharedAccess (line 2868) | func (s *knowledgeService) GetKnowledgeBatchWithSharedAccess(ctx conte... method CloneKnowledgeBase (line 2938) | func (s *knowledgeService) CloneKnowledgeBase(ctx context.Context, src... method updateChunkVector (line 3002) | func (s *knowledgeService) updateChunkVector(ctx context.Context, kbID... method UpdateImageInfo (line 3053) | func (s *knowledgeService) UpdateImageInfo( method CloneChunk (line 3231) | func (s *knowledgeService) CloneChunk(ctx context.Context, src, dst *t... method ListFAQEntries (line 3348) | func (s *knowledgeService) ListFAQEntries(ctx context.Context, method UpsertFAQEntries (line 3454) | func (s *knowledgeService) UpsertFAQEntries(ctx context.Context, method generateFailedEntriesCSV (line 3638) | func (s *knowledgeService) generateFailedEntriesCSV(ctx context.Context, method saveFAQImportResultToDatabase (line 3708) | func (s *knowledgeService) saveFAQImportResultToDatabase(ctx context.C... method executeFAQDryRunValidation (line 3782) | func (s *knowledgeService) executeFAQDryRunValidation(ctx context.Cont... method validateEntriesForAppendModeWithProgress (line 3802) | func (s *knowledgeService) validateEntriesForAppendModeWithProgress(ct... method validateEntriesForReplaceModeWithProgress (line 3909) | func (s *knowledgeService) validateEntriesForReplaceModeWithProgress(c... method calculateAppendOperations (line 4004) | func (s *knowledgeService) calculateAppendOperations(ctx context.Context, method calculateReplaceOperations (line 4085) | func (s *knowledgeService) calculateReplaceOperations(ctx context.Cont... method executeFAQImport (line 4216) | func (s *knowledgeService) executeFAQImport(ctx context.Context, taskI... method CreateFAQEntry (line 4501) | func (s *knowledgeService) CreateFAQEntry(ctx context.Context, method GetFAQEntry (line 4628) | func (s *knowledgeService) GetFAQEntry(ctx context.Context, method UpdateFAQEntry (line 4686) | func (s *knowledgeService) UpdateFAQEntry(ctx context.Context, method AddSimilarQuestions (line 4850) | func (s *knowledgeService) AddSimilarQuestions(ctx context.Context, method UpdateFAQEntryStatus (line 4999) | func (s *knowledgeService) UpdateFAQEntryStatus(ctx context.Context, method UpdateFAQEntryFieldsBatch (line 5042) | func (s *knowledgeService) UpdateFAQEntryFieldsBatch(ctx context.Context, method UpdateKnowledgeTag (line 5243) | func (s *knowledgeService) UpdateKnowledgeTag(ctx context.Context, kno... method UpdateKnowledgeTagBatch (line 5267) | func (s *knowledgeService) UpdateKnowledgeTagBatch(ctx context.Context... method UpdateFAQEntryTag (line 5346) | func (s *knowledgeService) UpdateFAQEntryTag(ctx context.Context, kbID... method UpdateFAQEntryTagBatch (line 5397) | func (s *knowledgeService) UpdateFAQEntryTagBatch(ctx context.Context,... method SearchFAQEntries (line 5502) | func (s *knowledgeService) SearchFAQEntries(ctx context.Context, method DeleteFAQEntries (line 5836) | func (s *knowledgeService) DeleteFAQEntries(ctx context.Context, method ExportFAQEntries (line 5885) | func (s *knowledgeService) ExportFAQEntries(ctx context.Context, kbID ... method buildTagMap (line 5917) | func (s *knowledgeService) buildTagMap(ctx context.Context, tenantID u... method buildFAQCSV (line 5935) | func (s *knowledgeService) buildFAQCSV(chunks []*types.Chunk, tagMap m... method validateFAQKnowledgeBase (line 6002) | func (s *knowledgeService) validateFAQKnowledgeBase(ctx context.Contex... method findFAQKnowledge (line 6017) | func (s *knowledgeService) findFAQKnowledge( method ensureFAQKnowledge (line 6034) | func (s *knowledgeService) ensureFAQKnowledge( method updateFAQImportProgressStatus (line 6066) | func (s *knowledgeService) updateFAQImportProgressStatus( method cleanupFAQEntriesFileOnFinalFailure (line 6110) | func (s *knowledgeService) cleanupFAQEntriesFileOnFinalFailure(ctx con... method getRunningFAQImportInfo (line 6129) | func (s *knowledgeService) getRunningFAQImportInfo(ctx context.Context... method getRunningFAQImportTaskID (line 6150) | func (s *knowledgeService) getRunningFAQImportTaskID(ctx context.Conte... method setRunningFAQImportInfo (line 6162) | func (s *knowledgeService) setRunningFAQImportInfo(ctx context.Context... method clearRunningFAQImportTaskID (line 6172) | func (s *knowledgeService) clearRunningFAQImportTaskID(ctx context.Con... method chunkToFAQEntry (line 6177) | func (s *knowledgeService) chunkToFAQEntry(chunk *types.Chunk, kb *typ... method checkFAQQuestionDuplicate (line 6240) | func (s *knowledgeService) checkFAQQuestionDuplicate( method resolveTagID (line 6316) | func (s *knowledgeService) resolveTagID(ctx context.Context, kbID stri... method buildFAQIndexInfoList (line 6392) | func (s *knowledgeService) buildFAQIndexInfoList( method incrementalIndexFAQEntry (line 6494) | func (s *knowledgeService) incrementalIndexFAQEntry( method indexFAQChunks (line 6642) | func (s *knowledgeService) indexFAQChunks(ctx context.Context, method deleteFAQChunkVectors (line 6750) | func (s *knowledgeService) deleteFAQChunkVectors(ctx context.Context, method triggerManualProcessing (line 6826) | func (s *knowledgeService) triggerManualProcessing(ctx context.Context, method cleanupKnowledgeResources (line 6914) | func (s *knowledgeService) cleanupKnowledgeResources(ctx context.Conte... method getVLMConfig (line 6973) | func (s *knowledgeService) getVLMConfig(ctx context.Context, kb *types... method buildStorageConfig (line 7010) | func (s *knowledgeService) buildStorageConfig(ctx context.Context, kb ... method resolveFileService (line 7092) | func (s *knowledgeService) resolveFileService(ctx context.Context, kb ... method resolveFileServiceForPath (line 7126) | func (s *knowledgeService) resolveFileServiceForPath(ctx context.Conte... method ProcessManualUpdate (line 7231) | func (s *knowledgeService) ProcessManualUpdate(ctx context.Context, t ... method ProcessDocument (line 7307) | func (s *knowledgeService) ProcessDocument(ctx context.Context, t *asy... method convert (line 7591) | func (s *knowledgeService) convert( method resolveDocReader (line 7669) | func (s *knowledgeService) resolveDocReader(engine, fileType string, i... method failKnowledge (line 7690) | func (s *knowledgeService) failKnowledge( method enqueueImageMultimodalTasks (line 7708) | func (s *knowledgeService) enqueueImageMultimodalTasks( method ProcessFAQImport (line 7759) | func (s *knowledgeService) ProcessFAQImport(ctx context.Context, t *as... method finalizeFAQValidation (line 8004) | func (s *knowledgeService) finalizeFAQValidation(ctx context.Context, ... method saveFAQImportProgress (line 8092) | func (s *knowledgeService) saveFAQImportProgress(ctx context.Context, ... method GetFAQImportProgress (line 8103) | func (s *knowledgeService) GetFAQImportProgress(ctx context.Context, t... method UpdateLastFAQImportResultDisplayStatus (line 8137) | func (s *knowledgeService) UpdateLastFAQImportResultDisplayStatus(ctx ... method ProcessKBClone (line 8192) | func (s *knowledgeService) ProcessKBClone(ctx context.Context, t *asyn... method cloneFAQKnowledgeBase (line 8358) | func (s *knowledgeService) cloneFAQKnowledgeBase( method getOrCreateFAQKnowledge (line 8561) | func (s *knowledgeService) getOrCreateFAQKnowledge(ctx context.Context... method saveKBCloneProgress (line 8599) | func (s *knowledgeService) saveKBCloneProgress(ctx context.Context, pr... method SaveKBCloneProgress (line 8609) | func (s *knowledgeService) SaveKBCloneProgress(ctx context.Context, pr... method GetKBCloneProgress (line 8614) | func (s *knowledgeService) GetKBCloneProgress(ctx context.Context, tas... method saveKnowledgeMoveProgress (line 8642) | func (s *knowledgeService) saveKnowledgeMoveProgress(ctx context.Conte... method SaveKnowledgeMoveProgress (line 8652) | func (s *knowledgeService) SaveKnowledgeMoveProgress(ctx context.Conte... method GetKnowledgeMoveProgress (line 8657) | func (s *knowledgeService) GetKnowledgeMoveProgress(ctx context.Contex... method ProcessKnowledgeMove (line 8675) | func (s *knowledgeService) ProcessKnowledgeMove(ctx context.Context, t... method moveOneKnowledge (line 8781) | func (s *knowledgeService) moveOneKnowledge( method moveKnowledgeReuseVectors (line 8817) | func (s *knowledgeService) moveKnowledgeReuseVectors( method moveKnowledgeReparse (line 8884) | func (s *knowledgeService) moveKnowledgeReparse( method getOrCreateTagInTarget (line 8963) | func (s *knowledgeService) getOrCreateTagInTarget( method SearchKnowledge (line 9014) | func (s *knowledgeService) SearchKnowledge(ctx context.Context, keywor... method SearchKnowledgeForScopes (line 9056) | func (s *knowledgeService) SearchKnowledgeForScopes(ctx context.Contex... method ProcessKnowledgeListDelete (line 9064) | func (s *knowledgeService) ProcessKnowledgeListDelete(ctx context.Cont... constant manualContentMaxLength (line 83) | manualContentMaxLength = 200000 constant manualFileExtension (line 84) | manualFileExtension = ".md" constant faqImportBatchSize (line 85) | faqImportBatchSize = 50 function NewKnowledgeService (line 89) | func NewKnowledgeService( function checkStorageEngineConfigured (line 167) | func checkStorageEngineConfigured(ctx context.Context, kb *types.Knowled... function isFileURL (line 424) | func isFileURL(rawURL, fileName, fileType string) bool { constant maxFileURLSize (line 588) | maxFileURLSize = 10 * 1024 * 1024 function extractFileNameFromURL (line 591) | func extractFileNameFromURL(rawURL string) string { function extractFileNameFromContentDisposition (line 604) | func extractFileNameFromContentDisposition(header string) string { type ProcessChunksOptions (line 1351) | type ProcessChunksOptions struct function buildParentChildConfigs (line 1364) | func buildParentChildConfigs(cc types.ChunkingConfig, base chunker.Split... constant defaultQuestionGenerationPrompt (line 2389) | defaultQuestionGenerationPrompt = `You are a professional question gener... function isValidFileType (line 2829) | func isValidFileType(filename string) bool { function getFileType (line 2839) | func getFileType(filename string) string { function isValidURL (line 2849) | func isValidURL(url string) bool { function calculateFileHash (line 2911) | func calculateFileHash(file *multipart.FileHeader) (string, error) { function calculateStr (line 2931) | func calculateStr(strList ...string) string { function csvEscape (line 3699) | func csvEscape(s string) string { function buildFAQFailedEntry (line 3759) | func buildFAQFailedEntry(idx int, reason string, entry *types.FAQEntryPa... function validateFAQEntryPayloadBasic (line 3978) | func validateFAQEntryPayloadBasic(entry *types.FAQEntryPayload) error { function escapeCSVField (line 5986) | func escapeCSVField(field string) string { function boolToCSV (line 5995) | func boolToCSV(b bool) string { type runningFAQImportInfo (line 6122) | type runningFAQImportInfo struct function buildFAQChunkContent (line 6218) | func buildFAQChunkContent(meta *types.FAQChunkMetadata, mode types.FAQIn... function sanitizeFAQEntryPayload (line 6345) | func sanitizeFAQEntryPayload(payload *types.FAQEntryPayload) (*types.FAQ... function buildFAQIndexContent (line 6375) | func buildFAQIndexContent(meta *types.FAQChunkMetadata, mode types.FAQIn... function ensureManualFileName (line 6798) | func ensureManualFileName(title string) string { function sanitizeManualDownloadFilename (line 6813) | func sanitizeManualDownloadFilename(title string) string { function IsImageType (line 7156) | func IsImageType(fileType string) bool { function downloadFileFromURL (line 7169) | func downloadFileFromURL(ctx context.Context, fileURL string, payloadFil... constant kbCloneProgressKeyPrefix (line 8066) | kbCloneProgressKeyPrefix = "kb_clone_progress:" constant kbCloneProgressTTL (line 8067) | kbCloneProgressTTL = 24 * time.Hour function getKBCloneProgressKey (line 8071) | func getKBCloneProgressKey(taskID string) string { constant faqImportProgressKeyPrefix (line 8076) | faqImportProgressKeyPrefix = "faq_import_progress:" constant faqImportRunningKeyPrefix (line 8077) | faqImportRunningKeyPrefix = "faq_import_running:" constant faqImportProgressTTL (line 8078) | faqImportProgressTTL = 3 * time.Hour function getFAQImportProgressKey (line 8082) | func getFAQImportProgressKey(taskID string) string { function getFAQImportRunningKey (line 8087) | func getFAQImportRunningKey(kbID string) string { constant knowledgeMoveProgressKeyPrefix (line 8634) | knowledgeMoveProgressKeyPrefix = "knowledge_move_progress:" constant knowledgeMoveProgressTTL (line 8635) | knowledgeMoveProgressTTL = 24 * time.Hour function getKnowledgeMoveProgressKey (line 8638) | func getKnowledgeMoveProgressKey(taskID string) string { FILE: internal/application/service/knowledge_manual_test.go function TestSanitizeManualDownloadFilename (line 9) | func TestSanitizeManualDownloadFilename(t *testing.T) { FILE: internal/application/service/knowledgebase.go type knowledgeBaseService (line 21) | type knowledgeBaseService struct method GetRepository (line 69) | func (s *knowledgeBaseService) GetRepository() interfaces.KnowledgeBas... method CreateKnowledgeBase (line 74) | func (s *knowledgeBaseService) CreateKnowledgeBase(ctx context.Context, method GetKnowledgeBaseByID (line 101) | func (s *knowledgeBaseService) GetKnowledgeBaseByID(ctx context.Contex... method GetKnowledgeBaseByIDOnly (line 121) | func (s *knowledgeBaseService) GetKnowledgeBaseByIDOnly(ctx context.Co... method GetKnowledgeBasesByIDsOnly (line 140) | func (s *knowledgeBaseService) GetKnowledgeBasesByIDsOnly(ctx context.... method ListKnowledgeBases (line 157) | func (s *knowledgeBaseService) ListKnowledgeBases(ctx context.Context)... method ListKnowledgeBasesByTenantID (line 213) | func (s *knowledgeBaseService) ListKnowledgeBasesByTenantID(ctx contex... method FillKnowledgeBaseCounts (line 242) | func (s *knowledgeBaseService) FillKnowledgeBaseCounts(ctx context.Con... method UpdateKnowledgeBase (line 266) | func (s *knowledgeBaseService) UpdateKnowledgeBase(ctx context.Context, method TogglePinKnowledgeBase (line 314) | func (s *knowledgeBaseService) TogglePinKnowledgeBase(ctx context.Cont... method DeleteKnowledgeBase (line 333) | func (s *knowledgeBaseService) DeleteKnowledgeBase(ctx context.Context... method ProcessKBDelete (line 389) | func (s *knowledgeBaseService) ProcessKBDelete(ctx context.Context, t ... method SetEmbeddingModel (line 511) | func (s *knowledgeBaseService) SetEmbeddingModel(ctx context.Context, ... method CopyKnowledgeBase (line 558) | func (s *knowledgeBaseService) CopyKnowledgeBase(ctx context.Context, function NewKnowledgeBaseService (line 36) | func NewKnowledgeBaseService(repo interfaces.KnowledgeBaseRepository, FILE: internal/application/service/knowledgebase_search.go method GetQueryEmbedding (line 17) | func (s *knowledgeBaseService) GetQueryEmbedding(ctx context.Context, kb... method ResolveEmbeddingModelKeys (line 42) | func (s *knowledgeBaseService) ResolveEmbeddingModelKeys(ctx context.Con... method HybridSearch (line 85) | func (s *knowledgeBaseService) HybridSearch(ctx context.Context, method buildRetrievalParams (line 167) | func (s *knowledgeBaseService) buildRetrievalParams( FILE: internal/application/service/knowledgebase_search_faq.go method applyFAQPostProcessing (line 16) | func (s *knowledgeBaseService) applyFAQPostProcessing( method iterativeRetrieveWithDeduplication (line 53) | func (s *knowledgeBaseService) iterativeRetrieveWithDeduplication(ctx co... method filterByNegativeQuestions (line 186) | func (s *knowledgeBaseService) filterByNegativeQuestions(ctx context.Con... method matchesNegativeQuestions (line 260) | func (s *knowledgeBaseService) matchesNegativeQuestions(queryTextLower s... FILE: internal/application/service/knowledgebase_search_fusion.go function classifyRetrievalResults (line 12) | func classifyRetrievalResults(ctx context.Context, retrieveResults []*ty... function fuseOrDeduplicate (line 31) | func fuseOrDeduplicate(ctx context.Context, vectorResults, keywordResult... function sortByScoreDesc (line 45) | func sortByScoreDesc(a, b *types.IndexWithScore) int { function deduplicateByScore (line 57) | func deduplicateByScore(results []*types.IndexWithScore) []*types.IndexW... function fuseWithRRF (line 75) | func fuseWithRRF(ctx context.Context, vectorResults, keywordResults []*t... FILE: internal/application/service/knowledgebase_search_results.go method processSearchResults (line 13) | func (s *knowledgeBaseService) processSearchResults(ctx context.Context, type chunkIndex (line 73) | type chunkIndex struct method buildChunkIndex (line 84) | func (s *knowledgeBaseService) buildChunkIndex(chunks []*types.IndexWith... method collectEnrichmentChunkIDs (line 108) | func (s *knowledgeBaseService) collectEnrichmentChunkIDs( method assembleSearchResults (line 156) | func (s *knowledgeBaseService) assembleSearchResults( method collectRelatedChunkIDs (line 235) | func (s *knowledgeBaseService) collectRelatedChunkIDs(chunk *types.Chunk... method buildSearchResult (line 252) | func (s *knowledgeBaseService) buildSearchResult(chunk *types.Chunk, method isValidTextChunk (line 282) | func (s *knowledgeBaseService) isValidTextChunk(chunk *types.Chunk) bool { FILE: internal/application/service/knowledgebase_search_shared.go method fetchKnowledgeData (line 11) | func (s *knowledgeBaseService) fetchKnowledgeData(ctx context.Context, method fetchKnowledgeDataWithShared (line 34) | func (s *knowledgeBaseService) fetchKnowledgeDataWithShared(ctx context.... method listChunksByIDWithShared (line 82) | func (s *knowledgeBaseService) listChunksByIDWithShared(ctx context.Cont... method findMissingIDs (line 141) | func (s *knowledgeBaseService) findMissingIDs(ids []string, exists func(... method extractUserID (line 152) | func (s *knowledgeBaseService) extractUserID(ctx context.Context) (strin... FILE: internal/application/service/llmcontext/compression_strategies.go type slidingWindowStrategy (line 14) | type slidingWindowStrategy struct method Compress (line 27) | func (s *slidingWindowStrategy) Compress( method EstimateTokens (line 68) | func (s *slidingWindowStrategy) EstimateTokens(messages []chat.Message... function NewSlidingWindowStrategy (line 19) | func NewSlidingWindowStrategy(recentMessageCount int) interfaces.Compres... type smartCompressionStrategy (line 83) | type smartCompressionStrategy struct method Compress (line 104) | func (s *smartCompressionStrategy) Compress( method summarizeMessages (line 185) | func (s *smartCompressionStrategy) summarizeMessages(ctx context.Conte... method EstimateTokens (line 230) | func (s *smartCompressionStrategy) EstimateTokens(messages []chat.Mess... function NewSmartCompressionStrategy (line 90) | func NewSmartCompressionStrategy( FILE: internal/application/service/llmcontext/context_manager.go type contextManager (line 14) | type contextManager struct method AddMessage (line 47) | func (cm *contextManager) AddMessage(ctx context.Context, sessionID st... method GetContext (line 106) | func (cm *contextManager) GetContext(ctx context.Context, sessionID st... method ClearContext (line 133) | func (cm *contextManager) ClearContext(ctx context.Context, sessionID ... method GetContextStats (line 147) | func (cm *contextManager) GetContextStats(ctx context.Context, session... method SetSystemPrompt (line 172) | func (cm *contextManager) SetSystemPrompt(ctx context.Context, session... function NewContextManager (line 21) | func NewContextManager( function NewContextManagerWithMemory (line 34) | func NewContextManagerWithMemory( FILE: internal/application/service/llmcontext/context_manager_factory.go constant ContextManagerTypeMemory (line 14) | ContextManagerTypeMemory = "memory" constant ContextManagerTypeRedis (line 15) | ContextManagerTypeRedis = "redis" constant DefaultMaxTokens (line 18) | DefaultMaxTokens = 128 * 1024 constant DefaultRecentMessageCount (line 19) | DefaultRecentMessageCount = 20 constant DefaultSummarizeThreshold (line 20) | DefaultSummarizeThreshold = 5 constant DefaultCompressionStrategy (line 21) | DefaultCompressionStrategy = "sliding_window" function NewContextManagerFromConfig (line 25) | func NewContextManagerFromConfig( FILE: internal/application/service/llmcontext/memory_storage.go type memoryStorage (line 12) | type memoryStorage struct method Save (line 25) | func (ms *memoryStorage) Save(ctx context.Context, sessionID string, m... method Load (line 39) | func (ms *memoryStorage) Load(ctx context.Context, sessionID string) (... method Delete (line 58) | func (ms *memoryStorage) Delete(ctx context.Context, sessionID string)... function NewMemoryStorage (line 18) | func NewMemoryStorage() ContextStorage { FILE: internal/application/service/llmcontext/redis_storage.go type redisStorage (line 15) | type redisStorage struct method buildKey (line 45) | func (rs *redisStorage) buildKey(sessionID string) string { method Save (line 50) | func (rs *redisStorage) Save(ctx context.Context, sessionID string, me... method Load (line 73) | func (rs *redisStorage) Load(ctx context.Context, sessionID string) ([... method Delete (line 101) | func (rs *redisStorage) Delete(ctx context.Context, sessionID string) ... function NewRedisStorage (line 22) | func NewRedisStorage(client *redis.Client, ttl time.Duration, prefix str... FILE: internal/application/service/llmcontext/storage.go type ContextStorage (line 11) | type ContextStorage interface FILE: internal/application/service/mcp_service.go type mcpServiceService (line 16) | type mcpServiceService struct method CreateMCPService (line 33) | func (s *mcpServiceService) CreateMCPService(ctx context.Context, serv... method GetMCPServiceByID (line 57) | func (s *mcpServiceService) GetMCPServiceByID( method ListMCPServices (line 76) | func (s *mcpServiceService) ListMCPServices(ctx context.Context, tenan... method ListMCPServicesByIDs (line 96) | func (s *mcpServiceService) ListMCPServicesByIDs( method UpdateMCPService (line 115) | func (s *mcpServiceService) UpdateMCPService(ctx context.Context, serv... method DeleteMCPService (line 234) | func (s *mcpServiceService) DeleteMCPService(ctx context.Context, tena... method TestMCPService (line 262) | func (s *mcpServiceService) TestMCPService( method GetMCPServiceTools (line 337) | func (s *mcpServiceService) GetMCPServiceTools( method GetMCPServiceResources (line 367) | func (s *mcpServiceService) GetMCPServiceResources( function NewMCPServiceService (line 22) | func NewMCPServiceService( function equalStringSlices (line 397) | func equalStringSlices(a, b []string) bool { FILE: internal/application/service/memory/service.go type MemoryService (line 17) | type MemoryService struct method getChatModel (line 79) | func (s *MemoryService) getChatModel(ctx context.Context) (chat.Chat, ... method AddEpisode (line 102) | func (s *MemoryService) AddEpisode(ctx context.Context, userID string,... method RetrieveMemory (line 149) | func (s *MemoryService) RetrieveMemory(ctx context.Context, userID str... function NewMemoryService (line 23) | func NewMemoryService(repo interfaces.MemoryRepository, modelService int... constant extractGraphPrompt (line 30) | extractGraphPrompt = ` constant extractKeywordsPrompt (line 57) | extractKeywordsPrompt = ` type extractionResult (line 69) | type extractionResult struct type keywordsResult (line 75) | type keywordsResult struct FILE: internal/application/service/message.go type messageService (line 20) | type messageService struct method CreateMessage (line 64) | func (s *messageService) CreateMessage(ctx context.Context, message *t... method GetMessage (line 90) | func (s *messageService) GetMessage(ctx context.Context, sessionID str... method GetMessagesBySession (line 117) | func (s *messageService) GetMessagesBySession(ctx context.Context, method GetRecentMessagesBySession (line 147) | func (s *messageService) GetRecentMessagesBySession(ctx context.Context, method GetMessagesBySessionBeforeTime (line 180) | func (s *messageService) GetMessagesBySessionBeforeTime(ctx context.Co... method UpdateMessage (line 214) | func (s *messageService) UpdateMessage(ctx context.Context, message *t... method UpdateMessageImages (line 241) | func (s *messageService) UpdateMessageImages(ctx context.Context, sess... method DeleteMessage (line 246) | func (s *messageService) DeleteMessage(ctx context.Context, sessionID ... method ClearSessionMessages (line 288) | func (s *messageService) ClearSessionMessages(ctx context.Context, ses... method getChatHistoryConfig (line 316) | func (s *messageService) getChatHistoryConfig(ctx context.Context) *ty... method getRetrievalConfig (line 329) | func (s *messageService) getRetrievalConfig(ctx context.Context) *type... method IndexMessageToKB (line 344) | func (s *messageService) IndexMessageToKB(ctx context.Context, userQue... method DeleteMessageKnowledge (line 378) | func (s *messageService) DeleteMessageKnowledge(ctx context.Context, k... method DeleteSessionKnowledge (line 389) | func (s *messageService) DeleteSessionKnowledge(ctx context.Context, s... method GetChatHistoryKBStats (line 409) | func (s *messageService) GetChatHistoryKBStats(ctx context.Context) (*... method SearchMessages (line 452) | func (s *messageService) SearchMessages(ctx context.Context, params *t... method vectorSearchViaKB (line 526) | func (s *messageService) vectorSearchViaKB(ctx context.Context, params... method rerankResults (line 601) | func (s *messageService) rerankResults(ctx context.Context, rc *types.... method fetchPartnerMessages (line 721) | func (s *messageService) fetchPartnerMessages(ctx context.Context, ite... function NewMessageService (line 30) | func NewMessageService(messageRepo interfaces.MessageRepository, function sessionTenantIDForLookup (line 49) | func sessionTenantIDForLookup(ctx context.Context) (uint64, bool) { function convertKeywordResults (line 649) | func convertKeywordResults(results []*types.MessageWithSession) []*types... function rrfMerge (line 662) | func rrfMerge(keywordResults []*types.MessageWithSession, vectorResults ... function groupByRequestID (line 783) | func groupByRequestID(items []*types.MessageSearchResultItem) []*types.M... FILE: internal/application/service/metric/bleu.go type BLEUMetric (line 27) | type BLEUMetric struct method Compute (line 47) | func (b *BLEUMetric) Compute(metricInput *types.MetricInput) float64 { method getNphrase (line 95) | func (b *BLEUMetric) getNphrase(s Sentence, n int) []phrase { method countNphrase (line 103) | func (b *BLEUMetric) countNphrase(nphrase []phrase) map[string]int { method modifiedPrecision (line 111) | func (b *BLEUMetric) modifiedPrecision(candidate Sentence, references ... method brevityPenalty (line 147) | func (b *BLEUMetric) brevityPenalty(candidate Sentence, references []S... function NewBLEUMetric (line 32) | func NewBLEUMetric(smoothing bool, weights BLEUWeight) *BLEUMetric { type Sentence (line 36) | type Sentence type BLEUWeight (line 38) | type BLEUWeight type phrase (line 85) | type phrase method String (line 87) | func (p phrase) String() string { FILE: internal/application/service/metric/common.go function sum (line 10) | func sum(m map[string]int) int { function min (line 18) | func min(a, b int) int { function abs (line 25) | func abs(a int) int { function max (line 32) | func max(a, b int) int { function splitSentences (line 39) | func splitSentences(text string) []string { function splitIntoWords (line 73) | func splitIntoWords(sentences []string) []string { function ToSet (line 101) | func ToSet[T comparable](li []T) map[T]struct{} { function SliceMap (line 109) | func SliceMap[T any, Y any](li []T, fn func(T) Y) []Y { function Hit (line 117) | func Hit[T comparable](li []T, set map[T]struct{}) int { function Fold (line 127) | func Fold[T any, Y any](slice []T, initial Y, f func(Y, T) Y) Y { FILE: internal/application/service/metric/map.go type MAPMetric (line 8) | type MAPMetric struct method Compute (line 16) | func (m *MAPMetric) Compute(metricInput *types.MetricInput) float64 { function NewMAPMetric (line 11) | func NewMAPMetric() *MAPMetric { FILE: internal/application/service/metric/map_test.go function TestMAPMetric_Compute (line 9) | func TestMAPMetric_Compute(t *testing.T) { function almostEqual (line 76) | func almostEqual(a, b, tolerance float64) bool { FILE: internal/application/service/metric/mrr.go type MRRMetric (line 8) | type MRRMetric struct method Compute (line 16) | func (m *MRRMetric) Compute(metricInput *types.MetricInput) float64 { function NewMRRMetric (line 11) | func NewMRRMetric() *MRRMetric { FILE: internal/application/service/metric/mrr_test.go function TestMRRMetric_Compute (line 9) | func TestMRRMetric_Compute(t *testing.T) { FILE: internal/application/service/metric/ndcg.go type NDCGMetric (line 10) | type NDCGMetric struct method Compute (line 20) | func (n *NDCGMetric) Compute(metricInput *types.MetricInput) float64 { function NewNDCGMetric (line 15) | func NewNDCGMetric(k int) *NDCGMetric { FILE: internal/application/service/metric/precision.go type PrecisionMetric (line 8) | type PrecisionMetric struct method Compute (line 16) | func (r *PrecisionMetric) Compute(metricInput *types.MetricInput) floa... function NewPrecisionMetric (line 11) | func NewPrecisionMetric() *PrecisionMetric { FILE: internal/application/service/metric/precision_test.go function TestPrecisionMetric_Compute (line 9) | func TestPrecisionMetric_Compute(t *testing.T) { FILE: internal/application/service/metric/recall.go type RecallMetric (line 8) | type RecallMetric struct method Compute (line 16) | func (r *RecallMetric) Compute(metricInput *types.MetricInput) float64 { function NewRecallMetric (line 11) | func NewRecallMetric() *RecallMetric { FILE: internal/application/service/metric/recall_test.go function TestRecallMetric_Compute (line 9) | func TestRecallMetric_Compute(t *testing.T) { FILE: internal/application/service/metric/rouge.go type RougeMetric (line 9) | type RougeMetric struct method Compute (line 48) | func (r *RougeMetric) Compute(metricInput *types.MetricInput) float64 { function NewRougeMetric (line 38) | func NewRougeMetric(exclusive bool, metrics, stats string) *RougeMetric { FILE: internal/application/service/metric/rouge_score.go type Ngrams (line 36) | type Ngrams struct method Add (line 45) | func (n *Ngrams) Add(o string) { method Len (line 53) | func (n *Ngrams) Len() int { method Intersection (line 57) | func (n *Ngrams) Intersection(o *Ngrams) *Ngrams { method BatchAdd (line 67) | func (n *Ngrams) BatchAdd(o []string) { method Union (line 73) | func (n *Ngrams) Union(others ...*Ngrams) *Ngrams { function NewNgrams (line 41) | func NewNgrams(exclusive bool) *Ngrams { function getNgrams (line 86) | func getNgrams(n int, text []string, exclusive bool) *Ngrams { function getWordNgrams (line 94) | func getWordNgrams(n int, sentences []string, exclusive bool) *Ngrams { function lcs (line 99) | func lcs(x, y []string) [][]int { function reconLcs (line 117) | func reconLcs(x, y []string, exclusive bool) *Ngrams { function rougeN (line 142) | func rougeN(evaluatedSentences, referenceSentences []string, n int, rawR... function calculateRougeN (line 162) | func calculateRougeN(evaluatedCount, referenceCount, overlappingCount in... function unionLcs (line 180) | func unionLcs(evaluatedSentences []string, referenceSentence string, pre... function rougeLSummaryLevel (line 201) | func rougeLSummaryLevel( FILE: internal/application/service/metric_hook.go type MetricList (line 14) | type MetricList struct method Append (line 53) | func (m *MetricList) Append(metricInput *types.MetricInput) { method Avg (line 65) | func (m *MetricList) Avg() *types.MetricResult { type HookMetric (line 85) | type HookMetric struct method recordInit (line 109) | func (h *HookMetric) recordInit(index int) { method recordQaPair (line 114) | func (h *HookMetric) recordQaPair(index int, qaPair *types.QAPair) { method recordSearchResult (line 119) | func (h *HookMetric) recordSearchResult(index int, searchResult []*typ... method recordRerankResult (line 124) | func (h *HookMetric) recordRerankResult(index int, rerankResult []*typ... method recordChatResponse (line 129) | func (h *HookMetric) recordChatResponse(index int, chatResponse *types... method recordFinish (line 134) | func (h *HookMetric) recordFinish(index int) { method MetricResult (line 162) | func (h *HookMetric) MetricResult() *types.MetricResult { type qaPairMetric (line 92) | type qaPairMetric struct function NewHookMetric (line 100) | func NewHookMetric(capacity int) *HookMetric { FILE: internal/application/service/model.go type modelService (line 21) | type modelService struct method CreateModel (line 39) | func (s *modelService) CreateModel(ctx context.Context, model *types.M... method GetModelByID (line 100) | func (s *modelService) GetModelByID(ctx context.Context, id string) (*... method ListModels (line 148) | func (s *modelService) ListModels(ctx context.Context) ([]*types.Model... method UpdateModel (line 168) | func (s *modelService) UpdateModel(ctx context.Context, model *types.M... method DeleteModel (line 201) | func (s *modelService) DeleteModel(ctx context.Context, id string) err... method GetEmbeddingModel (line 237) | func (s *modelService) GetEmbeddingModel(ctx context.Context, modelId ... method GetEmbeddingModelForTenant (line 275) | func (s *modelService) GetEmbeddingModelForTenant(ctx context.Context,... method GetRerankModel (line 330) | func (s *modelService) GetRerankModel(ctx context.Context, modelId str... method GetChatModel (line 364) | func (s *modelService) GetChatModel(ctx context.Context, modelId strin... method GetVLMModel (line 410) | func (s *modelService) GetVLMModel(ctx context.Context, modelId string... function NewModelService (line 28) | func NewModelService(repo interfaces.ModelRepository, ollamaService *oll... FILE: internal/application/service/ocr_sanitizer.go function sanitizeOCRText (line 29) | func sanitizeOCRText(raw string) string { function stripMarkdownCodeBlock (line 62) | func stripMarkdownCodeBlock(text string) string { function looksLikeHTML (line 71) | func looksLikeHTML(text string) bool { function ocrHTMLToMarkdown (line 88) | func ocrHTMLToMarkdown(content string) string { function isKnownEmptyReply (line 100) | func isKnownEmptyReply(text string) bool { FILE: internal/application/service/ocr_sanitizer_test.go function TestSanitizeOCRText (line 5) | func TestSanitizeOCRText(t *testing.T) { function TestStripMarkdownCodeBlock (line 104) | func TestStripMarkdownCodeBlock(t *testing.T) { function TestLooksLikeHTML (line 142) | func TestLooksLikeHTML(t *testing.T) { function TestIsKnownEmptyReply (line 190) | func TestIsKnownEmptyReply(t *testing.T) { FILE: internal/application/service/organization.go constant DefaultInviteCodeValidityDays (line 19) | DefaultInviteCodeValidityDays = 7 constant DefaultMemberLimit (line 22) | DefaultMemberLimit = 200 type organizationService (line 41) | type organizationService struct method CreateOrganization (line 73) | func (s *organizationService) CreateOrganization(ctx context.Context, ... method GetOrganization (line 134) | func (s *organizationService) GetOrganization(ctx context.Context, id ... method GetOrganizationByInviteCode (line 146) | func (s *organizationService) GetOrganizationByInviteCode(ctx context.... method ListUserOrganizations (line 161) | func (s *organizationService) ListUserOrganizations(ctx context.Contex... method UpdateOrganization (line 166) | func (s *organizationService) UpdateOrganization(ctx context.Context, ... method SearchSearchableOrganizations (line 227) | func (s *organizationService) SearchSearchableOrganizations(ctx contex... method JoinByOrganizationID (line 273) | func (s *organizationService) JoinByOrganizationID(ctx context.Context... method DeleteOrganization (line 312) | func (s *organizationService) DeleteOrganization(ctx context.Context, ... method AddMember (line 335) | func (s *organizationService) AddMember(ctx context.Context, orgID str... method RemoveMember (line 370) | func (s *organizationService) RemoveMember(ctx context.Context, orgID ... method UpdateMemberRole (line 398) | func (s *organizationService) UpdateMemberRole(ctx context.Context, or... method ListMembers (line 425) | func (s *organizationService) ListMembers(ctx context.Context, orgID s... method GetMember (line 430) | func (s *organizationService) GetMember(ctx context.Context, orgID str... method GenerateInviteCode (line 442) | func (s *organizationService) GenerateInviteCode(ctx context.Context, ... method JoinByInviteCode (line 474) | func (s *organizationService) JoinByInviteCode(ctx context.Context, in... method IsOrgAdmin (line 533) | func (s *organizationService) IsOrgAdmin(ctx context.Context, orgID st... method GetUserRoleInOrg (line 545) | func (s *organizationService) GetUserRoleInOrg(ctx context.Context, or... method SubmitJoinRequest (line 575) | func (s *organizationService) SubmitJoinRequest(ctx context.Context, o... method ListJoinRequests (line 629) | func (s *organizationService) ListJoinRequests(ctx context.Context, or... method CountPendingJoinRequests (line 634) | func (s *organizationService) CountPendingJoinRequests(ctx context.Con... method ReviewJoinRequest (line 640) | func (s *organizationService) ReviewJoinRequest(ctx context.Context, o... method RequestRoleUpgrade (line 710) | func (s *organizationService) RequestRoleUpgrade(ctx context.Context, ... method GetPendingUpgradeRequest (line 766) | func (s *organizationService) GetPendingUpgradeRequest(ctx context.Con... function NewOrganizationService (line 49) | func NewOrganizationService( function resolveInviteExpiry (line 64) | func resolveInviteExpiry(validityDays int, now time.Time) *time.Time { function generateInviteCode (line 557) | func generateInviteCode() string { FILE: internal/application/service/retriever/composite.go type engineInfo (line 21) | type engineInfo struct type CompositeRetrieveEngine (line 28) | type CompositeRetrieveEngine struct method Retrieve (line 34) | func (c *CompositeRetrieveEngine) Retrieve(ctx context.Context, method SupportRetriever (line 93) | func (c *CompositeRetrieveEngine) SupportRetriever(r types.RetrieverTy... method BatchUpdateChunkEnabledStatus (line 106) | func (c *CompositeRetrieveEngine) BatchUpdateChunkEnabledStatus( method BatchUpdateChunkTagID (line 119) | func (c *CompositeRetrieveEngine) BatchUpdateChunkTagID( method concurrentExecWithError (line 169) | func (c *CompositeRetrieveEngine) concurrentExecWithError( method Index (line 200) | func (c *CompositeRetrieveEngine) Index(ctx context.Context, method BatchIndex (line 221) | func (c *CompositeRetrieveEngine) BatchIndex(ctx context.Context, method DeleteByChunkIDList (line 249) | func (c *CompositeRetrieveEngine) DeleteByChunkIDList(ctx context.Cont... method DeleteBySourceIDList (line 263) | func (c *CompositeRetrieveEngine) DeleteBySourceIDList(ctx context.Con... method CopyIndices (line 277) | func (c *CompositeRetrieveEngine) CopyIndices( method DeleteByKnowledgeIDList (line 304) | func (c *CompositeRetrieveEngine) DeleteByKnowledgeIDList(ctx context.... method EstimateStorageSize (line 318) | func (c *CompositeRetrieveEngine) EstimateStorageSize(ctx context.Cont... function NewCompositeRetrieveEngine (line 65) | func NewCompositeRetrieveEngine( function concurrentRetrieve (line 133) | func concurrentRetrieve( FILE: internal/application/service/retriever/keywords_vector_hybrid_indexer.go type KeywordsVectorHybridRetrieveEngineService (line 18) | type KeywordsVectorHybridRetrieveEngineService struct method EngineType (line 32) | func (v *KeywordsVectorHybridRetrieveEngineService) EngineType() types... method Retrieve (line 37) | func (v *KeywordsVectorHybridRetrieveEngineService) Retrieve(ctx conte... method Index (line 45) | func (v *KeywordsVectorHybridRetrieveEngineService) Index(ctx context.... method BatchIndex (line 63) | func (v *KeywordsVectorHybridRetrieveEngineService) BatchIndex(ctx con... method concurrentBatchSave (line 115) | func (v *KeywordsVectorHybridRetrieveEngineService) concurrentBatchSave( method boundedConcurrentBatchSave (line 137) | func (v *KeywordsVectorHybridRetrieveEngineService) boundedConcurrentB... method concurrentBatchSaveNoEmbedding (line 169) | func (v *KeywordsVectorHybridRetrieveEngineService) concurrentBatchSav... method boundedConcurrentBatchSaveNoEmbedding (line 184) | func (v *KeywordsVectorHybridRetrieveEngineService) boundedConcurrentB... method DeleteByChunkIDList (line 209) | func (v *KeywordsVectorHybridRetrieveEngineService) DeleteByChunkIDLis... method DeleteBySourceIDList (line 216) | func (v *KeywordsVectorHybridRetrieveEngineService) DeleteBySourceIDLi... method DeleteByKnowledgeIDList (line 223) | func (v *KeywordsVectorHybridRetrieveEngineService) DeleteByKnowledgeI... method Support (line 230) | func (v *KeywordsVectorHybridRetrieveEngineService) Support() []types.... method EstimateStorageSize (line 235) | func (v *KeywordsVectorHybridRetrieveEngineService) EstimateStorageSize( method CopyIndices (line 254) | func (v *KeywordsVectorHybridRetrieveEngineService) CopyIndices( method BatchUpdateChunkEnabledStatus (line 272) | func (v *KeywordsVectorHybridRetrieveEngineService) BatchUpdateChunkEn... method BatchUpdateChunkTagID (line 280) | func (v *KeywordsVectorHybridRetrieveEngineService) BatchUpdateChunkTa... function NewKVHybridRetrieveEngine (line 25) | func NewKVHybridRetrieveEngine(indexRepository interfaces.RetrieveEngine... FILE: internal/application/service/retriever/registry.go type RetrieveEngineRegistry (line 12) | type RetrieveEngineRegistry struct method Register (line 25) | func (r *RetrieveEngineRegistry) Register(repo interfaces.RetrieveEngi... method GetRetrieveEngineService (line 38) | func (r *RetrieveEngineRegistry) GetRetrieveEngineService(repoType typ... method GetAllRetrieveEngineServices (line 53) | func (r *RetrieveEngineRegistry) GetAllRetrieveEngineServices() []inte... function NewRetrieveEngineRegistry (line 18) | func NewRetrieveEngineRegistry() interfaces.RetrieveEngineRegistry { FILE: internal/application/service/session.go function generateEventID (line 22) | func generateEventID(suffix string) string { type sessionService (line 27) | type sessionService struct method CreateSession (line 79) | func (s *sessionService) CreateSession(ctx context.Context, session *t... method GetSession (line 101) | func (s *sessionService) GetSession(ctx context.Context, id string) (*... method GetSessionsByTenant (line 129) | func (s *sessionService) GetSessionsByTenant(ctx context.Context) ([]*... method GetPagedSessionsByTenant (line 150) | func (s *sessionService) GetPagedSessionsByTenant(ctx context.Context, method UpdateSession (line 170) | func (s *sessionService) UpdateSession(ctx context.Context, session *t... method DeleteSession (line 192) | func (s *sessionService) DeleteSession(ctx context.Context, id string)... method BatchDeleteSessions (line 242) | func (s *sessionService) BatchDeleteSessions(ctx context.Context, ids ... method DeleteAllSessions (line 289) | func (s *sessionService) DeleteAllSessions(ctx context.Context) error { method GenerateTitle (line 335) | func (s *sessionService) GenerateTitle(ctx context.Context, method GenerateTitleAsync (line 446) | func (s *sessionService) GenerateTitleAsync( method ClearContext (line 514) | func (s *sessionService) ClearContext(ctx context.Context, sessionID s... function NewSessionService (line 45) | func NewSessionService(cfg *config.Config, FILE: internal/application/service/session_agent_qa.go method AgentQA (line 23) | func (s *sessionService) AgentQA( method buildAgentConfig (line 195) | func (s *sessionService) buildAgentConfig( method configureSkillsFromAgent (line 272) | func (s *sessionService) configureSkillsFromAgent( method getContextManagerForSession (line 323) | func (s *sessionService) getContextManagerForSession( method getContextForSession (line 350) | func (s *sessionService) getContextForSession( FILE: internal/application/service/session_knowledge_qa.go method KnowledgeQA (line 21) | func (s *sessionService) KnowledgeQA( method selectChatModelID (line 206) | func (s *sessionService) selectChatModelID( method resolveKnowledgeBasesFromAgent (line 295) | func (s *sessionService) resolveKnowledgeBasesFromAgent( method buildSearchTargets (line 368) | func (s *sessionService) buildSearchTargets( method KnowledgeQAByEvent (line 465) | func (s *sessionService) KnowledgeQAByEvent(ctx context.Context, method SearchKnowledge (line 525) | func (s *sessionService) SearchKnowledge(ctx context.Context, method handleFallbackResponse (line 650) | func (s *sessionService) handleFallbackResponse(ctx context.Context, cha... method handleFixedFallback (line 659) | func (s *sessionService) handleFixedFallback(ctx context.Context, chatMa... method handleModelFallback (line 666) | func (s *sessionService) handleModelFallback(ctx context.Context, chatMa... method renderFallbackPrompt (line 728) | func (s *sessionService) renderFallbackPrompt(ctx context.Context, chatM... method consumeFallbackStream (line 745) | func (s *sessionService) consumeFallbackStream( method emitFallbackAnswer (line 790) | func (s *sessionService) emitFallbackAnswer(ctx context.Context, chatMan... FILE: internal/application/service/session_qa_helpers.go method resolveKnowledgeBases (line 19) | func (s *sessionService) resolveKnowledgeBases( method resolveChatModelID (line 50) | func (s *sessionService) resolveChatModelID( method resolveRetrievalTenantID (line 76) | func (s *sessionService) resolveRetrievalTenantID( method applyAgentOverridesToChatManage (line 100) | func (s *sessionService) applyAgentOverridesToChatManage( FILE: internal/application/service/skill_service.go constant DefaultPreloadedSkillsDir (line 16) | DefaultPreloadedSkillsDir = "skills/preloaded" type skillService (line 19) | type skillService struct method ensureInitialized (line 68) | func (s *skillService) ensureInitialized(ctx context.Context) error { method ListPreloadedSkills (line 95) | func (s *skillService) ListPreloadedSkills(ctx context.Context) ([]*sk... method GetSkillByName (line 115) | func (s *skillService) GetSkillByName(ctx context.Context, name string... method GetPreloadedDir (line 133) | func (s *skillService) GetPreloadedDir() string { function NewSkillService (line 27) | func NewSkillService() interfaces.SkillService { function getPreloadedSkillsDir (line 38) | func getPreloadedSkillsDir() string { FILE: internal/application/service/tag.go type knowledgeTagService (line 21) | type knowledgeTagService struct method ListTags (line 56) | func (s *knowledgeTagService) ListTags( method CreateTag (line 138) | func (s *knowledgeTagService) CreateTag( method UpdateTag (line 185) | func (s *knowledgeTagService) UpdateTag( method DeleteTag (line 224) | func (s *knowledgeTagService) DeleteTag(ctx context.Context, id string... method enqueueIndexDeleteTask (line 343) | func (s *knowledgeTagService) enqueueIndexDeleteTask(ctx context.Context, method ProcessIndexDelete (line 370) | func (s *knowledgeTagService) ProcessIndexDelete(ctx context.Context, ... method FindOrCreateTagByName (line 420) | func (s *knowledgeTagService) FindOrCreateTagByName(ctx context.Contex... function NewKnowledgeTagService (line 33) | func NewKnowledgeTagService( FILE: internal/application/service/tenant.go type ListTenantsParams (line 27) | type ListTenantsParams struct type tenantService (line 35) | type tenantService struct method CreateTenant (line 45) | func (s *tenantService) CreateTenant(ctx context.Context, tenant *type... method GetTenantByID (line 92) | func (s *tenantService) GetTenantByID(ctx context.Context, id uint64) ... method ListTenants (line 110) | func (s *tenantService) ListTenants(ctx context.Context) ([]*types.Ten... method UpdateTenant (line 122) | func (s *tenantService) UpdateTenant(ctx context.Context, tenant *type... method DeleteTenant (line 151) | func (s *tenantService) DeleteTenant(ctx context.Context, id uint64) e... method UpdateAPIKey (line 189) | func (s *tenantService) UpdateAPIKey(ctx context.Context, id uint64) (... method generateApiKey (line 227) | func (r *tenantService) generateApiKey(tenantID uint64) string { method ExtractTenantIDFromAPIKey (line 259) | func (r *tenantService) ExtractTenantIDFromAPIKey(apiKey string) (uint... method ListAllTenants (line 302) | func (s *tenantService) ListAllTenants(ctx context.Context) ([]*types.... method SearchTenants (line 314) | func (s *tenantService) SearchTenants(ctx context.Context, keyword str... method GetTenantByIDForUser (line 333) | func (s *tenantService) GetTenantByIDForUser(ctx context.Context, tena... function NewTenantService (line 40) | func NewTenantService(repo interfaces.TenantRepository) interfaces.Tenan... FILE: internal/application/service/user.go function getJwtSecret (line 30) | func getJwtSecret() string { type userService (line 48) | type userService struct method Register (line 68) | func (s *userService) Register(ctx context.Context, req *types.Registe... method Login (line 131) | func (s *userService) Login(ctx context.Context, req *types.LoginReque... method GetUserByID (line 202) | func (s *userService) GetUserByID(ctx context.Context, id string) (*ty... method GetUserByEmail (line 207) | func (s *userService) GetUserByEmail(ctx context.Context, email string... method GetUserByUsername (line 212) | func (s *userService) GetUserByUsername(ctx context.Context, username ... method GetUserByTenantID (line 217) | func (s *userService) GetUserByTenantID(ctx context.Context, tenantID ... method UpdateUser (line 222) | func (s *userService) UpdateUser(ctx context.Context, user *types.User... method DeleteUser (line 228) | func (s *userService) DeleteUser(ctx context.Context, id string) error { method ChangePassword (line 233) | func (s *userService) ChangePassword(ctx context.Context, userID strin... method ValidatePassword (line 258) | func (s *userService) ValidatePassword(ctx context.Context, userID str... method GenerateTokens (line 268) | func (s *userService) GenerateTokens( method ValidateToken (line 330) | func (s *userService) ValidateToken(ctx context.Context, tokenString s... method RefreshToken (line 362) | func (s *userService) RefreshToken( method RevokeToken (line 413) | func (s *userService) RevokeToken(ctx context.Context, tokenString str... method GetCurrentUser (line 426) | func (s *userService) GetCurrentUser(ctx context.Context) (*types.User... method SearchUsers (line 436) | func (s *userService) SearchUsers(ctx context.Context, query string, l... function NewUserService (line 55) | func NewUserService( FILE: internal/application/service/web_search.go type WebSearchService (line 19) | type WebSearchService struct method CompressWithRAG (line 26) | func (s *WebSearchService) CompressWithRAG( method selectReferencesRoundRobin (line 132) | func (s *WebSearchService) selectReferencesRoundRobin( method consolidateReferencesByURL (line 181) | func (s *WebSearchService) consolidateReferencesByURL( method Search (line 247) | func (s *WebSearchService) Search( method filterBlacklist (line 312) | func (s *WebSearchService) filterBlacklist( method matchesBlacklistRule (line 342) | func (s *WebSearchService) matchesBlacklistRule(url, rule string) bool { function extractSourceURLFromContent (line 218) | func extractSourceURLFromContent(content string) string { function stripMarker (line 234) | func stripMarker(content string) string { function NewWebSearchService (line 289) | func NewWebSearchService(cfg *config.Config, registry *web_search.Regist... function ConvertWebSearchResults (line 366) | func ConvertWebSearchResults(webResults []*types.WebSearchResult) []*typ... FILE: internal/application/service/web_search/bing.go constant defaultBingSearchURL (line 21) | defaultBingSearchURL = "https://api.bing.microsoft.com/v7.0/search" type bingSafeSearch (line 30) | type bingSafeSearch constant bingSafeSearchOff (line 33) | bingSafeSearchOff bingSafeSearch = "Off" constant bingSafeSearchModerate (line 34) | bingSafeSearchModerate bingSafeSearch = "Moderate" constant bingSafeSearchStrict (line 35) | bingSafeSearchStrict bingSafeSearch = "Strict" type bingFreshness (line 38) | type bingFreshness constant bingFreshnessDay (line 41) | bingFreshnessDay = "Day" constant bingFreshnessWeek (line 42) | bingFreshnessWeek = "Week" constant bingFreshnessMonth (line 43) | bingFreshnessMonth = "Month" type BingProvider (line 47) | type BingProvider struct method Name (line 81) | func (p *BingProvider) Name() string { method Search (line 86) | func (p *BingProvider) Search( method doSearch (line 102) | func (p *BingProvider) doSearch(ctx context.Context, req *http.Request... method buildParams (line 188) | func (p *BingProvider) buildParams(ctx context.Context, query string, ... function NewBingProvider (line 54) | func NewBingProvider() (interfaces.WebSearchProvider, error) { function BingProviderInfo (line 70) | func BingProviderInfo() types.WebSearchProviderInfo { type bingSearchResponse (line 132) | type bingSearchResponse struct FILE: internal/application/service/web_search/bing_test.go function setBingEnv (line 16) | func setBingEnv(apiKey string) { function unsetBingEnv (line 20) | func unsetBingEnv() { function TestNewBingProvider (line 24) | func TestNewBingProvider(t *testing.T) { function TestBingProvider_Search (line 33) | func TestBingProvider_Search(t *testing.T) { function TestBingProvider_Search_Error (line 109) | func TestBingProvider_Search_Error(t *testing.T) { function TestBingProvider_Search_InvalidJSON (line 129) | func TestBingProvider_Search_InvalidJSON(t *testing.T) { FILE: internal/application/service/web_search/duckduckgo.go type DuckDuckGoProvider (line 21) | type DuckDuckGoProvider struct method Name (line 46) | func (p *DuckDuckGoProvider) Name() string { method Search (line 51) | func (p *DuckDuckGoProvider) Search( method searchHTML (line 77) | func (p *DuckDuckGoProvider) searchHTML( method searchAPI (line 149) | func (p *DuckDuckGoProvider) searchAPI( function NewDuckDuckGoProvider (line 26) | func NewDuckDuckGoProvider() (interfaces.WebSearchProvider, error) { function DuckDuckGoProviderInfo (line 35) | func DuckDuckGoProviderInfo() types.WebSearchProviderInfo { function cleanDDGURL (line 236) | func cleanDDGURL(urlStr string) string { function extractTitle (line 258) | func extractTitle(text string) string { FILE: internal/application/service/web_search/duckduckgo_test.go type testRoundTripper (line 16) | type testRoundTripper struct method RoundTrip (line 21) | func (t *testRoundTripper) RoundTrip(req *http.Request) (*http.Respons... function newTestClient (line 35) | func newTestClient(ts *httptest.Server) *http.Client { function TestDuckDuckGoProvider_Name (line 46) | func TestDuckDuckGoProvider_Name(t *testing.T) { function TestDuckDuckGoProvider (line 53) | func TestDuckDuckGoProvider(t *testing.T) { function TestDuckDuckGoProvider_Fallback (line 106) | func TestDuckDuckGoProvider_Fallback(t *testing.T) { function TestDuckDuckGoProvider_Search_Real (line 165) | func TestDuckDuckGoProvider_Search_Real(t *testing.T) { function TestDuckDuckGo_SearchChinese (line 234) | func TestDuckDuckGo_SearchChinese(t *testing.T) { FILE: internal/application/service/web_search/google.go type GoogleProvider (line 17) | type GoogleProvider struct method Name (line 70) | func (p *GoogleProvider) Name() string { method Search (line 75) | func (p *GoogleProvider) Search( function NewGoogleProvider (line 25) | func NewGoogleProvider() (interfaces.WebSearchProvider, error) { function GoogleProviderInfo (line 59) | func GoogleProviderInfo() types.WebSearchProviderInfo { FILE: internal/application/service/web_search/google_test.go function setGoogleEnv (line 14) | func setGoogleEnv(apiURL string) { function unsetGoogleEnv (line 18) | func unsetGoogleEnv() { function TestNewGoogleProvider (line 22) | func TestNewGoogleProvider(t *testing.T) { function TestGoogleProvider_Name (line 66) | func TestGoogleProvider_Name(t *testing.T) { function TestGoogleProvider_Search (line 78) | func TestGoogleProvider_Search(t *testing.T) { function TestGoogleProvider_Search_EmptyQuery (line 158) | func TestGoogleProvider_Search_EmptyQuery(t *testing.T) { function TestGoogleProvider_Search_NoResults (line 179) | func TestGoogleProvider_Search_NoResults(t *testing.T) { function TestGoogleProvider_Search_ErrorResponse (line 210) | func TestGoogleProvider_Search_ErrorResponse(t *testing.T) { function TestGoogleProvider_Search_MaxResults (line 234) | func TestGoogleProvider_Search_MaxResults(t *testing.T) { FILE: internal/application/service/web_search/registry.go type ProviderFactory (line 12) | type ProviderFactory type ProviderRegistration (line 15) | type ProviderRegistration struct type Registry (line 21) | type Registry struct method Register (line 34) | func (r *Registry) Register(info types.WebSearchProviderInfo, factory ... method GetRegistration (line 44) | func (r *Registry) GetRegistration(id string) (*ProviderRegistration, ... method GetAllProviderInfos (line 52) | func (r *Registry) GetAllProviderInfos() []types.WebSearchProviderInfo { method CreateProvider (line 63) | func (r *Registry) CreateProvider(id string) (interfaces.WebSearchProv... method CreateAllProviders (line 74) | func (r *Registry) CreateAllProviders() (map[string]interfaces.WebSear... function NewRegistry (line 27) | func NewRegistry() *Registry { FILE: internal/application/service/web_search_state.go type webSearchStateService (line 15) | type webSearchStateService struct method GetWebSearchTempKBState (line 35) | func (s *webSearchStateService) GetWebSearchTempKBState( method SaveWebSearchTempKBState (line 61) | func (s *webSearchStateService) SaveWebSearchTempKBState( method DeleteWebSearchTempKBState (line 85) | func (s *webSearchStateService) DeleteWebSearchTempKBState(ctx context... function NewWebSearchStateService (line 22) | func NewWebSearchStateService( FILE: internal/common/tools.go function ToInterfaceSlice (line 20) | func ToInterfaceSlice[T any](slice []T) []interface{} { function StringSliceJoin (line 29) | func StringSliceJoin(slice []string) string { function GetAttrs (line 37) | func GetAttrs[A, B any](extract func(A) B, attrs ...A) []B { function Deduplicate (line 48) | func Deduplicate[T any, K comparable](keyFunc func(T) K, items ...T) []T { type ScoreComparable (line 60) | type ScoreComparable interface function DeduplicateWithScore (line 68) | func DeduplicateWithScore[T ScoreComparable, K comparable](keyFunc func(... function ParseLLMJsonResponse (line 99) | func ParseLLMJsonResponse(content string, target interface{}) error { function CleanInvalidUTF8 (line 120) | func CleanInvalidUTF8(s string) string { constant pipelineLogValueMaxRune (line 144) | pipelineLogValueMaxRune = 300 constant defaultPipelineStage (line 145) | defaultPipelineStage = "PIPELINE" constant defaultPipelineAction (line 146) | defaultPipelineAction = "info" constant pipelineLogPrefix (line 147) | pipelineLogPrefix = "[PIPELINE]" constant pipelineTruncateEll (line 148) | pipelineTruncateEll = "..." function PipelineLog (line 152) | func PipelineLog(stage, action string, fields map[string]interface{}) st... function PipelineInfo (line 185) | func PipelineInfo(ctx context.Context, stage, action string, fields map[... function PipelineWarn (line 190) | func PipelineWarn(ctx context.Context, stage, action string, fields map[... function PipelineError (line 195) | func PipelineError(ctx context.Context, stage, action string, fields map... function formatPipelineLogValue (line 199) | func formatPipelineLogValue(value interface{}) string { function truncatePipelineValue (line 213) | func truncatePipelineValue(content string) string { function TruncateForLog (line 222) | func TruncateForLog(content string) string { FILE: internal/config/config.go type Config (line 18) | type Config struct type IMConfig (line 36) | type IMConfig struct type DocReaderConfig (line 61) | type DocReaderConfig struct type VectorDatabaseConfig (line 68) | type VectorDatabaseConfig struct type ConversationConfig (line 73) | type ConversationConfig struct type SummaryConfig (line 108) | type SummaryConfig struct type ServerConfig (line 131) | type ServerConfig struct type KnowledgeBaseConfig (line 139) | type KnowledgeBaseConfig struct type ImageProcessingConfig (line 148) | type ImageProcessingConfig struct type TenantConfig (line 153) | type TenantConfig struct type PromptTemplateI18n (line 162) | type PromptTemplateI18n struct type PromptTemplate (line 173) | type PromptTemplate struct type PromptTemplatesConfig (line 190) | type PromptTemplatesConfig struct function DefaultTemplate (line 208) | func DefaultTemplate(templates []PromptTemplate) *PromptTemplate { function DefaultTemplateByMode (line 221) | func DefaultTemplateByMode(templates []PromptTemplate, mode string) *Pro... function LocalizeTemplates (line 239) | func LocalizeTemplates(templates []PromptTemplate, locale string) []Prom... type ModelConfig (line 270) | type ModelConfig struct type StreamManagerConfig (line 278) | type StreamManagerConfig struct type RedisConfig (line 285) | type RedisConfig struct type ExtractManagerConfig (line 295) | type ExtractManagerConfig struct type FebriText (line 301) | type FebriText struct function LoadConfig (line 307) | func LoadConfig() (*Config, error) { function backfillConversationDefaults (line 388) | func backfillConversationDefaults(cfg *Config) { function FindTemplateByID (line 462) | func FindTemplateByID(pt *PromptTemplatesConfig, id string) *PromptTempl... function resolveBuiltinAgentPromptIDs (line 491) | func resolveBuiltinAgentPromptIDs(pt *PromptTemplatesConfig) { type promptTemplateFile (line 501) | type promptTemplateFile struct function loadPromptTemplates (line 506) | func loadPromptTemplates(configDir string) (*PromptTemplatesConfig, erro... type WebSearchConfig (line 554) | type WebSearchConfig struct FILE: internal/container/cleanup.go type ResourceCleaner (line 13) | type ResourceCleaner struct method Register (line 27) | func (c *ResourceCleaner) Register(cleanup types.CleanupFunc) { method RegisterWithName (line 39) | func (c *ResourceCleaner) RegisterWithName(name string, cleanup types.... method Cleanup (line 60) | func (c *ResourceCleaner) Cleanup(ctx context.Context) (errs []error) { method Reset (line 81) | func (c *ResourceCleaner) Reset() { function NewResourceCleaner (line 19) | func NewResourceCleaner() interfaces.ResourceCleaner { FILE: internal/container/container.go function BuildContainer (line 84) | func BuildContainer(container *dig.Container) *dig.Container { function must (line 269) | func must(err error) { function initTracer (line 283) | func initTracer() (*tracing.Tracer, error) { function initRedisClient (line 287) | func initRedisClient() (*redis.Client, error) { function initContextStorage (line 313) | func initContextStorage(redisClient *redis.Client) (llmcontext.ContextSt... function initDatabase (line 334) | func initDatabase(cfg *config.Config) (*gorm.DB, error) { function resolveStorageProviderPending (line 467) | func resolveStorageProviderPending(db *gorm.DB) { function initFileService (line 494) | func initFileService(cfg *config.Config) (interfaces.FileService, error) { function initRetrieveEngineRegistry (line 592) | func initRetrieveEngineRegistry(db *gorm.DB, cfg *config.Config) (interf... function initAntsPool (line 799) | func initAntsPool(cfg *config.Config) (*ants.Pool, error) { function registerPoolCleanup (line 818) | func registerPoolCleanup(pool *ants.Pool, cleaner interfaces.ResourceCle... function registerTracerCleanup (line 830) | func registerTracerCleanup(tracer *tracing.Tracer, cleaner interfaces.Re... function initDocReaderClient (line 839) | func initDocReaderClient(cfg *config.Config) (interfaces.DocumentReader,... function initOllamaService (line 868) | func initOllamaService() (*ollama.OllamaService, error) { function initNeo4jClient (line 873) | func initNeo4jClient() (neo4j.Driver, error) { function NewDuckDB (line 914) | func NewDuckDB() (*sql.DB, error) { function registerWebSearchProviders (line 936) | func registerWebSearchProviders(registry *web_search.Registry) { function registerIMAdapterFactories (line 955) | func registerIMAdapterFactories(imService *imPkg.Service) { function parseCredentials (line 1104) | func parseCredentials(data []byte) (map[string]interface{}, error) { function getString (line 1116) | func getString(creds map[string]interface{}, key string) string { FILE: internal/database/migration.go function CachedMigrationVersion (line 26) | func CachedMigrationVersion() (uint, bool, bool) { function setMigrationVersion (line 30) | func setMigrationVersion(version uint, dirty bool) { function RunMigrations (line 40) | func RunMigrations(dsn string) error { type MigrationOptions (line 45) | type MigrationOptions struct function RunMigrationsWithOptions (line 52) | func RunMigrationsWithOptions(dsn string, opts MigrationOptions) error { function recoverFromDirtyState (line 184) | func recoverFromDirtyState(ctx context.Context, m *migrate.Migrate, dirt... function GetMigrationVersion (line 224) | func GetMigrationVersion() (uint, bool, error) { FILE: internal/errors/errors.go type ErrorCode (line 9) | type ErrorCode constant ErrBadRequest (line 14) | ErrBadRequest ErrorCode = 1000 constant ErrUnauthorized (line 15) | ErrUnauthorized ErrorCode = 1001 constant ErrForbidden (line 16) | ErrForbidden ErrorCode = 1002 constant ErrNotFound (line 17) | ErrNotFound ErrorCode = 1003 constant ErrMethodNotAllowed (line 18) | ErrMethodNotAllowed ErrorCode = 1004 constant ErrConflict (line 19) | ErrConflict ErrorCode = 1005 constant ErrTooManyRequests (line 20) | ErrTooManyRequests ErrorCode = 1006 constant ErrInternalServer (line 21) | ErrInternalServer ErrorCode = 1007 constant ErrServiceUnavailable (line 22) | ErrServiceUnavailable ErrorCode = 1008 constant ErrTimeout (line 23) | ErrTimeout ErrorCode = 1009 constant ErrValidation (line 24) | ErrValidation ErrorCode = 1010 constant ErrTenantNotFound (line 27) | ErrTenantNotFound ErrorCode = 2000 constant ErrTenantAlreadyExists (line 28) | ErrTenantAlreadyExists ErrorCode = 2001 constant ErrTenantInactive (line 29) | ErrTenantInactive ErrorCode = 2002 constant ErrTenantNameRequired (line 30) | ErrTenantNameRequired ErrorCode = 2003 constant ErrTenantInvalidStatus (line 31) | ErrTenantInvalidStatus ErrorCode = 2004 constant ErrAgentMissingThinkingModel (line 34) | ErrAgentMissingThinkingModel ErrorCode = 2100 constant ErrAgentMissingAllowedTools (line 35) | ErrAgentMissingAllowedTools ErrorCode = 2101 constant ErrAgentInvalidMaxIterations (line 36) | ErrAgentInvalidMaxIterations ErrorCode = 2102 constant ErrAgentInvalidTemperature (line 37) | ErrAgentInvalidTemperature ErrorCode = 2103 type AppError (line 43) | type AppError struct method Error (line 51) | func (e *AppError) Error() string { method WithDetails (line 56) | func (e *AppError) WithDetails(details any) *AppError { function NewBadRequestError (line 62) | func NewBadRequestError(message string) *AppError { function NewUnauthorizedError (line 71) | func NewUnauthorizedError(message string) *AppError { function NewForbiddenError (line 80) | func NewForbiddenError(message string) *AppError { function NewNotFoundError (line 89) | func NewNotFoundError(message string) *AppError { function NewConflictError (line 98) | func NewConflictError(message string) *AppError { function NewInternalServerError (line 107) | func NewInternalServerError(message string) *AppError { function NewValidationError (line 119) | func NewValidationError(message string) *AppError { function NewTenantNotFoundError (line 128) | func NewTenantNotFoundError() *AppError { function NewTenantAlreadyExistsError (line 137) | func NewTenantAlreadyExistsError() *AppError { function NewTenantInactiveError (line 146) | func NewTenantInactiveError() *AppError { function NewAgentMissingThinkingModelError (line 155) | func NewAgentMissingThinkingModelError() *AppError { function NewAgentMissingAllowedToolsError (line 163) | func NewAgentMissingAllowedToolsError() *AppError { function NewAgentInvalidMaxIterationsError (line 171) | func NewAgentInvalidMaxIterationsError() *AppError { function NewAgentInvalidTemperatureError (line 179) | func NewAgentInvalidTemperatureError() *AppError { function IsAppError (line 188) | func IsAppError(err error) (*AppError, bool) { FILE: internal/event/adapter.go type EventBusAdapter (line 11) | type EventBusAdapter struct method On (line 21) | func (a *EventBusAdapter) On(eventType types.EventType, handler types.... method Emit (line 43) | func (a *EventBusAdapter) Emit(ctx context.Context, evt types.Event) e... function NewEventBusAdapter (line 16) | func NewEventBusAdapter(bus *EventBus) types.EventBusInterface { method AsEventBusInterface (line 57) | func (eb *EventBus) AsEventBusInterface() types.EventBusInterface { FILE: internal/event/event.go type EventType (line 12) | type EventType constant EventQueryReceived (line 16) | EventQueryReceived EventType = "query.received" constant EventQueryValidated (line 17) | EventQueryValidated EventType = "query.validated" constant EventQueryPreprocess (line 18) | EventQueryPreprocess EventType = "query.preprocess" constant EventQueryRewrite (line 19) | EventQueryRewrite EventType = "query.rewrite" constant EventQueryRewritten (line 20) | EventQueryRewritten EventType = "query.rewritten" constant EventRetrievalStart (line 23) | EventRetrievalStart EventType = "retrieval.start" constant EventRetrievalVector (line 24) | EventRetrievalVector EventType = "retrieval.vector" constant EventRetrievalKeyword (line 25) | EventRetrievalKeyword EventType = "retrieval.keyword" constant EventRetrievalEntity (line 26) | EventRetrievalEntity EventType = "retrieval.entity" constant EventRetrievalComplete (line 27) | EventRetrievalComplete EventType = "retrieval.complete" constant EventRerankStart (line 30) | EventRerankStart EventType = "rerank.start" constant EventRerankComplete (line 31) | EventRerankComplete EventType = "rerank.complete" constant EventMergeStart (line 34) | EventMergeStart EventType = "merge.start" constant EventMergeComplete (line 35) | EventMergeComplete EventType = "merge.complete" constant EventChatStart (line 38) | EventChatStart EventType = "chat.start" constant EventChatComplete (line 39) | EventChatComplete EventType = "chat.complete" constant EventChatStream (line 40) | EventChatStream EventType = "chat.stream" constant EventAgentQuery (line 43) | EventAgentQuery EventType = "agent.query" constant EventAgentPlan (line 44) | EventAgentPlan EventType = "agent.plan" constant EventAgentStep (line 45) | EventAgentStep EventType = "agent.step" constant EventAgentTool (line 46) | EventAgentTool EventType = "agent.tool" constant EventAgentComplete (line 47) | EventAgentComplete EventType = "agent.complete" constant EventAgentThought (line 50) | EventAgentThought EventType = "thought" constant EventAgentToolCall (line 51) | EventAgentToolCall EventType = "tool_call" constant EventAgentToolResult (line 52) | EventAgentToolResult EventType = "tool_result" constant EventAgentReflection (line 53) | EventAgentReflection EventType = "reflection" constant EventAgentReferences (line 54) | EventAgentReferences EventType = "references" constant EventAgentFinalAnswer (line 55) | EventAgentFinalAnswer EventType = "final_answer" constant EventError (line 58) | EventError EventType = "error" constant EventSessionTitle (line 61) | EventSessionTitle EventType = "session_title" constant EventStop (line 64) | EventStop EventType = "stop" type Event (line 68) | type Event struct type EventHandler (line 78) | type EventHandler type EventBus (line 81) | type EventBus struct method On (line 105) | func (eb *EventBus) On(eventType EventType, handler EventHandler) { method Off (line 113) | func (eb *EventBus) Off(eventType EventType) { method Emit (line 123) | func (eb *EventBus) Emit(ctx context.Context, event Event) error { method EmitAndWait (line 162) | func (eb *EventBus) EmitAndWait(ctx context.Context, event Event) error { method HasHandlers (line 205) | func (eb *EventBus) HasHandlers(eventType EventType) bool { method GetHandlerCount (line 214) | func (eb *EventBus) GetHandlerCount(eventType EventType) int { method Clear (line 225) | func (eb *EventBus) Clear() { function NewEventBus (line 88) | func NewEventBus() *EventBus { function NewAsyncEventBus (line 96) | func NewAsyncEventBus() *EventBus { FILE: internal/event/event_data.go type QueryData (line 6) | type QueryData struct type RetrievalData (line 15) | type RetrievalData struct type RerankData (line 28) | type RerankData struct type MergeData (line 40) | type MergeData struct type ChatData (line 50) | type ChatData struct type ErrorData (line 62) | type ErrorData struct function NewEvent (line 72) | func NewEvent(eventType EventType, data interface{}) Event { method WithSessionID (line 81) | func (e Event) WithSessionID(sessionID string) Event { method WithRequestID (line 87) | func (e Event) WithRequestID(requestID string) Event { method WithMetadata (line 93) | func (e Event) WithMetadata(key string, value interface{}) Event { type AgentPlanData (line 102) | type AgentPlanData struct type AgentStepData (line 109) | type AgentStepData struct type AgentActionData (line 117) | type AgentActionData struct type AgentQueryData (line 128) | type AgentQueryData struct type AgentCompleteData (line 136) | type AgentCompleteData struct type AgentThoughtData (line 152) | type AgentThoughtData struct type AgentToolCallData (line 159) | type AgentToolCallData struct type AgentToolResultData (line 167) | type AgentToolResultData struct type AgentReferencesData (line 179) | type AgentReferencesData struct type AgentFinalAnswerData (line 185) | type AgentFinalAnswerData struct type AgentReflectionData (line 192) | type AgentReflectionData struct type SessionTitleData (line 200) | type SessionTitleData struct type StopData (line 206) | type StopData struct FILE: internal/event/example_test.go function ExampleEventBus_basic (line 11) | func ExampleEventBus_basic() { function ExampleEventBus_middleware (line 32) | func ExampleEventBus_middleware() { function ExampleEventBus_pipeline (line 61) | func ExampleEventBus_pipeline() { function TestEventBus_MultipleHandlers (line 127) | func TestEventBus_MultipleHandlers(t *testing.T) { function TestEventBus_Async (line 162) | func TestEventBus_Async(t *testing.T) { function TestEventBus_EmitAndWait (line 200) | func TestEventBus_EmitAndWait(t *testing.T) { function BenchmarkEventBus_Emit (line 231) | func BenchmarkEventBus_Emit(b *testing.B) { FILE: internal/event/global.go function GetGlobalEventBus (line 16) | func GetGlobalEventBus() *EventBus { function SetGlobalEventBus (line 25) | func SetGlobalEventBus(bus *EventBus) { function On (line 30) | func On(eventType EventType, handler EventHandler) { function Off (line 35) | func Off(eventType EventType) { function Emit (line 40) | func Emit(ctx context.Context, event Event) error { function EmitAndWait (line 45) | func EmitAndWait(ctx context.Context, event Event) error { function HasHandlers (line 50) | func HasHandlers(eventType EventType) bool { function Clear (line 55) | func Clear() { FILE: internal/event/middleware.go type Middleware (line 12) | type Middleware function WithLogging (line 15) | func WithLogging() Middleware { function WithTiming (line 35) | func WithTiming() Middleware { function WithRecovery (line 56) | func WithRecovery() Middleware { type PanicError (line 72) | type PanicError struct method Error (line 76) | func (e *PanicError) Error() string { function Chain (line 81) | func Chain(middlewares ...Middleware) Middleware { function ApplyMiddleware (line 92) | func ApplyMiddleware(handler EventHandler, middlewares ...Middleware) Ev... FILE: internal/handler/auth.go type AuthHandler (line 21) | type AuthHandler struct method Register (line 53) | func (h *AuthHandler) Register(c *gin.Context) { method Login (line 116) | func (h *AuthHandler) Login(c *gin.Context) { method Logout (line 170) | func (h *AuthHandler) Logout(c *gin.Context) { method RefreshToken (line 221) | func (h *AuthHandler) RefreshToken(c *gin.Context) { method GetCurrentUser (line 265) | func (h *AuthHandler) GetCurrentUser(c *gin.Context) { method ChangePassword (line 308) | func (h *AuthHandler) ChangePassword(c *gin.Context) { method ValidateToken (line 360) | func (h *AuthHandler) ValidateToken(c *gin.Context) { function NewAuthHandler (line 33) | func NewAuthHandler(configInfo *config.Config, FILE: internal/handler/chunk.go type ChunkHandler (line 17) | type ChunkHandler struct method effectiveCtxForKnowledge (line 30) | func (h *ChunkHandler) effectiveCtxForKnowledge(c *gin.Context, knowle... method GetChunkByIDOnly (line 80) | func (h *ChunkHandler) GetChunkByIDOnly(c *gin.Context) { method ListKnowledgeChunks (line 135) | func (h *ChunkHandler) ListKnowledgeChunks(c *gin.Context) { method validateAndGetChunk (line 208) | func (h *ChunkHandler) validateAndGetChunk(c *gin.Context) (*types.Chu... method UpdateChunk (line 263) | func (h *ChunkHandler) UpdateChunk(c *gin.Context) { method DeleteChunk (line 313) | func (h *ChunkHandler) DeleteChunk(c *gin.Context) { method DeleteChunksByKnowledgeID (line 347) | func (h *ChunkHandler) DeleteChunksByKnowledgeID(c *gin.Context) { method DeleteGeneratedQuestion (line 391) | func (h *ChunkHandler) DeleteGeneratedQuestion(c *gin.Context) { function NewChunkHandler (line 25) | func NewChunkHandler(service interfaces.ChunkService, kgService interfac... type UpdateChunkRequest (line 196) | type UpdateChunkRequest struct FILE: internal/handler/custom_agent.go type CustomAgentHandler (line 16) | type CustomAgentHandler struct method CreateAgent (line 57) | func (h *CustomAgentHandler) CreateAgent(c *gin.Context) { method GetAgent (line 114) | func (h *CustomAgentHandler) GetAgent(c *gin.Context) { method ListAgents (line 155) | func (h *CustomAgentHandler) ListAgents(c *gin.Context) { method UpdateAgent (line 191) | func (h *CustomAgentHandler) UpdateAgent(c *gin.Context) { method DeleteAgent (line 264) | func (h *CustomAgentHandler) DeleteAgent(c *gin.Context) { method CopyAgent (line 316) | func (h *CustomAgentHandler) CopyAgent(c *gin.Context) { method GetPlaceholders (line 364) | func (h *CustomAgentHandler) GetPlaceholders(c *gin.Context) { function NewCustomAgentHandler (line 22) | func NewCustomAgentHandler(service interfaces.CustomAgentService, disabl... type CreateAgentRequest (line 30) | type CreateAgentRequest struct type UpdateAgentRequest (line 38) | type UpdateAgentRequest struct FILE: internal/handler/evaluation.go type EvaluationHandler (line 15) | type EvaluationHandler struct method Evaluation (line 44) | func (e *EvaluationHandler) Evaluation(c *gin.Context) { method GetEvaluationResult (line 107) | func (e *EvaluationHandler) GetEvaluationResult(c *gin.Context) { function NewEvaluationHandler (line 20) | func NewEvaluationHandler(evaluationService interfaces.EvaluationService... type EvaluationRequest (line 25) | type EvaluationRequest struct type GetEvaluationRequest (line 91) | type GetEvaluationRequest struct FILE: internal/handler/faq.go type FAQHandler (line 18) | type FAQHandler struct method effectiveCtxForKB (line 41) | func (h *FAQHandler) effectiveCtxForKB(c *gin.Context, kbID string, re... method ListEntries (line 100) | func (h *FAQHandler) ListEntries(c *gin.Context) { method UpsertEntries (line 157) | func (h *FAQHandler) UpsertEntries(c *gin.Context) { method CreateEntry (line 201) | func (h *FAQHandler) CreateEntry(c *gin.Context) { method UpdateEntry (line 243) | func (h *FAQHandler) UpdateEntry(c *gin.Context) { method UpdateEntryTagBatch (line 291) | func (h *FAQHandler) UpdateEntryTagBatch(c *gin.Context) { method UpdateEntryFieldsBatch (line 329) | func (h *FAQHandler) UpdateEntryFieldsBatch(c *gin.Context) { method DeleteEntries (line 383) | func (h *FAQHandler) DeleteEntries(c *gin.Context) { method SearchFAQ (line 424) | func (h *FAQHandler) SearchFAQ(c *gin.Context) { method ExportEntries (line 470) | func (h *FAQHandler) ExportEntries(c *gin.Context) { method GetEntry (line 508) | func (h *FAQHandler) GetEntry(c *gin.Context) { method GetImportProgress (line 547) | func (h *FAQHandler) GetImportProgress(c *gin.Context) { method UpdateLastImportResultDisplayStatus (line 583) | func (h *FAQHandler) UpdateLastImportResultDisplayStatus(c *gin.Contex... method AddSimilarQuestions (line 625) | func (h *FAQHandler) AddSimilarQuestions(c *gin.Context) { function NewFAQHandler (line 26) | func NewFAQHandler( type faqDeleteRequest (line 355) | type faqDeleteRequest struct type faqEntryTagBatchRequest (line 361) | type faqEntryTagBatchRequest struct type addSimilarQuestionsRequest (line 366) | type addSimilarQuestionsRequest struct type updateLastFAQImportResultDisplayStatusRequest (line 565) | type updateLastFAQImportResultDisplayStatusRequest struct FILE: internal/handler/im.go type IMHandler (line 15) | type IMHandler struct method CreateIMChannel (line 29) | func (h *IMHandler) CreateIMChannel(c *gin.Context) { method ListIMChannels (line 99) | func (h *IMHandler) ListIMChannels(c *gin.Context) { method UpdateIMChannel (line 122) | func (h *IMHandler) UpdateIMChannel(c *gin.Context) { method DeleteIMChannel (line 187) | func (h *IMHandler) DeleteIMChannel(c *gin.Context) { method ToggleIMChannel (line 209) | func (h *IMHandler) ToggleIMChannel(c *gin.Context) { method IMCallback (line 235) | func (h *IMHandler) IMCallback(c *gin.Context) { function NewIMHandler (line 20) | func NewIMHandler(imService *im.Service) *IMHandler { FILE: internal/handler/initialization.go type DownloadTask (line 33) | type DownloadTask struct type InitializationHandler (line 50) | type InitializationHandler struct method UpdateKBConfig (line 216) | func (h *InitializationHandler) UpdateKBConfig(c *gin.Context) { method InitializeByKB (line 399) | func (h *InitializationHandler) InitializeByKB(c *gin.Context) { method bindInitializationRequest (line 451) | func (h *InitializationHandler) bindInitializationRequest(ctx context.... method getKnowledgeBaseForInitialization (line 460) | func (h *InitializationHandler) getKnowledgeBaseForInitialization(ctx ... method validateInitializationConfigs (line 473) | func (h *InitializationHandler) validateInitializationConfigs(ctx cont... method validateMultimodalConfig (line 507) | func (h *InitializationHandler) validateMultimodalConfig(ctx context.C... method processInitializationModels (line 631) | func (h *InitializationHandler) processInitializationModels( method findExistingModelID (line 709) | func (h *InitializationHandler) findExistingModelID(kb *types.Knowledg... method applyKnowledgeBaseInitialization (line 722) | func (h *InitializationHandler) applyKnowledgeBaseInitialization( method CheckOllamaStatus (line 826) | func (h *InitializationHandler) CheckOllamaStatus(c *gin.Context) { method CheckOllamaModels (line 881) | func (h *InitializationHandler) CheckOllamaModels(c *gin.Context) { method DownloadOllamaModel (line 943) | func (h *InitializationHandler) DownloadOllamaModel(c *gin.Context) { method GetDownloadProgress (line 1055) | func (h *InitializationHandler) GetDownloadProgress(c *gin.Context) { method ListDownloadTasks (line 1088) | func (h *InitializationHandler) ListDownloadTasks(c *gin.Context) { method ListOllamaModels (line 1113) | func (h *InitializationHandler) ListOllamaModels(c *gin.Context) { method downloadModelAsync (line 1144) | func (h *InitializationHandler) downloadModelAsync(ctx context.Context, method pullModelWithProgress (line 1168) | func (h *InitializationHandler) pullModelWithProgress(ctx context.Cont... method updateTaskStatus (line 1222) | func (h *InitializationHandler) updateTaskStatus( method GetCurrentConfigByKB (line 1252) | func (h *InitializationHandler) GetCurrentConfigByKB(c *gin.Context) { method buildConfigResponse (line 1313) | func (h *InitializationHandler) buildConfigResponse(ctx context.Contex... method CheckRemoteModel (line 1469) | func (h *InitializationHandler) CheckRemoteModel(c *gin.Context) { method TestEmbeddingModel (line 1532) | func (h *InitializationHandler) TestEmbeddingModel(c *gin.Context) { method checkRemoteModelConnection (line 1620) | func (h *InitializationHandler) checkRemoteModelConnection(ctx context... method checkRerankModelConnection (line 1675) | func (h *InitializationHandler) checkRerankModelConnection(ctx context... method CheckRerankModel (line 1724) | func (h *InitializationHandler) CheckRerankModel(c *gin.Context) { method TestMultimodalFunction (line 1815) | func (h *InitializationHandler) TestMultimodalFunction(c *gin.Context) { method testMultimodalWithDocReader (line 1970) | func (h *InitializationHandler) testMultimodalWithDocReader( method ExtractTextRelations (line 2033) | func (h *InitializationHandler) ExtractTextRelations(c *gin.Context) { method extractRelationsFromText (line 2083) | func (h *InitializationHandler) extractRelationsFromText( method FabriText (line 2134) | func (h *InitializationHandler) FabriText(c *gin.Context) { method fabriText (line 2165) | func (h *InitializationHandler) fabriText(ctx context.Context, tags []... method FabriTag (line 2208) | func (h *InitializationHandler) FabriTag(c *gin.Context) { function NewInitializationHandler (line 63) | func NewInitializationHandler( type KBModelConfigRequest (line 88) | type KBModelConfigRequest struct type InitializationRequest (line 129) | type InitializationRequest struct function validateRerankConfig (line 543) | func validateRerankConfig(ctx context.Context, req *InitializationReques... function validateNodeExtractConfig (line 554) | func validateNodeExtractConfig(ctx context.Context, req *InitializationR... type modelDescriptor (line 573) | type modelDescriptor struct method toModel (line 685) | func (descriptor modelDescriptor) toModel() *types.Model { function buildModelDescriptors (line 584) | func buildModelDescriptors(req *InitializationRequest) []modelDescriptor { function extractModelIDs (line 801) | func extractModelIDs(processedModels []*types.Model) (embeddingModelID, ... type RemoteModelCheckRequest (line 1451) | type RemoteModelCheckRequest struct type testMultimodalForm (line 1772) | type testMultimodalForm struct type TextRelationExtractionRequest (line 2009) | type TextRelationExtractionRequest struct type TextRelationExtractionResponse (line 2016) | type TextRelationExtractionResponse struct type FabriTextRequest (line 2112) | type FabriTextRequest struct type FabriTextResponse (line 2118) | type FabriTextResponse struct type FabriTagRequest (line 2188) | type FabriTagRequest struct type FabriTagResponse (line 2191) | type FabriTagResponse struct function RandomSelect (line 2217) | func RandomSelect(strs []string, n int) []string { FILE: internal/handler/knowledge.go type KnowledgeHandler (line 29) | type KnowledgeHandler struct method validateKnowledgeBaseAccess (line 56) | func (h *KnowledgeHandler) validateKnowledgeBaseAccess(c *gin.Context)... method validateKnowledgeBaseAccessWithKBID (line 63) | func (h *KnowledgeHandler) validateKnowledgeBaseAccessWithKBID(c *gin.... method resolveKnowledgeAndValidateKBAccess (line 107) | func (h *KnowledgeHandler) resolveKnowledgeAndValidateKBAccess(c *gin.... method handleDuplicateKnowledgeError (line 171) | func (h *KnowledgeHandler) handleDuplicateKnowledgeError(c *gin.Context, method CreateKnowledgeFromFile (line 205) | func (h *KnowledgeHandler) CreateKnowledgeFromFile(c *gin.Context) { method CreateKnowledgeFromURL (line 325) | func (h *KnowledgeHandler) CreateKnowledgeFromURL(c *gin.Context) { method CreateManualKnowledge (line 418) | func (h *KnowledgeHandler) CreateManualKnowledge(c *gin.Context) { method GetKnowledge (line 477) | func (h *KnowledgeHandler) GetKnowledge(c *gin.Context) { method ListKnowledge (line 521) | func (h *KnowledgeHandler) ListKnowledge(c *gin.Context) { method DeleteKnowledge (line 595) | func (h *KnowledgeHandler) DeleteKnowledge(c *gin.Context) { method DownloadKnowledgeFile (line 639) | func (h *KnowledgeHandler) DownloadKnowledgeFile(c *gin.Context) { method PreviewKnowledgeFile (line 753) | func (h *KnowledgeHandler) PreviewKnowledgeFile(c *gin.Context) { method GetKnowledgeBatch (line 811) | func (h *KnowledgeHandler) GetKnowledgeBatch(c *gin.Context) { method UpdateKnowledge (line 906) | func (h *KnowledgeHandler) UpdateKnowledge(c *gin.Context) { method UpdateManualKnowledge (line 956) | func (h *KnowledgeHandler) UpdateManualKnowledge(c *gin.Context) { method ReparseKnowledge (line 1013) | func (h *KnowledgeHandler) ReparseKnowledge(c *gin.Context) { method UpdateKnowledgeTagBatch (line 1070) | func (h *KnowledgeHandler) UpdateKnowledgeTagBatch(c *gin.Context) { method UpdateImageInfo (line 1139) | func (h *KnowledgeHandler) UpdateImageInfo(c *gin.Context) { method SearchKnowledge (line 1203) | func (h *KnowledgeHandler) SearchKnowledge(c *gin.Context) { method MoveKnowledge (line 1323) | func (h *KnowledgeHandler) MoveKnowledge(c *gin.Context) { method GetKnowledgeMoveProgress (line 1466) | func (h *KnowledgeHandler) GetKnowledgeMoveProgress(c *gin.Context) { function NewKnowledgeHandler (line 38) | func NewKnowledgeHandler( function mimeTypeByExt (line 695) | func mimeTypeByExt(filename string) string { type GetKnowledgeBatchRequest (line 791) | type GetKnowledgeBatchRequest struct type knowledgeTagBatchRequest (line 1053) | type knowledgeTagBatchRequest struct type MoveKnowledgeRequest (line 1306) | type MoveKnowledgeRequest struct type MoveKnowledgeResponse (line 1314) | type MoveKnowledgeResponse struct FILE: internal/handler/knowledgebase.go type KnowledgeBaseHandler (line 24) | type KnowledgeBaseHandler struct method HybridSearch (line 62) | func (h *KnowledgeBaseHandler) HybridSearch(c *gin.Context) { method CreateKnowledgeBase (line 114) | func (h *KnowledgeBaseHandler) CreateKnowledgeBase(c *gin.Context) { method validateAndGetKnowledgeBase (line 153) | func (h *KnowledgeBaseHandler) validateAndGetKnowledgeBase(c *gin.Cont... method GetKnowledgeBase (line 260) | func (h *KnowledgeBaseHandler) GetKnowledgeBase(c *gin.Context) { method ListKnowledgeBases (line 298) | func (h *KnowledgeBaseHandler) ListKnowledgeBases(c *gin.Context) { method TogglePinKnowledgeBase (line 401) | func (h *KnowledgeBaseHandler) TogglePinKnowledgeBase(c *gin.Context) { method UpdateKnowledgeBase (line 446) | func (h *KnowledgeBaseHandler) UpdateKnowledgeBase(c *gin.Context) { method DeleteKnowledgeBase (line 502) | func (h *KnowledgeBaseHandler) DeleteKnowledgeBase(c *gin.Context) { method CopyKnowledgeBase (line 564) | func (h *KnowledgeBaseHandler) CopyKnowledgeBase(c *gin.Context) { method GetKBCloneProgress (line 693) | func (h *KnowledgeBaseHandler) GetKBCloneProgress(c *gin.Context) { method ListMoveTargets (line 784) | func (h *KnowledgeBaseHandler) ListMoveTargets(c *gin.Context) { function NewKnowledgeBaseHandler (line 33) | func NewKnowledgeBaseHandler( type UpdateKnowledgeBaseRequest (line 427) | type UpdateKnowledgeBaseRequest struct type CopyKnowledgeBaseRequest (line 538) | type CopyKnowledgeBaseRequest struct type CopyKnowledgeBaseResponse (line 545) | type CopyKnowledgeBaseResponse struct function validateExtractConfig (line 717) | func validateExtractConfig(config *types.ExtractConfig) error { FILE: internal/handler/mcp_service.go type MCPServiceHandler (line 16) | type MCPServiceHandler struct method CreateMCPService (line 39) | func (h *MCPServiceHandler) CreateMCPService(c *gin.Context) { method ListMCPServices (line 89) | func (h *MCPServiceHandler) ListMCPServices(c *gin.Context) { method GetMCPService (line 124) | func (h *MCPServiceHandler) GetMCPService(c *gin.Context) { method UpdateMCPService (line 167) | func (h *MCPServiceHandler) UpdateMCPService(c *gin.Context) { method DeleteMCPService (line 308) | func (h *MCPServiceHandler) DeleteMCPService(c *gin.Context) { method TestMCPService (line 344) | func (h *MCPServiceHandler) TestMCPService(c *gin.Context) { method GetMCPServiceTools (line 389) | func (h *MCPServiceHandler) GetMCPServiceTools(c *gin.Context) { method GetMCPServiceResources (line 425) | func (h *MCPServiceHandler) GetMCPServiceResources(c *gin.Context) { function NewMCPServiceHandler (line 21) | func NewMCPServiceHandler(mcpServiceService interfaces.MCPServiceService... FILE: internal/handler/message.go type MessageHandler (line 19) | type MessageHandler struct method LoadMessages (line 48) | func (h *MessageHandler) LoadMessages(c *gin.Context) { method DeleteMessage (line 136) | func (h *MessageHandler) DeleteMessage(c *gin.Context) { method SearchMessages (line 173) | func (h *MessageHandler) SearchMessages(c *gin.Context) { method GetChatHistoryKBStats (line 237) | func (h *MessageHandler) GetChatHistoryKBStats(c *gin.Context) { function NewMessageHandler (line 28) | func NewMessageHandler(messageService interfaces.MessageService) *Messag... type SearchMessagesRequest (line 216) | type SearchMessagesRequest struct FILE: internal/handler/model.go type ModelHandler (line 19) | type ModelHandler struct method CreateModel (line 85) | func (h *ModelHandler) CreateModel(c *gin.Context) { method GetModel (line 158) | func (h *ModelHandler) GetModel(c *gin.Context) { method ListModels (line 208) | func (h *ModelHandler) ListModels(c *gin.Context) { method UpdateModel (line 267) | func (h *ModelHandler) UpdateModel(c *gin.Context) { method DeleteModel (line 349) | func (h *ModelHandler) DeleteModel(c *gin.Context) { method ListModelProviders (line 417) | func (h *ModelHandler) ListModelProviders(c *gin.Context) { function NewModelHandler (line 29) | func NewModelHandler(service interfaces.ModelService) *ModelHandler { function hideSensitiveInfo (line 35) | func hideSensitiveInfo(model *types.Model) *types.Model { type CreateModelRequest (line 65) | type CreateModelRequest struct type UpdateModelRequest (line 246) | type UpdateModelRequest struct type ModelProviderDTO (line 381) | type ModelProviderDTO struct function modelTypeToFrontend (line 391) | func modelTypeToFrontend(mt types.ModelType) string { FILE: internal/handler/organization.go type OrganizationHandler (line 20) | type OrganizationHandler struct method CreateOrganization (line 65) | func (h *OrganizationHandler) CreateOrganization(c *gin.Context) { method GetOrganization (line 106) | func (h *OrganizationHandler) GetOrganization(c *gin.Context) { method ListMyOrganizations (line 134) | func (h *OrganizationHandler) ListMyOrganizations(c *gin.Context) { method buildResourceCountsByOrg (line 177) | func (h *OrganizationHandler) buildResourceCountsByOrg(ctx context.Con... method UpdateOrganization (line 284) | func (h *OrganizationHandler) UpdateOrganization(c *gin.Context) { method DeleteOrganization (line 326) | func (h *OrganizationHandler) DeleteOrganization(c *gin.Context) { method ListMembers (line 353) | func (h *OrganizationHandler) ListMembers(c *gin.Context) { method UpdateMemberRole (line 404) | func (h *OrganizationHandler) UpdateMemberRole(c *gin.Context) { method RemoveMember (line 439) | func (h *OrganizationHandler) RemoveMember(c *gin.Context) { method GenerateInviteCode (line 468) | func (h *OrganizationHandler) GenerateInviteCode(c *gin.Context) { method PreviewByInviteCode (line 497) | func (h *OrganizationHandler) PreviewByInviteCode(c *gin.Context) { method JoinByInviteCode (line 553) | func (h *OrganizationHandler) JoinByInviteCode(c *gin.Context) { method SubmitJoinRequest (line 594) | func (h *OrganizationHandler) SubmitJoinRequest(c *gin.Context) { method SearchOrganizations (line 666) | func (h *OrganizationHandler) SearchOrganizations(c *gin.Context) { method JoinByOrganizationID (line 700) | func (h *OrganizationHandler) JoinByOrganizationID(c *gin.Context) { method RequestRoleUpgrade (line 756) | func (h *OrganizationHandler) RequestRoleUpgrade(c *gin.Context) { method LeaveOrganization (line 814) | func (h *OrganizationHandler) LeaveOrganization(c *gin.Context) { method ListJoinRequests (line 855) | func (h *OrganizationHandler) ListJoinRequests(c *gin.Context) { method ReviewJoinRequest (line 925) | func (h *OrganizationHandler) ReviewJoinRequest(c *gin.Context) { method ShareKnowledgeBase (line 985) | func (h *OrganizationHandler) ShareKnowledgeBase(c *gin.Context) { method ListKBShares (line 1024) | func (h *OrganizationHandler) ListKBShares(c *gin.Context) { method UpdateSharePermission (line 1088) | func (h *OrganizationHandler) UpdateSharePermission(c *gin.Context) { method RemoveShare (line 1122) | func (h *OrganizationHandler) RemoveShare(c *gin.Context) { method ListOrgShares (line 1149) | func (h *OrganizationHandler) ListOrgShares(c *gin.Context) { method ListSharedKnowledgeBases (line 1224) | func (h *OrganizationHandler) ListSharedKnowledgeBases(c *gin.Context) { method ShareAgent (line 1245) | func (h *OrganizationHandler) ShareAgent(c *gin.Context) { method ListAgentShares (line 1275) | func (h *OrganizationHandler) ListAgentShares(c *gin.Context) { method RemoveAgentShare (line 1300) | func (h *OrganizationHandler) RemoveAgentShare(c *gin.Context) { method ListOrgAgentShares (line 1313) | func (h *OrganizationHandler) ListOrgAgentShares(c *gin.Context) { method ListSharedAgents (line 1374) | func (h *OrganizationHandler) ListSharedAgents(c *gin.Context) { method listSpaceKnowledgeBasesInOrganization (line 1388) | func (h *OrganizationHandler) listSpaceKnowledgeBasesInOrganization(ct... method ListOrganizationSharedKnowledgeBases (line 1516) | func (h *OrganizationHandler) ListOrganizationSharedKnowledgeBases(c *... method ListOrganizationSharedAgents (line 1544) | func (h *OrganizationHandler) ListOrganizationSharedAgents(c *gin.Cont... method SetSharedAgentDisabledByMe (line 1570) | func (h *OrganizationHandler) SetSharedAgentDisabledByMe(c *gin.Contex... method toOrgResponse (line 1604) | func (h *OrganizationHandler) toOrgResponse(ctx context.Context, org *... method SearchUsersForInvite (line 1668) | func (h *OrganizationHandler) SearchUsersForInvite(c *gin.Context) { method InviteMember (line 1749) | func (h *OrganizationHandler) InviteMember(c *gin.Context) { function NewOrganizationHandler (line 32) | func NewOrganizationHandler( type SetSharedAgentDisabledByMeRequest (line 1564) | type SetSharedAgentDisabledByMeRequest struct FILE: internal/handler/session/agent_stream_handler.go type AgentStreamHandler (line 18) | type AgentStreamHandler struct method Subscribe (line 58) | func (h *AgentStreamHandler) Subscribe() { method handleThought (line 72) | func (h *AgentStreamHandler) handleThought(ctx context.Context, evt ev... method handleToolCall (line 120) | func (h *AgentStreamHandler) handleToolCall(ctx context.Context, evt e... method handleToolResult (line 153) | func (h *AgentStreamHandler) handleToolResult(ctx context.Context, evt... method handleReferences (line 214) | func (h *AgentStreamHandler) handleReferences(ctx context.Context, evt... method handleFinalAnswer (line 280) | func (h *AgentStreamHandler) handleFinalAnswer(ctx context.Context, ev... method handleReflection (line 335) | func (h *AgentStreamHandler) handleReflection(ctx context.Context, evt... method handleError (line 356) | func (h *AgentStreamHandler) handleError(ctx context.Context, evt even... method handleSessionTitle (line 384) | func (h *AgentStreamHandler) handleSessionTitle(ctx context.Context, e... method handleComplete (line 412) | func (h *AgentStreamHandler) handleComplete(ctx context.Context, evt e... function NewAgentStreamHandler (line 36) | func NewAgentStreamHandler( FILE: internal/handler/session/handler.go type Handler (line 16) | type Handler struct method CreateSession (line 68) | func (h *Handler) CreateSession(c *gin.Context) { method GetSession (line 131) | func (h *Handler) GetSession(c *gin.Context) { method GetSessionsByTenant (line 179) | func (h *Handler) GetSessionsByTenant(c *gin.Context) { method UpdateSession (line 221) | func (h *Handler) UpdateSession(c *gin.Context) { method DeleteSession (line 291) | func (h *Handler) DeleteSession(c *gin.Context) { method ClearSessionMessages (line 334) | func (h *Handler) ClearSessionMessages(c *gin.Context) { method BatchDeleteSessions (line 381) | func (h *Handler) BatchDeleteSessions(c *gin.Context) { function NewHandler (line 30) | func NewHandler( type batchDeleteRequest (line 364) | type batchDeleteRequest struct FILE: internal/handler/session/helpers.go function convertImageAttachments (line 17) | func convertImageAttachments(items []ImageAttachment) types.MessageImages { function extractImageURLsAndOCRText (line 34) | func extractImageURLsAndOCRText(images []ImageAttachment) (urls []string... function convertMentionedItems (line 58) | func convertMentionedItems(items []MentionedItemRequest) types.Mentioned... function setSSEHeaders (line 75) | func setSSEHeaders(c *gin.Context) { function buildStreamResponse (line 83) | func buildStreamResponse(evt interfaces.StreamEvent, requestID string) *... function sendCompletionEvent (line 147) | func sendCompletionEvent(c *gin.Context, requestID string) { function createAgentQueryEvent (line 153) | func createAgentQueryEvent(sessionID, assistantMessageID string) interfa... method createUserMessage (line 168) | func (h *Handler) createUserMessage(ctx context.Context, sessionID, quer... method createAssistantMessage (line 182) | func (h *Handler) createAssistantMessage(ctx context.Context, assistantM... method setupStreamHandler (line 188) | func (h *Handler) setupStreamHandler( method setupStopEventHandler (line 203) | func (h *Handler) setupStopEventHandler( method writeAgentQueryEvent (line 222) | func (h *Handler) writeAgentQueryEvent(ctx context.Context, sessionID, a... function getRequestID (line 234) | func getRequestID(c *gin.Context) string { function getString (line 239) | func getString(m map[string]interface{}, key string) string { function getFloat64 (line 246) | func getFloat64(m map[string]interface{}, key string) float64 { method createDefaultSummaryConfig (line 258) | func (h *Handler) createDefaultSummaryConfig(ctx context.Context) *types... method fillSummaryConfigDefaults (line 302) | func (h *Handler) fillSummaryConfigDefaults(ctx context.Context, config ... FILE: internal/handler/session/image_upload.go constant maxImageSize (line 17) | maxImageSize = 10 << 20 constant maxImagesCount (line 18) | maxImagesCount = 5 method saveImageAttachments (line 26) | func (h *Handler) saveImageAttachments(ctx context.Context, images []Ima... method analyzeImageAttachments (line 64) | func (h *Handler) analyzeImageAttachments(ctx context.Context, images []... function buildImageAnalysisPrompt (line 98) | func buildImageAnalysisPrompt(userQuery string) string { function decodeDataURI (line 111) | func decodeDataURI(dataURI string) ([]byte, string, error) { function mimeToExt (line 128) | func mimeToExt(mime string) string { method resolveImageFileService (line 143) | func (h *Handler) resolveImageFileService(ctx context.Context, storagePr... FILE: internal/handler/session/qa.go type qaRequestContext (line 21) | type qaRequestContext struct method buildQARequest (line 42) | func (rc *qaRequestContext) buildQARequest() *types.QARequest { method parseQARequest (line 61) | func (h *Handler) parseQARequest(c *gin.Context, logPrefix string) (*qaR... method resolveAgent (line 159) | func (h *Handler) resolveAgent(ctx context.Context, c *gin.Context, agen... function mergeKnowledgeTargets (line 202) | func mergeKnowledgeTargets(requestKBIDs []string, requestKnowledgeIDs []... type sseStreamContext (line 242) | type sseStreamContext struct method setupSSEStream (line 250) | func (h *Handler) setupSSEStream(reqCtx *qaRequestContext, generateTitle... method SearchKnowledge (line 310) | func (h *Handler) SearchKnowledge(c *gin.Context) { method KnowledgeQA (line 387) | func (h *Handler) KnowledgeQA(c *gin.Context) { method AgentQA (line 412) | func (h *Handler) AgentQA(c *gin.Context) { type qaMode (line 439) | type qaMode constant qaModeNormal (line 442) | qaModeNormal qaMode = iota constant qaModeAgent (line 443) | qaModeAgent method executeQA (line 448) | func (h *Handler) executeQA(reqCtx *qaRequestContext, mode qaMode, gener... method runVLMAnalysisIfNeeded (line 589) | func (h *Handler) runVLMAnalysisIfNeeded(streamCtx *sseStreamContext, re... method completeAssistantMessage (line 655) | func (h *Handler) completeAssistantMessage(ctx context.Context, assistan... FILE: internal/handler/session/stream.go method ContinueStream (line 31) | func (h *Handler) ContinueStream(c *gin.Context) { method StopSession (line 191) | func (h *Handler) StopSession(c *gin.Context) { method handleAgentEventsForSSE (line 300) | func (h *Handler) handleAgentEventsForSSE( FILE: internal/handler/session/title.go method GenerateTitle (line 24) | func (h *Handler) GenerateTitle(c *gin.Context) { FILE: internal/handler/session/types.go type CreateSessionRequest (line 10) | type CreateSessionRequest struct type GenerateTitleRequest (line 18) | type GenerateTitleRequest struct type MentionedItemRequest (line 23) | type MentionedItemRequest struct type ImageAttachment (line 33) | type ImageAttachment struct type CreateKnowledgeQARequest (line 40) | type CreateKnowledgeQARequest struct type SearchKnowledgeRequest (line 55) | type SearchKnowledgeRequest struct type StopSessionRequest (line 63) | type StopSessionRequest struct FILE: internal/handler/skill_handler.go type SkillHandler (line 14) | type SkillHandler struct method ListSkills (line 42) | func (h *SkillHandler) ListSkills(c *gin.Context) { function NewSkillHandler (line 19) | func NewSkillHandler(skillService interfaces.SkillService) *SkillHandler { type SkillInfoResponse (line 26) | type SkillInfoResponse struct FILE: internal/handler/system.go type SystemHandler (line 27) | type SystemHandler struct method GetSystemInfo (line 73) | func (h *SystemHandler) GetSystemInfo(c *gin.Context) { method getDocReaderConnInfo (line 117) | func (h *SystemHandler) getDocReaderConnInfo() (addr, transport string) { method ListParserEngines (line 135) | func (h *SystemHandler) ListParserEngines(c *gin.Context) { method ReconnectDocReader (line 159) | func (h *SystemHandler) ReconnectDocReader(c *gin.Context) { method CheckParserEngines (line 213) | func (h *SystemHandler) CheckParserEngines(c *gin.Context) { method fetchRemoteEngines (line 231) | func (h *SystemHandler) fetchRemoteEngines(ctx context.Context, overri... method getKeywordIndexEngine (line 244) | func (h *SystemHandler) getKeywordIndexEngine() string { method getVectorStoreEngine (line 267) | func (h *SystemHandler) getVectorStoreEngine() string { method getGraphDatabaseEngine (line 296) | func (h *SystemHandler) getGraphDatabaseEngine() string { method supportsRetrieverType (line 305) | func (h *SystemHandler) supportsRetrieverType(driver string, retriever... method getMinioConfig (line 325) | func (h *SystemHandler) getMinioConfig(c *gin.Context) (endpoint, acce... method isMinioConfigured (line 341) | func (h *SystemHandler) isMinioConfigured(c *gin.Context) bool { method isMinioEnvAvailable (line 347) | func (h *SystemHandler) isMinioEnvAvailable() bool { method isCOSConfigured (line 354) | func (h *SystemHandler) isCOSConfigured(c *gin.Context) bool { method isTOSConfigured (line 365) | func (h *SystemHandler) isTOSConfigured(c *gin.Context) bool { method isTOSEnvAvailable (line 376) | func (h *SystemHandler) isTOSEnvAvailable() bool { method GetStorageEngineStatus (line 416) | func (h *SystemHandler) GetStorageEngineStatus(c *gin.Context) { method ListMinioBuckets (line 444) | func (h *SystemHandler) ListMinioBuckets(c *gin.Context) { method CheckStorageEngine (line 729) | func (h *SystemHandler) CheckStorageEngine(c *gin.Context) { method checkMinio (line 752) | func (h *SystemHandler) checkMinio(c *gin.Context, ctx context.Context... method checkCOS (line 835) | func (h *SystemHandler) checkCOS(c *gin.Context, ctx context.Context, ... method checkTOS (line 871) | func (h *SystemHandler) checkTOS(c *gin.Context, ctx context.Context, ... method checkS3 (line 905) | func (h *SystemHandler) checkS3(c *gin.Context, ctx context.Context, c... function NewSystemHandler (line 34) | func NewSystemHandler(cfg *config.Config, neo4jDriver neo4j.Driver, docu... type GetSystemInfoResponse (line 43) | type GetSystemInfoResponse struct type MinioBucketInfo (line 385) | type MinioBucketInfo struct type ListMinioBucketsResponse (line 392) | type ListMinioBucketsResponse struct type StorageEngineStatusItem (line 397) | type StorageEngineStatusItem struct type GetStorageEngineStatusResponse (line 404) | type GetStorageEngineStatusResponse struct type BucketPolicy (line 521) | type BucketPolicy struct type PolicyStatement (line 527) | type PolicyStatement struct function parseBucketPolicy (line 535) | func parseBucketPolicy(policyStr string) string { function isPrincipalPublic (line 572) | func isPrincipalPublic(principal interface{}) bool { function hasGetObjectAction (line 595) | func hasGetObjectAction(action interface{}) bool { function sanitizeStorageCheckError (line 621) | func sanitizeStorageCheckError(err error) string { function isBlockedStorageEndpoint (line 649) | func isBlockedStorageEndpoint(endpoint string) (bool, string) { type StorageCheckRequest (line 705) | type StorageCheckRequest struct type StorageCheckResponse (line 714) | type StorageCheckResponse struct FILE: internal/handler/tag.go type TagHandler (line 18) | type TagHandler struct method effectiveCtxForKB (line 45) | func (h *TagHandler) effectiveCtxForKB(c *gin.Context, kbID string) (c... method resolveTagID (line 88) | func (h *TagHandler) resolveTagID(c *gin.Context) (string, error) { method resolveTagIDWithCtx (line 93) | func (h *TagHandler) resolveTagIDWithCtx(c *gin.Context, ctx context.C... method getChunksBySeqIDs (line 108) | func (h *TagHandler) getChunksBySeqIDs(ctx context.Context, tenantID u... method ListTags (line 127) | func (h *TagHandler) ListTags(c *gin.Context) { method CreateTag (line 178) | func (h *TagHandler) CreateTag(c *gin.Context) { method UpdateTag (line 231) | func (h *TagHandler) UpdateTag(c *gin.Context) { method DeleteTag (line 285) | func (h *TagHandler) DeleteTag(c *gin.Context) { type DeleteTagRequest (line 28) | type DeleteTagRequest struct function NewTagHandler (line 33) | func NewTagHandler( type createTagRequest (line 159) | type createTagRequest struct type updateTagRequest (line 211) | type updateTagRequest struct FILE: internal/handler/tenant.go type TenantHandler (line 22) | type TenantHandler struct method authorizeTenantAccess (line 31) | func (h *TenantHandler) authorizeTenantAccess(c *gin.Context, targetTe... method CreateTenant (line 81) | func (h *TenantHandler) CreateTenant(c *gin.Context) { method GetTenant (line 134) | func (h *TenantHandler) GetTenant(c *gin.Context) { method UpdateTenant (line 178) | func (h *TenantHandler) UpdateTenant(c *gin.Context) { method DeleteTenant (line 239) | func (h *TenantHandler) DeleteTenant(c *gin.Context) { method ListTenants (line 285) | func (h *TenantHandler) ListTenants(c *gin.Context) { method ListAllTenants (line 312) | func (h *TenantHandler) ListAllTenants(c *gin.Context) { method SearchTenants (line 373) | func (h *TenantHandler) SearchTenants(c *gin.Context) { method GetTenantAgentConfig (line 469) | func (h *TenantHandler) GetTenantAgentConfig(c *gin.Context) { method updateTenantAgentConfigInternal (line 540) | func (h *TenantHandler) updateTenantAgentConfigInternal(c *gin.Context) { method GetTenantKV (line 614) | func (h *TenantHandler) GetTenantKV(c *gin.Context) { method UpdateTenantKV (line 663) | func (h *TenantHandler) UpdateTenantKV(c *gin.Context) { method updateTenantWebSearchConfigInternal (line 697) | func (h *TenantHandler) updateTenantWebSearchConfigInternal(c *gin.Con... method GetTenantWebSearchConfig (line 751) | func (h *TenantHandler) GetTenantWebSearchConfig(c *gin.Context) { method GetTenantParserEngineConfig (line 770) | func (h *TenantHandler) GetTenantParserEngineConfig(c *gin.Context) { method updateTenantParserEngineConfigInternal (line 789) | func (h *TenantHandler) updateTenantParserEngineConfigInternal(c *gin.... method GetTenantStorageEngineConfig (line 822) | func (h *TenantHandler) GetTenantStorageEngineConfig(c *gin.Context) { method updateTenantStorageEngineConfigInternal (line 841) | func (h *TenantHandler) updateTenantStorageEngineConfigInternal(c *gin... method buildDefaultConversationConfig (line 873) | func (h *TenantHandler) buildDefaultConversationConfig() *types.Conver... method GetTenantConversationConfig (line 939) | func (h *TenantHandler) GetTenantConversationConfig(c *gin.Context) { method updateTenantConversationInternal (line 960) | func (h *TenantHandler) updateTenantConversationInternal(c *gin.Contex... method GetPromptTemplates (line 1019) | func (h *TenantHandler) GetPromptTemplates(c *gin.Context) { method GetTenantChatHistoryConfig (line 1048) | func (h *TenantHandler) GetTenantChatHistoryConfig(c *gin.Context) { method updateTenantChatHistoryConfigInternal (line 1068) | func (h *TenantHandler) updateTenantChatHistoryConfigInternal(c *gin.C... method GetTenantRetrievalConfig (line 1145) | func (h *TenantHandler) GetTenantRetrievalConfig(c *gin.Context) { method updateTenantRetrievalConfigInternal (line 1164) | func (h *TenantHandler) updateTenantRetrievalConfigInternal(c *gin.Con... function NewTenantHandler (line 61) | func NewTenantHandler(service interfaces.TenantService, userService inte... type AgentConfigRequest (line 450) | type AgentConfigRequest struct function validateConversationConfig (line 895) | func validateConversationConfig(req *types.ConversationConfig) error { FILE: internal/handler/web_search.go type WebSearchHandler (line 12) | type WebSearchHandler struct method GetProviders (line 33) | func (h *WebSearchHandler) GetProviders(c *gin.Context) { function NewWebSearchHandler (line 17) | func NewWebSearchHandler(registry *web_search.Registry) *WebSearchHandler { FILE: internal/im/adapter.go type Platform (line 11) | type Platform constant PlatformWeCom (line 14) | PlatformWeCom Platform = "wecom" constant PlatformFeishu (line 15) | PlatformFeishu Platform = "feishu" constant PlatformSlack (line 16) | PlatformSlack Platform = "slack" type MessageType (line 20) | type MessageType constant MessageTypeText (line 23) | MessageTypeText MessageType = "text" constant MessageTypeFile (line 24) | MessageTypeFile MessageType = "file" constant MessageTypeImage (line 25) | MessageTypeImage MessageType = "image" type IncomingMessage (line 29) | type IncomingMessage struct type ChatType (line 57) | type ChatType constant ChatTypeDirect (line 60) | ChatTypeDirect ChatType = "direct" constant ChatTypeGroup (line 61) | ChatTypeGroup ChatType = "group" type ReplyMessage (line 65) | type ReplyMessage struct type Adapter (line 77) | type Adapter interface type StreamSender (line 100) | type StreamSender interface type FileDownloader (line 116) | type FileDownloader interface FILE: internal/im/cmd_clear.go type ClearCommand (line 8) | type ClearCommand struct method Name (line 12) | func (c *ClearCommand) Name() string { return "clear" } method Description (line 13) | func (c *ClearCommand) Description() string { method Execute (line 17) | func (c *ClearCommand) Execute(_ context.Context, _ *CommandContext, _... function newClearCommand (line 10) | func newClearCommand() *ClearCommand { return &ClearCommand{} } FILE: internal/im/cmd_help.go type HelpCommand (line 11) | type HelpCommand struct method Name (line 19) | func (c *HelpCommand) Name() string { return "help" } method Description (line 20) | func (c *HelpCommand) Description() string { method Execute (line 24) | func (c *HelpCommand) Execute(_ context.Context, _ *CommandContext, ar... function newHelpCommand (line 15) | func newHelpCommand(registry *CommandRegistry) *HelpCommand { FILE: internal/im/cmd_info.go type InfoCommand (line 14) | type InfoCommand struct method Name (line 22) | func (c *InfoCommand) Name() string { return "info" } method Description (line 23) | func (c *InfoCommand) Description() string { return "查看当前智能体的信息与能力" } method Execute (line 25) | func (c *InfoCommand) Execute(ctx context.Context, cmdCtx *CommandCont... function newInfoCommand (line 18) | func newInfoCommand(kbService interfaces.KnowledgeBaseService) *InfoComm... FILE: internal/im/cmd_search.go constant searchMaxResults (line 12) | searchMaxResults = 5 constant searchContentMaxLen (line 13) | searchContentMaxLen = 200 type SearchCommand (line 22) | type SearchCommand struct method Name (line 31) | func (c *SearchCommand) Name() string { return "search" } method Description (line 32) | func (c *SearchCommand) Description() string { method Execute (line 36) | func (c *SearchCommand) Execute(ctx context.Context, cmdCtx *CommandCo... function newSearchCommand (line 27) | func newSearchCommand(sessionService interfaces.SessionService, kbServic... FILE: internal/im/cmd_stop.go type StopCommand (line 9) | type StopCommand struct method Name (line 13) | func (c *StopCommand) Name() string { return "stop" } method Description (line 14) | func (c *StopCommand) Description() string { return "中止当前正在进行的回答" } method Execute (line 16) | func (c *StopCommand) Execute(_ context.Context, _ *CommandContext, _ ... function newStopCommand (line 11) | func newStopCommand() *StopCommand { return &StopCommand{} } FILE: internal/im/command.go type CommandAction (line 12) | type CommandAction constant ActionNone (line 16) | ActionNone CommandAction = iota constant ActionClear (line 19) | ActionClear constant ActionStop (line 21) | ActionStop type CommandResult (line 25) | type CommandResult struct type CommandContext (line 34) | type CommandContext struct type Command (line 59) | type Command interface FILE: internal/im/command_registry.go type CommandRegistry (line 6) | type CommandRegistry struct method Register (line 17) | func (r *CommandRegistry) Register(cmd Command) { method Parse (line 36) | func (r *CommandRegistry) Parse(content string) (Command, []string, bo... method IsRegistered (line 55) | func (r *CommandRegistry) IsRegistered(content string) bool { method All (line 69) | func (r *CommandRegistry) All() []Command { function NewCommandRegistry (line 11) | func NewCommandRegistry() *CommandRegistry { function LooksLikeCommand (line 82) | func LooksLikeCommand(content string) bool { FILE: internal/im/feishu/adapter.go type Adapter (line 39) | type Adapter struct method Platform (line 101) | func (a *Adapter) Platform() im.Platform { method VerifyCallback (line 107) | func (a *Adapter) VerifyCallback(c *gin.Context) error { method HandleURLVerification (line 150) | func (a *Adapter) HandleURLVerification(c *gin.Context) bool { method ParseCallback (line 223) | func (a *Adapter) ParseCallback(c *gin.Context) (*im.IncomingMessage, ... method SendReply (line 423) | func (a *Adapter) SendReply(ctx context.Context, incoming *im.Incoming... method DownloadFile (line 481) | func (a *Adapter) DownloadFile(ctx context.Context, msg *im.IncomingMe... method StartStream (line 608) | func (a *Adapter) StartStream(ctx context.Context, incoming *im.Incomi... method SendStreamChunk (line 638) | func (a *Adapter) SendStreamChunk(ctx context.Context, incoming *im.In... method EndStream (line 741) | func (a *Adapter) EndStream(ctx context.Context, incoming *im.Incoming... method cardkitCreate (line 772) | func (a *Adapter) cardkitCreate(ctx context.Context, accessToken, card... method sendCardByCardID (line 820) | func (a *Adapter) sendCardByCardID(ctx context.Context, accessToken st... method cardkitUpdateElement (line 874) | func (a *Adapter) cardkitUpdateElement(ctx context.Context, accessToke... method cardkitSetStreaming (line 910) | func (a *Adapter) cardkitSetStreaming(ctx context.Context, accessToken... method getTenantAccessToken (line 948) | func (a *Adapter) getTenantAccessToken(ctx context.Context) (string, e... method decrypt (line 1001) | func (a *Adapter) decrypt(encrypted string) ([]byte, error) { function NewAdapter (line 52) | func NewAdapter(appID, appSecret, verificationToken, encryptKey string) ... function startStreamReaper (line 65) | func startStreamReaper() { function StopStreamReaper (line 91) | func StopStreamReaper() { type feishuEventBody (line 191) | type feishuEventBody struct type feishuEventHeader (line 196) | type feishuEventHeader struct type feishuEvent (line 201) | type feishuEvent struct type feishuMessage (line 206) | type feishuMessage struct type feishuSender (line 214) | type feishuSender struct type feishuSenderID (line 218) | type feishuSenderID struct constant streamingElementID (line 547) | streamingElementID = "streaming_content" type feishuStreamState (line 551) | type feishuStreamState struct method nextSeq (line 575) | func (s *feishuStreamState) nextSeq() int { constant streamOrphanTTL (line 562) | streamOrphanTTL = 5 * time.Minute constant streamReaperInterval (line 564) | streamReaperInterval = 1 * time.Minute function buildStreamingCardJSON (line 581) | func buildStreamingCardJSON() string { function transformThinkBlocks (line 682) | func transformThinkBlocks(content string) string { FILE: internal/im/feishu/longconn.go type MessageHandler (line 17) | type MessageHandler type LongConnClient (line 20) | type LongConnClient struct method Start (line 51) | func (c *LongConnClient) Start(ctx context.Context) error { function NewLongConnClient (line 27) | func NewLongConnClient(appID, appSecret string, handler MessageHandler) ... type feishuLoggerAdapter (line 58) | type feishuLoggerAdapter struct method Debug (line 62) | func (l *feishuLoggerAdapter) Debug(ctx context.Context, args ...inter... method Info (line 66) | func (l *feishuLoggerAdapter) Info(ctx context.Context, args ...interf... method Warn (line 75) | func (l *feishuLoggerAdapter) Warn(ctx context.Context, args ...interf... method Error (line 79) | func (l *feishuLoggerAdapter) Error(ctx context.Context, args ...inter... function convertEvent (line 85) | func convertEvent(event *larkim.P2MessageReceiveV1) *im.IncomingMessage { function convertTextEvent (line 134) | func convertTextEvent(msg *larkim.EventMessage, openID, chatID string, c... function convertFileEvent (line 169) | func convertFileEvent(msg *larkim.EventMessage, openID, chatID string, c... function convertImageEvent (line 198) | func convertImageEvent(msg *larkim.EventMessage, openID, chatID string, ... function convertPostEvent (line 226) | func convertPostEvent(msg *larkim.EventMessage, openID, chatID string, c... FILE: internal/im/qaqueue.go constant defaultMaxQueueSize (line 17) | defaultMaxQueueSize = 50 constant defaultMaxPerUser (line 19) | defaultMaxPerUser = 3 constant defaultWorkers (line 21) | defaultWorkers = 5 constant queueTimeout (line 23) | queueTimeout = 60 * time.Second constant redisQueueUserTTL (line 25) | redisQueueUserTTL = 5 * time.Minute constant globalGateTTL (line 29) | globalGateTTL = 5 * time.Minute constant globalGateRetryInterval (line 32) | globalGateRetryInterval = 500 * time.Millisecond type qaRequest (line 36) | type qaRequest struct type QueueMetrics (line 52) | type QueueMetrics struct type qaQueue (line 68) | type qaQueue struct method Start (line 117) | func (q *qaQueue) Start(stopCh <-chan struct{}) { method Stop (line 125) | func (q *qaQueue) Stop() { method Enqueue (line 134) | func (q *qaQueue) Enqueue(req *qaRequest) (position int, err error) { method Remove (line 179) | func (q *qaQueue) Remove(userKey string) bool { method Metrics (line 201) | func (q *qaQueue) Metrics() QueueMetrics { method runWorker (line 216) | func (q *qaQueue) runWorker(id int) { method dequeue (line 265) | func (q *qaQueue) dequeue() *qaRequest { method acquireGlobalGate (line 315) | func (q *qaQueue) acquireGlobalGate(ctx context.Context) bool { method releaseGlobalGate (line 344) | func (q *qaQueue) releaseGlobalGate() { method redisCheckAndIncrUser (line 356) | func (q *qaQueue) redisCheckAndIncrUser(ctx context.Context, userKey s... method redisDecrUser (line 375) | func (q *qaQueue) redisDecrUser(ctx context.Context, userKey string) { method metricsLoop (line 388) | func (q *qaQueue) metricsLoop(stopCh <-chan struct{}) { function newQAQueue (line 101) | func newQAQueue(workers, maxSize, maxPerUser, globalMaxWorkers int, hand... constant metricsLogInterval (line 385) | metricsLogInterval = 30 * time.Second FILE: internal/im/ratelimit.go constant rateLimitWindow (line 14) | rateLimitWindow = 60 * time.Second constant rateLimitMaxRequests (line 16) | rateLimitMaxRequests = 10 constant rateLimitCleanupInterval (line 18) | rateLimitCleanupInterval = 1 * time.Minute type distributedLimiter (line 55) | type distributedLimiter struct method Allow (line 74) | func (d *distributedLimiter) Allow(key string) bool { method redisAllow (line 85) | func (d *distributedLimiter) redisAllow(ctx context.Context, key strin... method cleanupLoop (line 102) | func (d *distributedLimiter) cleanupLoop(stopCh <-chan struct{}) { function newDistributedLimiter (line 63) | func newDistributedLimiter(redisClient *redis.Client, window time.Durati... type rateLimitEntry (line 111) | type rateLimitEntry struct type slidingWindowLimiter (line 118) | type slidingWindowLimiter struct method Allow (line 133) | func (l *slidingWindowLimiter) Allow(key string) bool { method cleanupLoop (line 170) | func (l *slidingWindowLimiter) cleanupLoop(stopCh <-chan struct{}) { function newSlidingWindowLimiter (line 124) | func newSlidingWindowLimiter(window time.Duration, maxRequests int) *sli... FILE: internal/im/service.go constant qaTimeout (line 31) | qaTimeout = 120 * time.Second constant dedupTTL (line 33) | dedupTTL = 5 * time.Minute constant dedupCleanupInterval (line 35) | dedupCleanupInterval = 1 * time.Minute constant maxContentLength (line 37) | maxContentLength = 4096 constant streamFlushInterval (line 40) | streamFlushInterval = 300 * time.Millisecond constant wsLeaderTTL (line 45) | wsLeaderTTL = 15 * time.Second constant wsLeaderRenewInterval (line 47) | wsLeaderRenewInterval = 5 * time.Second constant wsLeaderRetryInterval (line 49) | wsLeaderRetryInterval = 10 * time.Second constant stopMarkerTTL (line 51) | stopMarkerTTL = 30 * time.Second constant stopPollInterval (line 53) | stopPollInterval = 500 * time.Millisecond constant RedisKeyLeader (line 60) | RedisKeyLeader = "im:ws:leader:" constant RedisKeyDedup (line 61) | RedisKeyDedup = "im:dedup:" constant RedisKeyStop (line 62) | RedisKeyStop = "im:stop:" constant RedisKeyInflight (line 63) | RedisKeyInflight = "im:inflight:" constant RedisKeyQueueUser (line 64) | RedisKeyQueueUser = "im:queue:user:" constant RedisKeyRateLimit (line 65) | RedisKeyRateLimit = "im:ratelimit:" constant RedisKeyGlobalGate (line 66) | RedisKeyGlobalGate = "im:global:active" type channelState (line 70) | type channelState struct type AdapterFactory (line 79) | type AdapterFactory type inflightEntry (line 82) | type inflightEntry struct type Service (line 94) | type Service struct method RegisterAdapterFactory (line 291) | func (s *Service) RegisterAdapterFactory(platform string, factory Adap... method Stop (line 298) | func (s *Service) Stop() { method dedupCleanupLoop (line 309) | func (s *Service) dedupCleanupLoop() { method LoadAndStartChannels (line 329) | func (s *Service) LoadAndStartChannels() error { method StartChannel (line 354) | func (s *Service) StartChannel(channel *IMChannel) error { method startChannelInternal (line 390) | func (s *Service) startChannelInternal(channel *IMChannel, factory Ada... method StopChannel (line 424) | func (s *Service) StopChannel(channelID string) { method stopChannelLocked (line 434) | func (s *Service) stopChannelLocked(channelID string, cs *channelState) { method tryAcquireWSLeader (line 450) | func (s *Service) tryAcquireWSLeader(channelID string) bool { method releaseWSLeader (line 465) | func (s *Service) releaseWSLeader(channelID string) { method wsLeaderRenewLoop (line 482) | func (s *Service) wsLeaderRenewLoop(ctx context.Context, channelID str... method wsLeaderRetryLoop (line 513) | func (s *Service) wsLeaderRetryLoop(channel *IMChannel) { method checkAndClearStopMarker (line 556) | func (s *Service) checkAndClearStopMarker(ctx context.Context, userKey... method storeInflightMapping (line 570) | func (s *Service) storeInflightMapping(ctx context.Context, userKey, s... method clearInflightMapping (line 581) | func (s *Service) clearInflightMapping(ctx context.Context, userKey st... method loadInflightMapping (line 589) | func (s *Service) loadInflightMapping(ctx context.Context, userKey str... method writeStopEvent (line 606) | func (s *Service) writeStopEvent(ctx context.Context, sessionID, messa... method watchStreamManagerStop (line 628) | func (s *Service) watchStreamManagerStop(ctx context.Context, sessionI... method GetChannelAdapter (line 656) | func (s *Service) GetChannelAdapter(channelID string) (Adapter, *IMCha... method GetChannelByID (line 667) | func (s *Service) GetChannelByID(channelID string) (*IMChannel, error) { method GetChannelByIDAndTenant (line 676) | func (s *Service) GetChannelByIDAndTenant(channelID string, tenantID u... method isDuplicate (line 693) | func (s *Service) isDuplicate(ctx context.Context, messageID string) b... method HandleMessage (line 711) | func (s *Service) HandleMessage(ctx context.Context, msg *IncomingMess... method executeQARequest (line 881) | func (s *Service) executeQARequest(req *qaRequest) { method handleCommand (line 947) | func (s *Service) handleCommand( method sendStreamReply (line 1069) | func (s *Service) sendStreamReply(ctx context.Context, msg *IncomingMe... method resolveSession (line 1085) | func (s *Service) resolveSession(ctx context.Context, msg *IncomingMes... method handleMessageStream (line 1251) | func (s *Service) handleMessageStream(ctx context.Context, msg *Incomi... method fallbackNonStream (line 1547) | func (s *Service) fallbackNonStream(ctx context.Context, msg *Incoming... method runQA (line 1558) | func (s *Service) runQA(ctx context.Context, session *types.Session, q... method ListChannelsByAgent (line 1700) | func (s *Service) ListChannelsByAgent(agentID string, tenantID uint64)... method CreateChannel (line 1711) | func (s *Service) CreateChannel(channel *IMChannel) error { method UpdateChannel (line 1728) | func (s *Service) UpdateChannel(channel *IMChannel) error { method DeleteChannel (line 1746) | func (s *Service) DeleteChannel(channelID string, tenantID uint64) err... method ToggleChannel (line 1759) | func (s *Service) ToggleChannel(channelID string, tenantID uint64) (*I... method checkDuplicateBot (line 1782) | func (s *Service) checkDuplicateBot(channel *IMChannel, excludeID stri... method handleFileMessage (line 1822) | func (s *Service) handleFileMessage(ctx context.Context, msg *Incoming... method processFileToKnowledgeBase (line 1871) | func (s *Service) processFileToKnowledgeBase(ctx context.Context, msg ... method sendFileResult (line 1944) | func (s *Service) sendFileResult(ctx context.Context, adapter Adapter,... method sendSmartReply (line 1974) | func (s *Service) sendSmartReply(ctx context.Context, adapter Adapter,... method streamSmartReply (line 1995) | func (s *Service) streamSmartReply(ctx context.Context, chatModel chat... method generateSmartReply (line 2080) | func (s *Service) generateSmartReply(ctx context.Context, chatModel ch... method getChatModelForChannel (line 2107) | func (s *Service) getChatModelForChannel(ctx context.Context, channel ... method watchAndSendSummary (line 2141) | func (s *Service) watchAndSendSummary( method sendSummaryNotification (line 2229) | func (s *Service) sendSummaryNotification( function makeUserKey (line 154) | func makeUserKey(channelID, userID, chatID string) string { function buildIMQARequest (line 158) | func buildIMQARequest( function resolveIMConfig (line 183) | func resolveIMConfig(appCfg *config.Config) (workers, maxQueue, maxPerUs... function NewService (line 219) | func NewService( function friendlyToolName (line 1185) | func friendlyToolName(toolName string) string { function isToolVisibleToUser (line 1195) | func isToolVisibleToUser(toolName string) bool { function formatToolCallStart (line 1203) | func formatToolCallStart(toolName string) string { function formatToolCallResult (line 1208) | func formatToolCallResult(toolName string, success bool, output string) ... function briefToolSummary (line 1221) | func briefToolSummary(output string) string { constant smartReplySystemPrompt (line 1965) | smartReplySystemPrompt = "你是一个专业的 IM 机器人助手。请根据以下事件情况,生成一条简洁、清晰的通知消息。" + function fileExtension (line 2260) | func fileExtension(filename string) string { function newInMemoryFileHeader (line 2270) | func newInMemoryFileHeader(filename string, data []byte) *multipart.File... FILE: internal/im/slack/adapter.go type Adapter (line 30) | type Adapter struct method Platform (line 95) | func (a *Adapter) Platform() im.Platform { method VerifyCallback (line 99) | func (a *Adapter) VerifyCallback(c *gin.Context) error { method ParseCallback (line 124) | func (a *Adapter) ParseCallback(c *gin.Context) (*im.IncomingMessage, ... method HandleURLVerification (line 172) | func (a *Adapter) HandleURLVerification(c *gin.Context) bool { method SendReply (line 195) | func (a *Adapter) SendReply(ctx context.Context, incoming *im.Incoming... method StartStream (line 226) | func (a *Adapter) StartStream(ctx context.Context, incoming *im.Incomi... method SendStreamChunk (line 256) | func (a *Adapter) SendStreamChunk(ctx context.Context, incoming *im.In... method EndStream (line 285) | func (a *Adapter) EndStream(ctx context.Context, incoming *im.Incoming... method DownloadFile (line 308) | func (a *Adapter) DownloadFile(ctx context.Context, msg *im.IncomingMe... function NewAdapter (line 37) | func NewAdapter(client *LongConnClient, api *slack.Client) *Adapter { function NewWebhookAdapter (line 45) | func NewWebhookAdapter(api *slack.Client, signingSecret string) *Adapter { function parseIncomingMessage (line 52) | func parseIncomingMessage(user, channel, text, ts string, chatType im.Ch... type slackStreamState (line 214) | type slackStreamState struct FILE: internal/im/slack/longconn.go type MessageHandler (line 16) | type MessageHandler type LongConnClient (line 19) | type LongConnClient struct method GetAPI (line 50) | func (c *LongConnClient) GetAPI() *slack.Client { method Start (line 55) | func (c *LongConnClient) Start(ctx context.Context) error { method handleEvent (line 91) | func (c *LongConnClient) handleEvent(ctx context.Context, eventsAPIEve... method processMessage (line 142) | func (c *LongConnClient) processMessage(ctx context.Context, user, cha... function NewLongConnClient (line 29) | func NewLongConnClient(appToken, botToken string, handler MessageHandler... FILE: internal/im/stream_test.go type mockStreamSender (line 11) | type mockStreamSender struct method StartStream (line 19) | func (m *mockStreamSender) StartStream(_ context.Context, _ *IncomingM... method SendStreamChunk (line 27) | func (m *mockStreamSender) SendStreamChunk(_ context.Context, _ *Incom... method EndStream (line 34) | func (m *mockStreamSender) EndStream(_ context.Context, _ *IncomingMes... method getChunks (line 41) | func (m *mockStreamSender) getChunks() []string { function TestStreamSenderInterface (line 49) | func TestStreamSenderInterface(t *testing.T) { function TestStreamFlushBatching (line 100) | func TestStreamFlushBatching(t *testing.T) { function TestStreamFlushIntervalConstant (line 135) | func TestStreamFlushIntervalConstant(t *testing.T) { FILE: internal/im/types.go type IMChannel (line 15) | type IMChannel struct method TableName (line 32) | func (IMChannel) TableName() string { method BeforeCreate (line 36) | func (ch *IMChannel) BeforeCreate(tx *gorm.DB) error { method BeforeSave (line 51) | func (ch *IMChannel) BeforeSave(tx *gorm.DB) error { method computeBotIdentity (line 58) | func (ch *IMChannel) computeBotIdentity() string { type ChannelSession (line 100) | type ChannelSession struct method TableName (line 116) | func (ChannelSession) TableName() string { method BeforeCreate (line 120) | func (cs *ChannelSession) BeforeCreate(tx *gorm.DB) error { FILE: internal/im/wecom/longconn.go constant wecomWSEndpoint (line 30) | wecomWSEndpoint = "wss://openws.work.weixin.qq.com" constant cmdSubscribe (line 32) | cmdSubscribe = "aibot_subscribe" constant cmdPing (line 33) | cmdPing = "ping" constant cmdMsgCallback (line 34) | cmdMsgCallback = "aibot_msg_callback" constant cmdEventCallback (line 35) | cmdEventCallback = "aibot_event_callback" constant cmdResponse (line 36) | cmdResponse = "aibot_respond_msg" constant defaultHeartbeatInterval (line 38) | defaultHeartbeatInterval = 30 * time.Second constant defaultReconnectBaseDelay (line 39) | defaultReconnectBaseDelay = 1 * time.Second constant defaultReconnectMaxDelay (line 40) | defaultReconnectMaxDelay = 30 * time.Second constant defaultMaxReconnectAttempts (line 41) | defaultMaxReconnectAttempts = -1 constant readTimeout (line 46) | readTimeout = 3 * defaultHeartbeatInterval type wsFrame (line 50) | type wsFrame struct type botMessage (line 61) | type botMessage struct type botMixedItem (line 99) | type botMixedItem struct type streamReplyBody (line 111) | type streamReplyBody struct type MessageHandler (line 121) | type MessageHandler type LongConnClient (line 124) | type LongConnClient struct method Start (line 151) | func (c *LongConnClient) Start(ctx context.Context) error { method Stop (line 192) | func (c *LongConnClient) Stop() { method SendReply (line 204) | func (c *LongConnClient) SendReply(ctx context.Context, incoming *im.I... method StartStream (line 241) | func (c *LongConnClient) StartStream(ctx context.Context, incoming *im... method SendStreamChunk (line 260) | func (c *LongConnClient) SendStreamChunk(ctx context.Context, incoming... method EndStream (line 280) | func (c *LongConnClient) EndStream(ctx context.Context, incoming *im.I... method sendStreamFrame (line 293) | func (c *LongConnClient) sendStreamFrame(incoming *im.IncomingMessage,... method connectAndRun (line 321) | func (c *LongConnClient) connectAndRun(ctx context.Context) error { method authenticate (line 383) | func (c *LongConnClient) authenticate(ctx context.Context) error { method heartbeatLoop (line 427) | func (c *LongConnClient) heartbeatLoop(ctx context.Context) { method handleCallback (line 450) | func (c *LongConnClient) handleCallback(ctx context.Context, frame wsF... method closeConn (line 634) | func (c *LongConnClient) closeConn() { method writeJSON (line 642) | func (c *LongConnClient) writeJSON(v interface{}) error { function NewLongConnClient (line 142) | func NewLongConnClient(botID, secret string, handler MessageHandler) *Lo... function convertMixedMessage (line 579) | func convertMixedMessage(msg *botMessage, chatID string, chatType im.Cha... function reconnectDelay (line 651) | func reconnectDelay(attempt int) time.Duration { FILE: internal/im/wecom/webhook_adapter.go type WebhookAdapter (line 43) | type WebhookAdapter struct method Platform (line 79) | func (a *WebhookAdapter) Platform() im.Platform { method VerifyCallback (line 84) | func (a *WebhookAdapter) VerifyCallback(c *gin.Context) error { method HandleURLVerification (line 115) | func (a *WebhookAdapter) HandleURLVerification(c *gin.Context) bool { method ParseCallback (line 138) | func (a *WebhookAdapter) ParseCallback(c *gin.Context) (*im.IncomingMe... method SendReply (line 217) | func (a *WebhookAdapter) SendReply(ctx context.Context, incoming *im.I... method sendToAppChat (line 238) | func (a *WebhookAdapter) sendToAppChat(ctx context.Context, accessToke... method sendToUser (line 281) | func (a *WebhookAdapter) sendToUser(ctx context.Context, accessToken, ... method getAccessToken (line 325) | func (a *WebhookAdapter) getAccessToken(ctx context.Context) (string, ... method verifySignature (line 372) | func (a *WebhookAdapter) verifySignature(signature, timestamp, nonce, ... method decrypt (line 385) | func (a *WebhookAdapter) decrypt(encrypted string) ([]byte, error) { method DownloadFile (line 471) | func (a *WebhookAdapter) DownloadFile(ctx context.Context, msg *im.Inc... function NewWebhookAdapter (line 61) | func NewWebhookAdapter(corpID, agentSecret, token, encodingAESKey string... type callbackRequestBody (line 438) | type callbackRequestBody struct type wecomMessage (line 448) | type wecomMessage struct function downloadFromURL (line 502) | func downloadFromURL(ctx context.Context, rawURL, fileName string) (io.R... function contentTypeToExt (line 577) | func contentTypeToExt(ct string) string { FILE: internal/im/wecom/ws_adapter.go type WSAdapter (line 28) | type WSAdapter struct method Platform (line 37) | func (a *WSAdapter) Platform() im.Platform { method VerifyCallback (line 41) | func (a *WSAdapter) VerifyCallback(c *gin.Context) error { method ParseCallback (line 45) | func (a *WSAdapter) ParseCallback(c *gin.Context) (*im.IncomingMessage... method HandleURLVerification (line 49) | func (a *WSAdapter) HandleURLVerification(c *gin.Context) bool { method SendReply (line 53) | func (a *WSAdapter) SendReply(ctx context.Context, incoming *im.Incomi... method StartStream (line 59) | func (a *WSAdapter) StartStream(ctx context.Context, incoming *im.Inco... method SendStreamChunk (line 63) | func (a *WSAdapter) SendStreamChunk(ctx context.Context, incoming *im.... method EndStream (line 67) | func (a *WSAdapter) EndStream(ctx context.Context, incoming *im.Incomi... method DownloadFile (line 75) | func (a *WSAdapter) DownloadFile(ctx context.Context, msg *im.Incoming... function NewWSAdapter (line 33) | func NewWSAdapter(client *LongConnClient) *WSAdapter { function decryptAESCBC (line 123) | func decryptAESCBC(ciphertext []byte, aesKeyB64 string) ([]byte, error) { FILE: internal/infrastructure/chunker/splitter.go type Chunk (line 15) | type Chunk struct type ImageRef (line 23) | type ImageRef struct type SplitterConfig (line 31) | type SplitterConfig struct function DefaultConfig (line 38) | func DefaultConfig() SplitterConfig { type span (line 56) | type span struct function protectedSpans (line 61) | func protectedSpans(text string) []span { type splitUnit (line 103) | type splitUnit struct function splitBySeparators (line 109) | func splitBySeparators(text string, separators []string) []string { function runeLen (line 138) | func runeLen(s string) int { function SplitText (line 143) | func SplitText(text string, cfg SplitterConfig) []Chunk { function buildUnitsWithProtection (line 174) | func buildUnitsWithProtection(text string, protected []span, separators ... function mergeUnits (line 261) | func mergeUnits(units []splitUnit, chunkSize, chunkOverlap int) []Chunk { function buildChunk (line 344) | func buildChunk(units []splitUnit, seq int) Chunk { function computeOverlap (line 358) | func computeOverlap(current []splitUnit, chunkOverlap, chunkSize, nextLe... function isSeparatorOnly (line 400) | func isSeparatorOnly(s string) bool { type ParentChildResult (line 413) | type ParentChildResult struct type ChildChunk (line 419) | type ChildChunk struct function SplitTextParentChild (line 429) | func SplitTextParentChild(text string, parentCfg, childCfg SplitterConfi... function ExtractImageRefs (line 460) | func ExtractImageRefs(text string) []ImageRef { FILE: internal/infrastructure/chunker/splitter_test.go function TestSplitText_BasicASCII (line 10) | func TestSplitText_BasicASCII(t *testing.T) { function TestSplitText_ChineseText_StartEndAreRuneOffsets (line 26) | func TestSplitText_ChineseText_StartEndAreRuneOffsets(t *testing.T) { function TestSplitText_ChineseMultiChunk_StartEndConsistency (line 53) | func TestSplitText_ChineseMultiChunk_StartEndConsistency(t *testing.T) { function TestSplitText_MixedChineseAndASCII (line 97) | func TestSplitText_MixedChineseAndASCII(t *testing.T) { function TestSplitText_ProtectedPattern_ChineseContext (line 113) | func TestSplitText_ProtectedPattern_ChineseContext(t *testing.T) { function TestSplitText_SimulateMergeSlicing (line 134) | func TestSplitText_SimulateMergeSlicing(t *testing.T) { function TestSplitText_Empty (line 171) | func TestSplitText_Empty(t *testing.T) { function TestSplitText_SingleCharChinese (line 178) | func TestSplitText_SingleCharChinese(t *testing.T) { function TestSplitText_LaTeXBlockInChinese (line 190) | func TestSplitText_LaTeXBlockInChinese(t *testing.T) { function TestSplitText_CodeBlockInChinese (line 208) | func TestSplitText_CodeBlockInChinese(t *testing.T) { function TestSplitText_OverlapChunks_NonNegativeStart (line 227) | func TestSplitText_OverlapChunks_NonNegativeStart(t *testing.T) { function TestBuildUnitsWithProtection_RuneOffsets (line 243) | func TestBuildUnitsWithProtection_RuneOffsets(t *testing.T) { function TestBuildUnitsWithProtection_WithProtectedSpan (line 263) | func TestBuildUnitsWithProtection_WithProtectedSpan(t *testing.T) { function TestSplitBySeparators (line 283) | func TestSplitBySeparators(t *testing.T) { function TestExtractImageRefs (line 304) | func TestExtractImageRefs(t *testing.T) { function TestSplitText_LargeChineseDocument (line 318) | func TestSplitText_LargeChineseDocument(t *testing.T) { FILE: internal/infrastructure/docparser/builtin_converter.go function init (line 26) | func init() { function IsSimpleFormat (line 33) | func IsSimpleFormat(fileType string) bool { type SimpleFormatReader (line 39) | type SimpleFormatReader struct method Read (line 42) | func (b *SimpleFormatReader) Read(_ context.Context, req *types.ReadRe... function imageToResult (line 68) | func imageToResult(fileName string, data []byte) *types.ReadResult { function IsImageFormat (line 89) | func IsImageFormat(fileType string) bool { function ensureOriginalImageRef (line 98) | func ensureOriginalImageRef(req *types.ReadRequest, mdContent string, im... function csvToMarkdown (line 138) | func csvToMarkdown(data []byte) (string, error) { FILE: internal/infrastructure/docparser/engine_registry.go type EngineRegistration (line 12) | type EngineRegistration interface function RegisterEngine (line 23) | func RegisterEngine(e EngineRegistration) { function init (line 27) | func init() { type builtinEngine (line 38) | type builtinEngine struct method Name (line 40) | func (e *builtinEngine) Name() string { return "builtin" } method Description (line 41) | func (e *builtinEngine) Description() string { method FileTypes (line 44) | func (e *builtinEngine) FileTypes(_ bool) []string { method CheckAvailable (line 47) | func (e *builtinEngine) CheckAvailable(docreaderConnected bool, _ map[... constant SimpleEngineName (line 55) | SimpleEngineName = "simple" type simpleEngine (line 63) | type simpleEngine struct method Name (line 65) | func (e *simpleEngine) Name() string { return SimpleEngineName } method Description (line 66) | func (e *simpleEngine) Description() string { method FileTypes (line 69) | func (e *simpleEngine) FileTypes(_ bool) []string { method CheckAvailable (line 72) | func (e *simpleEngine) CheckAvailable(_ bool, _ map[string]string) (bo... type mineruEngine (line 80) | type mineruEngine struct method Name (line 82) | func (e *mineruEngine) Name() string { return "mineru" } method Description (line 83) | func (e *mineruEngine) Description() string { return "MinerU self-host... method FileTypes (line 84) | func (e *mineruEngine) FileTypes(_ bool) []string { method CheckAvailable (line 87) | func (e *mineruEngine) CheckAvailable(_ bool, overrides map[string]str... type mineruCloudEngine (line 99) | type mineruCloudEngine struct method Name (line 101) | func (e *mineruCloudEngine) Name() string { return "mineru_clou... method Description (line 102) | func (e *mineruCloudEngine) Description() string { return "MinerU Clou... method FileTypes (line 103) | func (e *mineruCloudEngine) FileTypes(_ bool) []string { method CheckAvailable (line 106) | func (e *mineruCloudEngine) CheckAvailable(_ bool, overrides map[strin... function ListAllEngines (line 128) | func ListAllEngines(docreaderConnected bool, overrides map[string]string... FILE: internal/infrastructure/docparser/grpc_parser.go function getMaxMessageSize (line 21) | func getMaxMessageSize() int { type GRPCDocumentReader (line 31) | type GRPCDocumentReader struct method connect (line 48) | func (p *GRPCDocumentReader) connect(addr string) error { method Reconnect (line 75) | func (p *GRPCDocumentReader) Reconnect(addr string) error { method IsConnected (line 88) | func (p *GRPCDocumentReader) IsConnected() bool { method Close (line 94) | func (p *GRPCDocumentReader) Close() error { method Read (line 105) | func (p *GRPCDocumentReader) Read(ctx context.Context, req *types.Read... method ListEngines (line 133) | func (p *GRPCDocumentReader) ListEngines(ctx context.Context, override... function NewGRPCDocumentReader (line 38) | func NewGRPCDocumentReader(addr string) (*GRPCDocumentReader, error) { function fromProtoReadResponse (line 159) | func fromProtoReadResponse(resp *proto.ReadResponse) *types.ReadResult { FILE: internal/infrastructure/docparser/helpers.go function stringOr (line 12) | func stringOr(val, fallback string) string { function parseBoolOr (line 21) | func parseBoolOr(val string, fallback bool) bool { function firstNonEmpty (line 30) | func firstNonEmpty(vals ...string) string { function sleepCtx (line 40) | func sleepCtx(ctx context.Context, d time.Duration) { function logResponseStructure (line 51) | func logResponseStructure(label string, obj interface{}, prefix string) { FILE: internal/infrastructure/docparser/http_parser.go constant PathRead (line 19) | PathRead = "/read" constant PathListEngines (line 20) | PathListEngines = "/list-engines" type httpReadConfig (line 25) | type httpReadConfig struct type httpReadRequest (line 30) | type httpReadRequest struct type httpImageRef (line 40) | type httpImageRef struct type httpReadResponse (line 48) | type httpReadResponse struct type HTTPDocumentReader (line 57) | type HTTPDocumentReader struct method base (line 81) | func (p *HTTPDocumentReader) base() string { method Reconnect (line 87) | func (p *HTTPDocumentReader) Reconnect(addr string) error { method IsConnected (line 95) | func (p *HTTPDocumentReader) IsConnected() bool { method Close (line 101) | func (p *HTTPDocumentReader) Close() error { return nil } method ListEngines (line 119) | func (p *HTTPDocumentReader) ListEngines(ctx context.Context, override... method Read (line 184) | func (p *HTTPDocumentReader) Read(ctx context.Context, req *types.Read... function NewHTTPDocumentReader (line 63) | func NewHTTPDocumentReader(baseURL string) (*HTTPDocumentReader, error) { type httpListEnginesRequest (line 103) | type httpListEnginesRequest struct type httpParserEngineInfo (line 107) | type httpParserEngineInfo struct type httpListEnginesResponse (line 115) | type httpListEnginesResponse struct function fromHTTPReadResponse (line 165) | func fromHTTPReadResponse(resp *httpReadResponse) *types.ReadResult { FILE: internal/infrastructure/docparser/image_resolver.go constant minImageDimension (line 31) | minImageDimension = 128 constant minImageBytes (line 34) | minImageBytes = 512 function isIconImage (line 40) | func isIconImage(data []byte) bool { type StoredImage (line 53) | type StoredImage struct type ImageResolver (line 61) | type ImageResolver struct method ResolveAndStore (line 74) | func (r *ImageResolver) ResolveAndStore( method ResolveRemoteImages (line 222) | func (r *ImageResolver) ResolveRemoteImages( function NewImageResolver (line 67) | func NewImageResolver() *ImageResolver { function extFromMime (line 151) | func extFromMime(mime string) string { function isProviderScheme (line 169) | func isProviderScheme(p string) bool { constant maxRemoteImageSize (line 184) | maxRemoteImageSize = 10 * 1024 * 1024 constant maxRemoteImages (line 186) | maxRemoteImages = 30 constant remoteImageFetchTimeout (line 188) | remoteImageFetchTimeout = 15 * time.Second function UnwrapLinkedImages (line 204) | func UnwrapLinkedImages(markdown string) string { function downloadImage (line 312) | func downloadImage(ctx context.Context, client *http.Client, remoteURL s... function extFromURLPath (line 366) | func extFromURLPath(rawURL string) string { FILE: internal/infrastructure/docparser/image_resolver_test.go function createTestPNG (line 12) | func createTestPNG(w, h int) []byte { function TestIsIconImage (line 24) | func TestIsIconImage(t *testing.T) { FILE: internal/infrastructure/docparser/mineru_cloud_converter.go constant defaultPollInterval (line 24) | defaultPollInterval = 3 * time.Second constant defaultCloudTimeout (line 25) | defaultCloudTimeout = 600 * time.Second constant defaultBaseURL (line 26) | defaultBaseURL = "https://mineru.net/api/v4" type MinerUCloudReader (line 31) | type MinerUCloudReader struct method Read (line 54) | func (c *MinerUCloudReader) Read(ctx context.Context, req *types.ReadR... method applyUploadURLs (line 111) | func (c *MinerUCloudReader) applyUploadURLs(ctx context.Context, fileN... method uploadFile (line 165) | func (c *MinerUCloudReader) uploadFile(ctx context.Context, uploadURL ... method pollBatchResult (line 209) | func (c *MinerUCloudReader) pollBatchResult(ctx context.Context, batch... method fetchBatchStatus (line 256) | func (c *MinerUCloudReader) fetchBatchStatus(ctx context.Context, batc... method extractDoneResult (line 323) | func (c *MinerUCloudReader) extractDoneResult(_ context.Context, item ... function NewMinerUCloudReader (line 42) | func NewMinerUCloudReader(overrides map[string]string) *MinerUCloudReader { type batchApplyResponse (line 102) | type batchApplyResponse struct type batchPollResponse (line 187) | type batchPollResponse struct type extractResultItem (line 195) | type extractResultItem struct function downloadAndExtractZip (line 347) | func downloadAndExtractZip(zipURL string) (string, []types.ImageRef, err... function resolveInZip (line 443) | func resolveInZip(imgPath, mdDir string, entries map[string]*zip.File) *... function readZipEntry (line 457) | func readZipEntry(f *zip.File) (string, error) { function readZipEntryBytes (line 470) | func readZipEntryBytes(f *zip.File) ([]byte, error) { function PingMinerUCloud (line 480) | func PingMinerUCloud(apiKey string) (bool, string) { FILE: internal/infrastructure/docparser/mineru_converter.go constant mineruTimeout (line 22) | mineruTimeout = 1000 * time.Second type MinerUReader (line 27) | type MinerUReader struct method Read (line 49) | func (c *MinerUReader) Read(ctx context.Context, req *types.ReadReques... method callFileParse (line 96) | func (c *MinerUReader) callFileParse(ctx context.Context, content []by... method processImages (line 196) | func (c *MinerUReader) processImages(mdContent string, imagesB64 map[s... method logMinerUResponseStructure (line 247) | func (c *MinerUReader) logMinerUResponseStructure(obj interface{}, pre... function NewMinerUReader (line 37) | func NewMinerUReader(overrides map[string]string) *MinerUReader { type mineruFileParseResponse (line 83) | type mineruFileParseResponse struct function PingMinerU (line 252) | func PingMinerU(endpoint string) (bool, string) { function htmlToMarkdown (line 271) | func htmlToMarkdown(content string) string { FILE: internal/infrastructure/docparser/resolve_remote_images_test.go type mockFileService (line 15) | type mockFileService struct method CheckConnectivity (line 25) | func (m *mockFileService) CheckConnectivity(ctx context.Context) error... method SaveFile (line 26) | func (m *mockFileService) SaveFile(ctx context.Context, file *multipar... method SaveBytes (line 29) | func (m *mockFileService) SaveBytes(ctx context.Context, data []byte, ... method GetFile (line 33) | func (m *mockFileService) GetFile(ctx context.Context, filePath string... method GetFileURL (line 36) | func (m *mockFileService) GetFileURL(ctx context.Context, filePath str... method DeleteFile (line 39) | func (m *mockFileService) DeleteFile(ctx context.Context, filePath str... type savedEntry (line 19) | type savedEntry struct function TestResolveRemoteImages_NormalDownload (line 41) | func TestResolveRemoteImages_NormalDownload(t *testing.T) { function TestResolveRemoteImages_SSRFBlocked (line 82) | func TestResolveRemoteImages_SSRFBlocked(t *testing.T) { function TestResolveRemoteImages_NonImageContentType (line 103) | func TestResolveRemoteImages_NonImageContentType(t *testing.T) { function TestResolveRemoteImages_ProviderSchemeSkipped (line 130) | func TestResolveRemoteImages_ProviderSchemeSkipped(t *testing.T) { function TestResolveRemoteImages_MultipleImages (line 149) | func TestResolveRemoteImages_MultipleImages(t *testing.T) { function TestResolveRemoteImages_NoImages (line 182) | func TestResolveRemoteImages_NoImages(t *testing.T) { function TestResolveRemoteImages_Server404 (line 201) | func TestResolveRemoteImages_Server404(t *testing.T) { function TestExtFromURLPath (line 226) | func TestExtFromURLPath(t *testing.T) { FILE: internal/logger/logger.go type LogLevel (line 20) | type LogLevel constant LevelDebug (line 24) | LevelDebug LogLevel = "debug" constant LevelInfo (line 25) | LevelInfo LogLevel = "info" constant LevelWarn (line 26) | LevelWarn LogLevel = "warn" constant LevelError (line 27) | LevelError LogLevel = "error" constant LevelFatal (line 28) | LevelFatal LogLevel = "fatal" constant colorRed (line 33) | colorRed = "\033[31m" constant colorGreen (line 34) | colorGreen = "\033[32m" constant colorYellow (line 35) | colorYellow = "\033[33m" constant colorBlue (line 36) | colorBlue = "\033[34m" constant colorPurple (line 37) | colorPurple = "\033[35m" constant colorCyan (line 38) | colorCyan = "\033[36m" constant colorWhite (line 39) | colorWhite = "\033[37m" constant colorGray (line 40) | colorGray = "\033[90m" constant colorBold (line 41) | colorBold = "\033[1m" constant colorReset (line 42) | colorReset = "\033[0m" type CustomFormatter (line 45) | type CustomFormatter struct method Format (line 49) | func (f *CustomFormatter) Format(entry *logrus.Entry) ([]byte, error) { function init (line 132) | func init() { function GetLogger (line 152) | func GetLogger(c context.Context) *logrus.Entry { function SetLogLevel (line 160) | func SetLogLevel(level LogLevel) { function getLogLevelFromEnv (line 182) | func getLogLevelFromEnv() logrus.Level { function addCaller (line 203) | func addCaller(entry *logrus.Entry, skip int) *logrus.Entry { function WithRequestID (line 220) | func WithRequestID(c context.Context, requestID string) context.Context { function WithField (line 225) | func WithField(c context.Context, key string, value interface{}) context... function WithFields (line 231) | func WithFields(c context.Context, fields logrus.Fields) context.Context { function Debug (line 237) | func Debug(c context.Context, args ...interface{}) { function Debugf (line 242) | func Debugf(c context.Context, format string, args ...interface{}) { function Info (line 247) | func Info(c context.Context, args ...interface{}) { function Infof (line 252) | func Infof(c context.Context, format string, args ...interface{}) { function Warn (line 257) | func Warn(c context.Context, args ...interface{}) { function Warnf (line 262) | func Warnf(c context.Context, format string, args ...interface{}) { function Error (line 267) | func Error(c context.Context, args ...interface{}) { function Errorf (line 272) | func Errorf(c context.Context, format string, args ...interface{}) { function ErrorWithFields (line 277) | func ErrorWithFields(c context.Context, err error, fields logrus.Fields) { function Fatal (line 288) | func Fatal(c context.Context, args ...interface{}) { function Fatalf (line 293) | func Fatalf(c context.Context, format string, args ...interface{}) { function CloneContext (line 298) | func CloneContext(ctx context.Context) context.Context { FILE: internal/mcp/client.go type MCPClient (line 20) | type MCPClient interface type ClientConfig (line 50) | type ClientConfig struct type mcpGoClient (line 55) | type mcpGoClient struct method onConnectionLost (line 138) | func (c *mcpGoClient) onConnectionLost(err error) { method checkErrorAndDisconnectIfNeeded (line 144) | func (c *mcpGoClient) checkErrorAndDisconnectIfNeeded(err error) { method Connect (line 158) | func (c *mcpGoClient) Connect(ctx context.Context) error { method Disconnect (line 178) | func (c *mcpGoClient) Disconnect() error { method Initialize (line 193) | func (c *mcpGoClient) Initialize(ctx context.Context) (*InitializeResu... method ListTools (line 228) | func (c *mcpGoClient) ListTools(ctx context.Context) ([]*types.MCPTool... method ListResources (line 255) | func (c *mcpGoClient) ListResources(ctx context.Context) ([]*types.MCP... method CallTool (line 282) | func (c *mcpGoClient) CallTool(ctx context.Context, name string, args ... method ReadResource (line 324) | func (c *mcpGoClient) ReadResource(ctx context.Context, uri string) (*... method IsConnected (line 365) | func (c *mcpGoClient) IsConnected() bool { method GetServiceID (line 370) | func (c *mcpGoClient) GetServiceID() string { function NewMCPClient (line 63) | func NewMCPClient(config *ClientConfig) (MCPClient, error) { FILE: internal/mcp/manager.go type MCPManager (line 14) | type MCPManager struct method GetOrCreateClient (line 40) | func (m *MCPManager) GetOrCreateClient(service *types.MCPService) (MCP... method initializeClient (line 99) | func (m *MCPManager) initializeClient(service *types.MCPService, clien... method GetClient (line 123) | func (m *MCPManager) GetClient(serviceID string) (MCPClient, bool) { method CloseClient (line 132) | func (m *MCPManager) CloseClient(serviceID string) error { method CloseAll (line 151) | func (m *MCPManager) CloseAll() { method Shutdown (line 166) | func (m *MCPManager) Shutdown() { method cleanupIdleConnections (line 172) | func (m *MCPManager) cleanupIdleConnections() { method removeDisconnectedClients (line 187) | func (m *MCPManager) removeDisconnectedClients() { method GetActiveClients (line 200) | func (m *MCPManager) GetActiveClients() int { method ListActiveServices (line 214) | func (m *MCPManager) ListActiveServices() []string { function NewMCPManager (line 22) | func NewMCPManager() *MCPManager { FILE: internal/mcp/types.go type InitializeResult (line 4) | type InitializeResult struct type ServerCapabilities (line 11) | type ServerCapabilities struct type ToolsCapability (line 20) | type ToolsCapability struct type ResourcesCapability (line 25) | type ResourcesCapability struct type PromptsCapability (line 31) | type PromptsCapability struct type ServerInfo (line 36) | type ServerInfo struct type CallToolResult (line 42) | type CallToolResult struct type ContentItem (line 48) | type ContentItem struct type ReadResourceResult (line 56) | type ReadResourceResult struct type ResourceContent (line 61) | type ResourceContent struct FILE: internal/middleware/auth.go function isNoAuthAPI (line 28) | func isNoAuthAPI(path string, method string) bool { function canAccessTenant (line 43) | func canAccessTenant(user *types.User, targetTenantID uint64, cfg *confi... function Auth (line 61) | func Auth( function GetTenantIDFromContext (line 226) | func GetTenantIDFromContext(ctx context.Context) (uint64, error) { FILE: internal/middleware/error_handler.go function ErrorHandler (line 12) | func ErrorHandler() gin.HandlerFunc { FILE: internal/middleware/language.go constant DefaultLanguage (line 13) | DefaultLanguage = "zh-CN" function Language (line 21) | func Language() gin.HandlerFunc { function parseFirstLanguageTag (line 56) | func parseFirstLanguageTag(header string) string { FILE: internal/middleware/logger.go constant maxBodySize (line 19) | maxBodySize = 1024 * 10 type loggerResponseBodyWriter (line 23) | type loggerResponseBodyWriter struct method Write (line 29) | func (r loggerResponseBodyWriter) Write(b []byte) (int, error) { function sanitizeBody (line 35) | func sanitizeBody(body string) string { function readRequestBody (line 62) | func readRequestBody(c *gin.Context) string { function RequestID (line 101) | func RequestID() gin.HandlerFunc { function Logger (line 133) | func Logger() gin.HandlerFunc { FILE: internal/middleware/recovery.go function Recovery (line 13) | func Recovery() gin.HandlerFunc { FILE: internal/middleware/trace.go type responseBodyWriter (line 17) | type responseBodyWriter struct method Write (line 23) | func (r responseBodyWriter) Write(b []byte) (int, error) { function TracingMiddleware (line 29) | func TracingMiddleware() gin.HandlerFunc { FILE: internal/models/chat/chat.go type Tool (line 15) | type Tool struct type FunctionDef (line 21) | type FunctionDef struct type ChatOptions (line 28) | type ChatOptions struct type MessageContentPart (line 43) | type MessageContentPart struct type ImageURL (line 50) | type ImageURL struct type Message (line 56) | type Message struct type ToolCall (line 67) | type ToolCall struct type FunctionCall (line 74) | type FunctionCall struct type Chat (line 80) | type Chat interface type ChatConfig (line 94) | type ChatConfig struct function NewChat (line 105) | func NewChat(config *ChatConfig, ollamaService *ollama.OllamaService) (C... function NewRemoteChat (line 117) | func NewRemoteChat(config *ChatConfig) (Chat, error) { FILE: internal/models/chat/image_resolve.go function resolveImageURLForLLM (line 16) | func resolveImageURLForLLM(imageURL string) string { function resolveImageURLForOllama (line 31) | func resolveImageURLForOllama(imageURL string) []byte { function readLocalStorageBytes (line 50) | func readLocalStorageBytes(storagePath string) []byte { function isMultimodalNotSupportedError (line 67) | func isMultimodalNotSupportedError(err error) bool { function stripImagesFromMessages (line 77) | func stripImagesFromMessages(messages []Message) []Message { FILE: internal/models/chat/json_field_extractor.go type jsonFieldExtractor (line 13) | type jsonFieldExtractor struct method Feed (line 32) | func (e *jsonFieldExtractor) Feed(argsDelta string) string { method IsDone (line 75) | func (e *jsonFieldExtractor) IsDone() bool { function newJSONFieldExtractor (line 22) | func newJSONFieldExtractor(fieldName string) *jsonFieldExtractor { function findFieldValueStart (line 81) | func findFieldValueStart(buf string, fieldName string) int { function findSafeEnd (line 117) | func findSafeEnd(value string, from int) (int, bool) { function unescapeJSONString (line 154) | func unescapeJSONString(s string) string { FILE: internal/models/chat/json_field_extractor_test.go function TestJSONFieldExtractor_Basic (line 7) | func TestJSONFieldExtractor_Basic(t *testing.T) { function TestJSONFieldExtractor_WithEscapes (line 25) | func TestJSONFieldExtractor_WithEscapes(t *testing.T) { function TestJSONFieldExtractor_OneChunk (line 40) | func TestJSONFieldExtractor_OneChunk(t *testing.T) { function TestJSONFieldExtractor_SmallChunks (line 53) | func TestJSONFieldExtractor_SmallChunks(t *testing.T) { function TestJSONFieldExtractor_Markdown (line 68) | func TestJSONFieldExtractor_Markdown(t *testing.T) { function TestJSONFieldExtractor_UnicodeEscape (line 84) | func TestJSONFieldExtractor_UnicodeEscape(t *testing.T) { function TestJSONFieldExtractor_IncompleteEscapeAtBoundary (line 97) | func TestJSONFieldExtractor_IncompleteEscapeAtBoundary(t *testing.T) { function TestJSONFieldExtractor_WhitespaceInJSON (line 111) | func TestJSONFieldExtractor_WhitespaceInJSON(t *testing.T) { function TestJSONFieldExtractor_EmptyAnswer (line 122) | func TestJSONFieldExtractor_EmptyAnswer(t *testing.T) { function TestJSONFieldExtractor_ThoughtField (line 136) | func TestJSONFieldExtractor_ThoughtField(t *testing.T) { function TestJSONFieldExtractor_ThoughtFieldWithEscapes (line 153) | func TestJSONFieldExtractor_ThoughtFieldWithEscapes(t *testing.T) { FILE: internal/models/chat/lkeap.go type LKEAPChat (line 17) | type LKEAPChat struct method isDeepSeekV3Model (line 53) | func (c *LKEAPChat) isDeepSeekV3Model() bool { method customizeRequest (line 58) | func (c *LKEAPChat) customizeRequest(req *openai.ChatCompletionRequest... type LKEAPThinkingConfig (line 22) | type LKEAPThinkingConfig struct type LKEAPChatCompletionRequest (line 27) | type LKEAPChatCompletionRequest struct function NewLKEAPChat (line 33) | func NewLKEAPChat(config *ChatConfig) (*LKEAPChat, error) { FILE: internal/models/chat/nvidia.go type NvidiaChat (line 9) | type NvidiaChat struct method endpointCustomizer (line 32) | func (c *NvidiaChat) endpointCustomizer(baseURL string, modelID string... function NewNvidiaChat (line 14) | func NewNvidiaChat(config *ChatConfig) (*NvidiaChat, error) { FILE: internal/models/chat/ollama.go type OllamaChat (line 20) | type OllamaChat struct method convertMessages (line 36) | func (c *OllamaChat) convertMessages(messages []Message) []ollamaapi.M... method buildChatRequest (line 82) | func (c *OllamaChat) buildChatRequest(messages []Message, opts *ChatOp... method Chat (line 122) | func (c *OllamaChat) Chat(ctx context.Context, messages []Message, opt... method ChatStream (line 176) | func (c *OllamaChat) ChatStream( method ensureModelAvailable (line 288) | func (c *OllamaChat) ensureModelAvailable(ctx context.Context) error { method GetModelName (line 294) | func (c *OllamaChat) GetModelName() string { method GetModelID (line 299) | func (c *OllamaChat) GetModelID() string { method toolFrom (line 304) | func (c *OllamaChat) toolFrom(tools []Tool) ollamaapi.Tools { method toolTo (line 327) | func (c *OllamaChat) toolTo(ollamaTools ollamaapi.Tools) []Tool { method toolCallFrom (line 347) | func (c *OllamaChat) toolCallFrom(toolCalls []ToolCall) []ollamaapi.To... method toolCallTo (line 369) | func (c *OllamaChat) toolCallTo(ollamaToolCalls []ollamaapi.ToolCall) ... function NewOllamaChat (line 27) | func NewOllamaChat(config *ChatConfig, ollamaService *ollama.OllamaServi... function resolveImageForOllama (line 61) | func resolveImageForOllama(imageURL string) ollamaapi.ImageData { function tooli2s (line 388) | func tooli2s(i int) string { function tools2i (line 392) | func tools2i(s string) int { FILE: internal/models/chat/provider_chat.go type DeepSeekChat (line 13) | type DeepSeekChat struct method customizeRequest (line 37) | func (c *DeepSeekChat) customizeRequest(req *openai.ChatCompletionRequ... function NewDeepSeekChat (line 18) | func NewDeepSeekChat(config *ChatConfig) (*DeepSeekChat, error) { type GenericChat (line 48) | type GenericChat struct method customizeRequest (line 72) | func (c *GenericChat) customizeRequest(req *openai.ChatCompletionReque... function NewGenericChat (line 53) | func NewGenericChat(config *ChatConfig) (*GenericChat, error) { FILE: internal/models/chat/qwen.go type QwenChat (line 10) | type QwenChat struct method isQwen3Model (line 40) | func (c *QwenChat) isQwen3Model() bool { method customizeRequest (line 45) | func (c *QwenChat) customizeRequest(req *openai.ChatCompletionRequest,... type QwenChatCompletionRequest (line 15) | type QwenChatCompletionRequest struct function NewQwenChat (line 21) | func NewQwenChat(config *ChatConfig) (*QwenChat, error) { FILE: internal/models/chat/remote_api.go type RemoteAPIChat (line 21) | type RemoteAPIChat struct method SetRequestCustomizer (line 62) | func (c *RemoteAPIChat) SetRequestCustomizer(customizer func(req *open... method SetEndpointCustomizer (line 67) | func (c *RemoteAPIChat) SetEndpointCustomizer(customizer func(baseURL ... method ConvertMessages (line 72) | func (c *RemoteAPIChat) ConvertMessages(messages []Message) []openai.C... method BuildChatCompletionRequest (line 148) | func (c *RemoteAPIChat) BuildChatCompletionRequest(messages []Message,... method logRequest (line 221) | func (c *RemoteAPIChat) logRequest(ctx context.Context, req any, isStr... method Chat (line 228) | func (c *RemoteAPIChat) Chat(ctx context.Context, messages []Message, ... method chatWithRawHTTP (line 266) | func (c *RemoteAPIChat) chatWithRawHTTP(ctx context.Context, endpoint ... method parseCompletionResponse (line 305) | func (c *RemoteAPIChat) parseCompletionResponse(resp *openai.ChatCompl... method ChatStream (line 370) | func (c *RemoteAPIChat) ChatStream(ctx context.Context, messages []Mes... method chatStreamWithRawHTTP (line 413) | func (c *RemoteAPIChat) chatStreamWithRawHTTP(ctx context.Context, end... method processStream (line 453) | func (c *RemoteAPIChat) processStream(ctx context.Context, stream *ope... method processRawHTTPStream (line 486) | func (c *RemoteAPIChat) processRawHTTPStream(ctx context.Context, resp... method processStreamDelta (line 573) | func (c *RemoteAPIChat) processStreamDelta(ctx context.Context, choice... method processToolCallsDelta (line 623) | func (c *RemoteAPIChat) processToolCallsDelta(toolCalls []openai.ToolC... method GetModelName (line 721) | func (c *RemoteAPIChat) GetModelName() string { method GetModelID (line 726) | func (c *RemoteAPIChat) GetModelID() string { method GetProvider (line 731) | func (c *RemoteAPIChat) GetProvider() provider.ProviderName { method GetBaseURL (line 736) | func (c *RemoteAPIChat) GetBaseURL() string { method GetAPIKey (line 741) | func (c *RemoteAPIChat) GetAPIKey() string { function NewRemoteAPIChat (line 39) | func NewRemoteAPIChat(chatConfig *ChatConfig) (*RemoteAPIChat, error) { function removeThinkingContent (line 349) | func removeThinkingContent(content string) string { type streamState (line 538) | type streamState struct method buildOrderedToolCalls (line 556) | func (s *streamState) buildOrderedToolCalls() []types.LLMToolCall { function newStreamState (line 546) | func newStreamState() *streamState { FILE: internal/models/chat/remote_api_test.go function TestRemoteAPIChat (line 15) | func TestRemoteAPIChat(t *testing.T) { FILE: internal/models/chat/sse_reader.go type SSEEvent (line 11) | type SSEEvent struct type SSEReader (line 17) | type SSEReader struct method ReadEvent (line 31) | func (r *SSEReader) ReadEvent() (*SSEEvent, error) { function NewSSEReader (line 22) | func NewSSEReader(reader io.Reader) *SSEReader { FILE: internal/models/embedding/aliyun.go constant AliyunMultimodalEmbeddingEndpoint (line 18) | AliyunMultimodalEmbeddingEndpoint = "/api/v1/services/embeddings/multimo... type AliyunEmbedder (line 22) | type AliyunEmbedder struct method Embed (line 116) | func (e *AliyunEmbedder) Embed(ctx context.Context, text string) ([]fl... method doRequestWithRetry (line 129) | func (e *AliyunEmbedder) doRequestWithRetry(ctx context.Context, jsonD... method BatchEmbed (line 169) | func (e *AliyunEmbedder) BatchEmbed(ctx context.Context, texts []strin... method GetModelName (line 235) | func (e *AliyunEmbedder) GetModelName() string { method GetDimensions (line 240) | func (e *AliyunEmbedder) GetDimensions() int { method GetModelID (line 245) | func (e *AliyunEmbedder) GetModelID() string { type AliyunEmbedRequest (line 36) | type AliyunEmbedRequest struct type AliyunEmbedInput (line 42) | type AliyunEmbedInput struct type AliyunContent (line 47) | type AliyunContent struct type AliyunEmbedResponse (line 52) | type AliyunEmbedResponse struct type AliyunErrorResponse (line 66) | type AliyunErrorResponse struct function NewAliyunEmbedder (line 73) | func NewAliyunEmbedder(apiKey, baseURL, modelName string, FILE: internal/models/embedding/batch.go type batchEmbedder (line 13) | type batchEmbedder struct method BatchEmbedWithPool (line 26) | func (e *batchEmbedder) BatchEmbedWithPool(ctx context.Context, model ... function NewBatchEmbedder (line 17) | func NewBatchEmbedder(pool *ants.Pool) EmbedderPooler { type textEmbedding (line 21) | type textEmbedding struct FILE: internal/models/embedding/embedder.go type Embedder (line 14) | type Embedder interface type EmbedderPooler (line 33) | type EmbedderPooler interface type EmbedderType (line 38) | type EmbedderType type Config (line 41) | type Config struct function NewEmbedder (line 53) | func NewEmbedder(config Config, pooler EmbedderPooler, ollamaService *ol... FILE: internal/models/embedding/jina.go type JinaEmbedder (line 17) | type JinaEmbedder struct method Embed (line 79) | func (e *JinaEmbedder) Embed(ctx context.Context, text string) ([]floa... method doRequestWithRetry (line 92) | func (e *JinaEmbedder) doRequestWithRetry(ctx context.Context, jsonDat... method BatchEmbed (line 133) | func (e *JinaEmbedder) BatchEmbed(ctx context.Context, texts []string)... method GetModelName (line 191) | func (e *JinaEmbedder) GetModelName() string { method GetDimensions (line 196) | func (e *JinaEmbedder) GetDimensions() int { method GetModelID (line 201) | func (e *JinaEmbedder) GetModelID() string { type JinaEmbedRequest (line 31) | type JinaEmbedRequest struct type JinaEmbedResponse (line 39) | type JinaEmbedResponse struct function NewJinaEmbedder (line 47) | func NewJinaEmbedder(apiKey, baseURL, modelName string, FILE: internal/models/embedding/nvidia.go type NvidiaEmbedder (line 17) | type NvidiaEmbedder struct method Embed (line 79) | func (e *NvidiaEmbedder) Embed(ctx context.Context, text string) ([]fl... method doRequestWithRetry (line 92) | func (e *NvidiaEmbedder) doRequestWithRetry(ctx context.Context, jsonD... method BatchEmbed (line 133) | func (e *NvidiaEmbedder) BatchEmbed(ctx context.Context, texts []strin... method GetModelName (line 191) | func (e *NvidiaEmbedder) GetModelName() string { method GetDimensions (line 196) | func (e *NvidiaEmbedder) GetDimensions() int { method GetModelID (line 201) | func (e *NvidiaEmbedder) GetModelID() string { type NvidiaEmbedRequest (line 30) | type NvidiaEmbedRequest struct type NvidiaEmbedResponse (line 39) | type NvidiaEmbedResponse struct function NewNvidiaEmbedder (line 47) | func NewNvidiaEmbedder(apiKey, baseURL, modelName string, FILE: internal/models/embedding/ollama.go type OllamaEmbedder (line 14) | type OllamaEmbedder struct method ensureModelAvailable (line 63) | func (e *OllamaEmbedder) ensureModelAvailable(ctx context.Context) err... method Embed (line 69) | func (e *OllamaEmbedder) Embed(ctx context.Context, text string) ([]fl... method BatchEmbed (line 83) | func (e *OllamaEmbedder) BatchEmbed(ctx context.Context, texts []strin... method GetModelName (line 115) | func (e *OllamaEmbedder) GetModelName() string { method GetDimensions (line 120) | func (e *OllamaEmbedder) GetDimensions() int { method GetModelID (line 125) | func (e *OllamaEmbedder) GetModelID() string { type OllamaEmbedRequest (line 24) | type OllamaEmbedRequest struct type OllamaEmbedResponse (line 31) | type OllamaEmbedResponse struct function NewOllamaEmbedder (line 36) | func NewOllamaEmbedder(baseURL, FILE: internal/models/embedding/openai.go type OpenAIEmbedder (line 16) | type OpenAIEmbedder struct method Embed (line 83) | func (e *OpenAIEmbedder) Embed(ctx context.Context, text string) ([]fl... method doRequestWithRetry (line 96) | func (e *OpenAIEmbedder) doRequestWithRetry(ctx context.Context, jsonD... method BatchEmbed (line 137) | func (e *OpenAIEmbedder) BatchEmbed(ctx context.Context, texts []strin... method GetModelName (line 224) | func (e *OpenAIEmbedder) GetModelName() string { method GetDimensions (line 229) | func (e *OpenAIEmbedder) GetDimensions() int { method GetModelID (line 234) | func (e *OpenAIEmbedder) GetModelID() string { type OpenAIEmbedRequest (line 30) | type OpenAIEmbedRequest struct type OpenAIEmbedResponse (line 38) | type OpenAIEmbedResponse struct function NewOpenAIEmbedder (line 46) | func NewOpenAIEmbedder(apiKey, baseURL, modelName string, FILE: internal/models/embedding/volcengine.go constant VolcengineMultimodalEmbeddingPath (line 18) | VolcengineMultimodalEmbeddingPath = "/api/v3/embeddings/multimodal" type VolcengineEmbedder (line 22) | type VolcengineEmbedder struct method Embed (line 127) | func (e *VolcengineEmbedder) Embed(ctx context.Context, text string) (... method doRequestWithRetry (line 140) | func (e *VolcengineEmbedder) doRequestWithRetry(ctx context.Context, j... method BatchEmbed (line 180) | func (e *VolcengineEmbedder) BatchEmbed(ctx context.Context, texts []s... method GetModelName (line 241) | func (e *VolcengineEmbedder) GetModelName() string { method GetDimensions (line 246) | func (e *VolcengineEmbedder) GetDimensions() int { method GetModelID (line 251) | func (e *VolcengineEmbedder) GetModelID() string { type VolcengineEmbedRequest (line 36) | type VolcengineEmbedRequest struct type VolcengineInputContent (line 42) | type VolcengineInputContent struct type VolcengineImageURL (line 49) | type VolcengineImageURL struct type VolcengineEmbedResponse (line 55) | type VolcengineEmbedResponse struct type VolcengineErrorResponse (line 68) | type VolcengineErrorResponse struct function NewVolcengineEmbedder (line 77) | func NewVolcengineEmbedder(apiKey, baseURL, modelName string, FILE: internal/models/provider/aliyun.go constant AliyunChatBaseURL (line 12) | AliyunChatBaseURL = "https://dashscope.aliyuncs.com/compatible-mode/v1" constant AliyunRerankBaseURL (line 14) | AliyunRerankBaseURL = "https://dashscope.aliyuncs.com/api/v1/services/re... type AliyunProvider (line 18) | type AliyunProvider struct method Info (line 25) | func (p *AliyunProvider) Info() ProviderInfo { method ValidateConfig (line 47) | func (p *AliyunProvider) ValidateConfig(config *Config) error { function init (line 20) | func init() { function IsQwen3Model (line 59) | func IsQwen3Model(modelName string) bool { function IsDeepSeekModel (line 65) | func IsDeepSeekModel(modelName string) bool { FILE: internal/models/provider/deepseek.go constant DeepSeekBaseURL (line 11) | DeepSeekBaseURL = "https://api.deepseek.com/v1" type DeepSeekProvider (line 15) | type DeepSeekProvider struct method Info (line 22) | func (p *DeepSeekProvider) Info() ProviderInfo { method ValidateConfig (line 38) | func (p *DeepSeekProvider) ValidateConfig(config *Config) error { function init (line 17) | func init() { FILE: internal/models/provider/gemini.go constant GeminiBaseURL (line 11) | GeminiBaseURL = "https://generativelanguage.googleapis.com/v1beta" constant GeminiOpenAICompatBaseURL (line 13) | GeminiOpenAICompatBaseURL = "https://generativelanguage.googleapis.com/v... type GeminiProvider (line 17) | type GeminiProvider struct method Info (line 24) | func (p *GeminiProvider) Info() ProviderInfo { method ValidateConfig (line 40) | func (p *GeminiProvider) ValidateConfig(config *Config) error { function init (line 19) | func init() { FILE: internal/models/provider/generic.go type GenericProvider (line 10) | type GenericProvider struct method Info (line 17) | func (p *GenericProvider) Info() ProviderInfo { method ValidateConfig (line 34) | func (p *GenericProvider) ValidateConfig(config *Config) error { function init (line 12) | func init() { FILE: internal/models/provider/gpustack.go constant GPUStackBaseURL (line 11) | GPUStackBaseURL = "http://your_gpustack_server_url/v1-openai" constant GPUStackRerankBaseURL (line 13) | GPUStackRerankBaseURL = "http://your_gpustack_server_url/v1" type GPUStackProvider (line 17) | type GPUStackProvider struct method Info (line 24) | func (p *GPUStackProvider) Info() ProviderInfo { method ValidateConfig (line 46) | func (p *GPUStackProvider) ValidateConfig(config *Config) error { function init (line 19) | func init() { FILE: internal/models/provider/hunyuan.go constant HunyuanBaseURL (line 11) | HunyuanBaseURL = "https://api.hunyuan.cloud.tencent.com/v1" type HunyuanProvider (line 15) | type HunyuanProvider struct method Info (line 22) | func (p *HunyuanProvider) Info() ProviderInfo { method ValidateConfig (line 40) | func (p *HunyuanProvider) ValidateConfig(config *Config) error { function init (line 17) | func init() { FILE: internal/models/provider/jina.go constant JinaBaseURL (line 10) | JinaBaseURL = "https://api.jina.ai/v1" type JinaProvider (line 14) | type JinaProvider struct method Info (line 21) | func (p *JinaProvider) Info() ProviderInfo { method ValidateConfig (line 39) | func (p *JinaProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/lkeap.go constant LKEAPBaseURL (line 12) | LKEAPBaseURL = "https://api.lkeap.cloud.tencent.com/v1" type LKEAPProvider (line 17) | type LKEAPProvider struct method Info (line 24) | func (p *LKEAPProvider) Info() ProviderInfo { method ValidateConfig (line 40) | func (p *LKEAPProvider) ValidateConfig(config *Config) error { function init (line 19) | func init() { function IsLKEAPDeepSeekV3Model (line 52) | func IsLKEAPDeepSeekV3Model(modelName string) bool { function IsLKEAPDeepSeekR1Model (line 58) | func IsLKEAPDeepSeekR1Model(modelName string) bool { function IsLKEAPThinkingModel (line 63) | func IsLKEAPThinkingModel(modelName string) bool { FILE: internal/models/provider/longcat.go constant LongCatBaseURL (line 10) | LongCatBaseURL = "https://api.longcat.chat/openai/v1" type LongCatProvider (line 14) | type LongCatProvider struct method Info (line 21) | func (p *LongCatProvider) Info() ProviderInfo { method ValidateConfig (line 37) | func (p *LongCatProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/mimo.go constant MimoBaseURL (line 11) | MimoBaseURL = "https://api.xiaomimimo.com/v1" type MimoProvider (line 15) | type MimoProvider struct method Info (line 22) | func (p *MimoProvider) Info() ProviderInfo { method ValidateConfig (line 38) | func (p *MimoProvider) ValidateConfig(config *Config) error { function init (line 17) | func init() { FILE: internal/models/provider/minimax.go constant MiniMaxBaseURL (line 11) | MiniMaxBaseURL = "https://api.minimax.io/v1" constant MiniMaxCNBaseURL (line 13) | MiniMaxCNBaseURL = "https://api.minimaxi.com/v1" type MiniMaxProvider (line 17) | type MiniMaxProvider struct method Info (line 24) | func (p *MiniMaxProvider) Info() ProviderInfo { method ValidateConfig (line 40) | func (p *MiniMaxProvider) ValidateConfig(config *Config) error { function init (line 19) | func init() { FILE: internal/models/provider/modelscope.go constant ModelScopeBaseURL (line 11) | ModelScopeBaseURL = "https://api-inference.modelscope.cn/v1" type ModelScopeProvider (line 15) | type ModelScopeProvider struct method Info (line 22) | func (p *ModelScopeProvider) Info() ProviderInfo { method ValidateConfig (line 42) | func (p *ModelScopeProvider) ValidateConfig(config *Config) error { function init (line 17) | func init() { FILE: internal/models/provider/moonshot.go constant MoonshotBaseURL (line 10) | MoonshotBaseURL = "https://api.moonshot.ai/v1" type MoonshotProvider (line 14) | type MoonshotProvider struct method Info (line 21) | func (p *MoonshotProvider) Info() ProviderInfo { method ValidateConfig (line 39) | func (p *MoonshotProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/nvidia.go constant NvidiaChatBaseURL (line 11) | NvidiaChatBaseURL = "https://integrate.api.nvidia.com/v1/chat/completions" constant NvidiaVLMBaseURL (line 13) | NvidiaVLMBaseURL = "https://integrate.api.nvidia.com/v1" constant NvidiaRerankBaseURL (line 15) | NvidiaRerankBaseURL = "https://ai.api.nvidia.com/v1/retrieval/nvidia/rer... type NvidiaProvider (line 19) | type NvidiaProvider struct method Info (line 26) | func (p *NvidiaProvider) Info() ProviderInfo { method ValidateConfig (line 48) | func (p *NvidiaProvider) ValidateConfig(config *Config) error { function init (line 21) | func init() { FILE: internal/models/provider/openai.go constant OpenAIBaseURL (line 10) | OpenAIBaseURL = "https://api.openai.com/v1" type OpenAIProvider (line 14) | type OpenAIProvider struct method Info (line 21) | func (p *OpenAIProvider) Info() ProviderInfo { method ValidateConfig (line 43) | func (p *OpenAIProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/openrouter.go constant OpenRouterBaseURL (line 10) | OpenRouterBaseURL = "https://openrouter.ai/api/v1" type OpenRouterProvider (line 14) | type OpenRouterProvider struct method Info (line 21) | func (p *OpenRouterProvider) Info() ProviderInfo { method ValidateConfig (line 41) | func (p *OpenRouterProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/provider.go type ProviderName (line 13) | type ProviderName constant ProviderOpenAI (line 17) | ProviderOpenAI ProviderName = "openai" constant ProviderAliyun (line 19) | ProviderAliyun ProviderName = "aliyun" constant ProviderZhipu (line 21) | ProviderZhipu ProviderName = "zhipu" constant ProviderOpenRouter (line 23) | ProviderOpenRouter ProviderName = "openrouter" constant ProviderSiliconFlow (line 25) | ProviderSiliconFlow ProviderName = "siliconflow" constant ProviderJina (line 27) | ProviderJina ProviderName = "jina" constant ProviderGeneric (line 29) | ProviderGeneric ProviderName = "generic" constant ProviderDeepSeek (line 31) | ProviderDeepSeek ProviderName = "deepseek" constant ProviderGemini (line 33) | ProviderGemini ProviderName = "gemini" constant ProviderVolcengine (line 35) | ProviderVolcengine ProviderName = "volcengine" constant ProviderHunyuan (line 37) | ProviderHunyuan ProviderName = "hunyuan" constant ProviderMiniMax (line 39) | ProviderMiniMax ProviderName = "minimax" constant ProviderMimo (line 41) | ProviderMimo ProviderName = "mimo" constant ProviderGPUStack (line 43) | ProviderGPUStack ProviderName = "gpustack" constant ProviderMoonshot (line 45) | ProviderMoonshot ProviderName = "moonshot" constant ProviderModelScope (line 47) | ProviderModelScope ProviderName = "modelscope" constant ProviderQianfan (line 49) | ProviderQianfan ProviderName = "qianfan" constant ProviderQiniu (line 51) | ProviderQiniu ProviderName = "qiniu" constant ProviderLongCat (line 53) | ProviderLongCat ProviderName = "longcat" constant ProviderLKEAP (line 55) | ProviderLKEAP ProviderName = "lkeap" constant ProviderNvidia (line 57) | ProviderNvidia ProviderName = "nvidia" function AllProviders (line 61) | func AllProviders() []ProviderName { type ProviderInfo (line 88) | type ProviderInfo struct method GetDefaultURL (line 99) | func (p ProviderInfo) GetDefaultURL(modelType types.ModelType) string { type ExtraFieldConfig (line 111) | type ExtraFieldConfig struct type Config (line 125) | type Config struct type Provider (line 134) | type Provider interface function Register (line 149) | func Register(p Provider) { function Get (line 156) | func Get(name ProviderName) (Provider, bool) { function GetOrDefault (line 164) | func GetOrDefault(name ProviderName) Provider { function List (line 175) | func List() []ProviderInfo { function ListByModelType (line 189) | func ListByModelType(modelType types.ModelType) []ProviderInfo { function DetectProvider (line 209) | func DetectProvider(baseURL string) ProviderName { function containsAny (line 256) | func containsAny(s string, substrs ...string) bool { function NewConfigFromModel (line 265) | func NewConfigFromModel(model *types.Model) (*Config, error) { FILE: internal/models/provider/provider_test.go function TestProviderRegistry (line 11) | func TestProviderRegistry(t *testing.T) { function TestDetectProvider (line 33) | func TestDetectProvider(t *testing.T) { function TestOpenAIProviderValidation (line 63) | func TestOpenAIProviderValidation(t *testing.T) { function TestAliyunProviderValidation (line 94) | func TestAliyunProviderValidation(t *testing.T) { function TestAliyunModelDetection (line 115) | func TestAliyunModelDetection(t *testing.T) { function TestZhipuProviderValidation (line 131) | func TestZhipuProviderValidation(t *testing.T) { function TestListByModelType (line 151) | func TestListByModelType(t *testing.T) { FILE: internal/models/provider/qianfan.go constant QianfanBaseURL (line 10) | QianfanBaseURL = "https://qianfan.baidubce.com/v2" type QianfanProvider (line 14) | type QianfanProvider struct method Info (line 21) | func (p *QianfanProvider) Info() ProviderInfo { method ValidateConfig (line 43) | func (p *QianfanProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/qiniu.go constant QiniuBaseURL (line 11) | QiniuBaseURL = "https://api.qnaigc.com/v1" type QiniuProvider (line 15) | type QiniuProvider struct method Info (line 22) | func (p *QiniuProvider) Info() ProviderInfo { method ValidateConfig (line 38) | func (p *QiniuProvider) ValidateConfig(config *Config) error { function init (line 17) | func init() { FILE: internal/models/provider/siliconflow.go constant SiliconFlowBaseURL (line 10) | SiliconFlowBaseURL = "https://api.siliconflow.cn/v1" type SiliconFlowProvider (line 14) | type SiliconFlowProvider struct method Info (line 21) | func (p *SiliconFlowProvider) Info() ProviderInfo { method ValidateConfig (line 43) | func (p *SiliconFlowProvider) ValidateConfig(config *Config) error { function init (line 16) | func init() { FILE: internal/models/provider/volcengine.go constant VolcengineChatBaseURL (line 11) | VolcengineChatBaseURL = "https://ark.cn-beijing.volces.com/api/v3" constant VolcengineEmbeddingBaseURL (line 13) | VolcengineEmbeddingBaseURL = "https://ark.cn-beijing.volces.com/api/v3/e... type VolcengineProvider (line 17) | type VolcengineProvider struct method Info (line 24) | func (p *VolcengineProvider) Info() ProviderInfo { method ValidateConfig (line 44) | func (p *VolcengineProvider) ValidateConfig(config *Config) error { function init (line 19) | func init() { FILE: internal/models/provider/zhipu.go constant ZhipuChatBaseURL (line 11) | ZhipuChatBaseURL = "https://open.bigmodel.cn/api/paas/v4" constant ZhipuEmbeddingBaseURL (line 13) | ZhipuEmbeddingBaseURL = "https://open.bigmodel.cn/api/paas/v4" constant ZhipuRerankBaseURL (line 15) | ZhipuRerankBaseURL = "https://open.bigmodel.cn/api/paas/v4/rerank" type ZhipuProvider (line 19) | type ZhipuProvider struct method Info (line 26) | func (p *ZhipuProvider) Info() ProviderInfo { method ValidateConfig (line 48) | func (p *ZhipuProvider) ValidateConfig(config *Config) error { function init (line 21) | func init() { FILE: internal/models/rerank/aliyun_reranker.go type AliyunReranker (line 15) | type AliyunReranker struct method Rerank (line 88) | func (r *AliyunReranker) Rerank(ctx context.Context, query string, doc... method GetModelName (line 154) | func (r *AliyunReranker) GetModelName() string { method GetModelID (line 159) | func (r *AliyunReranker) GetModelID() string { type AliyunRerankRequest (line 24) | type AliyunRerankRequest struct type AliyunRerankInput (line 31) | type AliyunRerankInput struct type AliyunRerankParameters (line 37) | type AliyunRerankParameters struct type AliyunRerankResponse (line 43) | type AliyunRerankResponse struct type AliyunOutput (line 49) | type AliyunOutput struct type AliyunRankResult (line 54) | type AliyunRankResult struct type AliyunDocument (line 61) | type AliyunDocument struct type AliyunUsage (line 66) | type AliyunUsage struct function NewAliyunReranker (line 71) | func NewAliyunReranker(config *RerankerConfig) (*AliyunReranker, error) { FILE: internal/models/rerank/jina_reranker.go type JinaReranker (line 16) | type JinaReranker struct method Rerank (line 61) | func (r *JinaReranker) Rerank(ctx context.Context, query string, docum... method GetModelName (line 110) | func (r *JinaReranker) GetModelName() string { method GetModelID (line 115) | func (r *JinaReranker) GetModelID() string { type JinaRerankRequest (line 26) | type JinaRerankRequest struct type JinaRerankResponse (line 35) | type JinaRerankResponse struct function NewJinaReranker (line 44) | func NewJinaReranker(config *RerankerConfig) (*JinaReranker, error) { FILE: internal/models/rerank/logging.go constant maxLogDocuments (line 11) | maxLogDocuments = 3 constant maxLogTextRunes (line 12) | maxLogTextRunes = 120 function buildRerankRequestDebug (line 15) | func buildRerankRequestDebug(model, endpoint, query string, documents []... function compactForLog (line 36) | func compactForLog(text string, maxRunes int) string { FILE: internal/models/rerank/nvidia_reranker.go type NvidiaReranker (line 16) | type NvidiaReranker struct method Rerank (line 68) | func (r *NvidiaReranker) Rerank(ctx context.Context, query string, doc... method GetModelName (line 131) | func (r *NvidiaReranker) GetModelName() string { method GetModelID (line 136) | func (r *NvidiaReranker) GetModelID() string { type NvidiaRerankDocument (line 23) | type NvidiaRerankDocument struct type NvidiaRerankRequest (line 29) | type NvidiaRerankRequest struct type NvidiaRankResult (line 35) | type NvidiaRankResult struct type NvidiaRerankResponse (line 41) | type NvidiaRerankResponse struct function NewNvidiaReranker (line 47) | func NewNvidiaReranker(config *RerankerConfig) (*NvidiaReranker, error) { FILE: internal/models/rerank/remote_api.go type OpenAIReranker (line 15) | type OpenAIReranker struct method Rerank (line 63) | func (r *OpenAIReranker) Rerank(ctx context.Context, query string, doc... method GetModelName (line 111) | func (r *OpenAIReranker) GetModelName() string { method GetModelID (line 116) | func (r *OpenAIReranker) GetModelID() string { type RerankRequest (line 24) | type RerankRequest struct type RerankResponse (line 33) | type RerankResponse struct type UsageInfo (line 41) | type UsageInfo struct function NewOpenAIReranker (line 46) | func NewOpenAIReranker(config *RerankerConfig) (*OpenAIReranker, error) { FILE: internal/models/rerank/reranker.go type Reranker (line 13) | type Reranker interface type RankResult (line 24) | type RankResult struct method UnmarshalJSON (line 31) | func (r *RankResult) UnmarshalJSON(data []byte) error { type DocumentInfo (line 55) | type DocumentInfo struct method UnmarshalJSON (line 60) | func (d *DocumentInfo) UnmarshalJSON(data []byte) error { type RerankerConfig (line 80) | type RerankerConfig struct function NewReranker (line 90) | func NewReranker(config *RerankerConfig) (Reranker, error) { FILE: internal/models/rerank/reranker_test.go function TestRankResultUnmarshalJSON (line 8) | func TestRankResultUnmarshalJSON(t *testing.T) { function TestDocumentInfoMarshalJSON (line 113) | func TestDocumentInfoMarshalJSON(t *testing.T) { function TestRankResultMarshalJSON (line 128) | func TestRankResultMarshalJSON(t *testing.T) { FILE: internal/models/rerank/zhipu_reranker.go type ZhipuReranker (line 15) | type ZhipuReranker struct method Rerank (line 72) | func (r *ZhipuReranker) Rerank(ctx context.Context, query string, docu... method GetModelName (line 135) | func (r *ZhipuReranker) GetModelName() string { method GetModelID (line 140) | func (r *ZhipuReranker) GetModelID() string { type ZhipuRerankRequest (line 24) | type ZhipuRerankRequest struct type ZhipuRerankResponse (line 34) | type ZhipuRerankResponse struct type ZhipuRankResult (line 42) | type ZhipuRankResult struct type ZhipuUsage (line 49) | type ZhipuUsage struct function NewZhipuReranker (line 55) | func NewZhipuReranker(config *RerankerConfig) (*ZhipuReranker, error) { FILE: internal/models/utils/ollama/ollama.go type OllamaService (line 19) | type OllamaService struct method StartService (line 63) | func (s *OllamaService) StartService(ctx context.Context) error { method IsAvailable (line 87) | func (s *OllamaService) IsAvailable() bool { method IsModelAvailable (line 94) | func (s *OllamaService) IsModelAvailable(ctx context.Context, modelNam... method PullModel (line 127) | func (s *OllamaService) PullModel(ctx context.Context, modelName strin... method EnsureModelAvailable (line 179) | func (s *OllamaService) EnsureModelAvailable(ctx context.Context, mode... method GetVersion (line 204) | func (s *OllamaService) GetVersion(ctx context.Context) (string, error) { method CreateModel (line 218) | func (s *OllamaService) CreateModel(ctx context.Context, name, modelfi... method GetModelInfo (line 238) | func (s *OllamaService) GetModelInfo(ctx context.Context, modelName st... method ListModels (line 260) | func (s *OllamaService) ListModels(ctx context.Context) ([]string, err... method ListModelsDetailed (line 275) | func (s *OllamaService) ListModelsDetailed(ctx context.Context) ([]Oll... method DeleteModel (line 300) | func (s *OllamaService) DeleteModel(ctx context.Context, modelName str... method Chat (line 320) | func (s *OllamaService) Chat(ctx context.Context, req *api.ChatRequest... method Embeddings (line 331) | func (s *OllamaService) Embeddings(ctx context.Context, req *api.Embed... method Generate (line 341) | func (s *OllamaService) Generate(ctx context.Context, req *api.Generat... method GetClient (line 352) | func (s *OllamaService) GetClient() *api.Client { function GetOllamaService (line 28) | func GetOllamaService() (*OllamaService, error) { type OllamaModelInfo (line 252) | type OllamaModelInfo struct function IsValidModelName (line 314) | func IsValidModelName(name string) bool { FILE: internal/models/utils/slices.go function ChunkSlice (line 4) | func ChunkSlice[T any](slice []T, chunkSize int) [][]T { function MapSlice (line 30) | func MapSlice[A any, B any](in []A, f func(A) B) []B { FILE: internal/models/vlm/ollama.go type OllamaVLM (line 13) | type OllamaVLM struct method Predict (line 32) | func (v *OllamaVLM) Predict(ctx context.Context, imgBytes []byte, prom... method GetModelName (line 62) | func (v *OllamaVLM) GetModelName() string { return v.modelName } method GetModelID (line 63) | func (v *OllamaVLM) GetModelID() string { return v.modelID } function NewOllamaVLM (line 20) | func NewOllamaVLM(config *Config, ollamaService *ollama.OllamaService) (... FILE: internal/models/vlm/remote_api.go constant defaultTimeout (line 16) | defaultTimeout = 90 * time.Second constant defaultMaxToks (line 17) | defaultMaxToks = 5000 constant defaultTemp (line 18) | defaultTemp = float32(0.1) type RemoteAPIVLM (line 22) | type RemoteAPIVLM struct method Predict (line 46) | func (v *RemoteAPIVLM) Predict(ctx context.Context, imgBytes []byte, p... method GetModelName (line 91) | func (v *RemoteAPIVLM) GetModelName() string { return v.modelName } method GetModelID (line 92) | func (v *RemoteAPIVLM) GetModelID() string { return v.modelID } function NewRemoteAPIVLM (line 30) | func NewRemoteAPIVLM(config *Config) (*RemoteAPIVLM, error) { function detectImageMIME (line 95) | func detectImageMIME(data []byte) string { FILE: internal/models/vlm/vlm.go type VLM (line 13) | type VLM interface type Config (line 22) | type Config struct function NewVLM (line 32) | func NewVLM(config *Config, ollamaService *ollama.OllamaService) (VLM, e... function NewVLMFromLegacyConfig (line 42) | func NewVLMFromLegacyConfig(vlmCfg types.VLMConfig, ollamaService *ollam... FILE: internal/router/router.go type RouterParams (line 31) | type RouterParams struct function NewRouter (line 66) | func NewRouter(params RouterParams) *gin.Engine { function RegisterChunkRoutes (line 149) | func RegisterChunkRoutes(r *gin.RouterGroup, handler *handler.ChunkHandl... function RegisterKnowledgeRoutes (line 169) | func RegisterKnowledgeRoutes(r *gin.RouterGroup, handler *handler.Knowle... function RegisterFAQRoutes (line 216) | func RegisterFAQRoutes(r *gin.RouterGroup, handler *handler.FAQHandler) { function RegisterKnowledgeBaseRoutes (line 245) | func RegisterKnowledgeBaseRoutes(r *gin.RouterGroup, handler *handler.Kn... function RegisterKnowledgeTagRoutes (line 273) | func RegisterKnowledgeTagRoutes(r *gin.RouterGroup, tagHandler *handler.... function RegisterMessageRoutes (line 287) | func RegisterMessageRoutes(r *gin.RouterGroup, handler *handler.MessageH... function RegisterSessionRoutes (line 303) | func RegisterSessionRoutes(r *gin.RouterGroup, handler *session.Handler) { function RegisterChatRoutes (line 321) | func RegisterChatRoutes(r *gin.RouterGroup, handler *session.Handler) { function RegisterTenantRoutes (line 341) | func RegisterTenantRoutes(r *gin.RouterGroup, handler *handler.TenantHan... function RegisterModelRoutes (line 363) | func RegisterModelRoutes(r *gin.RouterGroup, handler *handler.ModelHandl... function RegisterEvaluationRoutes (line 382) | func RegisterEvaluationRoutes(r *gin.RouterGroup, handler *handler.Evalu... function RegisterAuthRoutes (line 391) | func RegisterAuthRoutes(r *gin.RouterGroup, handler *handler.AuthHandler) { function RegisterInitializationRoutes (line 401) | func RegisterInitializationRoutes(r *gin.RouterGroup, handler *handler.I... function RegisterSystemRoutes (line 427) | func RegisterSystemRoutes(r *gin.RouterGroup, handler *handler.SystemHan... function RegisterMCPServiceRoutes (line 441) | func RegisterMCPServiceRoutes(r *gin.RouterGroup, handler *handler.MCPSe... function RegisterWebSearchRoutes (line 464) | func RegisterWebSearchRoutes(r *gin.RouterGroup, webSearchHandler *handl... function RegisterCustomAgentRoutes (line 474) | func RegisterCustomAgentRoutes(r *gin.RouterGroup, agentHandler *handler... function RegisterSkillRoutes (line 495) | func RegisterSkillRoutes(r *gin.RouterGroup, skillHandler *handler.Skill... function RegisterOrganizationRoutes (line 504) | func RegisterOrganizationRoutes(r *gin.RouterGroup, orgHandler *handler.... function RegisterIMRoutes (line 588) | func RegisterIMRoutes(r *gin.Engine, imHandler *handler.IMHandler) { function RegisterIMChannelRoutes (line 597) | func RegisterIMChannelRoutes(r *gin.RouterGroup, imHandler *handler.IMHa... function serveFrontendStatic (line 617) | func serveFrontendStatic(r *gin.Engine) { function serveFiles (line 659) | func serveFiles(r *gin.Engine) { FILE: internal/router/sync_task.go type SyncTaskExecutor (line 19) | type SyncTaskExecutor struct method RegisterHandler (line 31) | func (e *SyncTaskExecutor) RegisterHandler(pattern string, handler fun... method Enqueue (line 39) | func (e *SyncTaskExecutor) Enqueue(task *asynq.Task, _ ...asynq.Option... function NewSyncTaskExecutor (line 24) | func NewSyncTaskExecutor() *SyncTaskExecutor { type SyncTaskParams (line 71) | type SyncTaskParams struct function RegisterSyncHandlers (line 85) | func RegisterSyncHandlers(params SyncTaskParams) { FILE: internal/router/task.go type AsynqTaskParams (line 15) | type AsynqTaskParams struct function getAsynqRedisClientOpt (line 27) | func getAsynqRedisClientOpt() *asynq.RedisClientOpt { function NewAsyncqClient (line 45) | func NewAsyncqClient() (*asynq.Client, error) { function NewAsynqServer (line 55) | func NewAsynqServer() *asynq.Server { function RunAsynqServer (line 70) | func RunAsynqServer(params AsynqTaskParams) *asynq.ServeMux { FILE: internal/runtime/container.go function init (line 15) | func init() { function GetContainer (line 21) | func GetContainer() *dig.Container { FILE: internal/sandbox/docker.go type DockerSandbox (line 14) | type DockerSandbox struct method Type (line 32) | func (s *DockerSandbox) Type() SandboxType { method IsAvailable (line 37) | func (s *DockerSandbox) IsAvailable(ctx context.Context) bool { method Execute (line 46) | func (s *DockerSandbox) Execute(ctx context.Context, config *ExecuteCo... method buildDockerArgs (line 104) | func (s *DockerSandbox) buildDockerArgs(config *ExecuteConfig) []string { method ImageExists (line 192) | func (s *DockerSandbox) ImageExists(ctx context.Context) bool { method EnsureImage (line 200) | func (s *DockerSandbox) EnsureImage(ctx context.Context) error { method Cleanup (line 214) | func (s *DockerSandbox) Cleanup(ctx context.Context) error { function NewDockerSandbox (line 19) | func NewDockerSandbox(config *Config) *DockerSandbox { function getInterpreter (line 173) | func getInterpreter(scriptName string) string { FILE: internal/sandbox/local.go type LocalSandbox (line 22) | type LocalSandbox struct method Type (line 37) | func (s *LocalSandbox) Type() SandboxType { method IsAvailable (line 42) | func (s *LocalSandbox) IsAvailable(ctx context.Context) bool { method Execute (line 48) | func (s *LocalSandbox) Execute(ctx context.Context, config *ExecuteCon... method validateScript (line 135) | func (s *LocalSandbox) validateScript(scriptPath string) error { method getInterpreter (line 174) | func (s *LocalSandbox) getInterpreter(scriptPath string) string { method isAllowedCommand (line 195) | func (s *LocalSandbox) isAllowedCommand(cmd string) bool { method buildEnvironment (line 216) | func (s *LocalSandbox) buildEnvironment(extra map[string]string) []str... method Cleanup (line 249) | func (s *LocalSandbox) Cleanup(ctx context.Context) error { function NewLocalSandbox (line 27) | func NewLocalSandbox(config *Config) *LocalSandbox { FILE: internal/sandbox/manager.go type DefaultManager (line 13) | type DefaultManager struct method initializeSandbox (line 44) | func (m *DefaultManager) initializeSandbox(ctx context.Context) error { method Execute (line 84) | func (m *DefaultManager) Execute(ctx context.Context, config *ExecuteC... method validateExecution (line 114) | func (m *DefaultManager) validateExecution(config *ExecuteConfig) error { method Cleanup (line 177) | func (m *DefaultManager) Cleanup(ctx context.Context) error { method GetSandbox (line 189) | func (m *DefaultManager) GetSandbox() Sandbox { method GetType (line 196) | func (m *DefaultManager) GetType() SandboxType { function NewManager (line 21) | func NewManager(config *Config) (Manager, error) { type disabledSandbox (line 207) | type disabledSandbox struct method Execute (line 209) | func (s *disabledSandbox) Execute(ctx context.Context, config *Execute... method Cleanup (line 213) | func (s *disabledSandbox) Cleanup(ctx context.Context) error { method Type (line 217) | func (s *disabledSandbox) Type() SandboxType { method IsAvailable (line 221) | func (s *disabledSandbox) IsAvailable(ctx context.Context) bool { function NewManagerFromType (line 227) | func NewManagerFromType(sandboxType string, fallbackEnabled bool, docker... function NewDisabledManager (line 251) | func NewDisabledManager() Manager { FILE: internal/sandbox/sandbox.go type SandboxType (line 12) | type SandboxType constant SandboxTypeDocker (line 16) | SandboxTypeDocker SandboxType = "docker" constant SandboxTypeLocal (line 18) | SandboxTypeLocal SandboxType = "local" constant SandboxTypeDisabled (line 20) | SandboxTypeDisabled SandboxType = "disabled" constant DefaultTimeout (line 25) | DefaultTimeout = 60 * time.Second constant DefaultMemoryLimit (line 26) | DefaultMemoryLimit = 256 * 1024 * 1024 constant DefaultCPULimit (line 27) | DefaultCPULimit = 1.0 constant DefaultDockerImage (line 28) | DefaultDockerImage = "wechatopenai/weknora-sandbox:latest" type Sandbox (line 45) | type Sandbox interface type Manager (line 61) | type Manager interface type ExecuteConfig (line 76) | type ExecuteConfig struct type ExecuteResult (line 119) | type ExecuteResult struct method IsSuccess (line 140) | func (r *ExecuteResult) IsSuccess() bool { method GetOutput (line 145) | func (r *ExecuteResult) GetOutput() string { type Config (line 153) | type Config struct function DefaultConfig (line 180) | func DefaultConfig() *Config { function defaultAllowedCommands (line 193) | func defaultAllowedCommands() []string { function ValidateConfig (line 219) | func ValidateConfig(config *Config) error { FILE: internal/sandbox/sandbox_test.go function TestDefaultConfig (line 11) | func TestDefaultConfig(t *testing.T) { function TestValidateConfig (line 27) | func TestValidateConfig(t *testing.T) { function TestLocalSandboxExecute (line 73) | func TestLocalSandboxExecute(t *testing.T) { function TestLocalSandboxTimeout (line 125) | func TestLocalSandboxTimeout(t *testing.T) { function TestNewManager (line 166) | func TestNewManager(t *testing.T) { function TestNewDisabledManager (line 180) | func TestNewDisabledManager(t *testing.T) { function TestExecuteResultHelpers (line 198) | func TestExecuteResultHelpers(t *testing.T) { function TestPythonScriptExecution (line 234) | func TestPythonScriptExecution(t *testing.T) { FILE: internal/sandbox/validator.go type ScriptValidator (line 10) | type ScriptValidator struct method ValidateScript (line 49) | func (v *ScriptValidator) ValidateScript(content string) *ValidationRe... method ValidateArgs (line 105) | func (v *ScriptValidator) ValidateArgs(args []string) *ValidationResult { method ValidateStdin (line 149) | func (v *ScriptValidator) ValidateStdin(stdin string) *ValidationResult { method ValidateAll (line 167) | func (v *ScriptValidator) ValidateAll(scriptContent string, args []str... method hasShellOperators (line 194) | func (v *ScriptValidator) hasShellOperators(s string) bool { method hasCommandSubstitution (line 221) | func (v *ScriptValidator) hasCommandSubstitution(s string) bool { method hasNetworkAccess (line 237) | func (v *ScriptValidator) hasNetworkAccess(content string) bool { method hasReverseShellPattern (line 269) | func (v *ScriptValidator) hasReverseShellPattern(content string) bool { method hasEmbeddedShellCommands (line 301) | func (v *ScriptValidator) hasEmbeddedShellCommands(content string) bool { type ValidationError (line 20) | type ValidationError struct method Error (line 27) | func (e *ValidationError) Error() string { type ValidationResult (line 33) | type ValidationResult struct function NewScriptValidator (line 39) | func NewScriptValidator() *ScriptValidator { function getDefaultDangerousCommands (line 318) | func getDefaultDangerousCommands() []string { function getDefaultDangerousPatterns (line 390) | func getDefaultDangerousPatterns() []string { function getDefaultArgInjectionPatterns (line 444) | func getDefaultArgInjectionPatterns() []string { function compilePatterns (line 463) | func compilePatterns(patterns []string) []*regexp.Regexp { function extractContext (line 474) | func extractContext(content, match string) string { function truncate (line 501) | func truncate(s string, maxLen int) string { FILE: internal/sandbox/validator_test.go function TestScriptValidator_ValidateScript (line 7) | func TestScriptValidator_ValidateScript(t *testing.T) { function TestScriptValidator_ValidateArgs (line 152) | func TestScriptValidator_ValidateArgs(t *testing.T) { function TestScriptValidator_ValidateStdin (line 250) | func TestScriptValidator_ValidateStdin(t *testing.T) { function TestScriptValidator_ValidateAll (line 295) | func TestScriptValidator_ValidateAll(t *testing.T) { function TestValidationError_Error (line 332) | func TestValidationError_Error(t *testing.T) { function contains (line 350) | func contains(s, substr string) bool { function containsHelper (line 354) | func containsHelper(s, substr string) bool { FILE: internal/searchutil/conversion.go type ConvertWebResultOption (line 12) | type ConvertWebResultOption type convertWebResultOptions (line 14) | type convertWebResultOptions struct function WithSeqFunc (line 19) | func WithSeqFunc(f func(idx int) int) ConvertWebResultOption { function ConvertWebSearchResults (line 26) | func ConvertWebSearchResults( FILE: internal/searchutil/normalize.go type KeywordScoreCallbacks (line 6) | type KeywordScoreCallbacks struct function NormalizeKeywordScores (line 12) | func NormalizeKeywordScores[T any]( FILE: internal/searchutil/textutil.go function BuildContentSignature (line 14) | func BuildContentSignature(content string) string { function containsChinese (line 27) | func containsChinese(text string) bool { function TokenizeSimple (line 40) | func TokenizeSimple(text string) map[string]struct{} { function isAllPunct (line 66) | func isAllPunct(s string) bool { function Jaccard (line 77) | func Jaccard(a, b map[string]struct{}) float64 { function ClampFloat (line 105) | func ClampFloat(v, minV, maxV float64) float64 { FILE: internal/stream/factory.go constant TypeMemory (line 13) | TypeMemory = "memory" constant TypeRedis (line 14) | TypeRedis = "redis" function NewStreamManager (line 18) | func NewStreamManager() (interfaces.StreamManager, error) { FILE: internal/stream/memory_manager.go type memoryStreamData (line 12) | type memoryStreamData struct type MemoryStreamManager (line 19) | type MemoryStreamManager struct method getOrCreateStream (line 33) | func (m *MemoryStreamManager) getOrCreateStream(sessionID, messageID s... method getStream (line 52) | func (m *MemoryStreamManager) getStream(sessionID, messageID string) *... method AppendEvent (line 63) | func (m *MemoryStreamManager) AppendEvent( method GetEvents (line 87) | func (m *MemoryStreamManager) GetEvents( function NewMemoryStreamManager (line 26) | func NewMemoryStreamManager() *MemoryStreamManager { FILE: internal/stream/redis_manager.go type RedisStreamManager (line 14) | type RedisStreamManager struct method buildKey (line 53) | func (r *RedisStreamManager) buildKey(sessionID, messageID string) str... method AppendEvent (line 58) | func (r *RedisStreamManager) AppendEvent( method GetEvents (line 91) | func (r *RedisStreamManager) GetEvents( method Close (line 132) | func (r *RedisStreamManager) Close() error { function NewRedisStreamManager (line 21) | func NewRedisStreamManager(redisAddr, redisUsername, redisPassword string, FILE: internal/tracing/init.go constant AppName (line 22) | AppName = "WeKnoraApp" type Tracer (line 25) | type Tracer struct function InitTracer (line 32) | func InitTracer() (*Tracer, error) { function GetTracer (line 98) | func GetTracer() trace.Tracer { function ContextWithSpan (line 103) | func ContextWithSpan(ctx context.Context, name string, opts ...trace.Spa... FILE: internal/types/agent.go type AgentConfig (line 12) | type AgentConfig struct method Value (line 53) | func (c AgentConfig) Value() (driver.Value, error) { method Scan (line 58) | func (c *AgentConfig) Scan(value interface{}) error { method ResolveSystemPrompt (line 98) | func (c *AgentConfig) ResolveSystemPrompt(webSearchEnabled bool) string { type SessionAgentConfig (line 45) | type SessionAgentConfig struct method Value (line 75) | func (c SessionAgentConfig) Value() (driver.Value, error) { method Scan (line 80) | func (c *SessionAgentConfig) Scan(value interface{}) error { type Tool (line 123) | type Tool interface type ToolResult (line 138) | type ToolResult struct type ToolCall (line 146) | type ToolCall struct type AgentStep (line 156) | type AgentStep struct method GetObservations (line 165) | func (s *AgentStep) GetObservations() []string { type AgentState (line 179) | type AgentState struct type FunctionDefinition (line 188) | type FunctionDefinition struct FILE: internal/types/builtin_agent_config.go type BuiltinAgentI18n (line 19) | type BuiltinAgentI18n struct type BuiltinAgentEntry (line 25) | type BuiltinAgentEntry struct type builtinAgentsFile (line 34) | type builtinAgentsFile struct function LoadBuiltinAgentsConfig (line 55) | func LoadBuiltinAgentsConfig(configDir string) error { function rebuildRegistryFromConfig (line 94) | func rebuildRegistryFromConfig() { function GetBuiltinAgentWithContext (line 110) | func GetBuiltinAgentWithContext(ctx context.Context, id string, tenantID... function buildAgentFromEntry (line 134) | func buildAgentFromEntry(id string, tenantID uint64, locale string) *Cus... function resolveI18n (line 160) | func resolveI18n(m map[string]BuiltinAgentI18n, locale string) BuiltinAg... function localeFromCtx (line 197) | func localeFromCtx(ctx context.Context) string { function ResolveBuiltinAgentPromptRefs (line 212) | func ResolveBuiltinAgentPromptRefs(resolver func(id string) string) { FILE: internal/types/chat.go type LLMToolCall (line 9) | type LLMToolCall struct type FunctionCall (line 16) | type FunctionCall struct type ChatResponse (line 22) | type ChatResponse struct type ResponseType (line 40) | type ResponseType constant ResponseTypeAnswer (line 44) | ResponseTypeAnswer ResponseType = "answer" constant ResponseTypeReferences (line 46) | ResponseTypeReferences ResponseType = "references" constant ResponseTypeThinking (line 48) | ResponseTypeThinking ResponseType = "thinking" constant ResponseTypeToolCall (line 50) | ResponseTypeToolCall ResponseType = "tool_call" constant ResponseTypeToolResult (line 52) | ResponseTypeToolResult ResponseType = "tool_result" constant ResponseTypeError (line 54) | ResponseTypeError ResponseType = "error" constant ResponseTypeReflection (line 56) | ResponseTypeReflection ResponseType = "reflection" constant ResponseTypeSessionTitle (line 58) | ResponseTypeSessionTitle ResponseType = "session_title" constant ResponseTypeAgentQuery (line 60) | ResponseTypeAgentQuery ResponseType = "agent_query" constant ResponseTypeComplete (line 62) | ResponseTypeComplete ResponseType = "complete" type StreamResponse (line 66) | type StreamResponse struct type References (line 88) | type References method Value (line 91) | func (c References) Value() (driver.Value, error) { method Scan (line 96) | func (c *References) Scan(value interface{}) error { FILE: internal/types/chat_history_config.go type ChatHistoryConfig (line 15) | type ChatHistoryConfig struct method Value (line 27) | func (c ChatHistoryConfig) Value() (driver.Value, error) { method Scan (line 32) | func (c *ChatHistoryConfig) Scan(value interface{}) error { method IsConfigured (line 45) | func (c *ChatHistoryConfig) IsConfigured() bool { FILE: internal/types/chat_manage.go type ChatManage (line 5) | type ChatManage struct method Clone (line 75) | func (c *ChatManage) Clone() *ChatManage { type EventType (line 152) | type EventType constant LOAD_HISTORY (line 155) | LOAD_HISTORY EventType = "load_history" constant REWRITE_QUERY (line 156) | REWRITE_QUERY EventType = "rewrite_query" constant CHUNK_SEARCH (line 157) | CHUNK_SEARCH EventType = "chunk_search" constant CHUNK_SEARCH_PARALLEL (line 158) | CHUNK_SEARCH_PARALLEL EventType = "chunk_search_parallel" constant ENTITY_SEARCH (line 159) | ENTITY_SEARCH EventType = "entity_search" constant CHUNK_RERANK (line 160) | CHUNK_RERANK EventType = "chunk_rerank" constant CHUNK_MERGE (line 161) | CHUNK_MERGE EventType = "chunk_merge" constant DATA_ANALYSIS (line 162) | DATA_ANALYSIS EventType = "data_analysis" constant INTO_CHAT_MESSAGE (line 163) | INTO_CHAT_MESSAGE EventType = "into_chat_message" constant CHAT_COMPLETION (line 164) | CHAT_COMPLETION EventType = "chat_completion" constant CHAT_COMPLETION_STREAM (line 165) | CHAT_COMPLETION_STREAM EventType = "chat_completion_stream" constant STREAM_FILTER (line 166) | STREAM_FILTER EventType = "stream_filter" constant FILTER_TOP_K (line 167) | FILTER_TOP_K EventType = "filter_top_k" constant MEMORY_RETRIEVAL (line 168) | MEMORY_RETRIEVAL EventType = "memory_retrieval" constant MEMORY_STORAGE (line 169) | MEMORY_STORAGE EventType = "memory_storage" FILE: internal/types/chunk.go constant ChunkTypeText (line 16) | ChunkTypeText ChunkType = "text" constant ChunkTypeParentText (line 18) | ChunkTypeParentText ChunkType = "parent_text" constant ChunkTypeImageOCR (line 20) | ChunkTypeImageOCR ChunkType = "image_ocr" constant ChunkTypeImageCaption (line 22) | ChunkTypeImageCaption ChunkType = "image_caption" constant ChunkTypeSummary (line 24) | ChunkTypeSummary = "summary" constant ChunkTypeEntity (line 26) | ChunkTypeEntity ChunkType = "entity" constant ChunkTypeRelationship (line 28) | ChunkTypeRelationship ChunkType = "relationship" constant ChunkTypeFAQ (line 30) | ChunkTypeFAQ ChunkType = "faq" constant ChunkTypeWebSearch (line 32) | ChunkTypeWebSearch ChunkType = "web_search" constant ChunkTypeTableSummary (line 34) | ChunkTypeTableSummary ChunkType = "table_summary" constant ChunkTypeTableColumn (line 36) | ChunkTypeTableColumn ChunkType = "table_column" type ChunkStatus (line 40) | type ChunkStatus constant ChunkStatusDefault (line 43) | ChunkStatusDefault ChunkStatus = 0 constant ChunkStatusStored (line 45) | ChunkStatusStored ChunkStatus = 1 constant ChunkStatusIndexed (line 47) | ChunkStatusIndexed ChunkStatus = 2 type ChunkFlags (line 51) | type ChunkFlags method HasFlag (line 63) | func (f ChunkFlags) HasFlag(flag ChunkFlags) bool { method SetFlag (line 68) | func (f ChunkFlags) SetFlag(flag ChunkFlags) ChunkFlags { method ClearFlag (line 73) | func (f ChunkFlags) ClearFlag(flag ChunkFlags) ChunkFlags { method ToggleFlag (line 78) | func (f ChunkFlags) ToggleFlag(flag ChunkFlags) ChunkFlags { constant ChunkFlagRecommended (line 56) | ChunkFlagRecommended ChunkFlags = 1 << 0 type ImageInfo (line 83) | type ImageInfo struct type Chunk (line 104) | type Chunk struct FILE: internal/types/cleanup.go type CleanupFunc (line 4) | type CleanupFunc FILE: internal/types/const.go type ContextKey (line 4) | type ContextKey method String (line 29) | func (c ContextKey) String() string { constant TenantIDContextKey (line 8) | TenantIDContextKey ContextKey = "TenantID" constant TenantInfoContextKey (line 10) | TenantInfoContextKey ContextKey = "TenantInfo" constant RequestIDContextKey (line 12) | RequestIDContextKey ContextKey = "RequestID" constant LoggerContextKey (line 14) | LoggerContextKey ContextKey = "Logger" constant UserContextKey (line 16) | UserContextKey ContextKey = "User" constant UserIDContextKey (line 18) | UserIDContextKey ContextKey = "UserID" constant SessionTenantIDContextKey (line 21) | SessionTenantIDContextKey ContextKey = "SessionTenantID" constant EmbedQueryContextKey (line 23) | EmbedQueryContextKey ContextKey = "EmbedQuery" constant LanguageContextKey (line 25) | LanguageContextKey ContextKey = "Language" FILE: internal/types/context_helpers.go function TenantIDFromContext (line 7) | func TenantIDFromContext(ctx context.Context) (uint64, bool) { function MustTenantIDFromContext (line 13) | func MustTenantIDFromContext(ctx context.Context) uint64 { function TenantInfoFromContext (line 22) | func TenantInfoFromContext(ctx context.Context) (*Tenant, bool) { function RequestIDFromContext (line 28) | func RequestIDFromContext(ctx context.Context) (string, bool) { function UserIDFromContext (line 34) | func UserIDFromContext(ctx context.Context) (string, bool) { function SessionTenantIDFromContext (line 41) | func SessionTenantIDFromContext(ctx context.Context) (uint64, bool) { function LanguageFromContext (line 51) | func LanguageFromContext(ctx context.Context) (string, bool) { function LanguageNameFromContext (line 58) | func LanguageNameFromContext(ctx context.Context) string { function LanguageLocaleName (line 67) | func LanguageLocaleName(locale string) string { FILE: internal/types/custom_agent.go constant BuiltinQuickAnswerID (line 14) | BuiltinQuickAnswerID = "builtin-quick-answer" constant BuiltinSmartReasoningID (line 16) | BuiltinSmartReasoningID = "builtin-smart-reasoning" constant BuiltinDeepResearcherID (line 18) | BuiltinDeepResearcherID = "builtin-deep-researcher" constant BuiltinDataAnalystID (line 20) | BuiltinDataAnalystID = "builtin-data-analyst" constant BuiltinKnowledgeGraphExpertID (line 22) | BuiltinKnowledgeGraphExpertID = "builtin-knowledge-graph-expert" constant BuiltinDocumentAssistantID (line 24) | BuiltinDocumentAssistantID = "builtin-document-assistant" constant AgentModeQuickAnswer (line 30) | AgentModeQuickAnswer = "quick-answer" constant AgentModeSmartReasoning (line 32) | AgentModeSmartReasoning = "smart-reasoning" type CustomAgent (line 36) | type CustomAgent struct method TableName (line 205) | func (CustomAgent) TableName() string { method EnsureDefaults (line 210) | func (a *CustomAgent) EnsureDefaults() { method IsAgentMode (line 256) | func (a *CustomAgent) IsAgentMode() bool { type CustomAgentConfig (line 64) | type CustomAgentConfig struct method Value (line 183) | func (c CustomAgentConfig) Value() (driver.Value, error) { method Scan (line 188) | func (c *CustomAgentConfig) Scan(value interface{}) error { function GetBuiltinAgentIDs (line 276) | func GetBuiltinAgentIDs() []string { function IsBuiltinAgentID (line 281) | func IsBuiltinAgentID(id string) bool { function GetBuiltinAgent (line 287) | func GetBuiltinAgent(id string, tenantID uint64) *CustomAgent { FILE: internal/types/dataset.go type QAPair (line 4) | type QAPair struct FILE: internal/types/docparser.go type ReadRequest (line 5) | type ReadRequest struct type ReadResult (line 17) | type ReadResult struct type ImageRef (line 26) | type ImageRef struct type ParserEngineInfo (line 35) | type ParserEngineInfo struct type DocParserStorageConfig (line 45) | type DocParserStorageConfig struct type DocParserVLMConfig (line 56) | type DocParserVLMConfig struct type ParsedChunk (line 63) | type ParsedChunk struct type ParsedParentChunk (line 80) | type ParsedParentChunk struct type ParsedImage (line 87) | type ParsedImage struct FILE: internal/types/embedding.go type SourceType (line 4) | type SourceType constant ChunkSourceType (line 7) | ChunkSourceType SourceType = iota constant PassageSourceType (line 8) | PassageSourceType constant SummarySourceType (line 9) | SummarySourceType type MatchType (line 13) | type MatchType constant MatchTypeEmbedding (line 16) | MatchTypeEmbedding MatchType = iota constant MatchTypeKeywords (line 17) | MatchTypeKeywords constant MatchTypeNearByChunk (line 18) | MatchTypeNearByChunk constant MatchTypeHistory (line 19) | MatchTypeHistory constant MatchTypeParentChunk (line 20) | MatchTypeParentChunk constant MatchTypeRelationChunk (line 21) | MatchTypeRelationChunk constant MatchTypeGraph (line 22) | MatchTypeGraph constant MatchTypeWebSearch (line 23) | MatchTypeWebSearch constant MatchTypeDirectLoad (line 24) | MatchTypeDirectLoad constant MatchTypeDataAnalysis (line 25) | MatchTypeDataAnalysis type IndexInfo (line 29) | type IndexInfo struct FILE: internal/types/errors.go type StorageQuotaExceededError (line 6) | type StorageQuotaExceededError struct method Error (line 11) | func (e *StorageQuotaExceededError) Error() string { function NewStorageQuotaExceededError (line 16) | func NewStorageQuotaExceededError() *StorageQuotaExceededError { type DuplicateKnowledgeError (line 23) | type DuplicateKnowledgeError struct method Error (line 28) | func (e *DuplicateKnowledgeError) Error() string { function NewDuplicateFileError (line 33) | func NewDuplicateFileError(knowledge *Knowledge) *DuplicateKnowledgeError { function NewDuplicateURLError (line 41) | func NewDuplicateURLError(knowledge *Knowledge) *DuplicateKnowledgeError { FILE: internal/types/evaluation.go type EvaluationStatue (line 14) | type EvaluationStatue constant EvaluationStatuePending (line 17) | EvaluationStatuePending EvaluationStatue = iota constant EvaluationStatueRunning (line 18) | EvaluationStatueRunning constant EvaluationStatueSuccess (line 19) | EvaluationStatueSuccess constant EvaluationStatueFailed (line 20) | EvaluationStatueFailed type EvaluationTask (line 24) | type EvaluationTask struct method String (line 45) | func (e *EvaluationTask) String() string { type EvaluationDetail (line 38) | type EvaluationDetail struct type MetricInput (line 51) | type MetricInput struct type MetricResult (line 60) | type MetricResult struct type RetrievalMetrics (line 66) | type RetrievalMetrics struct type GenerationMetrics (line 77) | type GenerationMetrics struct type EvalState (line 88) | type EvalState constant StateBegin (line 91) | StateBegin EvalState = iota constant StateAfterQaPairs (line 92) | StateAfterQaPairs constant StateAfterDataset (line 93) | StateAfterDataset constant StateAfterEmbedding (line 94) | StateAfterEmbedding constant StateAfterVectorSearch (line 95) | StateAfterVectorSearch constant StateAfterRerank (line 96) | StateAfterRerank constant StateAfterComplete (line 97) | StateAfterComplete constant StateEnd (line 98) | StateEnd FILE: internal/types/event_bus.go type EventHandler (line 8) | type EventHandler type Event (line 12) | type Event struct type EventBusInterface (line 24) | type EventBusInterface interface FILE: internal/types/extract_graph.go constant TypeChunkExtract (line 4) | TypeChunkExtract = "chunk:extract" constant TypeDocumentProcess (line 5) | TypeDocumentProcess = "document:process" constant TypeFAQImport (line 6) | TypeFAQImport = "faq:import" constant TypeQuestionGeneration (line 7) | TypeQuestionGeneration = "question:generation" constant TypeSummaryGeneration (line 8) | TypeSummaryGeneration = "summary:generation" constant TypeKBClone (line 9) | TypeKBClone = "kb:clone" constant TypeIndexDelete (line 10) | TypeIndexDelete = "index:delete" constant TypeKBDelete (line 11) | TypeKBDelete = "kb:delete" constant TypeKnowledgeListDelete (line 12) | TypeKnowledgeListDelete = "knowledge:list_delete" constant TypeKnowledgeMove (line 13) | TypeKnowledgeMove = "knowledge:move" constant TypeDataTableSummary (line 14) | TypeDataTableSummary = "datatable:summary" constant TypeImageMultimodal (line 15) | TypeImageMultimodal = "image:multimodal" constant TypeManualProcess (line 16) | TypeManualProcess = "manual:process" type ExtractChunkPayload (line 20) | type ExtractChunkPayload struct type DocumentProcessPayload (line 27) | type DocumentProcessPayload struct type FAQImportPayload (line 44) | type FAQImportPayload struct type QuestionGenerationPayload (line 58) | type QuestionGenerationPayload struct type SummaryGenerationPayload (line 66) | type SummaryGenerationPayload struct type KBClonePayload (line 74) | type KBClonePayload struct type IndexDeletePayload (line 82) | type IndexDeletePayload struct type KBDeletePayload (line 92) | type KBDeletePayload struct type KnowledgeListDeletePayload (line 99) | type KnowledgeListDeletePayload struct type KnowledgeMovePayload (line 105) | type KnowledgeMovePayload struct type KnowledgeMoveProgress (line 115) | type KnowledgeMoveProgress struct type ManualProcessPayload (line 132) | type ManualProcessPayload struct type ImageMultimodalPayload (line 142) | type ImageMultimodalPayload struct type KBCloneTaskStatus (line 154) | type KBCloneTaskStatus constant KBCloneStatusPending (line 157) | KBCloneStatusPending KBCloneTaskStatus = "pending" constant KBCloneStatusProcessing (line 158) | KBCloneStatusProcessing KBCloneTaskStatus = "processing" constant KBCloneStatusCompleted (line 159) | KBCloneStatusCompleted KBCloneTaskStatus = "completed" constant KBCloneStatusFailed (line 160) | KBCloneStatusFailed KBCloneTaskStatus = "failed" type KBCloneProgress (line 164) | type KBCloneProgress struct type ChunkContext (line 179) | type ChunkContext struct type PromptTemplateStructured (line 187) | type PromptTemplateStructured struct type GraphNode (line 193) | type GraphNode struct type GraphRelation (line 200) | type GraphRelation struct type GraphData (line 206) | type GraphData struct type NameSpace (line 213) | type NameSpace struct method Labels (line 219) | func (n NameSpace) Labels() []string { FILE: internal/types/faq.go type FAQChunkMetadata (line 17) | type FAQChunkMetadata struct method Sanitize (line 84) | func (m *FAQChunkMetadata) Sanitize() { method Normalize (line 99) | func (m *FAQChunkMetadata) Normalize() *FAQChunkMetadata { type GeneratedQuestion (line 28) | type GeneratedQuestion struct type DocumentChunkMetadata (line 35) | type DocumentChunkMetadata struct method GetQuestionStrings (line 42) | func (m *DocumentChunkMetadata) GetQuestionStrings() []string { method DocumentMetadata (line 54) | func (c *Chunk) DocumentMetadata() (*DocumentChunkMetadata, error) { method SetDocumentMetadata (line 66) | func (c *Chunk) SetDocumentMetadata(meta *DocumentChunkMetadata) error { function SanitizeStrings (line 115) | func SanitizeStrings(values []string) []string { method FAQMetadata (line 140) | func (c *Chunk) FAQMetadata() (*FAQChunkMetadata, error) { method SetFAQMetadata (line 154) | func (c *Chunk) SetFAQMetadata(meta *FAQChunkMetadata) error { function CalculateFAQContentHash (line 179) | func CalculateFAQContentHash(meta *FAQChunkMetadata) string { type AnswerStrategy (line 219) | type AnswerStrategy constant AnswerStrategyAll (line 223) | AnswerStrategyAll AnswerStrategy = "all" constant AnswerStrategyRandom (line 225) | AnswerStrategyRandom AnswerStrategy = "random" type FAQEntry (line 229) | type FAQEntry struct type FAQEntryPayload (line 255) | type FAQEntryPayload struct constant FAQBatchModeAppend (line 270) | FAQBatchModeAppend = "append" constant FAQBatchModeReplace (line 271) | FAQBatchModeReplace = "replace" type FAQBatchUpsertPayload (line 275) | type FAQBatchUpsertPayload struct type FAQFailedEntry (line 284) | type FAQFailedEntry struct type FAQSuccessEntry (line 301) | type FAQSuccessEntry struct type FAQDryRunResult (line 310) | type FAQDryRunResult struct type FAQSearchRequest (line 319) | type FAQSearchRequest struct constant UntaggedTagName (line 329) | UntaggedTagName = "未分类" type FAQEntryFieldsUpdate (line 332) | type FAQEntryFieldsUpdate struct type FAQEntryFieldsBatchUpdate (line 343) | type FAQEntryFieldsBatchUpdate struct type FAQImportTaskStatus (line 353) | type FAQImportTaskStatus constant FAQImportStatusPending (line 357) | FAQImportStatusPending FAQImportTaskStatus = "pending" constant FAQImportStatusProcessing (line 359) | FAQImportStatusProcessing FAQImportTaskStatus = "processing" constant FAQImportStatusCompleted (line 361) | FAQImportStatusCompleted FAQImportTaskStatus = "completed" constant FAQImportStatusFailed (line 363) | FAQImportStatusFailed FAQImportTaskStatus = "failed" type FAQImportProgress (line 368) | type FAQImportProgress struct type FAQImportMetadata (line 399) | type FAQImportMetadata struct method ToJSON (line 431) | func (m *FAQImportMetadata) ToJSON() (JSON, error) { type FAQImportResult (line 407) | type FAQImportResult struct method ToJSON (line 443) | func (r *FAQImportResult) ToJSON() (JSON, error) { function ParseFAQImportMetadata (line 455) | func ParseFAQImportMetadata(k *Knowledge) (*FAQImportMetadata, error) { function normalizeQuestionStrings (line 468) | func normalizeQuestionStrings(values []string) []string { type URLNormMode (line 498) | type URLNormMode constant URLRemove (line 502) | URLRemove URLNormMode = iota constant URLPlaceholder (line 504) | URLPlaceholder constant URLKeepDomain (line 506) | URLKeepDomain constant URLKeepDomainAndPath (line 508) | URLKeepDomainAndPath function init (line 514) | func init() { function NormalizeQuestion (line 532) | func NormalizeQuestion(q string) string { function normalizeSpaces (line 566) | func normalizeSpaces(s string) string { function isASCIIAlphaNum (line 615) | func isASCIIAlphaNum(r rune) bool { function trimURL (line 620) | func trimURL(s string) string { function NormalizeURL (line 625) | func NormalizeURL(text string, mode URLNormMode) string { function parseURL (line 651) | func parseURL(raw string) (domain, path string) { function toSimplified (line 688) | func toSimplified(s string) string { function toHalfWidth (line 701) | func toHalfWidth(s string) string { function NormalizeQueryText (line 724) | func NormalizeQueryText(q string) string { function IsChineseChar (line 729) | func IsChineseChar(r rune) bool { FILE: internal/types/faq_test.go function TestCalculateFAQContentHash_NormalizeIsApplied (line 7) | func TestCalculateFAQContentHash_NormalizeIsApplied(t *testing.T) { function TestCalculateFAQContentHash_ConsistentViaSetFAQMetadata (line 39) | func TestCalculateFAQContentHash_ConsistentViaSetFAQMetadata(t *testing.... function TestCalculateFAQContentHash_CaseAndPunctuationInvariant (line 77) | func TestCalculateFAQContentHash_CaseAndPunctuationInvariant(t *testing.... function TestCalculateFAQContentHash_TraditionalSimplifiedInvariant (line 96) | func TestCalculateFAQContentHash_TraditionalSimplifiedInvariant(t *testi... function TestCalculateFAQContentHash_SortInvariant (line 130) | func TestCalculateFAQContentHash_SortInvariant(t *testing.T) { function TestCalculateFAQContentHash_NilAndEmpty (line 151) | func TestCalculateFAQContentHash_NilAndEmpty(t *testing.T) { function TestCalculateFAQContentHash_FullWidthHalfWidthInvariant (line 163) | func TestCalculateFAQContentHash_FullWidthHalfWidthInvariant(t *testing.... FILE: internal/types/graph.go type Entity (line 8) | type Entity struct type Relationship (line 20) | type Relationship struct type GraphBuilder (line 33) | type GraphBuilder interface FILE: internal/types/interfaces/agent.go type AgentStreamEvent (line 13) | type AgentStreamEvent struct type AgentEngine (line 22) | type AgentEngine interface type AgentService (line 34) | type AgentService interface FILE: internal/types/interfaces/chunk.go type ChunkRepository (line 10) | type ChunkRepository interface type ChunkService (line 92) | type ChunkService interface FILE: internal/types/interfaces/context_manager.go type ContextManager (line 12) | type ContextManager interface type ContextStats (line 34) | type ContextStats struct type CompressionStrategy (line 46) | type CompressionStrategy interface FILE: internal/types/interfaces/custom_agent.go type CustomAgentService (line 12) | type CustomAgentService interface type CustomAgentRepository (line 71) | type CustomAgentRepository interface FILE: internal/types/interfaces/document_parser.go type DocReader (line 10) | type DocReader interface type DocumentReader (line 17) | type DocumentReader interface FILE: internal/types/interfaces/evaluation.go type EvaluationService (line 10) | type EvaluationService interface type Metrics (line 20) | type Metrics interface type EvalHook (line 26) | type EvalHook interface type DatasetService (line 32) | type DatasetService interface FILE: internal/types/interfaces/file.go type FileService (line 11) | type FileService interface FILE: internal/types/interfaces/knowledge.go type KnowledgeService (line 13) | type KnowledgeService interface type KnowledgeRepository (line 168) | type KnowledgeRepository interface FILE: internal/types/interfaces/knowledgebase.go type KnowledgeBaseService (line 16) | type KnowledgeBaseService interface type KnowledgeBaseRepository (line 137) | type KnowledgeBaseRepository interface FILE: internal/types/interfaces/mcp_service.go type MCPServiceRepository (line 10) | type MCPServiceRepository interface type MCPServiceService (line 34) | type MCPServiceService interface FILE: internal/types/interfaces/memory.go type MemoryService (line 10) | type MemoryService interface type MemoryRepository (line 19) | type MemoryRepository interface FILE: internal/types/interfaces/message.go type MessageService (line 11) | type MessageService interface type MessageRepository (line 60) | type MessageRepository interface FILE: internal/types/interfaces/model.go type ModelService (line 14) | type ModelService interface type ModelRepository (line 38) | type ModelRepository interface FILE: internal/types/interfaces/organization.go type OrganizationService (line 11) | type OrganizationService interface type OrganizationRepository (line 50) | type OrganizationRepository interface type KBShareService (line 83) | type KBShareService interface type KBShareRepository (line 114) | type KBShareRepository interface type AgentShareService (line 141) | type AgentShareService interface type AgentShareRepository (line 165) | type AgentShareRepository interface type TenantDisabledSharedAgentRepository (line 183) | type TenantDisabledSharedAgentRepository interface FILE: internal/types/interfaces/resource.go type ResourceCleaner (line 10) | type ResourceCleaner interface FILE: internal/types/interfaces/retriever.go type RetrieveEngine (line 11) | type RetrieveEngine interface type RetrieveEngineRepository (line 23) | type RetrieveEngineRepository interface type RetrieveEngineRegistry (line 68) | type RetrieveEngineRegistry interface type RetrieveEngineService (line 78) | type RetrieveEngineService interface FILE: internal/types/interfaces/retriever_graph.go type RetrieveGraphRepository (line 10) | type RetrieveGraphRepository interface FILE: internal/types/interfaces/session.go type SessionService (line 11) | type SessionService interface type SessionRepository (line 51) | type SessionRepository interface FILE: internal/types/interfaces/skill.go type SkillService (line 10) | type SkillService interface FILE: internal/types/interfaces/stream_manager.go type StreamEvent (line 11) | type StreamEvent struct type StreamManager (line 22) | type StreamManager interface FILE: internal/types/interfaces/tag.go type KnowledgeTagService (line 11) | type KnowledgeTagService interface type KnowledgeTagRepository (line 29) | type KnowledgeTagRepository interface FILE: internal/types/interfaces/task_enqueuer.go type TaskEnqueuer (line 7) | type TaskEnqueuer interface FILE: internal/types/interfaces/task_handler.go type TaskHandler (line 10) | type TaskHandler interface FILE: internal/types/interfaces/tenant.go type TenantService (line 10) | type TenantService interface type TenantRepository (line 34) | type TenantRepository interface FILE: internal/types/interfaces/user.go type UserService (line 10) | type UserService interface type UserRepository (line 46) | type UserRepository interface type AuthTokenRepository (line 68) | type AuthTokenRepository interface FILE: internal/types/interfaces/web_search.go type WebSearchProvider (line 10) | type WebSearchProvider interface type WebSearchService (line 18) | type WebSearchService interface FILE: internal/types/interfaces/web_search_state.go type WebSearchStateService (line 8) | type WebSearchStateService interface FILE: internal/types/json.go type JSON (line 11) | type JSON method Scan (line 14) | func (j *JSON) Scan(value interface{}) error { method Value (line 27) | func (j JSON) Value() (driver.Value, error) { method MarshalJSON (line 35) | func (j JSON) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 43) | func (j *JSON) UnmarshalJSON(data []byte) error { method ToString (line 52) | func (j JSON) ToString() string { method Map (line 60) | func (j JSON) Map() (map[string]interface{}, error) { FILE: internal/types/knowledge.go constant KnowledgeTypeManual (line 14) | KnowledgeTypeManual = "manual" constant KnowledgeTypeFAQ (line 16) | KnowledgeTypeFAQ = "faq" constant ParseStatusPending (line 22) | ParseStatusPending = "pending" constant ParseStatusProcessing (line 24) | ParseStatusProcessing = "processing" constant ParseStatusCompleted (line 26) | ParseStatusCompleted = "completed" constant ParseStatusFailed (line 28) | ParseStatusFailed = "failed" constant ParseStatusDeleting (line 30) | ParseStatusDeleting = "deleting" constant SummaryStatusNone (line 36) | SummaryStatusNone = "none" constant SummaryStatusPending (line 38) | SummaryStatusPending = "pending" constant SummaryStatusProcessing (line 40) | SummaryStatusProcessing = "processing" constant SummaryStatusCompleted (line 42) | SummaryStatusCompleted = "completed" constant SummaryStatusFailed (line 44) | SummaryStatusFailed = "failed" constant ManualKnowledgeFormatMarkdown (line 49) | ManualKnowledgeFormatMarkdown = "markdown" constant ManualKnowledgeStatusDraft (line 50) | ManualKnowledgeStatusDraft = "draft" constant ManualKnowledgeStatusPublish (line 51) | ManualKnowledgeStatusPublish = "publish" type Knowledge (line 57) | type Knowledge struct method GetMetadata (line 113) | func (k *Knowledge) GetMetadata() map[string]string { method BeforeCreate (line 129) | func (k *Knowledge) BeforeCreate(tx *gorm.DB) (err error) { method ManualMetadata (line 198) | func (k *Knowledge) ManualMetadata() (*ManualKnowledgeMetadata, error) { method SetManualMetadata (line 216) | func (k *Knowledge) SetManualMetadata(meta *ManualKnowledgeMetadata) e... method SetLastFAQImportResult (line 230) | func (k *Knowledge) SetLastFAQImportResult(result *FAQImportResult) er... method GetLastFAQImportResult (line 244) | func (k *Knowledge) GetLastFAQImportResult() (*FAQImportResult, error) { method IsManual (line 256) | func (k *Knowledge) IsManual() bool { method EnsureManualDefaults (line 261) | func (k *Knowledge) EnsureManualDefaults() { type ManualKnowledgeMetadata (line 137) | type ManualKnowledgeMetadata struct method ToJSON (line 174) | func (m *ManualKnowledgeMetadata) ToJSON() (JSON, error) { type ManualKnowledgePayload (line 146) | type ManualKnowledgePayload struct method IsDraft (line 277) | func (p ManualKnowledgePayload) IsDraft() bool { type KnowledgeSearchScope (line 154) | type KnowledgeSearchScope struct function NewManualKnowledgeMetadata (line 160) | func NewManualKnowledgeMetadata(content, status string, version int) *Ma... type KnowledgeCheckParams (line 282) | type KnowledgeCheckParams struct FILE: internal/types/knowledgebase.go constant KnowledgeBaseTypeDocument (line 15) | KnowledgeBaseTypeDocument = "document" constant KnowledgeBaseTypeFAQ (line 16) | KnowledgeBaseTypeFAQ = "faq" type FAQIndexMode (line 20) | type FAQIndexMode constant FAQIndexModeQuestionOnly (line 24) | FAQIndexModeQuestionOnly FAQIndexMode = "question_only" constant FAQIndexModeQuestionAnswer (line 26) | FAQIndexModeQuestionAnswer FAQIndexMode = "question_answer" type FAQQuestionIndexMode (line 30) | type FAQQuestionIndexMode constant FAQQuestionIndexModeCombined (line 34) | FAQQuestionIndexModeCombined FAQQuestionIndexMode = "combined" constant FAQQuestionIndexModeSeparate (line 36) | FAQQuestionIndexModeSeparate FAQQuestionIndexMode = "separate" type KnowledgeBase (line 40) | type KnowledgeBase struct method UnmarshalJSON (line 200) | func (kb *KnowledgeBase) UnmarshalJSON(data []byte) error { method GetStorageProvider (line 224) | func (kb *KnowledgeBase) GetStorageProvider() string { method SetStorageProvider (line 238) | func (kb *KnowledgeBase) SetStorageProvider(provider string) { method EnsureDefaults (line 439) | func (kb *KnowledgeBase) EnsureDefaults() { method IsMultimodalEnabled (line 468) | func (kb *KnowledgeBase) IsMultimodalEnabled() bool { type KnowledgeBaseConfig (line 96) | type KnowledgeBaseConfig struct type ParserEngineRule (line 106) | type ParserEngineRule struct type ChunkingConfig (line 112) | type ChunkingConfig struct method ResolveParserEngine (line 139) | func (c ChunkingConfig) ResolveParserEngine(fileType string) string { method Value (line 282) | func (c ChunkingConfig) Value() (driver.Value, error) { method Scan (line 287) | func (c *ChunkingConfig) Scan(value interface{}) error { type StorageProviderConfig (line 152) | type StorageProviderConfig struct method Value (line 156) | func (c StorageProviderConfig) Value() (driver.Value, error) { method Scan (line 160) | func (c *StorageProviderConfig) Scan(value interface{}) error { type StorageConfig (line 173) | type StorageConfig struct method Value (line 183) | func (c StorageConfig) Value() (driver.Value, error) { method Scan (line 187) | func (c *StorageConfig) Scan(value interface{}) error { function InferStorageFromFilePath (line 249) | func InferStorageFromFilePath(filePath string) string { function ParseProviderScheme (line 266) | func ParseProviderScheme(filePath string) string { type ImageProcessingConfig (line 276) | type ImageProcessingConfig struct method Value (line 299) | func (c ImageProcessingConfig) Value() (driver.Value, error) { method Scan (line 304) | func (c *ImageProcessingConfig) Scan(value interface{}) error { type VLMConfig (line 316) | type VLMConfig struct method IsEnabled (line 334) | func (c VLMConfig) IsEnabled() bool { method Value (line 373) | func (c VLMConfig) Value() (driver.Value, error) { method Scan (line 378) | func (c *VLMConfig) Scan(value interface{}) error { type QuestionGenerationConfig (line 349) | type QuestionGenerationConfig struct method Value (line 356) | func (c QuestionGenerationConfig) Value() (driver.Value, error) { method Scan (line 361) | func (c *QuestionGenerationConfig) Scan(value interface{}) error { type ExtractConfig (line 390) | type ExtractConfig struct method Value (line 399) | func (e ExtractConfig) Value() (driver.Value, error) { method Scan (line 404) | func (e *ExtractConfig) Scan(value interface{}) error { type FAQConfig (line 416) | type FAQConfig struct method Value (line 422) | func (f FAQConfig) Value() (driver.Value, error) { method Scan (line 427) | func (f *FAQConfig) Scan(value interface{}) error { FILE: internal/types/mcp.go type MCPTransportType (line 13) | type MCPTransportType constant MCPTransportSSE (line 16) | MCPTransportSSE MCPTransportType = "sse" constant MCPTransportHTTPStreamable (line 17) | MCPTransportHTTPStreamable MCPTransportType = "http-streamable" constant MCPTransportStdio (line 18) | MCPTransportStdio MCPTransportType = "stdio" type MCPService (line 22) | type MCPService struct method BeforeCreate (line 91) | func (m *MCPService) BeforeCreate(tx *gorm.DB) error { method MaskSensitiveData (line 210) | func (m *MCPService) MaskSensitiveData() { method HideSensitiveInfo (line 222) | func (m *MCPService) HideSensitiveInfo() *MCPService { type MCPHeaders (line 42) | type MCPHeaders method Value (line 99) | func (h MCPHeaders) Value() (driver.Value, error) { method Scan (line 107) | func (h *MCPHeaders) Scan(value interface{}) error { type MCPAuthConfig (line 45) | type MCPAuthConfig struct method Value (line 120) | func (c *MCPAuthConfig) Value() (driver.Value, error) { method Scan (line 128) | func (c *MCPAuthConfig) Scan(value interface{}) error { type MCPAdvancedConfig (line 52) | type MCPAdvancedConfig struct method Value (line 140) | func (c *MCPAdvancedConfig) Value() (driver.Value, error) { method Scan (line 148) | func (c *MCPAdvancedConfig) Scan(value interface{}) error { type MCPStdioConfig (line 59) | type MCPStdioConfig struct method Value (line 160) | func (c *MCPStdioConfig) Value() (driver.Value, error) { method Scan (line 168) | func (c *MCPStdioConfig) Scan(value interface{}) error { type MCPEnvVars (line 65) | type MCPEnvVars method Value (line 180) | func (e MCPEnvVars) Value() (driver.Value, error) { method Scan (line 188) | func (e *MCPEnvVars) Scan(value interface{}) error { type MCPTool (line 68) | type MCPTool struct type MCPResource (line 75) | type MCPResource struct type MCPTestResult (line 83) | type MCPTestResult struct function GetDefaultAdvancedConfig (line 201) | func GetDefaultAdvancedConfig() *MCPAdvancedConfig { function maskString (line 237) | func maskString(s string) string { FILE: internal/types/memory.go type Episode (line 6) | type Episode struct type MemoryContext (line 15) | type MemoryContext struct FILE: internal/types/message.go type History (line 16) | type History struct type MentionedItem (line 24) | type MentionedItem struct type MessageImage (line 32) | type MessageImage struct type MessageImages (line 38) | type MessageImages method Value (line 41) | func (m MessageImages) Value() (driver.Value, error) { method Scan (line 49) | func (m *MessageImages) Scan(value interface{}) error { type MentionedItems (line 68) | type MentionedItems method Value (line 71) | func (m MentionedItems) Value() (driver.Value, error) { method Scan (line 79) | func (m *MentionedItems) Scan(value interface{}) error { type Message (line 100) | type Message struct method BeforeCreate (line 177) | func (m *Message) BeforeCreate(tx *gorm.DB) (err error) { type AgentSteps (line 141) | type AgentSteps method Value (line 144) | func (a AgentSteps) Value() (driver.Value, error) { method Scan (line 152) | func (a *AgentSteps) Scan(value interface{}) error { type MessageSearchMode (line 195) | type MessageSearchMode constant MessageSearchModeKeyword (line 199) | MessageSearchModeKeyword MessageSearchMode = "keyword" constant MessageSearchModeVector (line 201) | MessageSearchModeVector MessageSearchMode = "vector" constant MessageSearchModeHybrid (line 203) | MessageSearchModeHybrid MessageSearchMode = "hybrid" type MessageSearchParams (line 207) | type MessageSearchParams struct type MessageWithSession (line 219) | type MessageWithSession struct type MessageSearchResultItem (line 226) | type MessageSearchResultItem struct type MessageSearchGroupItem (line 238) | type MessageSearchGroupItem struct type MessageSearchResult (line 257) | type MessageSearchResult struct type ChatHistoryKBStats (line 265) | type ChatHistoryKBStats struct FILE: internal/types/model.go type ModelType (line 14) | type ModelType constant ModelTypeEmbedding (line 17) | ModelTypeEmbedding ModelType = "Embedding" constant ModelTypeRerank (line 18) | ModelTypeRerank ModelType = "Rerank" constant ModelTypeKnowledgeQA (line 19) | ModelTypeKnowledgeQA ModelType = "KnowledgeQA" constant ModelTypeVLLM (line 20) | ModelTypeVLLM ModelType = "VLLM" type ModelStatus (line 24) | type ModelStatus constant ModelStatusActive (line 27) | ModelStatusActive ModelStatus = "active" constant ModelStatusDownloading (line 28) | ModelStatusDownloading ModelStatus = "downloading" constant ModelStatusDownloadFailed (line 29) | ModelStatusDownloadFailed ModelStatus = "download_failed" type ModelSource (line 33) | type ModelSource constant ModelSourceLocal (line 36) | ModelSourceLocal ModelSource = "local" constant ModelSourceRemote (line 37) | ModelSourceRemote ModelSource = "remote" constant ModelSourceAliyun (line 38) | ModelSourceAliyun ModelSource = "aliyun" constant ModelSourceZhipu (line 39) | ModelSourceZhipu ModelSource = "zhipu" constant ModelSourceVolcengine (line 40) | ModelSourceVolcengine ModelSource = "volcengine" constant ModelSourceDeepseek (line 41) | ModelSourceDeepseek ModelSource = "deepseek" constant ModelSourceHunyuan (line 42) | ModelSourceHunyuan ModelSource = "hunyuan" constant ModelSourceMinimax (line 43) | ModelSourceMinimax ModelSource = "minimax" constant ModelSourceOpenAI (line 44) | ModelSourceOpenAI ModelSource = "openai" constant ModelSourceGemini (line 45) | ModelSourceGemini ModelSource = "gemini" constant ModelSourceMimo (line 46) | ModelSourceMimo ModelSource = "mimo" constant ModelSourceSiliconFlow (line 47) | ModelSourceSiliconFlow ModelSource = "siliconflow" constant ModelSourceJina (line 48) | ModelSourceJina ModelSource = "jina" constant ModelSourceOpenRouter (line 49) | ModelSourceOpenRouter ModelSource = "openrouter" type EmbeddingParameters (line 53) | type EmbeddingParameters struct type ModelParameters (line 58) | type ModelParameters struct method Value (line 101) | func (c ModelParameters) Value() (driver.Value, error) { method Scan (line 112) | func (c *ModelParameters) Scan(value interface{}) error { type Model (line 70) | type Model struct method BeforeCreate (line 138) | func (m *Model) BeforeCreate(tx *gorm.DB) (err error) { FILE: internal/types/organization.go type OrgMemberRole (line 10) | type OrgMemberRole method IsValid (line 22) | func (r OrgMemberRole) IsValid() bool { method HasPermission (line 32) | func (r OrgMemberRole) HasPermission(required OrgMemberRole) bool { constant OrgRoleAdmin (line 14) | OrgRoleAdmin OrgMemberRole = "admin" constant OrgRoleEditor (line 16) | OrgRoleEditor OrgMemberRole = "editor" constant OrgRoleViewer (line 18) | OrgRoleViewer OrgMemberRole = "viewer" type Organization (line 42) | type Organization struct method TableName (line 79) | func (Organization) TableName() string { type OrganizationMember (line 84) | type OrganizationMember struct method TableName (line 106) | func (OrganizationMember) TableName() string { type JoinRequestStatus (line 111) | type JoinRequestStatus constant JoinRequestStatusPending (line 114) | JoinRequestStatusPending JoinRequestStatus = "pending" constant JoinRequestStatusApproved (line 115) | JoinRequestStatusApproved JoinRequestStatus = "approved" constant JoinRequestStatusRejected (line 116) | JoinRequestStatusRejected JoinRequestStatus = "rejected" type JoinRequestType (line 120) | type JoinRequestType constant JoinRequestTypeJoin (line 124) | JoinRequestTypeJoin JoinRequestType = "join" constant JoinRequestTypeUpgrade (line 126) | JoinRequestTypeUpgrade JoinRequestType = "upgrade" type OrganizationJoinRequest (line 130) | type OrganizationJoinRequest struct method TableName (line 167) | func (OrganizationJoinRequest) TableName() string { type KnowledgeBaseShare (line 172) | type KnowledgeBaseShare struct method TableName (line 198) | func (KnowledgeBaseShare) TableName() string { type SharedKnowledgeBaseInfo (line 203) | type SharedKnowledgeBaseInfo struct type AgentShare (line 214) | type AgentShare struct method TableName (line 229) | func (AgentShare) TableName() string { type SharedAgentInfo (line 234) | type SharedAgentInfo struct type SourceFromAgentInfo (line 249) | type SourceFromAgentInfo struct type OrganizationSharedKnowledgeBaseItem (line 257) | type OrganizationSharedKnowledgeBaseItem struct type OrganizationSharedAgentItem (line 264) | type OrganizationSharedAgentItem struct type TenantDisabledSharedAgent (line 270) | type TenantDisabledSharedAgent struct method TableName (line 278) | func (TenantDisabledSharedAgent) TableName() string { type CreateOrganizationRequest (line 287) | type CreateOrganizationRequest struct type UpdateOrganizationRequest (line 296) | type UpdateOrganizationRequest struct type AddMemberRequest (line 307) | type AddMemberRequest struct type UpdateMemberRoleRequest (line 313) | type UpdateMemberRoleRequest struct type JoinOrganizationRequest (line 318) | type JoinOrganizationRequest struct type SubmitJoinRequestRequest (line 323) | type SubmitJoinRequestRequest struct type ReviewJoinRequestRequest (line 330) | type ReviewJoinRequestRequest struct type RequestRoleUpgradeRequest (line 337) | type RequestRoleUpgradeRequest struct type InviteMemberRequest (line 343) | type InviteMemberRequest struct type ShareKnowledgeBaseRequest (line 349) | type ShareKnowledgeBaseRequest struct type UpdateSharePermissionRequest (line 355) | type UpdateSharePermissionRequest struct type OrganizationResponse (line 360) | type OrganizationResponse struct type OrganizationMemberResponse (line 384) | type OrganizationMemberResponse struct type KnowledgeBaseShareResponse (line 396) | type KnowledgeBaseShareResponse struct type AgentShareResponse (line 416) | type AgentShareResponse struct type ListOrganizationsResponse (line 440) | type ListOrganizationsResponse struct type ResourceCountsByOrgResponse (line 447) | type ResourceCountsByOrgResponse struct type SearchableOrganizationItem (line 457) | type SearchableOrganizationItem struct type ListSearchableOrganizationsResponse (line 471) | type ListSearchableOrganizationsResponse struct type JoinByOrganizationIDRequest (line 477) | type JoinByOrganizationIDRequest struct type JoinRequestResponse (line 484) | type JoinRequestResponse struct type ListJoinRequestsResponse (line 499) | type ListJoinRequestsResponse struct type ListMembersResponse (line 505) | type ListMembersResponse struct type ListSharesResponse (line 511) | type ListSharesResponse struct FILE: internal/types/placeholder.go type PromptPlaceholder (line 9) | type PromptPlaceholder struct type PromptFieldType (line 19) | type PromptFieldType constant PromptFieldSystemPrompt (line 23) | PromptFieldSystemPrompt PromptFieldType = "system_prompt" constant PromptFieldAgentSystemPrompt (line 25) | PromptFieldAgentSystemPrompt PromptFieldType = "agent_system_prompt" constant PromptFieldContextTemplate (line 27) | PromptFieldContextTemplate PromptFieldType = "context_template" constant PromptFieldRewriteSystemPrompt (line 29) | PromptFieldRewriteSystemPrompt PromptFieldType = "rewrite_system_prompt" constant PromptFieldRewritePrompt (line 31) | PromptFieldRewritePrompt PromptFieldType = "rewrite_prompt" constant PromptFieldFallbackPrompt (line 33) | PromptFieldFallbackPrompt PromptFieldType = "fallback_prompt" function PlaceholdersByField (line 103) | func PlaceholdersByField(fieldType PromptFieldType) []PromptPlaceholder { function AllPlaceholders (line 158) | func AllPlaceholders() []PromptPlaceholder { function PlaceholderMap (line 174) | func PlaceholderMap() map[PromptFieldType][]PromptPlaceholder { type PlaceholderValues (line 191) | type PlaceholderValues function RenderPromptPlaceholders (line 200) | func RenderPromptPlaceholders(template string, vals PlaceholderValues) s... FILE: internal/types/qa_request.go type QARequest (line 6) | type QARequest struct FILE: internal/types/retrieval_config.go type RetrievalConfig (line 14) | type RetrievalConfig struct method GetEffectiveEmbeddingTopK (line 30) | func (c *RetrievalConfig) GetEffectiveEmbeddingTopK() int { method GetEffectiveVectorThreshold (line 38) | func (c *RetrievalConfig) GetEffectiveVectorThreshold() float64 { method GetEffectiveKeywordThreshold (line 46) | func (c *RetrievalConfig) GetEffectiveKeywordThreshold() float64 { method GetEffectiveRerankTopK (line 54) | func (c *RetrievalConfig) GetEffectiveRerankTopK() int { method GetEffectiveRerankThreshold (line 62) | func (c *RetrievalConfig) GetEffectiveRerankThreshold() float64 { method Value (line 70) | func (c RetrievalConfig) Value() (driver.Value, error) { method Scan (line 75) | func (c *RetrievalConfig) Scan(value interface{}) error { FILE: internal/types/retriever.go type RetrieverEngineType (line 4) | type RetrieverEngineType constant PostgresRetrieverEngineType (line 8) | PostgresRetrieverEngineType RetrieverEngineType = "postgres" constant ElasticsearchRetrieverEngineType (line 9) | ElasticsearchRetrieverEngineType RetrieverEngineType = "elasticsearch" constant InfinityRetrieverEngineType (line 10) | InfinityRetrieverEngineType RetrieverEngineType = "infinity" constant ElasticFaissRetrieverEngineType (line 11) | ElasticFaissRetrieverEngineType RetrieverEngineType = "elasticfaiss" constant QdrantRetrieverEngineType (line 12) | QdrantRetrieverEngineType RetrieverEngineType = "qdrant" constant MilvusRetrieverEngineType (line 13) | MilvusRetrieverEngineType RetrieverEngineType = "milvus" constant WeaviateRetrieverEngineType (line 14) | WeaviateRetrieverEngineType RetrieverEngineType = "weaviate" constant SQLiteRetrieverEngineType (line 15) | SQLiteRetrieverEngineType RetrieverEngineType = "sqlite" type RetrieverType (line 19) | type RetrieverType constant KeywordsRetrieverType (line 23) | KeywordsRetrieverType RetrieverType = "keywords" constant VectorRetrieverType (line 24) | VectorRetrieverType RetrieverType = "vector" constant WebSearchRetrieverType (line 25) | WebSearchRetrieverType RetrieverType = "websearch" type RetrieveParams (line 29) | type RetrieveParams struct type RetrieverEngineParams (line 57) | type RetrieverEngineParams struct type IndexWithScore (line 65) | type IndexWithScore struct method GetScore (line 91) | func (i *IndexWithScore) GetScore() float64 { type RetrieveResult (line 96) | type RetrieveResult struct FILE: internal/types/search.go type SearchTargetType (line 9) | type SearchTargetType constant SearchTargetTypeKnowledgeBase (line 13) | SearchTargetTypeKnowledgeBase SearchTargetType = "knowledge_base" constant SearchTargetTypeKnowledge (line 15) | SearchTargetTypeKnowledge SearchTargetType = "knowledge" type SearchTarget (line 20) | type SearchTarget struct type SearchTargets (line 34) | type SearchTargets method GetAllKnowledgeBaseIDs (line 37) | func (st SearchTargets) GetAllKnowledgeBaseIDs() []string { method GetKBTenantMap (line 50) | func (st SearchTargets) GetKBTenantMap() map[string]uint64 { method GetTenantIDForKB (line 62) | func (st SearchTargets) GetTenantIDForKB(kbID string) uint64 { method ContainsKB (line 72) | func (st SearchTargets) ContainsKB(kbID string) bool { type SearchResult (line 82) | type SearchResult struct method Value (line 157) | func (c SearchResult) Value() (driver.Value, error) { method Scan (line 162) | func (c *SearchResult) Scan(value interface{}) error { type SearchParams (line 135) | type SearchParams struct type Pagination (line 174) | type Pagination struct method GetPage (line 182) | func (p *Pagination) GetPage() int { method GetPageSize (line 190) | func (p *Pagination) GetPageSize() int { method Offset (line 201) | func (p *Pagination) Offset() int { method Limit (line 206) | func (p *Pagination) Limit() int { type PageResult (line 211) | type PageResult struct function NewPageResult (line 219) | func NewPageResult(total int64, page *Pagination, data interface{}) *Pag... FILE: internal/types/session.go type FallbackStrategy (line 13) | type FallbackStrategy constant FallbackStrategyFixed (line 16) | FallbackStrategyFixed FallbackStrategy = "fixed" constant FallbackStrategyModel (line 17) | FallbackStrategyModel FallbackStrategy = "model" type SummaryConfig (line 21) | type SummaryConfig struct method Value (line 136) | func (c *SummaryConfig) Value() (driver.Value, error) { method Scan (line 141) | func (c *SummaryConfig) Scan(value interface{}) error { type ContextCompressionStrategy (line 51) | type ContextCompressionStrategy constant ContextCompressionSlidingWindow (line 55) | ContextCompressionSlidingWindow ContextCompressionStrategy = "sliding_wi... constant ContextCompressionSmart (line 57) | ContextCompressionSmart ContextCompressionStrategy = "smart" type ContextConfig (line 62) | type ContextConfig struct method Value (line 153) | func (c *ContextConfig) Value() (driver.Value, error) { method Scan (line 158) | func (c *ContextConfig) Scan(value interface{}) error { type Session (line 75) | type Session struct method BeforeCreate (line 110) | func (s *Session) BeforeCreate(tx *gorm.DB) (err error) { type StringArray (line 116) | type StringArray method Value (line 119) | func (c StringArray) Value() (driver.Value, error) { method Scan (line 124) | func (c *StringArray) Scan(value interface{}) error { FILE: internal/types/tag.go type KnowledgeTag (line 8) | type KnowledgeTag struct type KnowledgeTagWithStats (line 30) | type KnowledgeTagWithStats struct type TagReferenceCounts (line 37) | type TagReferenceCounts struct FILE: internal/types/tenant.go function GetRetrieverEngineMapping (line 48) | func GetRetrieverEngineMapping() map[string][]RetrieverEngineParams { function GetDefaultRetrieverEngines (line 53) | func GetDefaultRetrieverEngines() []RetrieverEngineParams { type Tenant (line 73) | type Tenant struct method GetEffectiveEngines (line 124) | func (t *Tenant) GetEffectiveEngines() []RetrieverEngineParams { method BeforeCreate (line 132) | func (t *Tenant) BeforeCreate(tx *gorm.DB) error { method BeforeSave (line 141) | func (t *Tenant) BeforeSave(tx *gorm.DB) error { method AfterFind (line 152) | func (t *Tenant) AfterFind(tx *gorm.DB) error { type RetrieverEngines (line 119) | type RetrieverEngines struct method Value (line 162) | func (c RetrieverEngines) Value() (driver.Value, error) { method Scan (line 167) | func (c *RetrieverEngines) Scan(value interface{}) error { type ConversationConfig (line 179) | type ConversationConfig struct method Value (line 214) | func (c *ConversationConfig) Value() (driver.Value, error) { method Scan (line 222) | func (c *ConversationConfig) Scan(value interface{}) error { type ParserEngineConfig (line 235) | type ParserEngineConfig struct method ToOverridesMap (line 257) | func (c *ParserEngineConfig) ToOverridesMap() map[string]string { method Value (line 305) | func (c *ParserEngineConfig) Value() (driver.Value, error) { method Scan (line 313) | func (c *ParserEngineConfig) Scan(value interface{}) error { type StorageEngineConfig (line 326) | type StorageEngineConfig struct method Value (line 383) | func (c *StorageEngineConfig) Value() (driver.Value, error) { method Scan (line 391) | func (c *StorageEngineConfig) Scan(value interface{}) error { type LocalEngineConfig (line 336) | type LocalEngineConfig struct type MinIOEngineConfig (line 342) | type MinIOEngineConfig struct type COSEngineConfig (line 353) | type COSEngineConfig struct type TOSEngineConfig (line 363) | type TOSEngineConfig struct type S3EngineConfig (line 373) | type S3EngineConfig struct FILE: internal/types/user.go type User (line 10) | type User struct method ToUserInfo (line 106) | func (u *User) ToUserInfo() *UserInfo { type AuthToken (line 39) | type AuthToken struct type LoginRequest (line 62) | type LoginRequest struct type RegisterRequest (line 68) | type RegisterRequest struct type LoginResponse (line 75) | type LoginResponse struct type RegisterResponse (line 85) | type RegisterResponse struct type UserInfo (line 93) | type UserInfo struct FILE: internal/types/web_search.go type WebSearchConfig (line 10) | type WebSearchConfig struct method Value (line 25) | func (c WebSearchConfig) Value() (driver.Value, error) { method Scan (line 30) | func (c *WebSearchConfig) Scan(value interface{}) error { type WebSearchResult (line 42) | type WebSearchResult struct type WebSearchProviderInfo (line 52) | type WebSearchProviderInfo struct FILE: internal/utils/crypto.go constant EncPrefix (line 15) | EncPrefix = "enc:v1:" function GetAESKey (line 19) | func GetAESKey() []byte { function EncryptAESGCM (line 29) | func EncryptAESGCM(plaintext string, key []byte) (string, error) { function DecryptAESGCM (line 58) | func DecryptAESGCM(encrypted string, key []byte) (string, error) { FILE: internal/utils/debug.go function CleanupStaleRunningTasks (line 13) | func CleanupStaleRunningTasks(ctx context.Context, redisClient *redis.Cl... function CheckRunningTaskStatus (line 52) | func CheckRunningTaskStatus(ctx context.Context, redisClient *redis.Clie... FILE: internal/utils/filesize.go function GetMaxFileSize (line 10) | func GetMaxFileSize() int64 { function GetMaxFileSizeMB (line 20) | func GetMaxFileSizeMB() int64 { FILE: internal/utils/httputil.go function DownloadBytes (line 15) | func DownloadBytes(url string) ([]byte, error) { FILE: internal/utils/inject.go type SQLParseResult (line 78) | type SQLParseResult struct type SQLValidationError (line 89) | type SQLValidationError struct type SQLValidationResult (line 96) | type SQLValidationResult struct type SQLValidationOption (line 102) | type SQLValidationOption type sqlValidator (line 105) | type sqlValidator struct method injectTenantConditions (line 879) | func (v *sqlValidator) injectTenantConditions(sql string, tablesInQuer... method injectSoftDeleteConditions (line 905) | func (v *sqlValidator) injectSoftDeleteConditions(sql string, tablesIn... method validateInput (line 1016) | func (v *sqlValidator) validateInput(sql string) error { method validateSelectStmt (line 1034) | func (v *sqlValidator) validateSelectStmt(stmt *pg_query.SelectStmt, r... method validateFromItem (line 1108) | func (v *sqlValidator) validateFromItem(node *pg_query.Node, tables ma... method validateNode (line 1167) | func (v *sqlValidator) validateNode(node *pg_query.Node, result *SQLVa... method validateFuncCall (line 1655) | func (v *sqlValidator) validateFuncCall(fc *pg_query.FuncCall, result ... method validateColumnRef (line 1792) | func (v *sqlValidator) validateColumnRef(cr *pg_query.ColumnRef) error { method getTypeName (line 1818) | func (v *sqlValidator) getTypeName(tn *pg_query.TypeName) string { function ParseSQL (line 143) | func ParseSQL(sql string) *SQLParseResult { function extractSelectFieldsFromPgQuery (line 198) | func extractSelectFieldsFromPgQuery(selectStmt *pg_query.SelectStmt) []s... function extractTableNamesFromPgQuery (line 226) | func extractTableNamesFromPgQuery(selectStmt *pg_query.SelectStmt) []str... function extractWhereFromPgQuery (line 248) | func extractWhereFromPgQuery(selectStmt *pg_query.SelectStmt, originalSQ... function extractColumnNamesFromNode (line 273) | func extractColumnNamesFromNode(node *pg_query.Node) []string { function extractTableNamesFromNode (line 362) | func extractTableNamesFromNode(node *pg_query.Node) []string { function extractWhereClauseText (line 394) | func extractWhereClauseText(sql string) string { function WithAllowedTables (line 418) | func WithAllowedTables(tables ...string) SQLValidationOption { function WithInjectionRiskCheck (line 429) | func WithInjectionRiskCheck() SQLValidationOption { function WithInputValidation (line 436) | func WithInputValidation(minLen, maxLen int) SQLValidationOption { function WithSelectOnly (line 445) | func WithSelectOnly() SQLValidationOption { function WithSingleStatement (line 452) | func WithSingleStatement() SQLValidationOption { function WithAllowedFunctions (line 459) | func WithAllowedFunctions(functions ...string) SQLValidationOption { function WithDefaultSafeFunctions (line 470) | func WithDefaultSafeFunctions() SQLValidationOption { function WithNoSubqueries (line 524) | func WithNoSubqueries() SQLValidationOption { function WithNoCTEs (line 531) | func WithNoCTEs() SQLValidationOption { function WithNoSystemColumns (line 538) | func WithNoSystemColumns() SQLValidationOption { function WithNoSchemaAccess (line 545) | func WithNoSchemaAccess() SQLValidationOption { function WithNoDangerousFunctions (line 552) | func WithNoDangerousFunctions() SQLValidationOption { function WithTenantIsolation (line 559) | func WithTenantIsolation(tenantID uint64, tables ...string) SQLValidatio... function WithSoftDeleteFilter (line 582) | func WithSoftDeleteFilter(tables ...string) SQLValidationOption { function WithSecurityDefaults (line 602) | func WithSecurityDefaults(tenantID uint64) SQLValidationOption { function ValidateSQL (line 629) | func ValidateSQL(sql string, opts ...SQLValidationOption) (*SQLParseResu... function ValidateAndSecureSQL (line 784) | func ValidateAndSecureSQL(sql string, opts ...SQLValidationOption) (stri... function InjectAndConditions (line 839) | func InjectAndConditions(sql, filter string) string { function checkSQLInjectionRisks (line 925) | func checkSQLInjectionRisks(whereClause string) []SQLValidationError { function getMapKeys (line 1007) | func getMapKeys(m map[string]bool) []string { FILE: internal/utils/inject_test.go function TestParseSQL (line 9) | func TestParseSQL(t *testing.T) { function ExampleParseSQL (line 129) | func ExampleParseSQL() { function TestValidateSQL_TableNames (line 147) | func TestValidateSQL_TableNames(t *testing.T) { function TestValidateSQL_InjectionRisk (line 212) | func TestValidateSQL_InjectionRisk(t *testing.T) { function TestValidateSQL_CombinedOptions (line 326) | func TestValidateSQL_CombinedOptions(t *testing.T) { function ExampleValidateSQL (line 386) | func ExampleValidateSQL() { function TestInjectAndConditions (line 415) | func TestInjectAndConditions(t *testing.T) { FILE: internal/utils/json.go function ToJSON (line 11) | func ToJSON(v interface{}) string { function GenerateSchema (line 21) | func GenerateSchema[T any]() json.RawMessage { FILE: internal/utils/log_sanitize.go constant defaultMaxLogChars (line 11) | defaultMaxLogChars = 12000 constant defaultMaxDataURLPreview (line 12) | defaultMaxDataURLPreview = 96 function CompactImageDataURLForLog (line 16) | func CompactImageDataURLForLog(raw string) string { FILE: internal/utils/security.go function SanitizeHTML (line 43) | func SanitizeHTML(input string) string { function EscapeHTML (line 66) | func EscapeHTML(input string) string { function ValidateInput (line 74) | func ValidateInput(input string) (string, bool) { function SafePathUnderBase (line 103) | func SafePathUnderBase(baseDir, filePath string) (string, error) { function SafeFileName (line 124) | func SafeFileName(fileName string) (string, error) { function SafeObjectKey (line 142) | func SafeObjectKey(objectKey string) error { function IsValidURL (line 153) | func IsValidURL(url string) bool { function mustParseCIDR (line 250) | func mustParseCIDR(s string) *net.IPNet { function isRestrictedIP (line 259) | func isRestrictedIP(ip net.IP) (bool, string) { function IsPublicIP (line 310) | func IsPublicIP(ip net.IP) bool { function isZeros (line 316) | func isZeros(b []byte) bool { function isIPLikeHostname (line 349) | func isIPLikeHostname(hostname string) bool { function IsSSRFSafeURL (line 366) | func IsSSRFSafeURL(rawURL string) (bool, string) { function IsValidImageURL (line 470) | func IsValidImageURL(url string) bool { function CleanMarkdown (line 489) | func CleanMarkdown(input string) string { function SanitizeForDisplay (line 504) | func SanitizeForDisplay(input string) string { function SanitizeForLog (line 521) | func SanitizeForLog(input string) string { function SanitizeForLogArray (line 548) | func SanitizeForLogArray(input []string) []string { function ValidateStdioCommand (line 605) | func ValidateStdioCommand(command string) error { function ValidateStdioArgs (line 632) | func ValidateStdioArgs(args []string) error { function ValidateStdioEnvVars (line 661) | func ValidateStdioEnvVars(envVars map[string]string) error { function ValidateStdioConfig (line 702) | func ValidateStdioConfig(command string, args []string, envVars map[stri... type SSRFSafeHTTPClientConfig (line 722) | type SSRFSafeHTTPClientConfig struct function DefaultSSRFSafeHTTPClientConfig (line 730) | func DefaultSSRFSafeHTTPClientConfig() SSRFSafeHTTPClientConfig { function NewSSRFSafeHTTPClient (line 744) | func NewSSRFSafeHTTPClient(config SSRFSafeHTTPClientConfig) *http.Client { function ssrfSafeDialContext (line 775) | func ssrfSafeDialContext(ctx context.Context, network, addr string) (net... type ssrfWhitelistConfig (line 835) | type ssrfWhitelistConfig struct function loadSSRFWhitelist (line 842) | func loadSSRFWhitelist() *ssrfWhitelistConfig { function IsSSRFWhitelisted (line 879) | func IsSSRFWhitelisted(hostname string) bool { function ResetSSRFWhitelistForTest (line 925) | func ResetSSRFWhitelistForTest() { function ValidateURLForSSRF (line 939) | func ValidateURLForSSRF(rawURL string) error { FILE: internal/utils/security_test.go function TestIsSSRFSafeURL (line 8) | func TestIsSSRFSafeURL(t *testing.T) { function TestIsSSRFSafeURL_AllowPublicDomain (line 95) | func TestIsSSRFSafeURL_AllowPublicDomain(t *testing.T) { FILE: internal/utils/taskid.go function GenerateTaskID (line 21) | func GenerateTaskID(taskType string, tenantID uint64, businessID ...stri... function GenerateTaskIDWithPrefix (line 46) | func GenerateTaskIDWithPrefix(prefix string, tenantID uint64, businessID... function ParseTaskID (line 66) | func ParseTaskID(taskID string) (taskType string, tenantID uint64, times... function sanitizeTaskType (line 97) | func sanitizeTaskType(taskType string) string { function sanitizeBusinessID (line 106) | func sanitizeBusinessID(businessID string) string { FILE: mcp-server/main.py function setup_environment (line 19) | def setup_environment(): function check_dependencies (line 27) | def check_dependencies(): function check_environment_variables (line 40) | def check_environment_variables(): function parse_arguments (line 59) | def parse_arguments(): function main (line 89) | async def main(): function sync_main (line 138) | def sync_main(): FILE: mcp-server/run.py function main (line 14) | def main(): FILE: mcp-server/run_server.py function check_environment (line 11) | def check_environment(): function main (line 28) | def main(): FILE: mcp-server/setup.py function read_readme (line 10) | def read_readme(): function read_requirements (line 19) | def read_requirements(): FILE: mcp-server/test_module.py function test_imports (line 14) | def test_imports(): function test_environment (line 50) | def test_environment(): function test_client_creation (line 69) | def test_client_creation(): function test_file_structure (line 94) | def test_file_structure(): function test_entry_points (line 128) | def test_entry_points(): function test_package_installation (line 175) | def test_package_installation(): function main (line 204) | def main(): FILE: mcp-server/weknora_mcp_server.py class WeKnoraClient (line 29) | class WeKnoraClient: method __init__ (line 32) | def __init__(self, base_url: str, api_key: str): method _request (line 46) | def _request(self, method: str, endpoint: str, **kwargs) -> Dict[str, ... method create_tenant (line 70) | def create_tenant( method get_tenant (line 82) | def get_tenant(self, tenant_id: str) -> Dict: method list_tenants (line 86) | def list_tenants(self) -> Dict: method create_knowledge_base (line 91) | def create_knowledge_base(self, name: str, description: str, config: D... method list_knowledge_bases (line 100) | def list_knowledge_bases(self) -> Dict: method get_knowledge_base (line 104) | def get_knowledge_base(self, kb_id: str) -> Dict: method update_knowledge_base (line 108) | def update_knowledge_base(self, kb_id: str, updates: Dict) -> Dict: method delete_knowledge_base (line 112) | def delete_knowledge_base(self, kb_id: str) -> Dict: method hybrid_search (line 116) | def hybrid_search(self, kb_id: str, query: str, config: Dict) -> Dict: method create_knowledge_from_file (line 127) | def create_knowledge_from_file( method create_knowledge_from_url (line 148) | def create_knowledge_from_url( method list_knowledge (line 160) | def list_knowledge(self, kb_id: str, page: int = 1, page_size: int = 2... method get_knowledge (line 167) | def get_knowledge(self, knowledge_id: str) -> Dict: method delete_knowledge (line 171) | def delete_knowledge(self, knowledge_id: str) -> Dict: method create_model (line 176) | def create_model( method list_models (line 196) | def list_models(self) -> Dict: method get_model (line 200) | def get_model(self, model_id: str) -> Dict: method create_session (line 205) | def create_session(self, kb_id: str, strategy: Dict) -> Dict: method get_session (line 213) | def get_session(self, session_id: str) -> Dict: method list_sessions (line 217) | def list_sessions(self, page: int = 1, page_size: int = 20) -> Dict: method delete_session (line 222) | def delete_session(self, session_id: str) -> Dict: method chat (line 227) | def chat(self, session_id: str, query: str) -> Dict: method list_chunks (line 235) | def list_chunks( method delete_chunk (line 242) | def delete_chunk(self, knowledge_id: str, chunk_id: str) -> Dict: function handle_list_tools (line 255) | async def handle_list_tools() -> list[types.Tool]: function handle_call_tool (line 637) | async def handle_call_tool( function run (line 818) | async def run(): function main (line 837) | def main(): FILE: migrations/mysql/00-init-db.sql type tenants (line 9) | CREATE TABLE tenants ( type models (line 25) | CREATE TABLE models ( type idx_models_tenant_source_type (line 40) | CREATE INDEX idx_models_tenant_source_type ON models(tenant_id, source, ... type knowledge_bases (line 42) | CREATE TABLE knowledge_bases ( type idx_knowledge_bases_tenant_name (line 60) | CREATE INDEX idx_knowledge_bases_tenant_name ON knowledge_bases(tenant_i... type knowledges (line 62) | CREATE TABLE knowledges ( type idx_knowledges_tenant_id (line 87) | CREATE INDEX idx_knowledges_tenant_id ON knowledges(tenant_id, knowledge... type sessions (line 89) | CREATE TABLE sessions ( type idx_sessions_tenant_id (line 114) | CREATE INDEX idx_sessions_tenant_id ON sessions(tenant_id) type messages (line 116) | CREATE TABLE messages ( type idx_messages_session_role (line 130) | CREATE INDEX idx_messages_session_role ON messages(session_id, role) type chunks (line 132) | CREATE TABLE chunks ( type idx_chunks_tenant_knowledge (line 154) | CREATE INDEX idx_chunks_tenant_knowledge ON chunks(tenant_id, knowledge_id) type idx_chunks_parent_id (line 155) | CREATE INDEX idx_chunks_parent_id ON chunks(parent_chunk_id) type idx_chunks_chunk_type (line 156) | CREATE INDEX idx_chunks_chunk_type ON chunks(chunk_type) FILE: migrations/paradedb/00-init-db.sql type tenants (line 9) | CREATE TABLE IF NOT EXISTS tenants ( type idx_tenants_api_key (line 31) | CREATE INDEX IF NOT EXISTS idx_tenants_api_key ON tenants(api_key) type idx_tenants_status (line 32) | CREATE INDEX IF NOT EXISTS idx_tenants_status ON tenants(status) type models (line 35) | CREATE TABLE IF NOT EXISTS models ( type idx_models_type (line 51) | CREATE INDEX IF NOT EXISTS idx_models_type ON models(type) type idx_models_source (line 52) | CREATE INDEX IF NOT EXISTS idx_models_source ON models(source) type knowledge_bases (line 55) | CREATE TABLE IF NOT EXISTS knowledge_bases ( type idx_knowledge_bases_tenant_id (line 74) | CREATE INDEX IF NOT EXISTS idx_knowledge_bases_tenant_id ON knowledge_ba... type knowledges (line 77) | CREATE TABLE IF NOT EXISTS knowledges ( type idx_knowledges_tenant_id (line 103) | CREATE INDEX IF NOT EXISTS idx_knowledges_tenant_id ON knowledges(tenant... type idx_knowledges_base_id (line 104) | CREATE INDEX IF NOT EXISTS idx_knowledges_base_id ON knowledges(knowledg... type idx_knowledges_parse_status (line 105) | CREATE INDEX IF NOT EXISTS idx_knowledges_parse_status ON knowledges(par... type idx_knowledges_enable_status (line 106) | CREATE INDEX IF NOT EXISTS idx_knowledges_enable_status ON knowledges(en... type sessions (line 109) | CREATE TABLE IF NOT EXISTS sessions ( type idx_sessions_tenant_id (line 138) | CREATE INDEX IF NOT EXISTS idx_sessions_tenant_id ON sessions(tenant_id) type messages (line 142) | CREATE TABLE IF NOT EXISTS messages ( type idx_messages_session_id (line 159) | CREATE INDEX IF NOT EXISTS idx_messages_session_id ON messages(session_id) type chunks (line 162) | CREATE TABLE IF NOT EXISTS chunks ( type idx_chunks_tenant_kg (line 184) | CREATE INDEX IF NOT EXISTS idx_chunks_tenant_kg ON chunks(tenant_id, kno... type idx_chunks_parent_id (line 185) | CREATE INDEX IF NOT EXISTS idx_chunks_parent_id ON chunks(parent_chunk_id) type idx_chunks_chunk_type (line 186) | CREATE INDEX IF NOT EXISTS idx_chunks_chunk_type ON chunks(chunk_type) type embeddings (line 188) | CREATE TABLE IF NOT EXISTS embeddings ( type embeddings_unique_source (line 203) | CREATE UNIQUE INDEX IF NOT EXISTS embeddings_unique_source ON embeddings... type embeddings_search_idx (line 204) | CREATE INDEX IF NOT EXISTS embeddings_search_idx ON embeddings type embeddings (line 214) | CREATE INDEX ON embeddings USING hnsw ((embedding::halfvec(3584)) halfve... type embeddings (line 215) | CREATE INDEX ON embeddings USING hnsw ((embedding::halfvec(798)) halfvec... FILE: migrations/paradedb/01-migrate-to-paradedb.sql type chinese_documents (line 40) | CREATE TABLE chinese_documents ( type idx_documents_bm25 (line 48) | CREATE INDEX idx_documents_bm25 ON chinese_documents FILE: migrations/sqlite/000000_init.up.sql type tenants (line 3) | CREATE TABLE IF NOT EXISTS tenants ( type idx_tenants_api_key (line 24) | CREATE INDEX IF NOT EXISTS idx_tenants_api_key ON tenants(api_key) type idx_tenants_status (line 25) | CREATE INDEX IF NOT EXISTS idx_tenants_status ON tenants(status) type models (line 27) | CREATE TABLE IF NOT EXISTS models ( type idx_models_type (line 43) | CREATE INDEX IF NOT EXISTS idx_models_type ON models(type) type idx_models_source (line 44) | CREATE INDEX IF NOT EXISTS idx_models_source ON models(source) type idx_models_is_builtin (line 45) | CREATE INDEX IF NOT EXISTS idx_models_is_builtin ON models(is_builtin) type knowledge_bases (line 47) | CREATE TABLE IF NOT EXISTS knowledge_bases ( type idx_knowledge_bases_tenant_id (line 69) | CREATE INDEX IF NOT EXISTS idx_knowledge_bases_tenant_id ON knowledge_ba... type knowledges (line 71) | CREATE TABLE IF NOT EXISTS knowledges ( type idx_knowledges_tenant_id (line 99) | CREATE INDEX IF NOT EXISTS idx_knowledges_tenant_id ON knowledges(tenant... type idx_knowledges_base_id (line 100) | CREATE INDEX IF NOT EXISTS idx_knowledges_base_id ON knowledges(knowledg... type idx_knowledges_parse_status (line 101) | CREATE INDEX IF NOT EXISTS idx_knowledges_parse_status ON knowledges(par... type idx_knowledges_enable_status (line 102) | CREATE INDEX IF NOT EXISTS idx_knowledges_enable_status ON knowledges(en... type idx_knowledges_tag (line 103) | CREATE INDEX IF NOT EXISTS idx_knowledges_tag ON knowledges(tag_id) type idx_knowledges_summary_status (line 104) | CREATE INDEX IF NOT EXISTS idx_knowledges_summary_status ON knowledges(s... type sessions (line 106) | CREATE TABLE IF NOT EXISTS sessions ( type idx_sessions_tenant_id (line 132) | CREATE INDEX IF NOT EXISTS idx_sessions_tenant_id ON sessions(tenant_id) type idx_sessions_agent_id (line 133) | CREATE INDEX IF NOT EXISTS idx_sessions_agent_id ON sessions(agent_id) type messages (line 135) | CREATE TABLE IF NOT EXISTS messages ( type idx_messages_session_id (line 151) | CREATE INDEX IF NOT EXISTS idx_messages_session_id ON messages(session_id) type chunks (line 153) | CREATE TABLE IF NOT EXISTS chunks ( type idx_chunks_tenant_kg (line 181) | CREATE INDEX IF NOT EXISTS idx_chunks_tenant_kg ON chunks(tenant_id, kno... type idx_chunks_parent_id (line 182) | CREATE INDEX IF NOT EXISTS idx_chunks_parent_id ON chunks(parent_chunk_id) type idx_chunks_chunk_type (line 183) | CREATE INDEX IF NOT EXISTS idx_chunks_chunk_type ON chunks(chunk_type) type idx_chunks_tag (line 184) | CREATE INDEX IF NOT EXISTS idx_chunks_tag ON chunks(tag_id) type idx_chunks_content_hash (line 185) | CREATE INDEX IF NOT EXISTS idx_chunks_content_hash ON chunks(content_hash) type idx_chunks_seq_id (line 186) | CREATE UNIQUE INDEX IF NOT EXISTS idx_chunks_seq_id ON chunks(seq_id) type users (line 188) | CREATE TABLE IF NOT EXISTS users ( type idx_users_username (line 202) | CREATE INDEX IF NOT EXISTS idx_users_username ON users(username) type idx_users_email (line 203) | CREATE INDEX IF NOT EXISTS idx_users_email ON users(email) type idx_users_tenant_id (line 204) | CREATE INDEX IF NOT EXISTS idx_users_tenant_id ON users(tenant_id) type idx_users_deleted_at (line 205) | CREATE INDEX IF NOT EXISTS idx_users_deleted_at ON users(deleted_at) type auth_tokens (line 207) | CREATE TABLE IF NOT EXISTS auth_tokens ( type idx_auth_tokens_user_id (line 218) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_user_id ON auth_tokens(user_id) type idx_auth_tokens_token (line 219) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_token ON auth_tokens(token) type idx_auth_tokens_token_type (line 220) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_token_type ON auth_tokens(tok... type idx_auth_tokens_expires_at (line 221) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_expires_at ON auth_tokens(exp... type knowledge_tags (line 223) | CREATE TABLE IF NOT EXISTS knowledge_tags ( type idx_knowledge_tags_kb_name (line 236) | CREATE UNIQUE INDEX IF NOT EXISTS idx_knowledge_tags_kb_name ON knowledg... type idx_knowledge_tags_kb (line 237) | CREATE INDEX IF NOT EXISTS idx_knowledge_tags_kb ON knowledge_tags(tenan... type idx_knowledge_tags_seq_id (line 238) | CREATE UNIQUE INDEX IF NOT EXISTS idx_knowledge_tags_seq_id ON knowledge... type mcp_services (line 240) | CREATE TABLE IF NOT EXISTS mcp_services ( type idx_mcp_services_tenant_id (line 259) | CREATE INDEX IF NOT EXISTS idx_mcp_services_tenant_id ON mcp_services(te... type idx_mcp_services_enabled (line 260) | CREATE INDEX IF NOT EXISTS idx_mcp_services_enabled ON mcp_services(enab... type idx_mcp_services_is_builtin (line 261) | CREATE INDEX IF NOT EXISTS idx_mcp_services_is_builtin ON mcp_services(i... type idx_mcp_services_deleted_at (line 262) | CREATE INDEX IF NOT EXISTS idx_mcp_services_deleted_at ON mcp_services(d... type custom_agents (line 264) | CREATE TABLE IF NOT EXISTS custom_agents ( type idx_custom_agents_tenant_id (line 279) | CREATE INDEX IF NOT EXISTS idx_custom_agents_tenant_id ON custom_agents(... type idx_custom_agents_is_builtin (line 280) | CREATE INDEX IF NOT EXISTS idx_custom_agents_is_builtin ON custom_agents... type idx_custom_agents_deleted_at (line 281) | CREATE INDEX IF NOT EXISTS idx_custom_agents_deleted_at ON custom_agents... type organizations (line 283) | CREATE TABLE IF NOT EXISTS organizations ( type idx_organizations_owner_id (line 300) | CREATE INDEX IF NOT EXISTS idx_organizations_owner_id ON organizations(o... type idx_organizations_deleted_at (line 301) | CREATE INDEX IF NOT EXISTS idx_organizations_deleted_at ON organizations... type organization_members (line 303) | CREATE TABLE IF NOT EXISTS organization_members ( type idx_org_members_org_user (line 313) | CREATE UNIQUE INDEX IF NOT EXISTS idx_org_members_org_user ON organizati... type idx_org_members_user_id (line 314) | CREATE INDEX IF NOT EXISTS idx_org_members_user_id ON organization_membe... type idx_org_members_tenant_id (line 315) | CREATE INDEX IF NOT EXISTS idx_org_members_tenant_id ON organization_mem... type idx_org_members_role (line 316) | CREATE INDEX IF NOT EXISTS idx_org_members_role ON organization_members(... type kb_shares (line 318) | CREATE TABLE IF NOT EXISTS kb_shares ( type idx_kb_shares_kb_id (line 330) | CREATE INDEX IF NOT EXISTS idx_kb_shares_kb_id ON kb_shares(knowledge_ba... type idx_kb_shares_org_id (line 331) | CREATE INDEX IF NOT EXISTS idx_kb_shares_org_id ON kb_shares(organizatio... type idx_kb_shares_source_tenant (line 332) | CREATE INDEX IF NOT EXISTS idx_kb_shares_source_tenant ON kb_shares(sour... type idx_kb_shares_deleted_at (line 333) | CREATE INDEX IF NOT EXISTS idx_kb_shares_deleted_at ON kb_shares(deleted... type organization_join_requests (line 335) | CREATE TABLE IF NOT EXISTS organization_join_requests ( type idx_org_join_requests_org_id (line 352) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_org_id ON organization_... type idx_org_join_requests_user_id (line 353) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_user_id ON organization... type idx_org_join_requests_status (line 354) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_status ON organization_... type agent_shares (line 356) | CREATE TABLE IF NOT EXISTS agent_shares ( type idx_agent_shares_agent_id (line 369) | CREATE INDEX IF NOT EXISTS idx_agent_shares_agent_id ON agent_shares(age... type idx_agent_shares_org_id (line 370) | CREATE INDEX IF NOT EXISTS idx_agent_shares_org_id ON agent_shares(organ... type idx_agent_shares_source_tenant (line 371) | CREATE INDEX IF NOT EXISTS idx_agent_shares_source_tenant ON agent_share... type idx_agent_shares_deleted_at (line 372) | CREATE INDEX IF NOT EXISTS idx_agent_shares_deleted_at ON agent_shares(d... type tenant_disabled_shared_agents (line 374) | CREATE TABLE IF NOT EXISTS tenant_disabled_shared_agents ( type idx_tenant_disabled_shared_agents_tenant_id (line 382) | CREATE INDEX IF NOT EXISTS idx_tenant_disabled_shared_agents_tenant_id O... FILE: migrations/versioned/000000_init.up.sql type tenants (line 11) | CREATE TABLE IF NOT EXISTS tenants ( type idx_tenants_api_key (line 46) | CREATE INDEX IF NOT EXISTS idx_tenants_api_key ON tenants(api_key) type idx_tenants_status (line 47) | CREATE INDEX IF NOT EXISTS idx_tenants_status ON tenants(status) type models (line 51) | CREATE TABLE IF NOT EXISTS models ( type idx_models_type (line 67) | CREATE INDEX IF NOT EXISTS idx_models_type ON models(type) type idx_models_source (line 68) | CREATE INDEX IF NOT EXISTS idx_models_source ON models(source) type knowledge_bases (line 72) | CREATE TABLE IF NOT EXISTS knowledge_bases ( type idx_knowledge_bases_tenant_id (line 91) | CREATE INDEX IF NOT EXISTS idx_knowledge_bases_tenant_id ON knowledge_ba... type knowledges (line 95) | CREATE TABLE IF NOT EXISTS knowledges ( type idx_knowledges_tenant_id (line 121) | CREATE INDEX IF NOT EXISTS idx_knowledges_tenant_id ON knowledges(tenant... type idx_knowledges_base_id (line 122) | CREATE INDEX IF NOT EXISTS idx_knowledges_base_id ON knowledges(knowledg... type idx_knowledges_parse_status (line 123) | CREATE INDEX IF NOT EXISTS idx_knowledges_parse_status ON knowledges(par... type idx_knowledges_enable_status (line 124) | CREATE INDEX IF NOT EXISTS idx_knowledges_enable_status ON knowledges(en... type sessions (line 128) | CREATE TABLE IF NOT EXISTS sessions ( type idx_sessions_tenant_id (line 154) | CREATE INDEX IF NOT EXISTS idx_sessions_tenant_id ON sessions(tenant_id) type messages (line 159) | CREATE TABLE IF NOT EXISTS messages ( type idx_messages_session_id (line 174) | CREATE INDEX IF NOT EXISTS idx_messages_session_id ON messages(session_id) type chunks (line 178) | CREATE TABLE IF NOT EXISTS chunks ( type idx_chunks_tenant_kg (line 200) | CREATE INDEX IF NOT EXISTS idx_chunks_tenant_kg ON chunks(tenant_id, kno... type idx_chunks_parent_id (line 201) | CREATE INDEX IF NOT EXISTS idx_chunks_parent_id ON chunks(parent_chunk_id) type idx_chunks_chunk_type (line 202) | CREATE INDEX IF NOT EXISTS idx_chunks_chunk_type ON chunks(chunk_type) FILE: migrations/versioned/000001_agent.up.sql type users (line 11) | CREATE TABLE IF NOT EXISTS users ( type idx_users_username (line 47) | CREATE INDEX IF NOT EXISTS idx_users_username ON users(username) type idx_users_email (line 48) | CREATE INDEX IF NOT EXISTS idx_users_email ON users(email) type idx_users_tenant_id (line 49) | CREATE INDEX IF NOT EXISTS idx_users_tenant_id ON users(tenant_id) type idx_users_deleted_at (line 50) | CREATE INDEX IF NOT EXISTS idx_users_deleted_at ON users(deleted_at) type auth_tokens (line 66) | CREATE TABLE IF NOT EXISTS auth_tokens ( type idx_auth_tokens_user_id (line 86) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_user_id ON auth_tokens(user_id) type idx_auth_tokens_token (line 87) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_token ON auth_tokens(token) type idx_auth_tokens_token_type (line 88) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_token_type ON auth_tokens(tok... type idx_auth_tokens_expires_at (line 89) | CREATE INDEX IF NOT EXISTS idx_auth_tokens_expires_at ON auth_tokens(exp... type idx_knowledges_tag (line 196) | CREATE INDEX IF NOT EXISTS idx_knowledges_tag ON knowledges(tag_id) type idx_knowledges_summary_status (line 200) | CREATE INDEX IF NOT EXISTS idx_knowledges_summary_status ON knowledges(s... type idx_chunks_tag (line 213) | CREATE INDEX IF NOT EXISTS idx_chunks_tag ON chunks(tag_id) type idx_chunks_content_hash (line 220) | CREATE INDEX IF NOT EXISTS idx_chunks_content_hash ON chunks(content_hash) type idx_models_is_builtin (line 236) | CREATE INDEX IF NOT EXISTS idx_models_is_builtin ON models(is_builtin) type knowledge_tags (line 243) | CREATE TABLE IF NOT EXISTS knowledge_tags ( type idx_knowledge_tags_kb_name (line 255) | CREATE UNIQUE INDEX IF NOT EXISTS idx_knowledge_tags_kb_name ON knowledg... type idx_knowledge_tags_kb (line 256) | CREATE INDEX IF NOT EXISTS idx_knowledge_tags_kb ON knowledge_tags(tenan... type mcp_services (line 263) | CREATE TABLE IF NOT EXISTS mcp_services ( type idx_mcp_services_tenant_id (line 281) | CREATE INDEX IF NOT EXISTS idx_mcp_services_tenant_id ON mcp_services(te... type idx_mcp_services_enabled (line 282) | CREATE INDEX IF NOT EXISTS idx_mcp_services_enabled ON mcp_services(enab... type idx_mcp_services_deleted_at (line 283) | CREATE INDEX IF NOT EXISTS idx_mcp_services_deleted_at ON mcp_services(d... function update_mcp_services_updated_at (line 288) | CREATE OR REPLACE FUNCTION update_mcp_services_updated_at() FILE: migrations/versioned/000002_embeddings.up.sql type embeddings (line 23) | CREATE TABLE IF NOT EXISTS embeddings ( type embeddings_unique_source (line 38) | CREATE UNIQUE INDEX IF NOT EXISTS embeddings_unique_source ON embeddings... FILE: migrations/versioned/000006_custom_agents.up.sql type custom_agents (line 8) | CREATE TABLE IF NOT EXISTS custom_agents ( type idx_custom_agents_tenant_id (line 24) | CREATE INDEX IF NOT EXISTS idx_custom_agents_tenant_id ON custom_agents(... type idx_custom_agents_is_builtin (line 25) | CREATE INDEX IF NOT EXISTS idx_custom_agents_is_builtin ON custom_agents... type idx_custom_agents_deleted_at (line 26) | CREATE INDEX IF NOT EXISTS idx_custom_agents_deleted_at ON custom_agents... type idx_sessions_agent_id (line 31) | CREATE INDEX IF NOT EXISTS idx_sessions_agent_id ON sessions(agent_id) function unify_prompt_placeholder (line 34) | CREATE OR REPLACE FUNCTION unify_prompt_placeholder(input TEXT) RETURNS ... FILE: migrations/versioned/000007_embeddings_tag_id.up.sql type idx_embeddings_tag_id (line 12) | CREATE INDEX IF NOT EXISTS idx_embeddings_tag_id ON embeddings(tag_id) FILE: migrations/versioned/000010_add_seq_id.up.sql type idx_chunks_seq_id (line 26) | CREATE UNIQUE INDEX IF NOT EXISTS idx_chunks_seq_id ON chunks(seq_id) type idx_knowledge_tags_seq_id (line 50) | CREATE UNIQUE INDEX IF NOT EXISTS idx_knowledge_tags_seq_id ON knowledge... FILE: migrations/versioned/000012_organizations.up.sql type organizations (line 6) | CREATE TABLE IF NOT EXISTS organizations ( type idx_organizations_invite_code (line 23) | CREATE UNIQUE INDEX IF NOT EXISTS idx_organizations_invite_code ON organ... type idx_organizations_owner_id (line 24) | CREATE INDEX IF NOT EXISTS idx_organizations_owner_id ON organizations(o... type idx_organizations_deleted_at (line 25) | CREATE INDEX IF NOT EXISTS idx_organizations_deleted_at ON organizations... type organization_members (line 37) | CREATE TABLE IF NOT EXISTS organization_members ( type idx_org_members_org_user (line 47) | CREATE UNIQUE INDEX IF NOT EXISTS idx_org_members_org_user ON organizati... type idx_org_members_user_id (line 48) | CREATE INDEX IF NOT EXISTS idx_org_members_user_id ON organization_membe... type idx_org_members_tenant_id (line 49) | CREATE INDEX IF NOT EXISTS idx_org_members_tenant_id ON organization_mem... type idx_org_members_role (line 50) | CREATE INDEX IF NOT EXISTS idx_org_members_role ON organization_members(... type kb_shares (line 57) | CREATE TABLE IF NOT EXISTS kb_shares ( type idx_kb_shares_kb_org (line 69) | CREATE UNIQUE INDEX IF NOT EXISTS idx_kb_shares_kb_org ON kb_shares(know... type idx_kb_shares_kb_id (line 70) | CREATE INDEX IF NOT EXISTS idx_kb_shares_kb_id ON kb_shares(knowledge_ba... type idx_kb_shares_org_id (line 71) | CREATE INDEX IF NOT EXISTS idx_kb_shares_org_id ON kb_shares(organizatio... type idx_kb_shares_source_tenant (line 72) | CREATE INDEX IF NOT EXISTS idx_kb_shares_source_tenant ON kb_shares(sour... type idx_kb_shares_deleted_at (line 73) | CREATE INDEX IF NOT EXISTS idx_kb_shares_deleted_at ON kb_shares(deleted... type organization_join_requests (line 80) | CREATE TABLE IF NOT EXISTS organization_join_requests ( type idx_org_join_requests_org_user_pending (line 97) | CREATE UNIQUE INDEX IF NOT EXISTS idx_org_join_requests_org_user_pending... type idx_org_join_requests_org_id (line 98) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_org_id ON organization_... type idx_org_join_requests_user_id (line 99) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_user_id ON organization... type idx_org_join_requests_status (line 100) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_status ON organization_... type idx_org_join_requests_type (line 101) | CREATE INDEX IF NOT EXISTS idx_org_join_requests_type ON organization_jo... type agent_shares (line 112) | CREATE TABLE IF NOT EXISTS agent_shares ( type idx_agent_shares_agent_org (line 125) | CREATE UNIQUE INDEX IF NOT EXISTS idx_agent_shares_agent_org ON agent_sh... type idx_agent_shares_agent_id (line 126) | CREATE INDEX IF NOT EXISTS idx_agent_shares_agent_id ON agent_shares(age... type idx_agent_shares_org_id (line 127) | CREATE INDEX IF NOT EXISTS idx_agent_shares_org_id ON agent_shares(organ... type idx_agent_shares_source_tenant (line 128) | CREATE INDEX IF NOT EXISTS idx_agent_shares_source_tenant ON agent_share... type idx_agent_shares_deleted_at (line 129) | CREATE INDEX IF NOT EXISTS idx_agent_shares_deleted_at ON agent_shares(d... type tenant_disabled_shared_agents (line 137) | CREATE TABLE IF NOT EXISTS tenant_disabled_shared_agents ( type idx_tenant_disabled_shared_agents_tenant_id (line 144) | CREATE INDEX IF NOT EXISTS idx_tenant_disabled_shared_agents_tenant_id O... FILE: migrations/versioned/000017_mcp_builtin.up.sql type idx_mcp_services_is_builtin (line 9) | CREATE INDEX IF NOT EXISTS idx_mcp_services_is_builtin ON mcp_services(i... FILE: migrations/versioned/000020_add_message_knowledge_id.up.sql type idx_messages_knowledge_id (line 3) | CREATE INDEX IF NOT EXISTS idx_messages_knowledge_id ON messages(knowled... FILE: migrations/versioned/000021_im_channel.up.sql type im_channel_sessions (line 5) | CREATE TABLE IF NOT EXISTS im_channel_sessions ( type idx_channel_lookup (line 21) | CREATE UNIQUE INDEX IF NOT EXISTS idx_channel_lookup type idx_im_channel_tenant (line 26) | CREATE INDEX IF NOT EXISTS idx_im_channel_tenant ON im_channel_sessions ... type idx_im_channel_session (line 29) | CREATE INDEX IF NOT EXISTS idx_im_channel_session ON im_channel_sessions... type idx_im_channel_deleted (line 32) | CREATE INDEX IF NOT EXISTS idx_im_channel_deleted ON im_channel_sessions... type im_channels (line 46) | CREATE TABLE IF NOT EXISTS im_channels ( type idx_im_channels_tenant (line 61) | CREATE INDEX IF NOT EXISTS idx_im_channels_tenant ON im_channels (tenant... type idx_im_channels_agent (line 62) | CREATE INDEX IF NOT EXISTS idx_im_channels_agent ON im_channels (agent_id) type idx_im_channels_deleted (line 63) | CREATE INDEX IF NOT EXISTS idx_im_channels_deleted ON im_channels (delet... type idx_im_channel_sessions_channel (line 75) | CREATE INDEX IF NOT EXISTS idx_im_channel_sessions_channel ON im_channel... FILE: migrations/versioned/000024_im_channel_bot_identity.up.sql type idx_im_channels_bot_identity (line 11) | CREATE UNIQUE INDEX IF NOT EXISTS idx_im_channels_bot_identity FILE: rerank_server_demo.py class RerankRequest (line 16) | class RerankRequest(BaseModel): class DocumentInfo (line 23) | class DocumentInfo(BaseModel): class TestRankResult (line 28) | class TestRankResult(BaseModel): class TestFinalResponse (line 34) | class TestFinalResponse(BaseModel): function rerank_endpoint (line 67) | def rerank_endpoint(request: RerankRequest): function read_root (line 116) | def read_root(): FILE: skills/preloaded/data-processor/scripts/analyze.py function analyze_numeric (line 27) | def analyze_numeric(data: list) -> dict: function analyze_text (line 65) | def analyze_text(data: list) -> dict: function analyze_mixed (line 97) | def analyze_mixed(data: list) -> dict: function analyze_dict_list (line 122) | def analyze_dict_list(data: list) -> dict: function main (line 166) | def main(): FILE: skills/preloaded/data-processor/scripts/extract_info.py function extract_numbers (line 27) | def extract_numbers(text: str) -> list: function extract_dates (line 45) | def extract_dates(text: str) -> list: function extract_percentages (line 62) | def extract_percentages(text: str) -> list: function extract_amounts (line 68) | def extract_amounts(text: str) -> list: function extract_emails (line 84) | def extract_emails(text: str) -> list: function extract_urls (line 90) | def extract_urls(text: str) -> list: function extract_phones (line 96) | def extract_phones(text: str) -> list: function extract_keywords (line 112) | def extract_keywords(text: str, min_len: int = 2) -> list: function main (line 135) | def main(): FILE: skills/preloaded/data-processor/scripts/format_converter.py function json_to_csv (line 23) | def json_to_csv(data: list) -> str: function csv_to_json (line 46) | def csv_to_json(csv_text: str) -> list: function json_to_markdown (line 52) | def json_to_markdown(data: list) -> str: function markdown_to_json (line 86) | def markdown_to_json(md_text: str) -> list: function detect_format (line 118) | def detect_format(text: str) -> str: function main (line 132) | def main():