266b9a5943
- Updated agentChat API to accept optional knowledge_base_ids and agent_enabled parameters. - Introduced getSession API to retrieve session details. - Modified useStream to validate knowledge_base_ids for agent-chat requests and prepare POST body accordingly. - Enhanced createKnowledgeBase API to include additional configuration options. - Refactored chat routing to remove knowledge base ID from the chat path, allowing for dynamic knowledge base selection. - Improved session management by preventing duplicate session entries in the menu store. - Updated UI components for better session handling and display. - Added context management for agent conversations to improve state persistence across sessions.
21 lines
600 B
Go
21 lines
600 B
Go
package llmcontext
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/Tencent/WeKnora/internal/models/chat"
|
|
)
|
|
|
|
// ContextStorage defines the interface for storing and retrieving conversation context
|
|
// This separates storage implementation from business logic
|
|
type ContextStorage interface {
|
|
// Save saves messages for a session
|
|
Save(ctx context.Context, sessionID string, messages []chat.Message) error
|
|
|
|
// Load loads messages for a session
|
|
Load(ctx context.Context, sessionID string) ([]chat.Message, error)
|
|
|
|
// Delete deletes all messages for a session
|
|
Delete(ctx context.Context, sessionID string) error
|
|
}
|