File size: 2,987 Bytes
6645e8f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
---
title: JARVIS - Personal AI Agent
emoji: πŸ€–
colorFrom: blue
colorTo: gray
sdk: gradio
sdk_version: "4.26.0"
app_file: app.py
pinned: true
license: mit
tags:
  - conversational
  - personal-assistant
  - llm
  - phi-3
  - jarvis
  - voice
  - memory
  - agentic
hardware: cpu-upgrade
---

# J.A.R.V.I.S β€” Just A Rather Very Intelligent System

> *"Sometimes you gotta run before you can walk."*

Your personal AI assistant β€” conversational, voice-enabled, and memory-powered. Runs locally on a HuggingFace Space with **16 GB RAM** and no GPU required (thanks to 4-bit quantisation).

---

## ✨ Features

| Feature | Detail |
|---|---|
| 🧠 **Local LLM** | Microsoft Phi-3-mini-4k-instruct (3.8B params, 4-bit β‰ˆ 2-4 GB RAM) |
| πŸ’¬ **Chat interface** | Clean Gradio UI β€” type or use voice |
| πŸŽ™οΈ **Voice replies** | Edge-TTS (Microsoft GuyNeural, no GPU, minimal cloud) |
| πŸ—‚οΈ **Persistent memory** | SQLite facts + conversation history |
| πŸ’‘ **Thinking engine** | Background anticipation β€” JARVIS predicts your needs |
| πŸ”§ **Commands** | `status` Β· `remember X is Y` Β· `anticipate` |

---

## πŸš€ Quick Start (local)

```bash
git clone https://huggingface.co/spaces/<your-username>/jarvis
cd jarvis
pip install -r requirements.txt
python app.py
```

Open `http://localhost:7860` in your browser.

---

## βš™οΈ Environment Variables

| Variable | Default | Description |
|---|---|---|
| `JARVIS_MODEL` | `microsoft/Phi-3-mini-4k-instruct` | HuggingFace model ID |
| `JARVIS_QUANT` | `4bit` | Quantisation: `4bit` / `8bit` / `none` |
| `JARVIS_MEMORY_DIR` | `./data/memory` | Where SQLite DB is stored |
| `JARVIS_TTS_VOICE` | `en-US-GuyNeural` | Edge-TTS voice name |
| `JARVIS_THINKING` | `true` | Enable background thinking engine |

Set in HuggingFace Space **Settings β†’ Variables & Secrets** or in a `.env` file locally.

---

## πŸ’Ύ RAM Requirements

| Model | Quant | RAM |
|---|---|---|
| Phi-3-mini-4k-instruct (3.8B) | 4-bit | ~3–4 GB |
| Phi-3-mini-4k-instruct (3.8B) | fp16 | ~7.6 GB |
| Mistral-7B-Instruct-v0.2 | 4-bit | ~4–5 GB |
| Mistral-7B-Instruct-v0.2 | fp16 | ~14 GB |

**Recommended for 16 GB RAM:** Phi-3-mini 4-bit (fast) or Mistral-7B 4-bit (deeper reasoning).

---

## πŸ—‚οΈ Project Structure

```
app.py          β€” Gradio UI + entry point
brain.py        β€” HuggingFace model inference (lazy-loaded)
memory.py       β€” SQLite facts + conversation history
thinking.py     β€” Background anticipation engine
voice_tts.py    β€” Edge-TTS text-to-speech
config.py       β€” All settings via env vars
requirements.txt
README.md       β€” This file (HuggingFace model card)
```

---

## 🀝 Credits

Built on top of:
- [Microsoft Phi-3](https://huggingface.co/microsoft/Phi-3-mini-4k-instruct)
- [HuggingFace Transformers](https://github.com/huggingface/transformers)
- [Gradio](https://gradio.app)
- [Edge-TTS](https://github.com/rany2/edge-tts)
- Original JARVIS project β€” OpenJarvis architecture inspiration