Token导航 LogoToken导航TokenDH.com
wmes MCP kb monorepo logo
文档知识stdio官方级别未说明来源级核验

wmes MCP kb monorepo

MCP Server

一个支持文档上传、语义切分、向量嵌入与多模态检索的全链路知识库管理系统,适用于企业知识管理和智能文档处理。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
文档检索TypeScript文档处理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

bayunche

提供方

bayunche

最后核验

2026/5/17 20:22

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -d --name paddle-ocr -p 9009:8000 \

详细介绍

MCP Knowledge Base Monorepo

多模态知识库 + MCP 参考实现,涵盖 API、Ingestion Worker、MCP Server、Web 控制台与一套可复制的部署/运维脚本。

✨ Highlights

  • 全链路流水线:支持文档上传 → 文本清洗 → 语义切分 → 元数据提取 → 结构树生成 → 向量嵌入 → 检索/MCP 预览。
  • 语义理解管线:LLM 负责章节分割与 chunk 元数据(标题/摘要/标签/主题/关键词/NER/parent section),GET /documents/:id/structure 可直接读取层级树。
  • Office/OCR 双通道:DOC/DOCX/PPTX 默认走内置 OfficeParser,其余不可直接解析的 doc/ppt/xls 会自动触发 OCR,本地/HTTP OCR Adapter 均可复用。
  • 多模态能力:内置文本/表格/图片附件生成,REST /mcp/* 与 MCP Server 同步暴露 kb.searchkb.relatedkb.preview 工具。
  • 库级治理:通过 libraryId 把多份文档归入同一知识库,检索、MCP 与治理视图均可按库过滤并查看文本块元数据。
  • 可观测性与治理:REST /stats/metrics,删除/重索引等治理接口与队列治理脚本一应俱全。
  • 一键部署脚本scripts/deploy-local.sh 统一管理 Bun 与 Docker 两种部署模式,10 步内即可落地。
  • 脚本化运维:备份/恢复/重索引/镜像发布/回滚脚本全部可 dry-run,便于在受限环境中预览。

📦 Repo Layout

路径描述
apps/apiREST API(上传、搜索、治理、/mcp 代理、Prometheus /metrics)。
apps/workerIngestion Worker:fetch → parse → chunk → metadata → embed → persist。
apps/mcpMCP Server & 工具(kb.searchkb.relatedkb.preview)。
apps/webReact + Vite 控制台,支持 multipart /upload、块级治理列表、MCP 预览。
packages/{core,data,shared-schemas,tooling}向量推理、Kysely 数据层、Zod Schema、指标工具。
scripts/ & ops/scripts/部署/测试/备份/恢复/镜像管理脚本。
docs/运行指南(ingestion、retrieval、mcp 等)。

🧭 Architecture Overview

  • API:基于 Bun,负责认证、租户隔离、MinIO 写入、队列入栈、搜索+附件聚合、/mcp/* 代理、治理端点。
  • Worker:消费 RabbitMQ 任务,执行“fetch → preprocess → semanticSegmenter(LLM)→ metadata(LLM)→ embed → persist”,生成结构树 (document_sections)、语义 chunk 与附件。
  • MCP Server:通过 createMcpServer() 暴露工具,既可独立运行(apps/mcp/src/main.ts),也可由 API 代理。
  • Web 控制台:演练上传/检索/标签/预览,便于产品和测试人员验证。
  • 数据 & 运维:Kysely + pgvector + Qdrant + MinIO + RabbitMQ,辅以 backup/restore/reindex/publish 镜像脚本。

🔧 Tech Stack

  • Runtime:Bun 1.x + TypeScript、React + Vite(前端)。
  • Data Plane:Postgres/pgvector、Qdrant、MinIO、RabbitMQ。
  • ML:HybridRetriever + VectorClient(文本向量强制走 @xenova/transformers 本地模型,rerank 可选远程)。
  • Validation:Zod schema(@kb/shared-schemas)。
  • Testingbun test、Vitest、Playwright(通过 scripts/test-matrix.ts 编排)。

🚀 Quick Start

所有命令均在仓库根目录执行。先确定使用的操作系统,再选择“Docker Compose”或“本地原生(Bun)”方案,然后完成准备 → 初始化 → 启动 → 验证。

ℹ️ 若前端与 API 在不同端口运行(如 访问 CORS_ALLOWED_ORIGINS 配置允许的 Origin,默认已包含 http://localhost:5173。值为逗号分隔列表,示例:CORS_ALLOWED_ORIGINS=http://localhost:5173,http://127.0.0.1:5173
📚 库隔离:所有文档/文本块都带有 libraryId。请在 .env 中设置 DEFAULT_LIBRARY_ID 并在前端 .env(或运行 bun dev 前的环境变量)配置 VITE_LIBRARY_ID,确保 API、Worker、Web 共用同一知识库;一个库可以包含多个文件,但检索和治理均按文本块粒度执行。
⚠️ 向量化必须使用本地模型:.env* 中的 LOCAL_EMBEDDING_ENABLED 默认开启,且需指定 LOCAL_TEXT_MODEL_ID(例如 Xenova/all-MiniLM-L6-v2)。若禁用该配置,Worker 会直接报错并停止,以确保“向量用本地模型”这一要求得以强制执行。 🧠 混合召回默认启用本地 Rerank:未配置 .env 时,Worker 会自动读取 MODELS_DIR 中的 bge-m3(embedding)、bge-reranker(rerank)、OpenCLIP(image)等模型;如需覆盖,可在 .env* 中设置 LOCAL_*_MODEL_ID 或通过 Web 控制台「本地模型管理」直接下载/替换。 📁 本地模型目录结构:所有模型按角色分别存放在 MODELS_DIR//text/rerank/image/ocr/ 等),scripts/sync-models.ts 与 Web 控制台都会将文件下载到对应文件夹,并可在同一页面为各角色快速选择本地模型。 👁️ OCR:Compose 内置 paddle-ocr 服务(默认 http://localhost:8000/ocr),Worker 已在 .env.docker 中指向 http://paddle-ocr:8000/ocrOCR_MODE=httpOCR_ENABLED=true)。如关闭 OCR,请修改环境变量。

Linux / macOS

使用 Docker Compose

准备

  • 安装 Docker Engine + docker compose plugin。
  • 复制容器环境:cp .env.docker .env.docker.local(如需修改端口/密码可编辑该文件)。

步骤

  1. 安装依赖:bun install
  2. 构建镜像:docker compose build kb-api kb-worker kb-mcp paddle-ocr
  3. 一键启动:./scripts/deploy-local.sh --env-file .env.docker --stack-mode docker --start-apps true

- 或手动执行:docker compose up -d db vectordb object redis queuedocker compose up -d kb-api kb-worker kb-mcp paddle-ocr

  1. 继续阅读“🐳 Docker Deployment(6 步)”获取更详细的调优/停止步骤。

验证

  • 运行 curl http://localhost:8080/health 或直接执行下方的 ✅ Smoke Test
  • 如本机缺少 psql,可在执行 deploy-local.sh 前设置 PSQL_COMMAND="docker compose exec -T db psql" 以便脚本在容器内运行迁移。

本地原生(Bun 模式)

准备

  • Bun ≥ 1.3、psql、MinIO mccurl
  • 已在本机安装并启动 Postgres、Qdrant、MinIO、Redis、RabbitMQ(端口需与 .env 匹配)。

步骤

  1. bun install && cp .env.example .env
  2. ./scripts/deploy-local.sh --env-file .env --stack-mode bun(脚本会检查依赖、初始化桶/集合、执行迁移、同步模型)。
  3. 按“🛠 Local Development(Linux / macOS)”章节的顺序启动 Worker/API/MCP/Web。

验证

  • 参照 ✅ Smoke Test 发起 /documents → /search → /mcp/preview 请求。

Windows(纯原生,不依赖 WSL)

使用 Docker Desktop

准备

  • Windows 10/11 + Docker Desktop(启用 WSL2 引擎即可,但命令在 PowerShell/CMD 中执行)。
  • 安装 Windows 版 Bun,用于 bun install 与辅助脚本;可在 PowerShell 中运行 iwr https://bun.sh/install.ps1 -UseBasicParsing | iex

步骤

  1. 切换到仓库根目录并执行:
   bun install
   Copy-Item .env.example .env -Force
   Copy-Item .env.docker .env.docker.local -Force
  1. 清理旧容器(可选):docker compose down --remove-orphans
  2. 构建镜像:docker compose build --no-cache kb-api kb-worker mcp-server
  3. 启动全部服务:docker compose up -d
  4. 如需手动运行迁移/存储初始化,可在 PowerShell 中执行:
   $env:ENV_FILE = ".env.docker"
   docker compose exec -T db psql -U kb -d kb -c "SELECT 1"  # 确认数据库可连接
   docker compose exec kb-api bun run scripts/run-migrations.ts
   docker compose exec kb-api bun run scripts/bootstrap-storage.ts
  1. 查看“🐳 Docker Deployment(6 步)”了解更多运维命令。

验证

  • 在 PowerShell 中执行 ✅ Smoke Test 中的 curl 命令,或直接访问 http://localhost:8080/health
  • 所有 Docker 命令务必在 PowerShell/CMD 中运行,避免 WSL 路径/权限差异。

纯原生(Bun + 手动依赖,无 Docker / WSL)

前置依赖

  • 安装 Windows 版 Bun:iwr https://bun.sh/install.ps1 -UseBasicParsing | iex
  • CLI:psql(附带 Postgres 客户端)、MinIO mccurl(可用 Windows 10+ 自带 curl.exe)。
  • (可选)PaddleOCR:若希望 Worker 完全离线运行 OCR,请执行 cd paddle && docker compose up -d --build 启动仓库内 /paddle 示例服务,并在 .env 中将 OCR_MODE=httpOCR_API_URL=http://localhost:8000/ocr(详情见 )。
  • 确认各服务端口与 .env 默认值一致(Postgres 5432、Qdrant 6333、MinIO 9000/9001、Redis 6379、RabbitMQ 5672/15672),可用 Test-NetConnection localhost -Port 5432 等命令做健康检查。

初始化环境

  1. 克隆仓库并在 PowerShell 中执行:
   bun install
   Copy-Item .env.example .env -Force
  1. 如端口或凭证与默认不同,编辑 .env 使其与本地服务保持一致。
  2. 运行迁移、存储初始化(确保 $env:ENV_FILE 指向 .env):
   $env:ENV_FILE = ".env"
   bun run scripts/run-migrations.ts
   bun run scripts/bootstrap-storage.ts

若没有安装 psql,可手动执行 psql -d kb -U kb -v ON_ERROR_STOP=1 -f db/migrations/0001_init.sql

  1. (可选)同步本地模型/权重:bun run scripts/sync-models.ts

启动服务(可在不同 PowerShell 窗口中执行)

  1. Worker:
   $env:START_WORKER="true"
   $env:ENV_FILE=".env"
   bun run apps/worker/src/main.ts
  1. API:
   $env:START_API_SERVER="true"
   $env:ENV_FILE=".env"
   $env:API_TOKEN="dev-token"
   bun run apps/api/src/main.ts
  1. (可选)MCP Server:
   $env:START_MCP_SERVER="true"
   $env:ENV_FILE=".env"
   bun run apps/mcp/src/main.ts
  1. Web 控制台:
   cd apps/web
   bun install
   $env:VITE_API_BASE="http://localhost:8080"
   $env:VITE_API_TOKEN="dev-token"
   $env:VITE_PREVIEW_BASE="http://localhost:9000/kb-preview"
   bun x vite dev --host 0.0.0.0 --port 5173  # 或在仓库根执行 `bun run web`

验证

  • 在 PowerShell 中执行 ✅ Smoke Test(Windows 自带 curl 即可)。
  • 如果 API 仍不可用,先确认五个依赖服务端口均处于 LISTEN 状态,再查看 Worker/API 控制台日志。

🛠 Local Development(Bun 模式)

💡 bun dev 会同时启动 Worker / API / MCP / Web(等价于分别执行以下命令),前提是依赖服务与 .env 已按 Quick Start 配置好。若需要单独调试某个组件,可参考下方分步指令。
🌐 前端 Vite Dev Server 默认会将 /documents/search/mcp/metrics 等 API 请求代理到 VITE_PROXY_TARGET(默认 http://localhost:8080),避免跨域。如果后端端口不同,可在运行 bun dev 前设置 VITE_PROXY_TARGET=http://your-api:port
🎯 Web 控制台(bun run web)已划分为多个页面: - 入库 & 治理:上传文档、查看队列/统计 - 文档:列表 / 详情 / 标签编辑 - 检索:Hybrid Search + 预览 - MCP & 指标:MCP 工具测试和 Prometheus 输出

常用启动命令

模块POSIX(bash/zsh)Windows PowerShell
WorkerSTART_WORKER=true ENV_FILE=.env bun run apps/worker/src/main.ts$env:START_WORKER="true"; $env:ENV_FILE=".env"; bun run apps/worker/src/main.ts
APISTART_API_SERVER=true ENV_FILE=.env API_TOKEN=dev-token bun run apps/api/src/main.ts$env:START_API_SERVER="true"; $env:ENV_FILE=".env"; $env:API_TOKEN="dev-token"; bun run apps/api/src/main.ts
MCP ServerSTART_MCP_SERVER=true ENV_FILE=.env bun run apps/mcp/src/main.ts$env:START_MCP_SERVER="true"; $env:ENV_FILE=".env"; bun run apps/mcp/src/main.ts
Web 控制台cd apps/web && bun install && VITE_API_BASE=... VITE_API_TOKEN=... bunx vite devbun run webcd apps/web; bun install; $env:VITE_API_BASE="http://localhost:8080"; $env:VITE_API_TOKEN="dev-token"; $env:VITE_PREVIEW_BASE="http://localhost:9000/kb-preview"; bun x vite dev --host 0.0.0.0 --port 5173bun run web

大文件上传提示

  • API_MAX_BODY_MB(默认 1024)控制 Bun API 端口允许的最大请求体,确保 ≥ 上传文件大小。
  • API_UPLOAD_STREAM_THRESHOLD_MB(默认 256)用于决定何时将上传内容落盘后再写入 MinIO,避免一次性在内存中缓存超大 File
  • 500MB 级别文件建议配合这两个变量,并保证 MinIO/磁盘有足够空间(临时目录 tmp/kb-upload-* 会在上传结束后清理)。

Linux / macOS

  1. ./scripts/deploy-local.sh --env-file .env --stack-mode bun(启动基础设施 + 桶/集合 + 迁移 + 模型)。
  2. START_WORKER=true ENV_FILE=.env bun run apps/worker/src/main.ts
  3. START_API_SERVER=true ENV_FILE=.env API_TOKEN=dev-token bun run apps/api/src/main.ts
  4. (可选)START_MCP_SERVER=true ENV_FILE=.env bun run apps/mcp/src/main.ts
  5. cd apps/web && bun install && VITE_API_BASE=http://localhost:8080 VITE_API_TOKEN=dev-token bunx vite dev(或仓库根运行 bun run web)。
  6. 运行 Smoke Test(见下节)。

Windows(纯原生)

⚠️ 请先完成 Quick Start – Windows 纯原生 的“前置依赖 + 初始化”部分,确保 .env、迁移与存储均已就绪。以下命令与 Quick Start 一致,仅作为日常开发时的速查。
  1. Worker:
   $env:START_WORKER="true"
   $env:ENV_FILE=".env"
   bun run apps/worker/src/main.ts
  1. API:
   $env:START_API_SERVER="true"
   $env:ENV_FILE=".env"
   $env:API_TOKEN="dev-token"
   bun run apps/api/src/main.ts
  1. (可选)MCP Server:
   $env:START_MCP_SERVER="true"
   $env:ENV_FILE=".env"
   bun run apps/mcp/src/main.ts
  1. Web 控制台:
   cd apps/web
   bun install
   $env:VITE_API_BASE="http://localhost:8080"
   $env:VITE_API_TOKEN="dev-token"
   $env:VITE_PREVIEW_BASE="http://localhost:9000/kb-preview"
   bun x vite dev --host 0.0.0.0 --port 5173
  1. Smoke Test 同上。

🐳 Docker Deployment(6 步)

  1. bun install(确保脚本可运行)。
  2. docker compose build kb-api kb-worker mcp-server
  3. ./scripts/deploy-local.sh --env-file .env --stack-mode docker --start-apps true。脚本会自动 docker compose up -d db vectordb object redis queue kb-api kb-worker mcp-server 并执行迁移/模型同步。
  4. 如需纯手动:docker compose up -d db vectordb object redis queuedocker compose up -d kb-api kb-worker mcp-server
  5. 访问 http://localhost:8080/health/metrics,或使用 Web 控制台/curl 验证。
  6. 完成后 docker compose down 释放资源。

Windows(无 WSL)注意事项

  • 请在 PowerShell / CMD 中执行 Docker 命令,并确保当前目录为仓库根目录:
  cd D:\code\mcp知识库\wmes_mcp_kb_monorepo
  docker compose down --remove-orphans
  docker compose build --no-cache kb-api kb-worker mcp-server
  docker compose up -d
  • 如果需要运行脚本(如 scripts/deploy-local.sh),同样在根目录执行即可。Bun/Vite 的命令可在 PowerShell(使用 Windows 版 Bun)或 WSL 中运行,但 Docker 构建/启动务必在上述环境进行,避免 WSL 的路径和权限限制。

✅ Smoke Test

# 注册文档(会触发 Worker 入栈)
curl -X POST http://localhost:8080/documents \
  -H "Authorization: Bearer dev-token" \
  -H "Content-Type: application/json" \
  -d '{"docId":"'$RANDOM'","title":"示例合同","tenantId":"default"}'

# 检索
curl -X POST http://localhost:8080/search \
  -H "Authorization: Bearer dev-token" \
  -H "Content-Type: application/json" \
  -d '{"query":"付款","limit":5}'

# MCP 预览
curl -X POST http://localhost:8080/mcp/preview \
  -H "Authorization: Bearer dev-token" \
  -H "Content-Type: application/json" \
  -d '{"chunkId":""}'

PaddleOCR 本地部署(Docker 官方镜像)

仓库根目录自带 /paddle 目录(Dockerfile + server.py + docker-compose.yml),内部镜像仍基于官方 paddlepaddle/paddle,但已经封装好 FastAPI /ocr 服务。推荐直接使用该 compose 以避免在宿主机重复执行 docker run
  1. 启动服务(默认暴露 http://localhost:8000
   cd paddle
   docker compose up -d --build

- docker-compose 会构建 paddle/Dockerfile,并将共享内存设置为 8GB,适合 CPU 环境。 - 如需修改端口/卷名,可直接编辑 paddle/docker-compose.yml

  1. 验证容器
   curl http://localhost:8000/health
   curl -X POST http://localhost:8000/ocr \
     -F "file=@assets/samples/demo.png" \
     -F "language=chi_sim"

若返回 {"result":[...]},说明服务可用。使用 docker compose logs -f paddleocr 可实时查看 OCR 输出。

  1. 配置 .env(Worker 走 HTTP 模式)
   OCR_ENABLED=true
   OCR_MODE=http
   OCR_LANG=chi_sim
   OCR_API_URL=http://localhost:8000/ocr
   # OCR_API_KEY=           # 若你在 server.py 中增加鉴权,可在此填入 Bearer Token

- 在与 Worker 同一 Docker 网络内,可把 OCR_API_URL 改成 http://paddleocr:8000/ocr(paddle 服务名)。 - Worker 会在 OCR_MODE=http 下由 apps/worker/src/worker.ts 注入 HttpOcrAdapter,并通过 packages/core/src/ocr.tsmultipart/form-data 发送 filelanguage(以及 response_format=json)字段。

  1. 重启 Worker
   bun run scripts/run-migrations.ts
   START_WORKER=true ENV_FILE=.env bun run apps/worker/src/main.ts

上传 PDF/图片时会执行:写入临时文件 → 调用 /ocr → 将 JSON 解析为 ParsedElement[] → 自适应切块 → 本地向量化。

  1. 关闭/重启服务
   docker compose restart paddleocr   # 仅重启 OCR 容器
   docker compose down                # 需要完全停止时执行

PaddleOCR Docker 服务(请按需部署)

若需在其他主机或集群中运行,可同样复用 /paddle 目录构建镜像,然后长期以 HTTP 服务形式对外暴露。只要保持 POST /ocr 接口与 JSON 返回即可被 Worker 识别。
# 构建镜像(在仓库根目录执行)
docker build -t local/paddle-ocr ./paddle

# 在任意服务器运行(示例映射 9009 -> 8000)
docker run -d --name paddle-ocr -p 9009:8000 \
  -v /srv/paddle-ocr-data:/data \
  local/paddle-ocr
  • 需要 GPU、代理或额外依赖时,可在 paddle/Dockerfile 中自行扩展。
  • 启动完成后,使用 `curl -X POST http://:

/ocr -F "file=@..." -F "language=chi_sim" 验证,再在 .env 中设置 OCR_MODE=httpOCR_API_URL=http://: /ocr`。

  • 如果希望放在已有 compose / k8s 中,只需把 paddle 目录复制到目标环境并按需调整。

已有 Docker OCR 服务(HTTP 模式)

如果你已经维护了自定义 PaddleOCR 服务,只要它接受 multipart/form-data(字段 filelanguage)并返回 PaddleOCR 风格的 JSON 数组/对象,即可直接与 Worker 对接。
  1. 确认契约
   curl -X POST http://localhost:9009/ocr \
     -F "file=@assets/samples/demo.png" \
     -F "language=chi_sim"

服务需要返回如下结构之一:

   {"result":[{"text":"示例内容","score":0.99}]}

   [
     {"text":"示例内容","page":1}
   ]
  1. 配置 .env 为 HTTP 模式
   OCR_MODE=http
   OCR_LANG=chi_sim
   OCR_API_URL=http://localhost:9009/ocr
   OCR_API_KEY=           # 如服务需要 Bearer Token,可在此填写

Worker 会自动附加 Authorization: Bearer ...,并通过 packages/core/src/ocr.tsnormalizeOcrPayload 解析上述返回。

  1. 重启 Worker
   bun run scripts/run-migrations.ts
   START_WORKER=true ENV_FILE=.env bun run apps/worker/src/main.ts

若服务与你的 kb-worker 在同一 compose 网络,可用容器名(例如 http://paddleocr:8000/ocr)替代 localhost,以避免端口映射。

🧪 Testing & Verification

  • bun test:运行 Bun 单元测试(API/Worker/MCP 等)。
  • bun run scripts/test-matrix.ts:按顺序执行 unit → integration → e2e;若缺 Vitest/Playwright,会自动标记 skipped。
  • bun run scripts/api-smoke.ts:在已有 API 服务上执行端到端接口巡检,可通过 SMOKE_API_BASESMOKE_API_TOKENSMOKE_TENANT 环境变量覆盖目标。
  • API / Worker / MCP 日志:运行时分别写入 logs//{api|worker|mcp}.log,默认目录 logs/dev(或 logs/prod);可用 LOG_DIRLOG_ENVLOG_MAX_BYTES 自定义路径与 1MB 轮转阈值。
  • 受限环境下,可参考 .codex/testing.mdverification.md 记录的最新结果与风险(例如当前 WSL 无法执行 Windows 版 Bun)。

🛠 Operations Toolkit

脚本说明
scripts/deploy-local.sh统一的部署脚本(支持 bun/docker 模式、可选跳过 bootstrap/模型、自动启动应用)。
ops/scripts/backup.tspg_dump + MinIO mc + Qdrant 导出,默认 dry-run。
ops/scripts/restore.ts通过 psql/mc mirror/RabbitMQ HTTP API 恢复快照。
ops/scripts/reindex.ts调用 RabbitMQ HTTP API 触发重索引。
scripts/publish-images.ts基于 deploy/docker/Dockerfile.* 构建/推送 API/Worker/MCP 镜像。
scripts/rollback-stack.ts根据版本回滚镜像并重启 compose。
scripts/sync-models.ts下载文本/图片嵌入及 reranker/OCR 模型,支持离线缓存。

🌐 Web Console

  • 路径:apps/web
  • 功能:multipart /upload、REST & MCP 检索、MCP Related、标签/删除/重索引治理、流程概览(/stats + VectorLog 面板)、/model-settings 列表 + 目录回显、附件对象键复制/打开链接(可配置 VITE_PREVIEW_BASE)。
  • 启动:
  cd apps/web
  bun install
  VITE_API_BASE=http://localhost:8080 \
  VITE_API_TOKEN=dev-token \
  VITE_PREVIEW_BASE=http://localhost:9000/kb-preview \
  bunx vite dev --host 0.0.0.0 --port 5173
  • 模型配置 API:GET /model-settings/list 按库返回已保存配置,GET /model-settings/catalog 返回可用 provider/model 列表,前端页面可直接加载/套用。
  • 语义元数据生成需要为每个租户/库配置 metadata 角色模型(可选 local/remote);若未设置,Worker 会记录 warning 并跳过该阶段,请在 Web 控制台「模型设置」中至少写入一条 metadata 配置。

📚 Further Reading

  • docs/ingestion.md:上传 → 切块 → 嵌入 → 持久化流程与 bootstrap/storage 脚本说明。
  • docs/retrieval.md:Hybrid Retriever、向量调优策略。
  • docs/mcp.md:MCP 工具输入输出、调试方式与 HTTP 代理说明。
  • AGENTS.md:贡献者/运维协作准则。

🤝 Contributing

  • 请先阅读 AGENTS.md 了解编码/测试/文档规范。
  • 所有变更需更新 .codex/operations-log.md.codex/testing.mdverification.md 等记录文件。
  • 欢迎提 Issues 或提交 PR 讨论新的 ingestion/检索/MCP 功能。

📄 License

项目目前未附带 License 文件,如需在生产环境使用请先与仓库维护者确认授权。

PaddleOCR Docker 服务(参考部署示例)

如果你只需要一个可复制粘贴的命令在其他主机上拉起服务,可以直接复用 /paddle 目录构建镜像:
docker build -t local/paddle-ocr ./paddle
docker run -d --name paddle-ocr -p 9009:8000 local/paddle-ocr
docker build -t local/paddle-ocr ./paddle
docker run -d --name paddle-ocr -p 9009:8000 local/paddle-ocr

验证:curl -X POST http://localhost:9009/ocr -F "file=@assets/samples/demo.png" -F "language=chi_sim" 应返回 JSON 数组/对象。随后在 .env 中设置:

OCR_MODE=http
OCR_LANG=chi_sim
OCR_API_URL=http://localhost:9009/ocr

Worker 即会使用 HttpOcrAdapter 调用此服务。

目录标签

目录标签

文档检索TypeScript文档处理多模态知识库本地部署语义切分向量嵌入OCR处理

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP