Code Intelligence & RAG
One of my main projects is a local code intelligence and RAG system
built around a fine-tuned Qwen3.5-2B language model. The goal is
to create a lightweight AI system that can understand a large codebase, retrieve
the right information, and interact with the local Linux environment when needed.
The model itself is fine-tuned specifically for Linux-focused tool use and
routing, rather than being used as a general-purpose chatbot. It learns
to determine what the user is asking for and return a structured tool call that
can be handled by the rest of the system.
How the system works
-
Fine-Tuned LLM Router — A 2B-parameter Qwen3.5 model
fine-tuned using
QLoRA and Unsloth. It classifies the user's intent and produces structured JSON
tool calls. The training data is focused on
Linux commands, system operations, codebase queries, and tool usage.
-
Codebase Retrieval — When a question requires understanding the project itself,
the request is sent to the RAG pipeline rather than directly to the terminal.
-
Hybrid Search — The RAG system combines dense vector search using
ChromaDB with BM25 keyword search. This allows it to find both
semantically related code and exact matches such as function names, variables, filenames, and
technical terms.
-
Reciprocal Rank Fusion — Results from the different search methods are combined
using RRF (Reciprocal Rank Fusion), producing a stronger combined ranking
instead of relying on a single search method.
-
Cross-Encoder Re-ranking — The most relevant results are then passed through a
cross-encoder reranker to improve the final selection of context given to the
language model.
-
Linux Tool Integration — System-level questions can be routed to controlled
Linux tools for things such as file discovery, logs, processes, memory usage and system
inspection.
-
Final Response — The retrieved code or system information is passed to an LLM
to produce a grounded response based on the available evidence.
The system has been tested on a codebase containing 350+ files, successfully
indexing and retrieving relevant information from across the project. The initial indexing is a
one-time process, after which queries can use the existing search indexes instead of processing the
entire codebase again.
The trained model can also be deployed locally using 4-bit GGUF quantization,
making the system practical on consumer hardware while keeping the data and inference local.
Full-Stack Web Development
I've also built and deployed several full-stack web applications rather than
stopping at the frontend. These projects have involved designing interactive interfaces, building
backend functionality, handling user data, implementing authentication, and deploying the complete
application.
- Custom backend functionality for forms and user interactions.
- Firebase for storing submitted data and managing application data.
- Google and Discord authentication with protected user areas and working login
systems.
- User dashboards with personalized content and account-based functionality.
- Deployment using services such as Render, allowing the applications to run as
actual hosted web services rather than just local demos.
AI-Driven Narrative RPG
One of my newer projects is a web-based RPG that combines traditional game systems with
AI-generated content. Instead of allowing AI to completely control the story, the game
uses a fixed canonical main storyline as its foundation while allowing AI to
generate flexible dialogue and events around it.
- AI-generated dialogue and procedural events that respond to the player's
situation.
- A persistent character, inventory and statistics system that keeps track of the
player's state.
- Player decisions and game state can affect future events and potential endings.
- The AI operates within the game's existing rules instead of being allowed to freely rewrite the
underlying game state.
- The project is currently in beta and runs through a web interface.
Visual Novel / RPG Engine
I also built a reusable visual novel-style game engine rather than creating only a
single fixed story. The engine separates game logic from narrative data so that new stories and
content can be added without rewriting the entire system.
- Save and load system for persistent player progress.
- Character appearance and wardrobe systems that can influence the game and
narrative.
- Persistent stats, money, inventory and time systems.
- Branching story logic where choices and player state can affect later events.
- Designed to work across both PC and mobile layouts.
The Last Divine — Text RPG
One of my earlier projects was The Last Divine, a text-based RPG built from scratch
with Vanilla JavaScript and JSON. I designed it around a modular game system rather than a simple
collection of "choose an option" pages.
- Persistent Save/Load system using localStorage.
- Inventory and item management, including usable items and consumables.
- Health, energy and character statistics with conditional gameplay logic.
- A reactive appearance system where equipped items can change how parts of the
story are displayed.
- Narrative and game data separated from the core game logic for easier expansion.
Game Development & Storytelling
Outside of programming, I'm also interested in game development and storytelling. I
write story scripts and design characters, worlds, gameplay systems and narrative structures for
games I want to build in the future. My long-term goal is to create a 3D indie game
that combines interactive gameplay with a strong story.
Web3 & Community
I'm also active in decentralized and Web3 gaming communities, where I've
participated as a community member, creator, volunteer and player. I've contributed to communities
around decentralized games and projects and have been involved in helping promote and represent
projects online.
One particularly memorable part of that experience was being an early member and creator within a
decentralized gaming community and receiving sponsored flights to Mumbai on three separate
occasions to attend creator meetups and represent/promote the game.