灵桥 Linkora 本体以 GNU GPL-3.0-or-later 发布(LICENSE)。 本页列出 Linkora 在运行、构建、测试过程中引用或分发的第三方开源组件及其许可证。
本页是仓库根目录 THIRD_PARTY_NOTICES.md 的文档站镜像。以该文件为准,两者不一致时以仓库文件为唯一真源。
| 领域 | 组件 | 许可证 |
|---|---|---|
| Web 服务 | FastAPI、Uvicorn、Starlette、Jinja2、PyJWT、python-multipart | MIT / BSD-3-Clause / Apache-2.0 |
| 配置与校验 | pydantic、PyYAML、python-dotenv、platformdirs | MIT / BSD-3-Clause |
| RAG 与检索 | sentence-transformers、faiss-cpu、numpy、jieba、transformers、tokenizers、huggingface_hub | Apache-2.0 / MIT / BSD-3-Clause |
| LLM 接入 | openai(OpenAI 兼容协议客户端) | Apache-2.0 |
| 文档解析 | pdfplumber、pdfminer.six、python-docx、python-pptx、openpyxl、beautifulsoup4、lxml | MIT / BSD-3-Clause |
| OCR | rapidocr-onnxruntime、onnxruntime、opencv-python、pytesseract、Pillow、pyclipper、shapely | Apache-2.0 / MIT / MIT-CMU / BSD-3-Clause |
| PDF 渲染 | pypdfium2(含捆绑的 PDFium) | Apache-2.0 / BSD-3-Clause |
| 前端 | Bootstrap 5.3.3、Chart.js 4.4.1、Font Awesome Free 7.3.1 | MIT / CC BY 4.0 + SIL OFL 1.1 |
| 开发与 CI | ruff、pyright、pytest、pip-audit、uv、gitleaks、esbuild、vitest、jsdom | MIT / Apache-2.0 |
| AI 模型权重 | BAAI bge 系列(MIT)、Qwen3-Embedding(Apache-2.0) | 运行时下载,不随仓库分发 |
以下资源以二进制 / 压缩源码形式直接存放在仓库中,属于「再分发」,须保留版权与许可证声明。
| 组件 | 版本 | 许可证 | 用途 |
|---|---|---|---|
| Bootstrap | 5.3.3 | MIT | 基础样式与栅格(CSS 在用;JS bundle 已 vendored 但当前无引用) |
| Chart.js | 4.4.1 | MIT | 仪表盘图表(按需懒加载) |
| Font Awesome Free | 7.3.1 | 图标 CC BY 4.0;字体 SIL OFL 1.1;代码 MIT | 界面图标(子集化) |
必需署名
图标由 Font Awesome Free 7.3.1 提供,© Fonticons, Inc., 依 CC BY 4.0 授权使用。 字体依 SIL OFL 1.1 授权,代码依 MIT 授权。
模型权重由 huggingface_hub 在首次使用时下载到本地缓存,不随本仓库分发;
使用与再分发权重须遵守各模型自身许可证。
| 模型 | 许可证 | 用途 |
|---|---|---|
| BAAI/bge-small-zh-v1.5 | MIT | Embedding(默认) |
| BAAI/bge-base-zh-v1.5 | MIT | Embedding(可选) |
| BAAI/bge-m3 | MIT | Embedding(可选,多语,1024 维) |
| BAAI/bge-reranker-base | MIT | CrossEncoder 重排 |
| Qwen3-Embedding-0.6B | Apache-2.0 | Embedding(可选,经 OpenAI 兼容服务调用) |
LLM / Embedding 服务(云端 API 或本地 Ollama、LM Studio、vLLM 等)由使用者自行配置与部署, 不属本项目分发范围。
| 工具 | 许可证 | 用途 |
|---|---|---|
dws(钉钉 Workspace CLI) |
见钉钉官方发布说明 | 钉钉消息 / 文档 / 审批读写 |
lark-cli(飞书) |
见飞书官方发布说明 | 飞书消息读写 |
wecom-cli(企业微信) |
见企业微信官方发布说明 | 企业微信消息读写 |
| Tesseract OCR | Apache-2.0 | pytesseract 底层 OCR 引擎 |
| Ollama(可选) | MIT | 本地 LLM 推理服务 |
| Node.js(仅前端构建) | MIT | 运行 esbuild / vitest |
| Python 3.14 | PSF-2.0 | 运行时 |
以上均不随本仓库分发,需使用者自行安装。
完整闭包见 requirements.lock, 逐包许可证明细见 THIRD_PARTY_NOTICES.md 第 6 节。 其中绝大多数为 MIT / BSD / Apache-2.0 / ISC 等宽松许可;需单独注意的条目:
| 组件 | 许可证 | 说明 |
|---|---|---|
| pypdfium2(含捆绑 PDFium 与各静态库) | Apache-2.0 / BSD-3-Clause | 再分发须随附 wheel 内 licenses/ 目录的全部许可文本 |
| certifi、tqdm | MPL-2.0 | 文件级 copyleft:修改其自身文件时须公开该文件源码 |
| cuda-bindings、cuda-toolkit、nvidia-*(20 个包) | NVIDIA 官方发行包(Apache-2.0 或 NVIDIA 专有 EULA) | 仅 Linux 安装(torch 的 CUDA 运行时) |
Linkora 以 GPL-3.0-or-later 发布,与以下第三方许可证均兼容: MIT、BSD-2-Clause、BSD-3-Clause、ISC、MIT-0、Apache-2.0、MPL-2.0(文件级 copyleft)、 PSF-2.0、Unlicense、CC0。本项目当前不含 AGPL 组件(历史上的 PyMuPDF 依赖已移除)。
结论:本项目当前不含任何 AGPL 组件,无需履行 AGPL 第 13 条的源码提供义务。
早期版本的 PDF 页面渲染依赖 PyMuPDF(AGPL-3.0 或 Artifex 商业双许可)。AGPL §13 的关键
影响在于:以网络服务形式提供时,AGPL 要求向使用者提供源码(GPL 不会因「只提供服务、
不分发」而触发,AGPL 会)。
本项目已将其替换为 pypdfium2
(Apache-2.0 / BSD-3-Clause):渲染语义等价(page.render(scale=300/72) 与
get_pixmap(dpi=300) 同为 72 DPI 基准),且 pypdfium2 原本已是 pdfplumber 的传递依赖,
替换未引入任何新增依赖,反而净减少一个直接依赖。
逐条清单与版本对照见仓库 THIRD_PARTY_NOTICES.md 第 7.2 节。
Font Awesome Free 的图标采用 CC BY 4.0,署名是硬性要求。任何衍生作品(含二次分发的 UI) 必须保留署名,或改用商业授权的 Font Awesome Pro。
| 许可证 | 全文地址 |
|---|---|
| GPL-3.0 | https://www.gnu.org/licenses/gpl-3.0.txt |
| Apache-2.0 | https://www.apache.org/licenses/LICENSE-2.0 |
| MIT | https://opensource.org/license/mit |
| BSD-2-Clause | https://opensource.org/license/bsd-2-clause |
| BSD-3-Clause | https://opensource.org/license/bsd-3-clause |
| ISC | https://opensource.org/license/isc-license-txt |
| MPL-2.0 | https://www.mozilla.org/en-US/MPL/2.0/ |
| PSF-2.0 | https://opensource.org/license/psf-2-0 |
| CC BY 4.0 | https://creativecommons.org/licenses/by/4.0/ |
| SIL OFL 1.1 | https://openfontlicense.org/ |
最后更新:2026-09-18