An Intelligent Open-Source Video Understanding System A different path from traditional Large Video Language Models (LVLMs). Built for modularity, openness, and real-world usability.
Project description
gurrt
An intelligent video understanding system designed as an open-source alternative to monolithic Large Video Language Models
I built gurrt out of frustration.
Working with Large Video Language Models locally is:
- Expensive to set up
- GPU intensive
- Slow to experiment with
- Difficult to run on consumer hardware
- Often closed or partially restricted
Most state-of-the-art video models require massive compute clusters and large-scale infrastructure.
They are impressive — but they are not accessible.
If meaningful video intelligence requires:
- Multiple high-end GPUs
- Hours of inference time
- Proprietary model access
Then it stops feeling truly open.
A Different Philosophy
gurrt is not an attempt to compete with systems like YouTube’s internal models or other large-scale industrial LVLMs trained on massive GPU clusters.
It is an attempt to rethink the approach.
Instead of asking how to build a larger end-to-end video transformer, it explores a different path:
- Smarter frame sampling techniques
- Stronger and more modular vision models
- Better structured embedding strategies
- More efficient and grounded RAG pipelines
- Persistent memory-driven reasoning
It represents a belief that meaningful video understanding can emerge from:
- Thoughtful engineering
- Smart sampling
- Strong modular components
- Memory-augmented retrieval
Not just from massive GPU clusters and billion-parameter models.
Architecture Overview
Video
│
├── Smart Frame Extraction
│ └── Captioning + Embeddings
│
├── Audio Extraction
│ └── Speech-to-Text + Embeddings
│
├── Vector Memory Store
│
├── Supermemory (Persistent Conversation Layer)
│
└── LLM Reasoning Engine
Project Setup (using uv)
# Install uv if you haven't already
pip install uv
# Sync dependencies
uv sync
# Activate environment
.venv\Scripts\activate
File Structure
gurrt/
├── src/
│ |
│ │
│ └── videorag/ # Core Video-RAG application package
│ │
│ ├── api/
│ │ └── server.py # API server (exposes endpoints for querying, ingestion, etc.)
│ │
│ ├── cli/
│ │ └── main.py # CLI entry point (init, ingest, query commands)
│ │
│ ├── config/
│ │ └── config.py # Configuration management (API keys, paths, environment setup)
│ │
│ ├── core/ # Core intelligence pipeline
│ │ ├── __init__.py
│ │ ├── asr.py # Audio extraction + speech-to-text processing
│ │ ├── embedding.py # Embedding generation for captions & transcripts
│ │ ├── llm.py # LLM interaction and reasoning logic
│ │ ├── models.py # Model loading and management utilities
│ │ ├── pipeline.py # End-to-end ingestion + query pipeline orchestration
│ │ ├── prompts.py # Prompt templates and structured context injection
│ │ ├── search.py # Retrieval logic (semantic search over stored embeddings)
│ │ └── vectordb.py # Vector database interface and storage abstraction
│ │
│ └── utils/
│ └── utils.py # Shared utility functions and helpers
│
└── README.md # Project documentation
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gurrt-0.1.0.tar.gz.
File metadata
- Download URL: gurrt-0.1.0.tar.gz
- Upload date:
- Size: 16.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f76cc3cd336b83dc230a07e91ce51828a716409adc1bf7aaed8ca7391cec59f
|
|
| MD5 |
f43a4a892cd460948c9ea8e7a8ee329f
|
|
| BLAKE2b-256 |
d26f3686a2ba3b420a894b5eba71bc8d3285e80157aa043e5cb5d02b84ca4e59
|
File details
Details for the file gurrt-0.1.0-py3-none-any.whl.
File metadata
- Download URL: gurrt-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f727521eb1a7192051e9edb52a1416057b9d4ef6306ca5c8b6c35e710248b3f
|
|
| MD5 |
4a05caaf2ce9362c26dfe5917677a645
|
|
| BLAKE2b-256 |
9c97adc965823a8b66ad0084a5601c10148d082b36fcc9663f444eb7656370c3
|