feat(release): update to version 0.6.2 with new features and improvements

This commit is contained in:
wizardchen
2026-06-10 15:13:57 +08:00
committed by lyingbug
parent aeb02b0345
commit c204f7824f
15 changed files with 263 additions and 30 deletions
+49
View File
@@ -2,6 +2,55 @@
All notable changes to this project will be documented in this file.
## [0.6.2] - 2026-06-10
### New Features
- **NEW**: **Per-Upload Process Configuration & Upload Confirm Dialog** — the headline of this release. Every file / URL / folder upload can now carry a `process_config` (`KnowledgeProcessOverrides`) that overrides KB defaults for that batch only: parser engine rules, chunking, multimodal (VLM / ASR), question generation, graph extraction, and related flags. The Web UI adds an upload-confirm step so operators can review and tweak settings before enqueueing; the Go client and `weknora doc upload` accept the same JSON payload.
- **NEW**: **Document Reparse with Process Config** — `POST /knowledge/:id/reparse` accepts an optional `process_config` body to re-run parsing with new settings while preserving the knowledge record; overrides are persisted on the knowledge metadata and merged with KB defaults via `ResolveProcessConfig`.
- **NEW**: **`weknora` CLI v0.9** (BREAKING) — auth/profile model harmonization, resource-command cleanup, and bundled Agent Skills:
- **Bundled skills**: `weknora-rag-search` and `weknora-shared` skills ship in-tree with drift-guard parity tests.
- **`session stop`**: abort an in-flight agent run from the terminal.
- **`--kb` resolver**: accepts KB name or id on `doc delete --all` and `search chunks` / `search docs` (required; no silent project-link fallback).
- **Auth/profile**: `auth login` authenticates the active profile (use `profile add --use` first); `auth logout` / `auth refresh` drop `--name` — target another profile with global `--profile`.
- **MCP rename**: `agent_invoke` → `session_ask`; `agent create --kb` → `--attach-kb`.
- **NEW**: **Knowledge-base marquee selection** — drag-to-select multiple documents in the KB list for batch operations.
- **NEW**: **HNSW index for 1024-dim embeddings** — migration `000059_embeddings_hnsw_1024` adds an HNSW index tuned for `bge-m3`-class 1024-dimensional vectors on PostgreSQL pgvector.
- **NEW**: **Frontend build commit ID** — Vite injects the git commit hash into the UI for version tracking (Settings → System Info).
### Improvements
- **IMPROVED**: **Chat resources store** — centralized Pinia store for KB / agent selection across chat, editor, and command palette; hardened cache invalidation and deduplication when switching tenants or reloading lists.
- **IMPROVED**: **Dark-mode code preview** — syntax highlighting in document / manual-knowledge code blocks respects the active theme.
- **IMPROVED**: **Agent `get_document_info` tool** — schema and input parameters refined for clearer LLM tool calls.
- **IMPROVED**: **Chat provider** — provider-native tool-call metadata preserved end-to-end in streaming responses.
- **IMPROVED**: **Process config model** — removed standalone `enable_multimodal` KB flag in favor of unified `process_config`; parent-child chunking settings aligned; `graph_enabled` correctly gated on extract config.
- **IMPROVED**: **Tracing** — Jaeger integration removed; Langfuse remains the sole observability backend (simpler startup, fewer env knobs).
- **IMPROVED**: **Model sanitization** — chat model name and path validation hardened against malformed provider configs.
### Bug Fixes
- **FIXED**: Langfuse initialization failure on certain startup orderings.
- **FIXED**: Share-link endpoints allow anonymous read access again (#1617).
- **FIXED**: Wiki document status not refreshing after polling completes.
- **FIXED**: KB list deduplication — multiple knowledge bases no longer render as an empty list.
- **FIXED**: Custom jieba user-dictionary directory respected when configured.
- **FIXED**: DuckDB spatial extension no longer attempts network install during startup.
- **FIXED**: Document scroll container layout during loading state.
- **FIXED**: `graph_enabled` logic in process configuration merge path.
### Infrastructure & Build
- **BUILD**: Migration `000059_embeddings_hnsw_1024`.
- **BUILD**: Frontend `chatResources` / `uploadConfirm` / `editorResources` stores; `useMarqueeSelect` composable.
- **BUILD**: CLI v0.9 contract tests, skill parity guards, and `session stop` command.
### Documentation
- **DOC**: `docs/api/knowledge.md` documents `process_config` on upload and reparse.
- **DOC**: `docs/QA.md` extended for upload process config and CLI v0.9 breaking changes.
- **DOC**: Architecture diagram updated for per-upload config, bundled CLI skills, and HNSW.
## [0.6.1] - 2026-06-05
### New Features
+8 -3
View File
@@ -28,7 +28,7 @@
<img src="https://img.shields.io/badge/License-MIT-ffffff?labelColor=d4eaf7&color=2e6cc4" alt="License">
</a>
<a href="./CHANGELOG.md">
<img alt="Version" src="https://img.shields.io/badge/version-0.6.1-2e6cc4?labelColor=d4eaf7">
<img alt="Version" src="https://img.shields.io/badge/version-0.6.2-2e6cc4?labelColor=d4eaf7">
</a>
</p>
@@ -57,6 +57,7 @@ The framework supports auto-syncing knowledge from Feishu, Notion, and Yuque (mo
## ✨ Latest Updates
- **v0.6.2** — Per-upload process configuration with upload-confirm dialog; document reparse with `process_config`; `weknora` CLI v0.9 (bundled Agent Skills, `session stop`, auth/profile harmonization); KB marquee multi-select; HNSW index for 1024-dim pgvector embeddings; chat resources store refactor; Langfuse-only tracing (Jaeger removed). See [`CHANGELOG.md`](./CHANGELOG.md).
- **v0.6.1** — Document parsing trace timeline (Langfuse-style span tree with stage-by-stage progress + stop-parse); OpenSearch vector store driver; declarative built-in models via YAML; system admin & consolidated platform settings + audit log; new-user onboarding guide; settings UI redesign; `weknora` CLI v0.7 / v0.8 (agent-first wire contract, NDJSON, `--dry-run`); OpenDataLoader + PaddleOCR-VL parsers; MCP server multi-transport (stdio / SSE / HTTP); per-model thinking-mode config; Tencent LKEAP rerank + native Gemini embeddings + MiniMax-M3. See [`CHANGELOG.md`](./CHANGELOG.md).
- **v0.6.0** — Tenant RBAC (4-tier role matrix `Owner` / `Admin` / `Contributor` / `Viewer` + per-KB ownership + per-tenant audit log), tenant member management & multi-workspace UX, self-service workspaces; `weknora` CLI v0.4 GA with `mcp serve`; KB retrieval fan-out across vector stores; AES-256-GCM credential encryption + docreader gRPC TLS + Token; Zhipu embedder + Huawei OBS; server-side user preferences; Go 1.26.0. See [`docs/RBAC说明.md`](./docs/RBAC说明.md) and [`CHANGELOG.md`](./CHANGELOG.md).
- **v0.5.2** — Wiki ingest scales to 40k-document KBs (task queue + DLQ); MCP human-in-the-loop tool approval; Anthropic / Apache Doris / Tencent VectorDB / KS3 / SearXNG backends; adaptive 3-tier chunking with live preview; global ⌘K command palette; Yuque connector + WeChat Mini Program; `weknora` CLI preview.
@@ -115,9 +116,11 @@ Fully modular pipeline from document parsing, vectorization, and retrieval to LL
| Capability | Details |
|------------|---------|
| Knowledge Base Types | FAQ / Document / Wiki with folder import, URL import, tag management, and online entry |
| Per-Upload Process Config | Override parser, chunking, multimodal (VLM / ASR), graph extraction, and question generation per upload batch via upload-confirm dialog or `process_config` API; reparse with new settings |
| Data Source Import | Auto-sync from Feishu / Notion / Yuque (more data sources coming soon); incremental and full sync |
| Document Formats | PDF / Word / Txt / Markdown / HTML / Images / CSV / Excel / PPT / JSON |
| Retrieval Strategies | BM25 sparse / Dense retrieval / GraphRAG / parent-child chunking / multi-dimensional indexing |
| Retrieval Strategies | BM25 sparse / Dense retrieval / GraphRAG / parent-child chunking / HNSW-accelerated pgvector (1024-dim) / multi-dimensional indexing |
| Batch Selection | Marquee drag-select multiple documents in the KB list for batch operations |
| E2E Testing | Full-pipeline visualization with recall hit rate, BLEU / ROUGE metric evaluation |
**Integrations & Extensions**
@@ -139,7 +142,7 @@ Fully modular pipeline from document parsing, vectorization, and retrieval to LL
| UI | Web UI / RESTful API / CLI (`weknora`) / Chrome Extension / WeChat Mini Program |
| Access Control | Tenant RBAC with 4-tier role matrix (Owner / Admin / Contributor / Viewer), per-KB resource ownership, per-tenant audit log, invite-only workspaces, self-service tenant creation, cross-tenant superuser |
| Security | AES-256-GCM at-rest encryption for API keys and MCP / data-source credentials with graceful key rotation; gRPC TLS + Token between app and docreader; SSRF-safe HTTP client; sandbox isolation for agent skills |
| Observability | Integrated Langfuse for ReAct loops, token tracking, tool calls, and pipeline tracing; built-in Langfuse-style document parsing trace timeline with stage-by-stage progress |
| Observability | Integrated Langfuse (sole tracing backend) for ReAct loops, token tracking, tool calls, and pipeline tracing; built-in Langfuse-style document parsing trace timeline with stage-by-stage progress |
| Task Management | MQ async tasks, automatic database migration on version upgrade |
| Model Management | Centralized config, declarative built-in models via YAML, per-knowledge-base model selection, per-model thinking-mode config, multi-tenant built-in model sharing, WeKnora Cloud hosted models and parsing |
@@ -166,6 +169,8 @@ The [WeKnora Mini Program](./miniprogram/README.md) provides a lightweight mobil
`weknora` is the official CLI for driving the API from a terminal or AI agent.
The command surface mirrors `gh` CLI's `<noun> <verb>` convention; output is
human-readable by default and switches to a stable JSON envelope with `--json`.
v0.9 ships bundled Agent Skills (`weknora-rag-search`, `weknora-shared`), adds
`session stop`, and harmonizes auth/profile workflows (see [`cli/CHANGELOG.md`](./cli/CHANGELOG.md)).
```bash
weknora auth login --host https://kb.example.com
+6 -3
View File
@@ -28,7 +28,7 @@
<img src="https://img.shields.io/badge/License-MIT-ffffff?labelColor=d4eaf7&color=2e6cc4" alt="License">
</a>
<a href="./CHANGELOG.md">
<img alt="版本" src="https://img.shields.io/badge/version-0.6.1-2e6cc4?labelColor=d4eaf7">
<img alt="版本" src="https://img.shields.io/badge/version-0.6.2-2e6cc4?labelColor=d4eaf7">
</a>
</p>
@@ -56,6 +56,7 @@
## ✨ 最新更新
- **v0.6.2** —— 按批次解析配置(`process_config`)+ 上传确认对话框;文档重新解析(reparse)支持覆盖配置;`weknora` CLI v0.9(内置 Agent Skills、`session stop`、auth/profile 统一);知识库框选多选;pgvector 1024 维 HNSW 索引;对话资源 Store 重构;仅保留 Langfuse 追踪(移除 Jaeger)。详见 [`CHANGELOG.md`](./CHANGELOG.md)。
- **v0.6.1** —— 文档解析追踪时间线(Langfuse 风格 Span 树,逐阶段进度展示 + 解析中止);OpenSearch 向量库驱动;YAML 声明式内置模型配置;系统管理员与统一平台设置 + 审计日志;新用户引导;设置页 UI 重构;`weknora` CLI v0.7 / v0.8(Agent 优先线协议、NDJSON、`--dry-run`);OpenDataLoader 与 PaddleOCR-VL 解析引擎;MCP Server 多传输(stdio / SSE / HTTP);按模型的思考模式配置;腾讯云 LKEAP 重排 + 原生 Gemini Embedding + MiniMax-M3。详见 [`CHANGELOG.md`](./CHANGELOG.md)。
- **v0.6.0** —— 租户 RBAC(四级角色矩阵 `Owner` / `Admin` / `Contributor` / `Viewer` + 按 KB 归属 + 每租户审计日志)、租户成员管理与多工作区 UX、自助创建工作区;`weknora` CLI v0.4 正式版 + `mcp serve`;KB 检索跨向量库扇出;MCP / 数据源凭据 AES-256-GCM 加密 + docreader gRPC TLS + Token;新增智谱 Embedding 与华为云 OBS;服务端用户偏好;Go 1.26.0。详见 [`docs/RBAC说明.md`](./docs/RBAC说明.md) 与 [`CHANGELOG.md`](./CHANGELOG.md)。
- **v0.5.2** —— Wiki 入库支撑万级文档知识库(任务队列 + 死信队列);MCP 工具人机审批;Anthropic / Apache Doris / 腾讯云 VectorDB / 金山云 KS3 / SearXNG 后端;自适应三层分块 + 实时调试面板;全局 ⌘K 命令面板;语雀连接器 + 微信小程序;`weknora` CLI 早期版本。
@@ -114,9 +115,11 @@
| 能力 | 详情 |
|------|------|
| 知识库类型 | FAQ / 文档 / Wiki,支持文件夹导入、URL 导入、标签管理、在线录入 |
| 按批次解析配置 | 上传确认对话框或 `process_config` API 覆盖解析引擎、分块、多模态(VLM / ASR)、图谱抽取与问题生成;支持 reparse 时调整配置 |
| 数据源导入 | 飞书 / Notion / 语雀 知识库自动同步(更多数据源开发中),支持增量与全量同步 |
| 文档格式 | PDF / Word / Txt / Markdown / HTML / 图片 / CSV / Excel / PPT / JSON |
| 检索策略 | BM25 稀疏召回 / Dense 稠密召回 / GraphRAG 图谱增强 / 父子分块 / 多维度索引 |
| 检索策略 | BM25 稀疏召回 / Dense 稠密召回 / GraphRAG 图谱增强 / 父子分块 / pgvector HNSW 加速(1024 维)/ 多维度索引 |
| 批量选择 | 知识库文档列表支持框选(marquee)多选,便于批量操作 |
| 端到端测试 | 检索+生成全链路可视化,评估召回命中率、BLEU / ROUGE 等指标 |
**集成与扩展**
@@ -139,7 +142,7 @@
| 界面 | Web UI / RESTful API / 命令行(`weknora`)/ Chrome Extension / 微信小程序 |
| 权限控制 | 租户 RBAC 四级角色矩阵(Owner / Admin / Contributor / Viewer),按知识库的资源归属,每租户审计日志,invite-only 准入,自助创建工作区,跨租户超级管理员 |
| 安全 | API Key 与 MCP / 数据源凭据 AES-256-GCM 静态加密、支持平滑密钥轮换;app ↔ docreader gRPC TLS + Token;防 SSRF HTTP 客户端;Agent 技能沙箱隔离 |
| 可观测性 | 集成 Langfuse 以追踪 ReAct 循环、Token 消耗、工具调用和任务流水线;内置 Langfuse 风格的文档解析追踪时间线,逐阶段展示解析进度 |
| 可观测性 | 集成 Langfuse(唯一追踪后端)以追踪 ReAct 循环、Token 消耗、工具调用和任务流水线;内置 Langfuse 风格的文档解析追踪时间线,逐阶段展示解析进度 |
| 任务管理 | MQ 异步任务,版本升级自动数据库迁移 |
| 模型管理 | 集中配置,YAML 声明式内置模型配置,知识库级别模型选择,按模型思考模式配置,多租户共享内置模型,WeKnora Cloud 托管模型与文档解析 |
+6 -3
View File
@@ -28,7 +28,7 @@
<img src="https://img.shields.io/badge/License-MIT-ffffff?labelColor=d4eaf7&color=2e6cc4" alt="License">
</a>
<a href="./CHANGELOG.md">
<img alt="バージョン" src="https://img.shields.io/badge/version-0.6.1-2e6cc4?labelColor=d4eaf7">
<img alt="バージョン" src="https://img.shields.io/badge/version-0.6.2-2e6cc4?labelColor=d4eaf7">
</a>
</p>
@@ -56,6 +56,7 @@ Feishu、Notion、Yuqueなどの外部プラットフォームからのナレッ
## ✨ 最新アップデート
- **v0.6.2** — アップロード単位の解析設定(`process_config`)+ アップロード確認ダイアログ;reparse 時の設定上書き;`weknora` CLI v0.9(同梱 Agent Skills、`session stop`、auth/profile 統合);KB マーキー複数選択;pgvector 1024 次元 HNSW インデックス;チャットリソース Store 刷新;Langfuse のみのトレーシング(Jaeger 削除)。詳細は [`CHANGELOG.md`](./CHANGELOG.md)。
- **v0.6.1** — ドキュメント解析トレースタイムライン(Langfuse 風の Span ツリー、ステージごとの進捗表示 + 解析中止);OpenSearch ベクター DB ドライバー;YAML 宣言型ビルトインモデル設定;システム管理者と統合プラットフォーム設定 + 監査ログ;新規ユーザーオンボーディングガイド;設定 UI 刷新;`weknora` CLI v0.7 / v0.8(Agent ファースト ワイヤープロトコル、NDJSON、`--dry-run`);OpenDataLoader と PaddleOCR-VL 解析エンジン;MCP サーバーのマルチトランスポート(stdio / SSE / HTTP);モデル単位の思考モード設定;Tencent LKEAP リランク + ネイティブ Gemini Embedding + MiniMax-M3。詳細は [`CHANGELOG.md`](./CHANGELOG.md) を参照。
- **v0.6.0** — テナント RBAC(4 階層ロールマトリクス `Owner` / `Admin` / `Contributor` / `Viewer` + KB 単位の所有 + テナントごとの監査ログ)、テナントメンバー管理とマルチワークスペース UX、セルフサービスでのワークスペース作成;`weknora` CLI v0.4 GA + `mcp serve`;KB 検索の複数ベクター DB ファンアウト;MCP / データソース資格情報の AES-256-GCM 暗号化 + docreader gRPC TLS + Token;Zhipu Embedder と華為雲 OBS の追加;サーバーサイドユーザー設定;Go 1.26.0。詳細は [`docs/RBAC说明.md`](./docs/RBAC说明.md) と [`CHANGELOG.md`](./CHANGELOG.md) を参照。
- **v0.5.2** — Wiki インジェストが万件規模 KB に対応(タスクキュー + DLQ);MCP 工具人機審批;Anthropic / Apache Doris / Tencent VectorDB / 金山雲 KS3 / SearXNG バックエンド;適応型 3 段階チャンキング + ライブプレビュー;グローバル ⌘K コマンドパレット;Yuque コネクタ + WeChat ミニプログラム;`weknora` CLI プレビュー版。
@@ -115,9 +116,11 @@ Feishu、Notion、Yuqueなどの外部プラットフォームからのナレッ
| 機能 | 詳細 |
|------|------|
| ナレッジベースタイプ | FAQ / ドキュメント / Wiki、フォルダーインポート・URL インポート・タグ管理・オンライン入力 |
| アップロード単位の解析設定 | アップロード確認ダイアログまたは `process_config` API でパーサー・チャンキング・マルチモーダル(VLM / ASR)・グラフ抽出・質問生成をバッチ単位で上書き;reparse 時も設定変更可能 |
| データソースインポート | Feishu / Notion / Yuque ナレッジベースの自動同期(他のデータソースも開発中)、増分・全量同期対応 |
| 文書フォーマット | PDF / Word / Txt / Markdown / HTML / 画像 / CSV / Excel / PPT / JSON |
| 検索戦略 | BM25 疎検索 / Dense 密検索 / GraphRAG グラフ強化 / 親子チャンキング / 多次元インデックス |
| 検索戦略 | BM25 疎検索 / Dense 密検索 / GraphRAG グラフ強化 / 親子チャンキング / pgvector HNSW 加速(1024 次元)/ 多次元インデックス |
| 一括選択 | KB リストでマーキー(ドラッグ)複数選択によるバッチ操作 |
| E2E テスト | 検索+生成の全パイプライン可視化、リコール的中率・BLEU / ROUGE 指標評価 |
**連携と拡張**
@@ -137,7 +140,7 @@ Feishu、Notion、Yuqueなどの外部プラットフォームからのナレッ
|------|------|
| デプロイ | ローカル / Docker / Kubernetes (Helm)、プライベート化・オフラインデプロイ対応 |
| UI | Web UI / RESTful API / CLI (`weknora`) / Chrome Extension / WeChat ミニプログラム |
| 可観測性 | ReActループ、トークン消費、ツール呼び出し、パイプライン追跡のためのLangfuse統合;Langfuse 風のドキュメント解析トレースタイムラインを内蔵し、ステージごとの進捗を表示 |
| 可観測性 | Langfuse(唯一のトレーシングバックエンド)で ReAct ループ・トークン消費・ツール呼び出し・パイプライン追跡;Langfuse 風のドキュメント解析トレースタイムラインを内蔵し、ステージごとの進捗を表示 |
| タスク管理 | MQ 非同期タスク、バージョンアップ時の DB 自動マイグレーション |
| モデル管理 | 集中設定、YAML 宣言型ビルトインモデル設定、ナレッジベース単位のモデル選択、モデル単位の思考モード設定、マルチテナント組み込みモデル共有、WeKnora Cloud ホスティングモデルとドキュメント解析 |
+6 -3
View File
@@ -28,7 +28,7 @@
<img src="https://img.shields.io/badge/License-MIT-ffffff?labelColor=d4eaf7&color=2e6cc4" alt="License">
</a>
<a href="./CHANGELOG.md">
<img alt="버전" src="https://img.shields.io/badge/version-0.6.1-2e6cc4?labelColor=d4eaf7">
<img alt="버전" src="https://img.shields.io/badge/version-0.6.2-2e6cc4?labelColor=d4eaf7">
</a>
</p>
@@ -56,6 +56,7 @@ Feishu, Notion, Yuque 등 외부 플랫폼에서 지식 자동 동기화를 지
## ✨ 최신 업데이트
- **v0.6.2** — 업로드 단위 파싱 설정(`process_config`) + 업로드 확인 대화상자; reparse 시 설정 덮어쓰기; `weknora` CLI v0.9(번들 Agent Skills, `session stop`, auth/profile 통합); KB 마키 선택 다중 선택; pgvector 1024차원 HNSW 인덱스; 채팅 리소스 Store 리팩터; Langfuse 단일 추적(Jaeger 제거). 자세한 내용은 [`CHANGELOG.md`](./CHANGELOG.md).
- **v0.6.1** — 문서 파싱 추적 타임라인(Langfuse 스타일 Span 트리, 단계별 진행 표시 + 파싱 중단); OpenSearch 벡터 저장소 드라이버; YAML 선언형 내장 모델 구성; 시스템 관리자와 통합 플랫폼 설정 + 감사 로그; 신규 사용자 온보딩 가이드; 설정 UI 리디자인; `weknora` CLI v0.7 / v0.8(Agent 우선 와이어 프로토콜, NDJSON, `--dry-run`); OpenDataLoader 및 PaddleOCR-VL 파싱 엔진; MCP 서버 멀티 트랜스포트(stdio / SSE / HTTP); 모델별 사고 모드 설정; Tencent LKEAP 리랭크 + 네이티브 Gemini 임베딩 + MiniMax-M3. 자세한 내용은 [`CHANGELOG.md`](./CHANGELOG.md) 참고.
- **v0.6.0** — 테넌트 RBAC(4단계 역할 매트릭스 `Owner` / `Admin` / `Contributor` / `Viewer` + KB 단위 소유 + 테넌트별 감사 로그), 테넌트 멤버 관리와 멀티 워크스페이스 UX, 셀프 서비스 워크스페이스 생성; `weknora` CLI v0.4 GA + `mcp serve`; 여러 벡터 저장소에 걸친 KB 검색 팬아웃; MCP / 데이터 소스 자격 증명 AES-256-GCM 암호화 + docreader gRPC TLS + Token; Zhipu 임베더와 화웨이 클라우드 OBS 추가; 서버 사이드 사용자 환경설정; Go 1.26.0. 자세한 내용은 [`docs/RBAC说明.md`](./docs/RBAC说明.md)과 [`CHANGELOG.md`](./CHANGELOG.md) 참고.
- **v0.5.2** — Wiki 인제스트가 만 건 규모 KB 지원(작업 큐 + DLQ); MCP 휴먼인더루프 도구 승인; Anthropic / Apache Doris / Tencent VectorDB / Kingsoft Cloud KS3 / SearXNG 백엔드; 적응형 3단계 청킹 + 라이브 미리보기; 글로벌 ⌘K 명령 팔레트; Yuque 커넥터 + WeChat 미니프로그램; `weknora` CLI 프리뷰.
@@ -124,9 +125,11 @@ Feishu, Notion, Yuque 등 외부 플랫폼에서 지식 자동 동기화를 지
| 기능 | 상세 |
|------|------|
| 지식베이스 타입 | FAQ / 문서 / Wiki, 폴더 임포트·URL 임포트·태그 관리·온라인 입력 |
| 업로드 단위 파싱 설정 | 업로드 확인 대화상자 또는 `process_config` API로 파서·청킹·멀티모달(VLM / ASR)·그래프 추출·질문 생성을 배치 단위로 덮어쓰기; reparse 시 설정 변경 지원 |
| 데이터 소스 임포트 | Feishu / Notion / Yuque 지식베이스 자동 동기화(추가 데이터 소스 개발 중), 증분·전체 동기화 지원 |
| 문서 포맷 | PDF / Word / Txt / Markdown / HTML / 이미지 / CSV / Excel / PPT / JSON |
| 검색 전략 | BM25 희소 / Dense 밀집 / GraphRAG 그래프 강화 / 부모-자식 청킹 / 다차원 인덱싱 |
| 검색 전략 | BM25 희소 / Dense 밀집 / GraphRAG 그래프 강화 / 부모-자식 청킹 / pgvector HNSW 가속(1024차원) / 다차원 인덱싱 |
| 일괄 선택 | KB 목록에서 마키(드래그) 다중 선택으로 일괄 작업 |
| E2E 테스트 | 전체 파이프라인 시각화, 리콜 적중률·BLEU / ROUGE 지표 평가 |
**연동 및 확장**
@@ -146,7 +149,7 @@ Feishu, Notion, Yuque 등 외부 플랫폼에서 지식 자동 동기화를 지
|------|------|
| 배포 | 로컬 / Docker / Kubernetes (Helm), 프라이빗/오프라인 배포 지원 |
| UI | Web UI / RESTful API / CLI (`weknora`) / Chrome Extension / WeChat 미니 프로그램 |
| 관측 가능성 | ReAct 루프, 토큰 소비, 도구 호출, 파이프라인 추적을 위한 Langfuse 통합; Langfuse 스타일의 문서 파싱 추적 타임라인 내장으로 단계별 진행 표시 |
| 관측 가능성 | Langfuse(단일 추적 백엔드)로 ReAct 루프·토큰 소비·도구 호출·파이프라인 추적; Langfuse 스타일의 문서 파싱 추적 타임라인 내장으로 단계별 진행 표시 |
| 작업 관리 | MQ 비동기 작업, 버전 업그레이드 시 자동 DB 마이그레이션 |
| 모델 관리 | 중앙 설정, YAML 선언형 내장 모델 구성, 지식베이스별 모델 선택, 모델별 사고 모드 설정, 멀티테넌트 내장 모델 공유, WeKnora Cloud 호스팅 모델 및 문서 파싱 |
+1 -1
View File
@@ -1 +1 @@
0.6.1
0.6.2
+1 -1
View File
@@ -10,7 +10,7 @@ of the WeKnora server / frontend release cadence.
CLI history before v0.3 is recorded in the project root
[CHANGELOG.md](../CHANGELOG.md) under the release that introduced the CLI.
## [Unreleased]
## [0.9.0] - 2026-06-10
### v0.9 — auth/profile model harmonization + flag cleanup
+24
View File
@@ -260,5 +260,29 @@ Wiki 模式允许 Agent 根据原始文档自动生成并维护一套结构化
0.6.1 引入了系统管理员与统一平台设置面板(含平台审计日志),与租户内 RBAC 区分:系统管理员管理的是「平台级」配置,而非单个租户内的资源。首次启用需通过系统管理员 bootstrap 流程晋升首个管理员;撤销管理员权限有安全防护(避免误撤导致无人可管)。相关迁移为 `000053_system_admin_and_settings`。
## 18. 上传时如何自定义解析配置(process_config)?
0.6.2 起,文件 / URL / 文件夹上传可携带 `process_config`(`KnowledgeProcessOverrides`),在**本次批次**内覆盖知识库默认的解析引擎、分块、多模态(VLM / ASR)、问题生成、图谱抽取等设置,而不会改动 KB 全局配置。Web UI 在上传前会弹出确认对话框供调整;API 与 `weknora doc upload` 传同名 JSON 即可。
- **与 KB 默认配置的关系**:未传的字段沿用 KB 默认值;`graph_enabled` 仅在 `extract_config.enabled` 为 true 时生效。
- **重新解析**:`POST /knowledge/:id/reparse` 可在 body 中传 `process_config` 以新配置重跑解析,覆盖项会写入 `knowledge.metadata.process_overrides`。
- **图片 / 音频校验**:批次含图片时需 KB 已配置 VLM;含音频时需已配置 ASR,否则上传会被拒绝。
- 详见 [`docs/api/knowledge.md`](./api/knowledge.md)。
## 19. 升级到 0.6.2 后 `weknora` CLI 登录或 MCP 工具报错?
0.6.2 随附 **CLI v0.9**(破坏性变更),常见迁移:
- **`auth login` 不再创建 profile**:先 `weknora profile add <name> --host <url> --use`,再 `weknora auth login`;切换 profile 用全局 `--profile <name>`。
- **`auth logout` / `auth refresh` 去掉 `--name`**:作用于当前 active profile。
- **MCP 工具 `agent_invoke` 已更名为 `session_ask`**:外部 MCP 客户端需刷新工具 schema。
- **`agent create --kb` 改为 `--attach-kb`**;`doc delete --all` 与 `search chunks` / `search docs` 的 `--kb` 必填且支持名称或 ID。
- 新增 `weknora session stop <session-id>` 可中止进行中的 Agent 运行;仓库内附带 `weknora-rag-search` / `weknora-shared` 内置 Skills。
- 详见 [`cli/CHANGELOG.md`](../cli/CHANGELOG.md)。
## 20. pgvector 检索变慢或刚升级后需要做什么?
0.6.2 新增迁移 `000059_embeddings_hnsw_1024`,为 **1024 维** embedding(如 bge-m3)在 PostgreSQL pgvector 上创建 HNSW 索引。服务启动会自动执行迁移;若你使用其他维度,该索引可能不适用,需按自身 embedding 维度另行调优。升级后首次大批量入库期间索引构建可能占用额外 I/O,属正常现象。
## P.S.
如果以上方式未解决问题,请在issue中描述您的问题,并提供必要的日志信息辅助我们进行问题排查
+60 -4
View File
@@ -6282,6 +6282,14 @@ const docTemplate = `{
"name": "id",
"in": "path",
"required": true
},
{
"description": "可选的处理配置覆盖:{\\",
"name": "body",
"in": "body",
"schema": {
"type": "object"
}
}
],
"responses": {
@@ -13198,10 +13206,6 @@ const docTemplate = `{
"description": "Chunk size",
"type": "integer"
},
"enable_multimodal": {
"description": "EnableMultimodal (deprecated, kept for backward compatibility with old data)",
"type": "boolean"
},
"enable_parent_child": {
"description": "EnableParentChild enables two-level parent-child chunking strategy.\nWhen enabled, large parent chunks provide context while small child chunks\nare used for vector matching. Retrieval matches on child but returns parent content.",
"type": "boolean"
@@ -14642,6 +14646,38 @@ const docTemplate = `{
}
}
},
"github_com_Tencent_WeKnora_internal_types.KnowledgeProcessOverrides": {
"type": "object",
"properties": {
"asr_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ASRConfig"
},
"chunking_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ChunkingConfig"
},
"enable_multimodel": {
"type": "boolean"
},
"extract_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ExtractConfig"
},
"graph_enabled": {
"type": "boolean"
},
"parser_engine_rules": {
"type": "array",
"items": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ParserEngineRule"
}
},
"question_generation_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.QuestionGenerationConfig"
},
"vlm_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.VLMConfig"
}
}
},
"github_com_Tencent_WeKnora_internal_types.ListMembersResponse": {
"type": "object",
"properties": {
@@ -14910,6 +14946,9 @@ const docTemplate = `{
"content": {
"type": "string"
},
"process_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.KnowledgeProcessOverrides"
},
"status": {
"type": "string"
},
@@ -16630,6 +16669,14 @@ const docTemplate = `{
"description": "Tool name",
"type": "string"
},
"provider_metadata": {
"description": "Provider-specific tool-call state for replay",
"allOf": [
{
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ToolCallMetadata"
}
]
},
"reflection": {
"description": "Agent's reflection on this tool call result (if enabled)",
"type": "string"
@@ -16644,6 +16691,15 @@ const docTemplate = `{
}
}
},
"github_com_Tencent_WeKnora_internal_types.ToolCallMetadata": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "integer"
}
}
},
"github_com_Tencent_WeKnora_internal_types.ToolResult": {
"type": "object",
"properties": {
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.6 MiB

+60 -4
View File
@@ -6275,6 +6275,14 @@
"name": "id",
"in": "path",
"required": true
},
{
"description": "可选的处理配置覆盖:{\\",
"name": "body",
"in": "body",
"schema": {
"type": "object"
}
}
],
"responses": {
@@ -13191,10 +13199,6 @@
"description": "Chunk size",
"type": "integer"
},
"enable_multimodal": {
"description": "EnableMultimodal (deprecated, kept for backward compatibility with old data)",
"type": "boolean"
},
"enable_parent_child": {
"description": "EnableParentChild enables two-level parent-child chunking strategy.\nWhen enabled, large parent chunks provide context while small child chunks\nare used for vector matching. Retrieval matches on child but returns parent content.",
"type": "boolean"
@@ -14635,6 +14639,38 @@
}
}
},
"github_com_Tencent_WeKnora_internal_types.KnowledgeProcessOverrides": {
"type": "object",
"properties": {
"asr_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ASRConfig"
},
"chunking_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ChunkingConfig"
},
"enable_multimodel": {
"type": "boolean"
},
"extract_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ExtractConfig"
},
"graph_enabled": {
"type": "boolean"
},
"parser_engine_rules": {
"type": "array",
"items": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ParserEngineRule"
}
},
"question_generation_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.QuestionGenerationConfig"
},
"vlm_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.VLMConfig"
}
}
},
"github_com_Tencent_WeKnora_internal_types.ListMembersResponse": {
"type": "object",
"properties": {
@@ -14903,6 +14939,9 @@
"content": {
"type": "string"
},
"process_config": {
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.KnowledgeProcessOverrides"
},
"status": {
"type": "string"
},
@@ -16623,6 +16662,14 @@
"description": "Tool name",
"type": "string"
},
"provider_metadata": {
"description": "Provider-specific tool-call state for replay",
"allOf": [
{
"$ref": "#/definitions/github_com_Tencent_WeKnora_internal_types.ToolCallMetadata"
}
]
},
"reflection": {
"description": "Agent's reflection on this tool call result (if enabled)",
"type": "string"
@@ -16637,6 +16684,15 @@
}
}
},
"github_com_Tencent_WeKnora_internal_types.ToolCallMetadata": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "integer"
}
}
},
"github_com_Tencent_WeKnora_internal_types.ToolResult": {
"type": "object",
"properties": {
+38 -4
View File
@@ -372,10 +372,6 @@ definitions:
chunk_size:
description: Chunk size
type: integer
enable_multimodal:
description: EnableMultimodal (deprecated, kept for backward compatibility
with old data)
type: boolean
enable_parent_child:
description: |-
EnableParentChild enables two-level parent-child chunking strategy.
@@ -1519,6 +1515,27 @@ definitions:
description: 最后更新时间
type: integer
type: object
github_com_Tencent_WeKnora_internal_types.KnowledgeProcessOverrides:
properties:
asr_config:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.ASRConfig'
chunking_config:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.ChunkingConfig'
enable_multimodel:
type: boolean
extract_config:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.ExtractConfig'
graph_enabled:
type: boolean
parser_engine_rules:
items:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.ParserEngineRule'
type: array
question_generation_config:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.QuestionGenerationConfig'
vlm_config:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.VLMConfig'
type: object
github_com_Tencent_WeKnora_internal_types.ListMembersResponse:
properties:
members:
@@ -1705,6 +1722,8 @@ definitions:
type: string
content:
type: string
process_config:
$ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.KnowledgeProcessOverrides'
status:
type: string
tag_id:
@@ -3005,6 +3024,10 @@ definitions:
name:
description: Tool name
type: string
provider_metadata:
allOf:
- $ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.ToolCallMetadata'
description: Provider-specific tool-call state for replay
reflection:
description: Agent's reflection on this tool call result (if enabled)
type: string
@@ -3013,6 +3036,12 @@ definitions:
- $ref: '#/definitions/github_com_Tencent_WeKnora_internal_types.ToolResult'
description: Execution result (contains Output)
type: object
github_com_Tencent_WeKnora_internal_types.ToolCallMetadata:
additionalProperties:
items:
type: integer
type: array
type: object
github_com_Tencent_WeKnora_internal_types.ToolResult:
properties:
data:
@@ -8474,6 +8503,11 @@ paths:
name: id
required: true
type: string
- description: 可选的处理配置覆盖:{\
in: body
name: body
schema:
type: object
produces:
- application/json
responses:
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "knowledage-base",
"version": "0.6.0",
"version": "0.6.2",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "knowledage-base",
"version": "0.6.0",
"version": "0.6.2",
"dependencies": {
"@microsoft/fetch-event-source": "^2.0.1",
"@types/dompurify": "^3.2.0",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "knowledage-base",
"version": "0.6.1",
"version": "0.6.2",
"private": true,
"type": "module",
"scripts": {
+1 -1
View File
@@ -5,7 +5,7 @@ description: |
with document parsing, vector search, and LLM integration.
type: application
version: 0.1.0
appVersion: "v0.6.1"
appVersion: "v0.6.2"
kubeVersion: ">=1.25.0-0"
home: https://github.com/Tencent/WeKnora
icon: https://raw.githubusercontent.com/Tencent/WeKnora/main/docs/images/logo.png