Any-to-Any
Transformers
Safetensors
English
qwen2
text-generation
qwen
lora
router
multi-agent
orchestration
gradio
multimodal
text
image
video
audio
Eval Results (legacy)
text-generation-inference
Instructions to use Questionmarkboy/frankenstein-3-0 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Questionmarkboy/frankenstein-3-0 with Transformers:
# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("Questionmarkboy/frankenstein-3-0") model = AutoModelForCausalLM.from_pretrained("Questionmarkboy/frankenstein-3-0", device_map="auto") - Notebooks
- Google Colab
- Kaggle
|
Download README.md from Questionmarkboy/frankenstein-3-0: direct link, hf CLI and curl.
- Browser
- Download file 10.2 kB
-
https://huggingface.co/Questionmarkboy/frankenstein-3-0/resolve/main/README.md
- Command line
-
hf download hf://Questionmarkboy/frankenstein-3-0/README.md
-
curl -L -o README.md https://huggingface.co/Questionmarkboy/frankenstein-3-0/resolve/main/README.md
10.2 kB
| license: apache-2.0 | |
| library_name: transformers | |
| pipeline_tag: any-to-any | |
| base_model: Qwen/Qwen2.5-1.5B-Instruct | |
| language: | |
| - en | |
| metrics: | |
| - accuracy | |
| tags: | |
| - safetensors | |
| - qwen | |
| - lora | |
| - router | |
| - multi-agent | |
| - orchestration | |
| - gradio | |
| - multimodal | |
| - text | |
| - image | |
| - video | |
| - audio | |
| model-index: | |
| - name: RouterBrain | |
| results: | |
| - task: | |
| type: text-classification | |
| name: Intent Routing | |
| dataset: | |
| name: Synthetic Routing Dataset | |
| type: synthetic | |
| args: routing | |
| metrics: | |
| - type: accuracy | |
| value: 60.0 | |
| name: Routing Accuracy | |
| verified: false | |
| # 🧟 Frankenstein-3.0: The Unified AI Entity | |
| A production-grade **multi-modal** AI orchestration system with a **trained routing brain**, featuring 4 specialist models, 5 integrated tools, and triple-layer fault tolerance. | |
| > **Modality:** Text → Text • Image • Video • Audio (orchestrated across specialists) | |
| > **Repo weights:** RouterBrain (text router, QLoRA-fine-tuned Qwen2.5-1.5B) | |
| ## Architecture Overview | |
| ``` | |
| ┌─────────────────────────────────────────────────────────────┐ | |
| │ USER REQUEST │ | |
| └─────────────────────────────────────────────────────────────┘ | |
| ↓ | |
| ┌─────────────────────────────────────────────────────────────┐ | |
| │ LAYER 1: Pre-Flight Regex (100% accurate, hard patterns) │ | |
| │ • "uploaded file" → RAG • "then" → multi-step chain │ | |
| │ • "explain how to" → chat │ | |
| └─────────────────────────────────────────────────────────────┘ | |
| ↓ (pass-through) | |
| ┌─────────────────────────────────────────────────────────────┐ | |
| │ LAYER 2: RouterBrain (0.3s instant routing) │ | |
| │ • Qwen2.5-1.5B fine-tuned with QLoRA, merged to fp16 │ | |
| │ • Outputs JSON routing decisions │ | |
| └─────────────────────────────────────────────────────────────┘ | |
| ↓ (if brain fails) | |
| ┌─────────────────────────────────────────────────────────────┐ | |
| │ LAYER 3: Qwen3.5-4B Resident (smart fallback) │ | |
| │ • Understands complex/novel requests │ | |
| └─────────────────────────────────────────────────────────────┘ | |
| ↓ | |
| ┌─────────────────────────────────────────────────────────────┐ | |
| │ SPECIALISTS: 🧠 Chat 💻 Code 🎨 Image 🎬 Video │ | |
| └─────────────────────────────────────────────────────────────┘ | |
| ``` | |
| ## The RouterBrain (This Repo's Weights) | |
| The root weights are the **RouterBrain**: a distilled routing model that reads user requests and outputs JSON routing decisions in ~0.3 seconds. | |
| ### Load the RouterBrain | |
| ```python | |
| from transformers import AutoModelForCausalLM, AutoTokenizer | |
| tokenizer = AutoTokenizer.from_pretrained("Questionmarkboy/frankenstein-3.0") | |
| model = AutoModelForCausalLM.from_pretrained( | |
| "Questionmarkboy/frankenstein-3.0", | |
| torch_dtype="float16", | |
| device_map="auto" | |
| ) | |
| prompt = "Route to the correct specialist (chat/code/image/video/search/calc/execute/rag). USER: Draw a robot then animate it dancing. Respond ONLY with JSON." | |
| text = tokenizer.apply_chat_template( | |
| [{"role": "user", "content": prompt}], | |
| tokenize=False, | |
| add_generation_prompt=True | |
| ) | |
| inputs = tokenizer(text, return_tensors="pt").to(model.device) | |
| output = model.generate(**inputs, max_new_tokens=120, do_sample=False, repetition_penalty=1.05) | |
| print(tokenizer.decode(output[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)) | |
| ``` | |
| ### Expected Output | |
| ```json | |
| {"specialist": "multi", "confidence": 0.95, "reasoning": "Chained multi-step task", "steps": [{"specialist": "image", "prompt": "Draw a robot"}, {"specialist": "video", "prompt": "animate it dancing"}]} | |
| ``` | |
| ## The Full System (app.py) | |
| ### Specialists | |
| | Specialist | Model | Use Case | | |
| |------------|-------|----------| | |
| | **Chat** | Qwen3.5-4B | Conversation, reasoning, explanations | | |
| | **Code** | Qwen2.5-Coder-14B | Programming, debugging, code generation | | |
| | **Image** | SDXL | Photorealistic image generation | | |
| | **Video** | MiniMax-H3 NF4 | Video + audio generation | | |
| ### Tools | |
| - 🔍 **Web Search** — DuckDuckGo real-time search | |
| - 🧮 **Calculator** — SymPy safe mathematical evaluation | |
| - ⚡ **Code Execution** — Sandboxed Python execution (5s timeout) | |
| - 📚 **RAG** — Document upload + keyword search | |
| - 🧠 **Memory** — SQLite persistent conversation history | |
| ## Installation | |
| ### Prerequisites | |
| | Requirement | Minimum | Notes | | |
| |-------------|---------|-------| | |
| | Python | 3.10+ | 3.11 recommended | | |
| | pip | latest | upgraded in Step 3 | | |
| | Git + Git-LFS | any | LFS needed for the ~3GB weights | | |
| | RAM | 16 GB | 32 GB recommended | | |
| | GPU (optional) | 8 GB VRAM | 16-24 GB VRAM for image/video specialists | | |
| | CUDA (optional) | 12.1+ | only required for GPU features | | |
| ### Step 1 — Clone the repository | |
| ```bash | |
| git lfs install | |
| git clone https://huggingface.co/Questionmarkboy/frankenstein-3.0 | |
| cd frankenstein-3.0 | |
| ``` | |
| ### Step 2 — Create a virtual environment (recommended) | |
| ```bash | |
| python -m venv venv | |
| source venv/bin/activate # Linux / macOS | |
| venv\Scripts\activate # Windows | |
| ``` | |
| ### Step 3 — Install dependencies | |
| ```bash | |
| pip install --upgrade pip | |
| pip install -r requirements.txt | |
| ``` | |
| ### Step 4 — Launch the app | |
| ```bash | |
| python app.py | |
| ``` | |
| Then open **http://localhost:7860** in your browser. | |
| ### CPU-only machines | |
| Installation is identical. The app auto-detects the absence of CUDA and runs the RouterBrain, chat and code specialists on CPU. Image and video specialists respond with a friendly "GPU required" message instead of crashing. | |
| ### Troubleshooting | |
| - **bitsandbytes warnings on CPU** — expected and safely ignored by the app. | |
| - **Slow clone** — the RouterBrain weights are ~3 GB; make sure Git-LFS is installed (Step 1). | |
| - **Port 7860 already in use** — change server_port at the bottom of app.py. | |
| - **Out of memory on GPU** — the app loads specialists on demand and unloads them after use; close other GPU processes or reduce image resolution in app.py. | |
| ## Hardware Requirements | |
| | Mode | Minimum | Recommended | | |
| |------|---------|-------------| | |
| | RouterBrain only | 2GB VRAM | CPU works fine | | |
| | Chat + Code (CPU) | 16GB RAM | 32GB RAM | | |
| | Full GPU stack | 16GB VRAM | 24GB+ VRAM | | |
| The app auto-detects CUDA. On CPU-only machines, chat/code work and image/video return a friendly "GPU required" message. | |
| ## Training Details | |
| ### RouterBrain Training | |
| - **Base Model**: Qwen2.5-1.5B-Instruct | |
| - **Fine-tuning**: QLoRA (r=32, α=64, dropout=0.05) | |
| - **Dataset**: ~10k synthetic routing examples (combinatorial diversity, noise injection, 30+ edge-case patterns) | |
| - **Training**: 2-3 epochs on T4 GPU | |
| - **Merge**: Clean fp16 merge (no quantization rounding) | |
| ### Performance Metrics | |
| - **Pre-flight layer**: 100% accuracy on hard patterns | |
| - **RouterBrain**: 60% standalone accuracy on diverse test set | |
| - **Effective routing**: 90%+ via triple-layer fault tolerance | |
| ## Multi-Step Task Chaining | |
| ``` | |
| User: "Draw a robot then animate it dancing" | |
| ↓ | |
| Pre-flight: detects "then" → routes to multi specialist | |
| ↓ | |
| Execution: image specialist → video specialist (sequential) | |
| ↓ | |
| Output: generated image + animated video with audio | |
| ``` | |
| ## Architecture Decisions | |
| ### Why Triple-Layer Routing? | |
| 1. **Speed**: Pre-flight regex is instant (0.001s) | |
| 2. **Efficiency**: RouterBrain is fast (0.3s) vs prompt-based (4-6s) | |
| 3. **Robustness**: 4B fallback catches edge cases | |
| 4. **Production-ready**: Graceful degradation under all conditions | |
| ### Why Distill A Routing Brain? | |
| - **20x faster** than prompt-based routing | |
| - **50% less VRAM** than using the 4B resident for routing | |
| - **Perfect JSON** output (trained to only output JSON) | |
| - **Cheaper** to deploy at scale | |
| ## Companion Models | |
| - **[Frankenstein-2.0](https://huggingface.co/Questionmarkboy/frankenstein-2.0)** — Merged Mistral-7B checkpoint | |
| ## Technical Stack | |
| - **Framework**: HuggingFace Transformers + Diffusers | |
| - **Quantization**: BitsAndBytes (NF4, 4-bit) | |
| - **UI**: Gradio 4.44 | |
| - **Memory**: SQLite | |
| - **Training**: PEFT + LoRA | |
| ## Known Limitations | |
| - Image/video generation requires 16GB+ VRAM | |
| - RAG only supports .txt files (no PDF/DOCX yet) | |
| - Web search is basic (DuckDuckGo HTML scraping) | |
| - Code execution has 5s timeout for safety | |
| ## Citation | |
| ```bibtex | |
| @misc{frankenstein3, | |
| author = {Questionmarkboy}, | |
| title = {Frankenstein-3.0: Multi-Modal AI Orchestration System}, | |
| year = {2024}, | |
| publisher = {HuggingFace}, | |
| journal = {HuggingFace Repository}, | |
| howpublished = {\url{https://huggingface.co/Questionmarkboy/frankenstein-3.0}} | |
| } | |
| ``` | |
| ## License | |
| Apache 2.0 | |
| ## Acknowledgments | |
| - Base models: Qwen, Stability AI, MiniMax | |
| - Frameworks: HuggingFace, Gradio, BitsAndBytes | |
| - Training infrastructure: Kaggle T4 GPUs | |
| --- | |
| **Built with ❤️ for the AI community** | |