Skip to content

topbat/jianwei

Repository files navigation

鉴微 · JIANWEI

观澜 AI 潮,鉴取技术微光

面向开发者 / 架构师 / AI 研究者的智能技术知识库 见微(资讯追踪)· 知著(GitHub 解剖)· 重构(技术站熔炼)· 鉴真(RAG 知识库)

CI Deploy Vue 3 TypeScript FastAPI Python 3.12 Qdrant Docker

本仓库是 PRD V1.5 + 技术方案 V1.0 的工程落地:Vue 3 前端 + FastAPI/Celery 后端 + Qdrant/PG/Redis/MinIO + Docker 一键部署,同一套 compose 在 Windows(Docker Desktop)阿里云 ECS 通跑。参与开发请阅读 CONTRIBUTING.md


✨ 产品功能介绍与运行截图

语出《韩非子》「见微以知明,见端以知末」——在信息洪流中替你过滤噪音,洞察前沿技术的精微之处。四大模块分别对应 见微(追踪)· 知著(解剖)· 重构(本土化)· 鉴真(沉淀检索)

① 见微 · AI 前沿资讯流

每 6 小时自动巡航全球 AI 第一现场(OpenAI / Anthropic / Google 官博、HuggingFace、GitHub Trending、ArXiv、权威媒体),对同一事件做语义去重合并、过滤营销水文,把标题与要点翻译为地道中文并用无头浏览器截取英文原网页,以时间轴瀑布流呈现。

  • 高频不漏:每 6h 滚动抓取,先进先出保留最新最高质量的 50 条。
  • 去重去噪:基于语义相似度合并多源同事件报道,只留干货。
  • 双语留源:中文翻译 + 英文原网页截图 + 强制留存原始 URL,一键核验。
  • 一键沉淀:「收藏」即永久入个人知识库,可后续语义检索。

见微 · AI 前沿资讯流

② 知著 · GitHub 深度解剖

粘贴仓库 URL,自动拉取目录树与依赖,由「代码架构师 Agent」生成万字级中文深度解析报告,并用 Mermaid 架构图可视化模块关系;分析严格锚定真实文件,杜绝臆造。

  • 六维拆解:基础档案 / 技术栈 / 模块职责 / 通信机制 / 创新点 / 启动指南。
  • 架构可视化:自动生成 Mermaid 架构与通信关系(REST / WebSocket / 异步队列)。
  • 真实兜底 + 自动入库:锚定真实目录与依赖,报告结构化存入知识库供检索。

知著 · GitHub 深度解剖报告

③ 重构 · 技术站熔炼炉

输入英文文档站根 URL,遍历核心导航(≤3 层)抓正文、剔冗余,由「技术作家 Agent」熔炼为结构化中文 Markdown / 在线 PPT,并产出带中文注释、复制即测的示例代码,配三栏沉浸阅读。

  • 整站本土化:站点级爬取清洗 → 带层级目录的中文 MD 或在线 PPT。
  • 实操示例:提炼 3-5 个高频场景,生成带中文注释、复制即测的代码。
  • 三栏沉浸阅读:左大纲 / 中渲染 / 右 AI 助手;支持导出 .md / .pptx 并自动入库。

重构 · 技术站熔炼炉

④ 鉴真 · 智能知识库(RAG,底座)

把前三模块产出与用户自有资料(PDF / Word / TXT / MD / 代码)多源汇聚,自动打标签 + 摘要 + 归类,以 Notion 式界面管理;检索采用向量语义搜索,并提供跨文档 RAG 问答:流式输出、行内引用 [n] 可点击溯源、库内无料即明确告知,从机制上防幻觉。

  • 多源汇聚 + 自动结构化:入库后自动抽取 Tags、生成摘要、归入预设分类。
  • 语义搜索 < 1s:自然语言提问,卡片高亮匹配段落并标注来源。
  • 跨文档 RAG 问答:流式生成 + 强制行内引用 [n] 跳转原文,召回为空回「未找到」防幻觉。
  • Notion 式管理:文件夹层级 / 标签筛选 / 重命名 / 移动 / 删除 / 分享;多租户隔离。
登录(铜镜深色 + 多租户隔离)
安全登录(铜镜设计 · 多租户隔离)
知识库管理
知识库管理(Notion 式树状导航)
语义搜索
全局语义搜索(高亮命中 + 来源)
RAG 问答
跨文档 RAG 问答(流式 + 行内引用溯源)

核心非功能指标

维度 指标
资讯抓取(每 6h 定时) 全流程 < 30 分钟
GitHub / 技术站解析 响应 3–5 分钟
知识库语义搜索 < 1 秒
RAG 跨文档问答 首字 < 3 秒
传输安全 全站 HTTPS
数据隔离 多租户隔离,非本人授权不可见

截图由端到端测试(Playwright)真实运行生成,见 tests/screenshots/


🎬 产品介绍视频(5 分钟 · 中文配音)

观看「鉴微」产品介绍视频

时长约 5:00,「铜镜」风格幻灯片 + 中文 AI 配音,串讲四大模块、技术架构、一键部署与质量门禁。点击封面在 GitHub 上播放;分镜与可一键重建的制作管线见 docs/video/


一、5 分钟快速开始

Windows(Docker Desktop)

# 1. 启动 Docker Desktop
# 2. 在仓库根目录:
.\scripts\start.ps1 -Env dev          # 首次会自动生成 .env(dev 用 mock 模型,免 Key)
# 3. 浏览器打开 http://localhost

阿里云 ECS(Linux)

bash scripts/start.sh --env dev        # 测试环境
# 生产:编辑 .env 后
bash scripts/start.sh --env master --build

dev 默认 LLM_PROVIDER=mock:无需任何真实 API Key,全栈(资讯/解析/RAG/搜索)即可端到端跑通并返回确定性假数据,方便开发与自动化测试。配好真实 Key 后把 .envLLM_PROVIDER 改为 domestic(通义/DeepSeek)/ anthropic / openai 即可。


二、双环境模型(dev / master)

dev master(生产)
compose docker-compose.yml + docker-compose.dev.yml docker-compose.yml + docker-compose.prod.yml
前端 Vite Dev Server(HMR,frontend:5173 nginx 托管构建产物(frontend:80
API uvicorn --reload + 源码挂载 gunicorn 多 worker
证书 localhost 自签 Caddy 自动 Let's Encrypt
中间件端口 暴露宿主机(5432/6379/6333/9001…) 仅内网,外部只 80/443
模型 mock(默认) domestic(通义/DeepSeek)
镜像 本地构建 优先拉阿里云 ACR
env 模板 .env.dev.example .env.prod.example

切换只需 -Env dev|master(PowerShell)或 --env dev|master(bash)。


三、目录结构

jianwei/
├─ docker-compose.yml            # base 编排(全服务、命名卷、healthcheck)
├─ docker-compose.dev.yml        # dev 覆盖(HMR/源码挂载/端口暴露)
├─ docker-compose.prod.yml       # master 覆盖(ACR/资源限制/收敛端口)
├─ .env.example / .env.dev.example / .env.prod.example
├─ deploy/
│  ├─ Caddyfile / Caddyfile.dev  # 反代 + 自动 HTTPS + SSE 透传
│  └─ acr-push.sh                # 构建并推送阿里云 ACR
├─ scripts/                      # 一键脚本(.ps1 = Windows,.sh = ECS)
│  ├─ start / stop / logs / test
├─ backend/                      # FastAPI + Celery(单镜像多命令)
│  ├─ app/{api,worker,agents,rag,ingest,llm,models,schemas,core}
│  ├─ Dockerfile / Dockerfile.crawler
│  └─ tests/                     # 安全 / 性能 / 功能 测试
├─ frontend/                     # Vue 3 + TS + Vite + Tailwind + 铜镜设计语言
│  └─ src/{api,components,composables,views,stores,design}
├─ tests/e2e/                    # Playwright 端到端 + 截图
└─ docs/                         # 详设 / OpenAPI / 成本测算 / 测试报告

四、四大模块 → 接口速查

模块 关键接口
① 资讯流(见微) GET /api/feedPOST /api/feed/{id}/favorite、Beat 每 6h 抓取
② GitHub 解剖(知著) POST /api/analyze/githubtask_idGET /api/tasks/{id}/stream(SSE)
③ 站点熔炼(重构) POST /api/analyze/site {url, format:md|ppt}task_id
④ 知识库(鉴真) GET /api/searchPOST /api/chat(SSE 流式 + 行内引用)、/api/kb/*

完整接口见 docs/openapi.yamldocs/api-spec.md。 模块详设见 docs/design-feed-pipeline.md(资讯 6h 管线)、docs/design-rag-citation.md(RAG 引用机制)。 成本测算见 docs/cost-estimation.md


五、测试(先安全/性能,后功能/完整 + 截图)

.\scripts\test.ps1            # Windows:安全 → 性能 → 功能 → E2E+截图
bash scripts/test.sh         # ECS:同上
  • ① 安全bandit(静态)+ pip-audit(依赖 CVE)+ pytest -m security(鉴权/多租户隔离/越权/限流)。
  • ② 性能tests/perf/run_perf.py 断言 SLA(语义搜索 < 1s、RAG 首 token < 3s、健康检查 P95)。不达标即中断,不进入功能测试。
  • ③ 功能/完整pytest(覆盖四模块业务流)+ 覆盖率。
  • ④ 截图:Playwright 跑通核心用户流程并截图到 tests/screenshots/

测试结论与截图汇总见 docs/test-report.md


六、生产部署要点(阿里云 ECS)

  1. CI 构建并推 ACR:REGISTRY=registry.cn-hangzhou.aliyuncs.com/ns TAG=$(git rev-parse --short HEAD) bash deploy/acr-push.sh
  2. ECS 上:编辑 .env(改 CHANGE_ME、备案 DOMAIN、真实 Key)→ bash scripts/start.sh --env master
  3. 安全组仅放行 80/443;Caddy 自动签发证书。
  4. 对象存储可换 阿里云 OSS、PG/Redis 可换 RDS/Redis 云服务(改 .env 即可)。
  5. 国内网络合规:默认 LLM_PROVIDER=domestic;需 Claude 经合规网关。

七、技术栈一览

前端 Vue 3 · TS · Vite · Tailwind · reka-ui · motion-v · markdown-it/Shiki · reveal.js · Mermaid 后端 FastAPI · SQLAlchemy 2(async) · Celery · Pydantic v2 · Playwright · Qdrant · bge-m3 基础设施 Docker Compose · Caddy · PostgreSQL 16 · Redis 7 · MinIO · 阿里云 ACR/OSS/RDS


八、初始化演示数据

.\scripts\seed.ps1            # Windows
bash scripts/seed.sh          # ECS

写入:演示账号 demo@jianwei.ai / Demo@2026(Pro) + 15 条 AI 资讯 + 7 篇知识库文档(可语义搜索/RAG)。登录即见数据。


九、CI/CD(GitHub Actions)

  • CI.github/workflows/ci.yml):每次 push/PR/手动 触发 → 前端构建 + 后端起栈跑 安全/性能/功能 测试。
  • 部署.github/workflows/deploy.yml)三种触发:
    1. 提交触发 — push 到 master
    2. 网页触发 — Actions 页 "Run workflow";
    3. 脚本/API 触发gh api repos/<owner>/<repo>/dispatches -f event_type=deploy。 流程:构建并推送镜像(默认 GHCR,可改阿里云 ACR)→ SSH 部署到 ECS(docker compose pull && up -d + 健康检查)。

部署所需仓库 Secrets:

Secret 说明
ECS_HOST / ECS_USER / ECS_SSH_KEY ECS 地址 / 用户 / 私钥(缺省则跳过远程部署,仅推镜像)
ECS_PATH 服务器上仓库目录(含已配置好的 .env
REGISTRY / REGISTRY_HOST / REGISTRY_USERNAME / REGISTRY_PASSWORD 改用阿里云 ACR 时配置(默认走 GHCR,无需配置)

变更记录见 CHANGELOG.md

About

鉴微 · AI 技术追踪与深度解析知识库(Vue3 铜镜 + FastAPI/Celery + Qdrant RAG,Docker 一键部署)

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors