Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 JARVIS AI Assistant (WIP 🚧)

JARVIS is a modular AI voice assistant built with Python that can listen, understand, respond, and perform basic actions using mostly free and local tools.

⚠️ This project is currently under active development.


🚀 Features (Current)

  • 🎤 Voice input from microphone
  • 🧠 Speech-to-text using faster-whisper (offline)
  • 🤖 AI responses via Ollama (Llama3 local model)
  • 🔊 Text-to-speech using pyttsx3 (offline)
  • 🖼️ Image generation (Pollinations API, no API key)
  • 🔁 Continuous conversation loop
  • 🧩 Basic command detection (chat, image generation, shutdown)

🧠 System Flow

🎤 Voice → 🧠 STT → 🤖 LLM → 🔊 TTS → 🔁 Loop


🧱 Project Structure

Jarvis/
│
├── main.py # Entry point
│
├── core/
│ ├── listen.py # Microphone input
│ ├── transcribe.py # Speech → Text
│ ├── brain.py # LLM processing
│ ├── speak.py # Text → Speech
│
├── features/
│ ├── image_gen.py # Image generation
│
├── utils/
│ ├── config.py # Environment config
│
├── images/ # Generated images
├── .env
├── requirements.txt
└── README.md

⚙️ Tech Stack

  • Python 3.11+
  • faster-whisper
  • pyttsx3
  • Ollama (Llama3)
  • sounddevice + scipy
  • requests

▶️ How to Run

Follow these steps to run the JARVIS assistant locally.


1. Clone the Repository

git clone https://github.com/SifatNycto/Jarvis.git  
cd Jarvis

2. Create & Activate Virtual Environment

python -m venv .venv

Windows:

.venv\Scripts\activate

3. Install Dependencies

pip install -r requirements.txt

4. Install Ollama (Local AI Brain)

Download and install Ollama from:
👉 Ollama

Verify installation:

ollama --version

5. Download LLM Model

ollama pull llama3

6. Start Ollama Server

ollama serve

IMPORTANT: Keep this terminal running. This is the AI backend.


7. Run the Assistant

Open a NEW terminal (do not close the Ollama terminal):

python main.py

8. Use the Assistant

You can talk normally to the assistant.

Examples:

  • "how are you"
  • "what is python"
  • "tell me a joke"
  • "shutdown"

🖼️ Image Generation (Important)

To generate images, your command MUST include keywords like:

  • "generate image"
  • "generate an image"

Examples:

  • "generate image of a cyberpunk city"
  • "generate an image of a dragon"

If you do not include these words, the assistant will treat it as a normal conversation.


🛑 Stopping the System

Stop the assistant:

Ctrl + C

Stop Ollama:

taskkill /IM ollama.exe /F

🔥 Planned Improvements

  • Better intent detection (LLM-based)
  • Faster response pipeline
  • Wake word support ("Hey Jarvis")
  • Tool system (open apps, search web)
  • GUI interface

🏁 Status

🚧 Work in progress — features and structure may change.


📌 Note

This project focuses on learning and building a real-world AI system using free/local tools with clean modular design.

About

JARVIS is a modular AI voice assistant built in Python that can listen, understand, respond, and act in real-time using mostly free and local tools.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages