Skip to content

Repository files navigation

🤖 Pullbot

AI That Learns From The Web


⚠️ IMPORTANT NOTICE

Status: 🚧 Active Development / Testing Phase
Owner: r293239
Contact: reubenyee2012@gmail.com
License: View License — All Rights Reserved


🚫 DO NOT COPY OR REDISTRIBUTE

This project is proprietary work in progress. No part may be copied, redistributed, or used without permission. See LICENSE for complete terms.


📝 About Pullbot

Pullbot is an AI assistant powered by a router + word tree system instead of a traditional large language model. Instead of one massive neural network that tries to know everything, Pullbot uses a small router that decides which knowledge chunks to use, word trees that provide categorized vocabulary, and an AI trainer that grades responses and generates training data. This makes Pullbot tiny, fast, and continuously improving.


🧠 Architecture

User asks a question. The router (a small neural network) selects the top 3 most relevant word trees. Each tree provides words from its branches. Those words are combined with connectors to form a response. GPT-4o grades the response and the router learns from the feedback. Over time, the router gets better at picking the right trees for each type of question.


✨ Features

  • Router Model — Neural network that learns which chunks to use for each question
  • Word Trees — Categorized vocabulary stored as efficient tree structures
  • AI Training — GPT-4o generates Q&A pairs and grades Pullbot's responses
  • Wikipedia Scraping — Continuous vocabulary building from real articles
  • Automated Pipeline — Train, optimize, export, and benchmark all run automatically
  • GitHub Actions API — Serverless inference with no hosting costs
  • ChatGPT-Style UI — Dark emerald theme with chat history and settings

🛠️ How It Works

The training pipeline scrapes Wikipedia to build vocabulary, trains the model on the corpus, optimizes by pruning and quantizing, builds word trees from the wordbank, exports the router model, and benchmarks everything with AI grading. For inference, a question goes to the router which selects chunks, the trees provide words, and those words become the response.


📂 Repository Structure

The source code lives in src/ with model.py handling training and tree building, router_model.py containing the router neural network, store.py managing the knowledge store, scrape.py and rich_scraper.py handling web scraping, benchmark.py running AI-graded tests, and define_words.py looking up definitions. Models are stored in models/ with chunks containing the word trees that replaced neural weights, router.pt holding the trained router, and pullbot.gguf as a legacy file. Data lives in data/ with wordbank.json as the vocabulary database, corpus.txt as training text, and benchmark_scores.json tracking performance over time. Workflows in .github/workflows/ handle all automation. The website is index.html with JavaScript in js/.


🚀 Quick Start

Visit pullbot-ai.github.io, ask a question, and the router picks the best word trees to form an answer. Log in to get an API key for external use, or check status to see if the system is online.


⚠️ Disclaimer

Responses are AI-generated and may not be accurate. Verify important information from authoritative sources. Pullbot may produce incorrect or misleading content. Use at your own discretion.


📧 Contact

Email reubenyee2012@gmail.com or find me on GitHub at r293239.


© 2026 Reuben Yee. All rights reserved.

Releases

Packages

Contributors

Languages