badchars/ai-knowledge-graph
GitHub: badchars/ai-knowledge-graph
一个安全优先的AI/ML交互式知识图谱,可视化展示132个核心概念及其关联关系,并为每个术语提供漏洞分析、加固配置和研究参考。
Stars: 0 | Forks: 0
**[English](README.md) · [Türkçe](README.tr.md) · [Français](README.fr.md) · [中文](README.zh.md) · [العربية](README.ar.md) · [Русский](README.ru.md)**
**132 个术语 · 531 个关系 · 11 个类别 · 6 种语言**
[](LICENSE) [](data/terms/) [](data/relationships.yaml) [](data/categories.yaml) [](#-supported-languages) [](CONTRIBUTING.md) [](https://bun.sh) [](https://d3js.org) [](https://pages.github.com)
**132 个术语 · 531 个关系 · 11 个类别 · 6 种语言**
[](LICENSE) [](data/terms/) [](data/relationships.yaml) [](data/categories.yaml) [](#-supported-languages) [](CONTRIBUTING.md) [](https://bun.sh) [](https://d3js.org) [](https://pages.github.com)
## 为什么创建这个项目 AI 革命在过去短短几年里引入了**数百个新的技术术语**。从 _transformer architectures_ 到 _prompt injection attacks_,从 _quantization formats_ 到 _agentic AI frameworks_ —— 术语的版图扩张速度远超任何教科书、课程或文档的更新速度。 **这对每个技术角色都是一个真正的问题:** - 一位正在集成 LLM API 的 **开发者** 会遇到诸如 _KV-cache_、_temperature_、_top-p_、_system prompt_ 这样的术语 —— 但它们之间有什么联系?各自有什么安全隐患? - 一位正在审计 AI 系统的 **网络安全专家** 需要了解 _indirect prompt injection_、_RAG poisoning_、_model denial-of-service_ —— 但哪里有一张清晰的地图? - 一位在 Kubernetes 上部署 vLLM 的 **DevSecOps 工程师** 需要了解 _tensor parallelism_、_continuous batching_、_PagedAttention_、_CUDA stream hijacking_ —— 所有这些都需要在上下文中理解,且相互关联。 - 一位 **研究人员** 需要看到 _differential privacy_ 如何与 _training data extraction_ 关联,_RLHF_ 如何连接到 _alignment_,_MoE_ 如何改变推理的格局。 **现有的资源分散各处。** 博客文章覆盖单个主题。文档存在于孤岛中。没有一个单一的资料能够映射 AI/ML 概念之间的联系、它们的安全隐患以及实际配置 —— 并且涵盖多种语言。 **本项目填补了这一空白。** 一个交互式的力导向知识图谱,可视化展示 132 个 AI/ML 概念如何相互关联,并提供深入的内容,涵盖安全漏洞、加固配置、研究论文和可操作的建议 —— 支持 6 种语言。
## 每个术语包含的内容 图中的每个节点都会打开一个丰富、结构化的知识卡片: | 部分 | 内容 | 示例(`RAG`) | |---------|---------|-----------------| | **描述** | 带有内联链接的 2-3 段解释 | 检索增强生成如何工作,关键组件,为什么它能减少幻觉 | | **类比** | 用于建立直觉的现实世界对比 | _“就像一场开卷考试 —— 模型查阅答案而不是死记硬背所有内容”_ | | **安全** | 特定机制相关的漏洞及其严重程度 | 文档投毒(高)、检索操纵(高)、上下文注入(中) | | **配置** | 用于加固的可运行代码示例 | Python:分块大小限制、嵌入验证、检索过滤 | | **研究** | 论文、官方文档、OWASP 指南 | arXiv 链接、供应商文档、安全公告 | | **提示** | 快速可操作的建议 | _“在将检索到的文档注入 prompt 之前务必进行验证”_ |
### 安全优先的内容 每个术语的安全部分都**与其自身的机制紧密相关** —— 而非泛泛的建议。 | 术语 | 安全重点 | |------|---------------| | **GPU** | 内存隔离漏洞、侧信道攻击、CUDA 流劫持 | | **Transformer** | 自注意力记忆化、位置编码操纵 | | **KV-Cache** | 跨租户缓存投毒、注意力状态泄露 | | **Tokenizer** | 同形异义字攻击、BPE token 走私、Unicode 操纵 | | **RAG** | 文档投毒、检索操纵、上下文注入 | | **LoRA** | 适配器投毒、共享 hub 上的恶意适配器注入 | | **vLLM** | 未授权 API 访问、通过服务端点窃取模型 | | **HuggingFace** | Pickle 反序列化 RCE、模型供应链攻击 | | **Prompt Injection** | 基于 RAG 的攻击、工具使用劫持、Agent 操纵 | | **Chat Template** | Tokenizer 利用、系统 prompt 边界绕过 |
## 设计 该图谱使用了一种受 **Apple 启发的极简主义** 视觉语言,称为 **Snow**: - 带有低透明度类别填充和微妙中心点的干净圆形 - 用于关系链接的二次贝塞尔曲线 —— 默认几乎不可见,交互时高亮 - `Inter` 字体家族,遵循 Apple HIG 间距和字重层级 - 浅色模式:纯白 `#fff` 背景,`#f5f5f7` 表面卡片 - 深色模式:`#1c1c1e` 背景,`#2c2c2e` 表面 —— 原生 Apple 深色调色板 - 无渐变、无发光效果、节点上无动画 —— 纯粹的清晰度 | 特性 | 详情 | |---------|---------| | **主题** | 浅色和深色模式,带有平滑过渡 | | **节点大小** | 与连接数量成比例 | | **链接行为** | 默认透明,悬停/选中时高亮 | | **持续高亮** | 选中节点在面板打开时保持连接可见 | | **Spotlight 搜索** | `Cmd+K` / `Ctrl+K` 搜索所有术语 | | **响应式** | 桌面、平板和移动端布局 |
## 11 个类别 | 类别 | 颜色 | 示例术语 | |----------|-------|--------------| | **Hardware** | `#f87171` | GPU, CUDA, VRAM, TPU, DGX Spark | | **Architecture** | `#60a5fa` | Transformer, Attention, Encoder-Decoder, MoE | | **Training** | `#a78bfa` | Pretraining, Fine-tuning, RLHF, LoRA, DPO | | **Quantization** | `#34d399` | FP16, INT4, GPTQ, AWQ, GGUF | | **Inference** | `#fbbf24` | vLLM, KV-Cache, PagedAttention, Speculative Decoding | | **Prompting** | `#f472b6` | System Prompt, RAG, Few-Shot, Chain-of-Thought | | **Tools & Agents** | `#a3e635` | MCP, Tool Use, Function Calling, Agent, Agentic AI | | **Model Types** | `#22d3ee` | LLM, VLM, Foundation Model, SLM | | **AI Security** | `#ef4444` | Prompt Injection, Jailbreak, Data Poisoning, AI Firewall | | **Fundamentals** | `#8b5cf6` | Neural Network, Deep Learning, Gradient, Backpropagation | | **Ecosystem** | `#f59e0b` | HuggingFace, Ollama, LangChain, Gradio |
## 支持的语言 | 语言 | 代码 | 方向 | |----------|------|-----------| | English | `en` | LTR | | Turkish | `tr` | LTR | | French | `fr` | LTR | | Chinese | `zh` | LTR | | Arabic | `ar` | **RTL** | | Russian | `ru` | LTR | 所有描述、类比、安全发现、提示和关系标签均提供全部 6 种语言的版本。UI 支持动态切换,包括对阿拉伯语的完整 RTL 支持。
## 入门指南 ### 前置条件 - [Bun](https://bun.sh) v1.0+ ### 安装与构建 ``` git clone https://github.com/badchars/ai-knowledge-graph.git cd ai-knowledge-graph bun install bun run build ``` ### 本地预览 ``` bun run dev # builds and opens in browser ``` ### 数据验证 ``` bun run validate # checks all YAML files against schema ```
## 部署到 GitHub Pages ### 自动(推荐) 仓库包含处理所有事情的 CI/CD 工作流: 1. **Fork** 或将此仓库推送到你的 GitHub 账户 2. 前往 **Settings > Pages** 3. 在 "Build and deployment" 下,选择 **Source: GitHub Actions** 4. 完成 —— 每次推送到 `main` 都会触发构建和部署 ``` push to main → bun install → build → upload dist/ → deploy to Pages ``` ### 手动 ``` bun run build # 上传 dist/ 到任意静态主机: # GitHub Pages, Netlify, Vercel, Cloudflare Pages 等。 ``` ### PR 验证 每个触及 `data/**` 的 Pull Request 都会自动运行: - `bun run validate` —— YAML 模式检查 - `bun run build` —— 确保站点能够构建 - 如果任一步骤失败,PR 将无法合并
## 使用方法 | 操作 | 如何执行 | |--------|-----| | **打开术语详情** | 点击任意节点 | | **查看连接** | 将鼠标悬停在节点上 | | **搜索** | `Cmd+K` 或 `Ctrl+K` 或点击搜索栏 | | **缩放** | 滚轮滚动 | | **平移** | 点击并拖动背景 | | **重新排列** | 拖动单个节点 | | **切换语言** | 头部的语言选择器 | | **切换主题** | 头部的太阳/月亮图标 | | **关闭面板** | `ESC` 键 | | **导航相关术语** | 点击详情面板中的相关术语 |
## 贡献 我们欢迎任何人的贡献 —— AI 研究人员、安全专家、开发者、学生。 ### 快速开始 ``` # 1. Fork 和 clone git clone https://github.com/YOUR_USERNAME/ai-knowledge-graph.git cd ai-knowledge-graph && bun install # 2. 创建新 term cp data/terms/_template.yaml data/terms/my-new-term.yaml # 3. 编辑 YAML 文件 # 4. 在 data/relationships.yaml 中添加关系 # 5. 验证和测试 bun run validate && bun run build # 6. 提交 PR ``` ### 贡献类型 | 类型 | 难度 | 影响力 | |------|-----------|--------| | 添加新术语 | 中等 | 高 | | 添加翻译 | 简单 | 高 | | 修复描述 | 简单 | 中 | | 添加安全发现 | 中等 | 非常高 | | 添加研究链接 | 简单 | 中 | | 添加配置示例 | 中等 | 高 | | 报告不准确之处 | 简单 | 高 | ### 术语文件格式 每个术语都是 `data/terms/` 中的一个独立 YAML 文件: ``` id: my-new-term # must match filename name: MyTerm # short display name fullName: My Full Term Name # expanded name category: architecture # one of 11 categories desc: en: | English description with [inline links](https://example.com). Multiple paragraphs separated by blank lines. tr: | Turkish description... fr: "" zh: "" ar: "" ru: "" analogy: en: "A real-world comparison..." security: - title: en: Vulnerability Name description: en: How this vulnerability works. severity: high # critical | high | medium | low research: - url: https://arxiv.org/abs/xxxx.xxxxx label: en: Paper Title tips: - en: A quick actionable tip ``` ### 添加关系 ``` # data/relationships.yaml - source: my-new-term target: transformer label: en: uses tr: kullanir fr: utilise zh: 使用 ar: يستخدم ru: использует ``` ### Issue 模板 无需代码 —— 使用我们的表单: - **[建议新术语](../../issues/new?template=new-term.yml)** - **[更新术语](../../issues/new?template=update-term.yml)** - **[添加翻译](../../issues/new?template=add-translation.yml)** 请参阅 **[CONTRIBUTING.md](CONTRIBUTING.md)** 获取完整指南。
## 项目结构 ``` ai-knowledge-graph/ ├── build.ts # YAML → static site generator ├── package.json # build, dev, validate scripts ├── CONTRIBUTING.md ├── LICENSE # MIT │ ├── data/ │ ├── terms/ # 132 individual YAML files │ │ ├── _template.yaml # contributor template │ │ ├── gpu.yaml │ │ ├── transformer.yaml │ │ ├── prompt-injection.yaml │ │ └── ... │ ├── relationships.yaml # 531 edges (6-language labels) │ ├── categories.yaml # 11 categories with colors │ └── ui.json # UI strings (6 languages) │ ├── public/ │ ├── css/style.css # Snow theme (light + dark) │ └── js/ │ ├── graph.js # D3.js force simulation │ ├── i18n.js # Language switching │ └── theme.js # Light/dark toggle │ ├── templates/ │ ├── index.html # Graph page template │ └── term.html # Term detail page template │ ├── scripts/ │ ├── validate.ts # YAML schema validator │ └── migrate-to-yaml.ts # One-time JSON → YAML migration │ └── .github/ ├── workflows/ │ ├── validate.yml # PR validation │ └── deploy.yml # GitHub Pages deploy └── ISSUE_TEMPLATE/ ├── new-term.yml ├── update-term.yml └── add-translation.yml ```
## 架构 ``` ┌─────────────────────────────────────────────────────────┐ │ Data Layer (YAML) │ │ │ │ data/terms/*.yaml 132 individual term files │ │ data/relationships 531 edges with 6-language labels │ │ data/categories 11 categories with colors │ │ data/ui.json UI strings for 6 languages │ └────────────────────────────┬────────────────────────────┘ │ bun run build │ ┌────────────────────────────▼────────────────────────────┐ │ Build Output (dist/) │ │ │ │ index.html Graph page (data inlined) │ │ term/*.html 132 individual term pages │ │ data/graph.json Aggregated data for API use │ │ css/, js/ Static assets │ └────────────────────────────┬────────────────────────────┘ │ GitHub Actions │ ┌────────────────────────────▼────────────────────────────┐ │ GitHub Pages │ │ │ │ Static hosting — zero backend, zero database │ │ Auto-deploys on every push to main │ └─────────────────────────────────────────────────────────┘ ```
## 适用人群 | 角色 | 如何提供帮助 | |------|---------------| | **开发者** | 理解你每天遇到的 AI/ML 术语 —— 它们的含义、联系以及安全隐患 | | **安全专家** | 绘制 AI 攻击面 —— 从 prompt 注入到模型窃取,包含针对具体机制的漏洞 | | **DevSecOps 工程师** | 包含真实代码的加固指南 —— 每个安全发现都包含配置示例 | | **渗透测试人员** | 架构知识揭示攻击向量 —— 深入理解 AI 系统以进行测试 | | **AI/ML 工程师** | 生态系统的快速参考 —— 上下文中的工具、框架和技术 | | **学生与研究人员** | 类比让概念变得直观,研究链接指向一手资料 |
## 技术栈 | 组件 | 技术 | |-----------|-----------| | 运行时 | [Bun](https://bun.sh) | | 可视化 | [D3.js v7](https://d3js.org) | | 数据 | YAML(每个术语一个独立文件) | | 构建依赖 | [js-yaml](https://github.com/nodeca/js-yaml) | | 托管 | GitHub Pages | | 前端 | 原生 HTML / CSS / JS | | CI/CD | GitHub Actions |
## 路线图 - [ ] GitHub Pages 实时部署 - [ ] 跨所有术语内容的模糊搜索 - [ ] 术语并排比较 - [ ] 导出为 PDF / Markdown - [ ] 用于博客和文档的可嵌入小部件 - [ ]程序化访问的 API 端点 - [ ] 社区对术语准确性的投票 - [ ] 从 OWASP / MITRE 数据库自动生成术语 - [ ] 日语和韩语语言支持
## 许可证 [MIT](LICENSE)
**出于好奇心与安全思维而构建。**
[报告问题](../../issues) · [参与贡献](CONTRIBUTING.md) · [查看图谱](#)
[报告问题](../../issues) · [参与贡献](CONTRIBUTING.md) · [查看图谱](#)
标签:AI安全, Apex, Bun, Chat Copilot, CISA项目, D3.js, DLL 劫持, DNS解析, GitHub Pages, GPU安全, IPv6支持, LLM, Unmanaged PE, Webhook, 交互式图表, 人工智能, 力导向图, 多模态安全, 多语言支持, 大语言模型, 安全测试框架, 开源项目, 提示注入, 教育resources, 数据可视化, 术语表, 机器学习, 用户模式Hook绕过, 网络安全, 自定义脚本, 隐私保护, 集群管理