Skip to content

badchars/ai-knowledge-graph

Repository files navigation

English · Türkçe · Français · 中文 · العربية · Русский


AI/ML Knowledge Graph




132 terms · 531 relationships · 11 categories · 6 languages


License: MIT Terms Relationships Categories Languages PRs Welcome Built with Bun D3.js GitHub Pages





Why This Project Exists

The AI revolution has introduced hundreds of new technical terms into our vocabulary in just the last few years. From transformer architectures to prompt injection attacks, from quantization formats to agentic AI frameworks — the terminology landscape is expanding faster than any textbook, course, or documentation can keep up with.

This is a real problem across every technical role:

  • A developer integrating an LLM API encounters terms like KV-cache, temperature, top-p, system prompt — but how do they connect? What are the security implications of each?
  • A cybersecurity professional auditing an AI system needs to understand indirect prompt injection, RAG poisoning, model denial-of-service — but where is the map?
  • A DevSecOps engineer deploying vLLM on Kubernetes needs to know about tensor parallelism, continuous batching, PagedAttention, CUDA stream hijacking — all in context, all connected.
  • A researcher needs to see how differential privacy relates to training data extraction, how RLHF connects to alignment, how MoE changes the inference landscape.

Existing resources are scattered. Blog posts cover individual topics. Documentation lives in silos. No single resource maps the connections between AI/ML concepts, their security implications, and practical configurations — across multiple languages.

This project fills that gap. An interactive, force-directed knowledge graph that visualizes how 132 AI/ML concepts relate to each other, with deep-dive content on security vulnerabilities, hardening configurations, research papers, and actionable tips — in 6 languages.




What's Inside Each Term

Every node in the graph opens a rich, structured knowledge card:

Section Content Example (RAG)
Description 2-3 paragraph explanation with inline links How retrieval-augmented generation works, key components, why it reduces hallucination
Analogy Real-world comparison for intuition "Like an open-book exam — the model looks up answers instead of memorizing everything"
Security Mechanism-specific vulnerabilities with severity Document poisoning (high), retrieval manipulation (high), context injection (medium)
Configuration Working code examples for hardening Python: chunk size limits, embedding validation, retrieval filtering
Research Papers, official docs, OWASP guides arXiv links, vendor documentation, security advisories
Tips Quick actionable recommendations "Always validate retrieved documents before injecting into the prompt"

Security-First Content

Every term's security section is tied to its own mechanism — not generic advice.

Term Security Focus
GPU Memory isolation vulnerabilities, side-channel attacks, CUDA stream hijacking
Transformer Self-attention memorization, positional encoding manipulation
KV-Cache Cross-tenant cache poisoning, attention state leakage
Tokenizer Homoglyph attacks, BPE token smuggling, Unicode manipulation
RAG Document poisoning, retrieval manipulation, context injection
LoRA Adapter poisoning, malicious adapter injection on shared hubs
vLLM Unauthorized API access, model theft via serving endpoints
HuggingFace Pickle deserialization RCE, model supply chain attacks
Prompt Injection RAG-based attacks, tool-use hijacking, agent manipulation
Chat Template Tokenizer exploitation, system prompt boundary bypass



Design

The graph uses an Apple-inspired minimal visual language called Snow:

  • Clean circles with low-opacity category fill and a subtle center dot
  • Quadratic bezier curves for relationship links — nearly invisible, illuminated on interaction
  • Inter font family with Apple HIG spacing and weight hierarchy
  • Light mode: pure white #fff background, #f5f5f7 surface cards
  • Dark mode: #1c1c1e background, #2c2c2e surfaces — native Apple dark palette
  • No gradients, no glow effects, no animations on nodes — pure clarity
Feature Details
Theme Light & Dark with smooth transition
Node sizing Proportional to connection count
Link behavior Transparent by default, highlighted on hover/select
Persistent highlight Selected node keeps connections visible while panel is open
Spotlight search Cmd+K / Ctrl+K to search across all terms
Responsive Desktop, tablet, and mobile layouts



11 Categories

Category Color Example Terms
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



Supported Languages

Language Code Direction
English en LTR
Turkish tr LTR
French fr LTR
Chinese zh LTR
Arabic ar RTL
Russian ru LTR

All descriptions, analogies, security findings, tips, and relationship labels are available in all 6 languages. The UI switches dynamically, including full RTL support for Arabic.




Getting Started

Prerequisites

Install & Build

git clone https://github.com/badchars/ai-knowledge-graph.git
cd ai-knowledge-graph
bun install
bun run build

Preview Locally

bun run dev          # builds and opens in browser

Validate Data

bun run validate     # checks all YAML files against schema



Deploy to GitHub Pages

Automatic (Recommended)

The repo includes CI/CD workflows that handle everything:

  1. Fork or push this repo to your GitHub account
  2. Go to Settings > Pages
  3. Under "Build and deployment", select Source: GitHub Actions
  4. Done — every push to main triggers build & deploy
push to main → bun install → build → upload dist/ → deploy to Pages

Manual

bun run build
# Upload dist/ to any static host:
# GitHub Pages, Netlify, Vercel, Cloudflare Pages, etc.

PR Validation

Every pull request that touches data/** automatically runs:

  • bun run validate — YAML schema check
  • bun run build — ensures the site builds
  • If either fails, the PR cannot merge



How to Use

Action How
Open term details Click any node
See connections Hover over a node
Search Cmd+K or Ctrl+K or click the search bar
Zoom Scroll wheel
Pan Click and drag the background
Rearrange Drag individual nodes
Switch language Language selector in the header
Toggle theme Sun/moon icon in the header
Close panel ESC key
Navigate related terms Click related terms in the detail panel



Contributing

We welcome contributions from anyone — AI researchers, security professionals, developers, students.

Quick Start

# 1. Fork and clone
git clone https://github.com/YOUR_USERNAME/ai-knowledge-graph.git
cd ai-knowledge-graph && bun install

# 2. Create a new term
cp data/terms/_template.yaml data/terms/my-new-term.yaml

# 3. Edit the YAML file

# 4. Add relationships in data/relationships.yaml

# 5. Validate and test
bun run validate && bun run build

# 6. Submit a PR

Contribution Types

Type Difficulty Impact
Add a new term Medium High
Add translations Easy High
Fix descriptions Easy Medium
Add security findings Medium Very High
Add research links Easy Medium
Add config examples Medium High
Report inaccuracies Easy High

Term File Format

Each term is a standalone YAML file in data/terms/:

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

Adding Relationships

# data/relationships.yaml
- source: my-new-term
  target: transformer
  label:
    en: uses
    tr: kullanir
    fr: utilise
    zh: 使用
    ar: يستخدم
    ru: использует

Issue Templates

No code required — use our forms:

See CONTRIBUTING.md for the full guide.




Project Structure

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



Architecture

┌─────────────────────────────────────────────────────────┐
│                    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                      │
└─────────────────────────────────────────────────────────┘



Who Is This For

Role How This Helps
Developers Understand AI/ML terms you encounter daily — what they mean, how they connect, security implications
Security Professionals Map the AI attack surface — prompt injection to model theft, with mechanism-specific vulnerabilities
DevSecOps Engineers Hardening guides with real code — every security finding includes config examples
Pentesters Architecture knowledge reveals attack vectors — understand AI systems deeply enough to test them
AI/ML Engineers Quick reference for the ecosystem — tools, frameworks, and techniques in context
Students & Researchers Analogies make concepts intuitive, research links point to primary sources



Tech Stack

Component Technology
Runtime Bun
Visualization D3.js v7
Data YAML (individual files per term)
Build dependency js-yaml
Hosting GitHub Pages
Frontend Vanilla HTML / CSS / JS
CI/CD GitHub Actions



Roadmap

  • Live deployment on GitHub Pages
  • Fuzzy search across all term content
  • Side-by-side term comparison
  • Export to PDF / Markdown
  • Embeddable widget for blogs and docs
  • API endpoint for programmatic access
  • Community voting on term accuracy
  • Auto-generated terms from OWASP / MITRE databases
  • Japanese and Korean language support



License

MIT




Built with curiosity and a security mindset.


Report an Issue · Contribute · View the Graph



About

Interactive AI/ML Knowledge Graph — 132 terms, 531 relationships, 11 categories, 6 languages. Security-first content covering GPU to prompt injection. D3.js force-directed visualization.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors