James-RAG-Evol

agent
Guvenlik Denetimi
Uyari
Health Uyari
  • License Ò€” License: MIT
  • Description Ò€” Repository has a description
  • Active repo Ò€” Last push 0 days ago
  • Low visibility Ò€” Only 5 GitHub stars
Code Gecti
  • Code scan Ò€” Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions Ò€” No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

πŸ” Local-first Graph-RAG with ontology, 3-stage security, self-evolution scaffold. 100% Ollama. MIT.

README.md

PROJECT JAMES

Security-focused, locally-runnable Graph-RAG knowledge engine
with explicit reasoning paths and self-evolution scaffolding.

License: MIT
Status
Python 3.11+
OpenSSF Best Practices

PROJECT JAMES β€” 3D ontology graph visualizer

ν•œκ΅­μ–΄ README Β· πŸš€ 처음 μ‹œμž‘ν•˜μ‹œλŠ” λΆ„ (10살도 따라할 수 μžˆμ–΄μš”)


Project Status: v0.1.0 (alpha / research stage)

This is an early-stage, actively-researched project.
The core engine works, but:

  • Designed and tested with security-first principles
  • NOT production-ready β€” see SECURITY.md
  • Many features are scaffolded β€” real-data testing in progress
  • Open to collaboration and feedback

What's Different

JAMES combines five ideas that are rarely found together:

  1. Graph-RAG with ontology β€” relations carry semantic meaning beyond embeddings
  2. Built-in security layer β€” RBAC + ABAC + instruction isolation
  3. Self-evolution scaffold β€” feedback signals β†’ patch proposals
  4. Personality system β€” 11 tunable traits influence responses
  5. 100% local β€” runs on a laptop with Ollama

Honest disclosure: each feature is a working prototype, not a finished product. Real-data tuning is ongoing.


Quick Start

Prerequisites

  • Python 3.11+
  • Ollama installed and running
  • Min 16GB RAM (32GB+ recommended)
  • (Optional) NVIDIA GPU for faster inference
  • (Optional) Tavily API key for web search (free 1k/month)

Installation

git clone https://github.com/Hashevolution/James-RAG-Evol
cd James-RAG-Evol

# Configure environment
cp .env.example .env
# Edit .env β€” set JAMES_API_KEY, JAMES_JWT_SECRET

# Install dependencies
pip install -r requirements.txt

# Pull a small LLM
ollama pull gemma2:2b

# Start the server
python server_llmwiki.py

Open http://localhost:8000


Architecture

[User Query]
     ↓
[Security Filter]      ← 31+ injection patterns
     ↓
[Query Router]         ← chat / coding / retrieval / web_search
     ↓
[Hybrid Search]        ← Vector(60%) + BM25(20%) + keyword(10%) + name(10%)
     ↓
[Graph Engine]         ← DFS + confidence + sensitivity gating
     ↓
[Reasoning Loop]       ← retrieve β†’ expand β†’ verify
     ↓
[Output Filter]        ← PII masking + role-based filter
     ↓
[Answer + Reasoning Path]

Folder Structure

James-RAG-Evol/
β”œβ”€β”€ core/             User interface layer + LLM clients
β”œβ”€β”€ llm/              LLM abstraction (providers/)
β”œβ”€β”€ tools/            Feature modules (8 subfolders)
β”œβ”€β”€ frontend/         Web UI (HTML + JS)
β”œβ”€β”€ processors/       File preprocessing
β”œβ”€β”€ utils/            Utilities
β”œβ”€β”€ wiki/             Knowledge graph (markdown-based)
β”œβ”€β”€ memory/           Long-term memory DB
β”œβ”€β”€ workspace/        Runtime data (backups, patches, proposals)
β”œβ”€β”€ scripts/          Operational scripts
β”œβ”€β”€ reports/          Test results
└── server_llmwiki.py Main server entry point

Security Approach

JAMES treats security as a design principle, not a feature:

  • 3-stage access control: Vector β†’ Graph β†’ Output
  • RBAC (4 roles) + ABAC (4 sensitivity levels)
  • Instruction isolation: separates commands from data
  • JWT auth + rate limiting + full audit log
  • Sandboxed execution (for tool calls)

Realistic note: synthetic-data testing differs from adversarial production testing. See SECURITY.md.


Current Features

Feature Status
Hybrid Search (Vector + BM25) Working
Graph-RAG with ontology Working
Security layer (RBAC/ABAC) Working
Multimodal (image/video) Scaffolded
Self-evolution Scaffolded (needs data)
Web search integration Working (Tavily/DDG)
Multi-LLM routing Working
Real-data validation Pending

Tech Stack

  • Backend: FastAPI + Uvicorn
  • LLM: Ollama (Gemma, DeepSeek-Coder, LLaVA)
  • Vector DB: ChromaDB
  • Embedding: Sentence-Transformers (MiniLM)
  • Search: BM25 + Vector hybrid
  • Web search: Tavily (primary) + DuckDuckGo (fallback)
  • Auth: JWT (python-jose)
  • Storage: SQLite + markdown wiki

Roadmap

See ROADMAP.md. Summary:

  • v0.1 (current): Core engine + scaffolding
  • v0.2: Real-data validation + polish
  • v0.3: Multi-agent + Neo4j option
  • v1.0: Production hardening

Contributing

Welcome! See CONTRIBUTING.md.

Priority areas:

  • Documentation, examples, translations
  • Bug fixes, test coverage
  • New tool integrations and LLM provider support

License

Licensed under the MIT License. Use freely. See LICENSE.

A full inventory of third-party dependency licenses is available in
THIRD_PARTY_LICENSES.md.


Acknowledgements

Inspired by:


Disclaimer

Use at your own risk. This is research code. No guarantees regarding sensitive-data handling or production security without further hardening.

Yorumlar (0)

Sonuc bulunamadi