Skip to content

NinoRisteski/tinypilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tinypilot

TinyPilot Main Interface

Local agent that helps you learn TinyGrad and updates you on the bounties!

Currently implemented:

Retrieval

  • Uses SentenceTransformer's "all-MiniLM-L6-v2" model for embeddings
  • ChromaDB for vector storage and similarity search

Generation

  • OpenAI's GPT model for response generation
  • Combines retrieved documents with user query

Indexing

UI

  • Rich text-based terminal interface

Chat History

  • Queries and their answers logged to a SQLite database.
  • This database is stored as chat_history.db

Example

TinyPilot Usage

Setup

  1. Create and activate virtual env:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Dependencies:
pip install -r requirements.txt
  1. OpenAI API key:
# Create a .env file in the project root
echo "OPENAI_API_KEY=your-key-here" > .env

Usage

First Time Setup

Run the main script to update and index all data:

python main.py

This will:

  1. Update the tinygrad repo
  2. Update on bounties
  3. Scrape tutorials
  4. Index and embed all data for semantic search (patiently wait to finish)
  5. Launch chat

Daily Use

Once the data is indexed, you can start TinyPilot instantly using:

python tinypilot.py

This will:

  1. Skip the data collection and indexing steps
  2. Load the existing indexed data
  3. Start the interface immediately

Project Structure

Backend

  • Python-based RAG system
  • Vector database and embeddings
  • OpenAI integration
  • Rich terminal UI

About

AI agent that helps you learn Tinygrad and updates you on the bounties

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages