Releases: Tencent/WeKnora
v0.2.10
What's Changed
- fix(doc_parser): Add secure command execution with sandbox by @begoniezhao in #531
- Feat/multi model provider2 by @voidkey in #532
- feat(knowledge): Omit DeletedAt on update operations by @begoniezhao in #533
- [Security] Fix CRITICAL vulnerability: V-001 by @orbisai0security in #529
- refactor: Refactor retriever engine checks and expose mapping by @begoniezhao in #536
- docs: Rewrite Q&A and add MinIO and docreader diagnostics by @begoniezhao in #539
- feat: add google provider for web search by @chengjoey in #538
- refactor: Improve error handling and remove unused code by @begoniezhao in #545
- refactor: Improve chunk merge/split logic and add validation by @begoniezhao in #546
- feat(knowledge): This PR implements the knowledge categorization feature, allowing users to automatically categorize knowledge entries into the selected category when uploading or creating knowledge. by @brianxiadong in #547
- feat: Make OCR and task concurrency configurable by @begoniezhao in #550
- feat(knowledge): Enhance delete functionality with success callback by @brianxiadong in #551
- fix: concurrent map writes due to dig.Container is not thread safe by @chengjoey in #552
- FAQ Update by @lyingbug in #555
- chore: update version to 0.2.10 by @lyingbug in #557
New Contributors
- @orbisai0security made their first contribution in #529
- @chengjoey made their first contribution in #538
- @brianxiadong made their first contribution in #547
Full Changelog: v0.2.9...v0.2.10
v0.2.9
What's Changed
- chore: update comments and documentation for SequentialThinkingTool by @begoniezhao in #519
- feat: 改进未分类标签的处理逻辑 by @lyingbug in #520
- refactor: 统一标签列表渲染逻辑,移除重复的未分类标签处理代码 by @lyingbug in #522
- feat: add download_spatial target and DuckDB spatial extension handling by @begoniezhao in #523
- Replace模式清理未使用标签 by @lyingbug in #524
- feat: 支持复制知识库时指定任务ID by @lyingbug in #525
Full Changelog: v0.2.8...v0.2.9
v0.2.8
[0.2.8] - 2025-12-31
🚀 New Features
- NEW: Data Analyst Agent & Tools
- Added built-in Data Analyst agent
- Added DataSchema tool for retrieving schema from CSV/Excel files
- Support for agent file type restrictions
- NEW: Thinking Mode Support
- Added configuration support for Thinking mode
- Added Thinking field to Summary configuration
- NEW: Enhanced File & Storage Management
- Support listing MinIO buckets and permissions
- Configurable file upload size limits
- Full-text merge view mode
- NEW: Conversation Enhancements
- Added option to disable automatic title generation
- Enhanced KnowledgeQAStream parameters
- Support for streaming response types and tool calls
- NEW: System & Configuration
- Added
WEKNORA_VERSIONenvironment variable support - APK mirror configuration support in Docker
- Enhanced chunking separator options
- FAQ two-level priority tag filtering
- Update index fields when batch updating tags
- Added
⚡ Improvements
- IMPROVED: Agent & Model Handling
- Unified agent not ready message logic
- Optimized built-in agent configuration synchronization
- Removed model locking logic to allow free switching
- Enhanced model selection and error handling
- IMPROVED: Refactoring
- Simplified session creation request structure
- Converted knowledgeRefs to References type
- Refactored SSE stream setup
- Refactored bucket policy parsing logic
- Streamlined Docker package installation
🐛 Bug Fixes
- FIXED: Localization placeholder display issues
- FIXED: Duplicate tag creation and stream response parsing
- FIXED: Missing WebSearchStateService in parallel search
- FIXED: Model list refresh on settings popup close
- FIXED: Asynq Redis DB configuration
- FIXED: Menu deletion logic and count updates
- FIXED: OpenAI API compatibility (exclude ChatTemplateKwargs)
- FIXED: Handled Nginx 413 (Payload Too Large) requests
- FIXED: Added existence check for embeddings table in tag_id migration
Full Changelog: v0.2.7...v0.2.8
v0.2.7
What's Changed
- fix(chat): exclude ChatTemplateKwargs for OpenAI API by @ysys143 in #496
- feat: Add DataAnalysis tool for analysis information from CSV and Excel files by @begoniezhao in #494
- fix(docker): streamline package installation in Dockerfile by removing upgrade step by @begoniezhao in #498
- fix(docker): remove default value for APK_MIRROR_ARG in Dockerfile by @begoniezhao in #499
- feat: 添加可配置的文件上传大小限制 by @lyingbug in #502
- feat: enhance chunking separator options by @begoniezhao in #505
- [Bug]: 小米模型厂商域名配置错误 #504 by @hylaz in #506
- 支持FAQ两级优先级标签过滤 by @lyingbug in #503
New Contributors
Full Changelog: v0.2.6...v0.2.7
v0.2.6
[0.2.6] - 2025-12-29
🚀 New Features
-
NEW: Custom Agent System
- Support for creating, configuring, and selecting custom agents
- Agent feature indicators display with MCP service capability support
- Built-in agent sorting logic ensuring multi-turn conversation auto-enabled in agent mode
- Agent knowledge base selection modes: all/specified/disabled
-
NEW: Helm Chart for Kubernetes Deployment
- Complete Helm chart for Kubernetes deployment
- Neo4j template support for GraphRAG functionality
- Versioned image tags and official images compatibility
-
NEW: Enhanced FAQ Management
- FAQ entry retrieval API supporting single entry query by ID
- FAQ list sorting by update time (ascending/descending)
- Enhanced FAQ search with field-specific search (standard question/similar questions/answer/all)
- Batch update exclusion for FAQ entries in ByTag operations
- Tag deletion with content_only mode to delete only tag contents
-
NEW: Multi-Platform Model Adaptation
- Support for multiple platform model configurations
- Title generation model configuration
- Knowledge base selection mode without mandatory rerank model check
-
NEW: Korean Language Support
- Added Korean (한국어) internationalization support
⚡ Improvements
-
IMPROVED: Knowledge Base Operations
- Async knowledge base deletion with background cleanup via ProcessKBDelete
- Multi-knowledge base search support with specified file ID filtering
- Optimized knowledge chunk pagination with type-specific search and sorting logic
- Enhanced SearchKnowledgeRequest structure with backward compatibility
-
IMPROVED: Prompt Template System
- Restructured prompt template system with multi-scenario template configuration
- Unified system prompts with optimized agent selector interface
-
IMPROVED: Tag Management
- Enhanced tag deletion with ID exclusion support
- Async index deletion task for optimized deletion flow
- Batch TagID update functionality
- Optimized tag name batch queries for improved efficiency
-
IMPROVED: API Documentation
- Updated API documentation links to new paths
- Added knowledge search API documentation
- Enhanced FAQ and tag deletion interface documentation
- Removed hardcoded host configuration from Swagger docs
🐛 Bug Fixes
- FIXED: Tag ID handling logic for empty strings and UntaggedTagID conditions
- FIXED: JSON query compatibility for different database types (MySQL/PostgreSQL)
- FIXED: GORM batch insert issue where zero-value fields (IsEnabled, Flags) were ignored
- FIXED: Helm chart versioned image tags and runAsNonRoot compatibility
🔧 Refactoring
- REFACTORED: Removed security validation and length limits, simplified input processing logic
- REFACTORED: Enhanced agent configuration with improved selection and state management
v0.2.5
[0.2.5] - 2025-12-22
🚀 New Features
-
NEW: In-Input Knowledge Base and File Selection
- Support selecting knowledge bases and files directly within the input box
- Display @mentioned knowledge bases and files in message stream
- Dynamic placeholder text based on knowledge base and web search status
-
NEW: API Key Authentication Support
- Added API Key authentication mechanism
- Optimized Swagger documentation security configuration
- Disabled Swagger documentation access in non-production environments by default
-
NEW: User Registration Control
- Added
DISABLE_REGISTRATIONenvironment variable to control user registration
- Added
-
NEW: User Conversation Model Selection
- Added user conversation model selection state management with store two-way binding
🔒 Security Enhancements
- ENHANCED: MCP stdio transport security validation to prevent command injection attacks
- ENHANCED: SQL security validation rebuilt using PostgreSQL official parser for enhanced query protection
- ENHANCED: Security policy updated with vulnerability reporting guidelines
⚡ Improvements
- IMPROVED: Streaming rendering mechanism optimized for token-by-token Markdown content parsing
- IMPROVED: FAQ import progress refactored to use Redis for task state storage
- IMPROVED: Enhanced knowledge base and search functionality logic
🐛 Bug Fixes
- FIXED: Corrected knowledge ID retrieval in FAQ import tasks
- FIXED: Force removal of legacy vlm_model_id field from knowledge_bases table
- FIXED: Disabled Ollama option for ReRank models in model management with tooltip
v0.2.4
[0.2.4] - 2025-12-17
🚀 New Features
-
NEW: FAQ Entry Export
- Support CSV format export for FAQ entries
-
NEW: Asynchronous Knowledge Base Cloning
- Progress tracking and incremental sync support
- Automatic tenant context injection during cloning
- Enhanced SourceID conversion logic and tag mapping for generated questions
-
NEW: FAQ Index Type Separation
- Added
is_enabledfield filtering - Batch update optimization
- Added
-
NEW: Enhanced Swagger API Documentation Generation
🐛 Bug Fixes
- FIXED: Optimized tag mapping logic and FAQ cloning functionality during knowledge base copying
- FIXED: Adjusted Knowledge struct Metadata field type to
json.RawMessage - FIXED: Migration compatibility issues from older versions
v0.2.3
v0.2.2
[0.2.2] - 2025-12-15
🚀 New Features
-
NEW: FAQ Answer Strategy Configuration
- Added answer strategy field for FAQ entries, supporting
all(return all answers) andrandom(randomly return one answer) modes - More flexible FAQ response control
- Added answer strategy field for FAQ entries, supporting
-
NEW: FAQ Recommendation Feature
- Added recommendation field for FAQ entries to mark recommended Q&A
- Support batch update of FAQ recommendation status by tag
- Optimized tag deletion logic
-
NEW: Document Summary Status Tracking
- Added
SummaryStatusfield to Knowledge struct - Support tracking document summary generation status
- Added
⚡ Infrastructure Improvements
-
IMPROVED: Docker Build Optimization
- Fixed system package conflicts during pip dependency installation with
--break-system-packagesparameter - Adjusted uvx permission configuration
- Upgraded Node version
- Fixed system package conflicts during pip dependency installation with
-
IMPROVED: Database Initialization
- Optimized database initialization logic with conditional embeddings handling
🐛 Bug Fixes
- FIXED: Corrected
MINIO_USE_SSLenvironment variable parsing logic
v0.2.1
[0.2.1] - 2025-12-08
🚀 New Features
- NEW: Qdrant Vector Database Support
- Full integration with Qdrant as retriever engine
- Support for both vector similarity search and full-text keyword search
- Dynamic collection creation based on embedding dimensions (e.g.,
weknora_embeddings_768) - Professional Chinese word segmentation using jieba for keyword queries
⚡ Infrastructure Improvements
- IMPROVED: Docker Compose Profile Management
- Added profiles for optional services:
minio,qdrant,neo4j,jaeger,full - Enhanced
dev.shscript with--minio,--qdrant,--neo4j,--jaeger,--fullflags - Pinned Qdrant Docker image version to
v1.16.2for stability
- Added profiles for optional services:
- IMPROVED: Database Migration System
- Added automatic dirty state recovery for failed migrations
- Added Neo4j connection retry mechanism with exponential backoff
- Improved migration error handling and logging
- IMPROVED: Retriever Engine Configuration
- Retriever engines now auto-configured from
RETRIEVE_DRIVERenvironment variable - No longer required to write retriever config during user registration
- Added
GetEffectiveEngines()method for dynamic engine resolution - Centralized engine mapping in
types/tenant.go
- Retriever engines now auto-configured from
🐛 Bug Fixes
- FIXED: Qdrant keyword search returning empty results for Chinese queries
- FIXED: Image URL validation logic simplified for better compatibility