{"id":30222737,"url":"https://github.com/andrewdarnall/leetllama","last_synced_at":"2026-04-18T09:31:14.324Z","repository":{"id":306842447,"uuid":"887809247","full_name":"AndrewDarnall/LeetLLama","owner":"AndrewDarnall","description":"LeetLLama is an AI-powered coding mentor that helps you learn algorithms and programming through interactive, personalized problem-solving—like pair-programming with a senior dev.","archived":false,"fork":false,"pushed_at":"2025-07-28T00:36:48.000Z","size":6657,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-14T11:18:05.151Z","etag":null,"topics":["ai","developertools","edtech","leetcode","llama3","llm","milvus","ollama","selflearning"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AndrewDarnall.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-13T10:21:24.000Z","updated_at":"2025-07-28T00:36:52.000Z","dependencies_parsed_at":"2025-07-28T01:17:16.357Z","dependency_job_id":null,"html_url":"https://github.com/AndrewDarnall/LeetLLama","commit_stats":null,"previous_names":["andrewdarnall/leetllama"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AndrewDarnall/LeetLLama","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndrewDarnall%2FLeetLLama","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndrewDarnall%2FLeetLLama/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndrewDarnall%2FLeetLLama/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndrewDarnall%2FLeetLLama/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AndrewDarnall","download_url":"https://codeload.github.com/AndrewDarnall/LeetLLama/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndrewDarnall%2FLeetLLama/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31963935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","developertools","edtech","leetcode","llama3","llm","milvus","ollama","selflearning"],"created_at":"2025-08-14T11:09:39.442Z","updated_at":"2026-04-18T09:31:12.276Z","avatar_url":"https://github.com/AndrewDarnall.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🦙 LeetLLama\r\n\r\n[![AWS](https://img.shields.io/badge/Platform-AWS-orange?logo=amazon-aws\u0026logoColor=white)](https://aws.amazon.com/)\r\n[![Docker](https://img.shields.io/badge/Cloud%20Native-Docker-2496ED?logo=docker\u0026logoColor=white)](https://www.docker.com/)\r\n[![Kubernetes](https://img.shields.io/badge/Orchestration-Kubernetes-326CE5?logo=kubernetes\u0026logoColor=white)](https://kubernetes.io/)\r\n[![Python](https://img.shields.io/badge/Language-Python-3776AB?logo=python\u0026logoColor=white)](https://www.python.org/)\r\n[![LLM Server](https://img.shields.io/badge/LLM%20Server-Ollama-black?logo=data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTIxIDExaC0uNzNDMjAgMTAuMzcgMTkuNDIgOS44NSAxOSAxMGMtLjQ4IDAtLjg4LjMzLS45OC43OGwtLjUzIDIuMTQtMi4yOS0xLjMzLjYtMi41QzE1LjUzIDkuODIgMTYgOS4xOSAxNiA4LjUgMTYgNy4xNyAxNC44MyA2IDEzLjUgNmExLjQ5IDEuNDkgMCAwIDAtLjYyLjE0QzEyLjQ2IDUuMjIgMTEuMjUgNCA5LjUgNCA3LjAxIDQgNSAzLjA5IDUgMS41YzAgLjM0LjA2LjY3LjE2Ljk4QzMuNjIgMy4xNCAyIDQuNjggMiA2LjUgMiA4LjA4IDMuMDIgOS41NyA0LjY0IDEwLjE1Yy4zNi4xMy43Mi4zLjktLjIuMTMtLjM1LjM1LS42Ni42Mi0uOTJjLjYzLS42MyAxLjY2LS42MyAyLjMgMCAuMzIuMzIuNS43Ny41IDEuMjMgMCAuMjUuMDYuNS4xNi43M2w1LjcyIDMuMzUtLjgxIDMuMzNjLS4wMi4wOC0uMDIuMTYuMDEuMjQuMDMuMDcuMS4xMi4xOC4xNS4wNy4wMi4xNS4wMi4yMyAwIC4yNS0uMDQuNDktLjExLjcyLS4yMy40NS0uMjMuNzIuMi43Mi41NiAwIC45OC0uNzguOThIMjFjLjU1IDAgMS0uNDUgMS0xcy0uNDUtMS0xLTF6Ii8+PC9zdmc+)](https://ollama.com/)\r\n[![License](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html)\r\n\r\n![LeetLLama Cover Image](./assets/imgs/LeetLLama-Cover.jpg)\r\n\r\n# Welcome to **LeetLLama**\r\n\r\n**LeetLLama** is a lightweight yet forward-thinking **proof of concept** (PoC) for an interactive, AI-augmented platform designed to empower aspiring software engineers through self-directed learning.\r\n\r\n---\r\n\r\n## 🎯 Purpose \u0026 Vision\r\n\r\nThe primary goal of this project—beyond _“reinventing the wheel for academic purposes”_—is to demonstrate a core philosophy in modern tech:\r\n\r\n\u003e **Artificial Intelligence should augment, not replace, human developers.**\r\n\r\nIn this PoC, we explore how **AI-driven tools** can enhance the way programmers learn complex topics like algorithms and data structures, providing a more personalized, adaptive, and contextual learning experience.\r\n\r\n---\r\n\r\n## 💡 Concept Overview\r\n\r\nAt its core, LeetLLama enables learners to:\r\n\r\n- Interact with a **fine-tuned language model** trained on solved LeetCode-style problems.\r\n- Receive guidance as if from a more experienced developer or mentor.\r\n- Customize their learning journey based on:\r\n  - ✏️ **Coding style**\r\n  - 🧠 **Skill level**\r\n  - 🎯 **Problem preferences** (difficulty, topic, and more)\r\n\r\nThe goal is to simulate the benefits of a **pair-programming** session with a senior engineer—one who not only knows the answers but can explain _why_ they work, and tailor their advice to your unique thinking process.\r\n\r\n---\r\n\r\n## 🧱 Tech Stack \u0026 Architecture\r\n- 🐍 Python\r\n- 📦 Dockerized microservice architecture\r\n- 🧵 Message queue for asynchronous communication\r\n- 🤖 LLM backend\r\n- 💾 Vector store\r\n- ☁️ Cloud-deployable with Kubernetes\r\n\r\n# Software Requirements\r\n\r\n| `Software`        | `Version` |\r\n|-------------------|-----------|\r\n| `Python`          | `3.11`    |\r\n| `pip`             | `25.1`    |       \r\n| `Docker`          | `28.1.1`  |\r\n| `Docker-Compose`  | `2.36.0`  |\r\n\r\n# Hardware Requirements\r\n\r\n\u003e These are *minimun* requirements\r\n\r\n|`Component`          | `Vendor`  |       `Model`      |\r\n|---------------------|-----------|--------------------|\r\n|   `CPU`             |  `Intel`  |      `8th Gen`     |\r\n|  `GPU`              | `NVIDIA`  | `GeForce 4070 RTX` |\r\n|  `RAM`              | `Any`     |      `DDR4`        |\r\n|  `Secondary Memory` | `SSD`     |      `100 GB`      |\r\n\r\n# Setup \u0026 Configuration\r\n\r\n1) Start by *building* the entire project\r\n\r\n```bash\r\ndocker compose build\r\n```\r\n\r\n2) Then *up* the project with\r\n\r\n```bash\r\ndocker compose up -d\r\n```\r\n\r\n3) Connect to `ollama` to *download* the required models:\r\n\r\n```bash\r\nllama3.2:3b\r\nqwen3:4b\r\nphi3:3.8b\r\ngemma3:4b\r\n```\r\n\r\nUsing the commands:\r\n\r\n(Connect to the ollama container)\r\n```bash\r\ndocker exec -it leetllama_ollama /bin/bash\r\n```\r\n(Pull the models)\r\n```bash\r\nollama pull llama3.2:3b \u0026\u0026 ollama pull qwen3:4b \u0026\u0026 ollama pull phi3:3.8b \u0026\u0026 ollama pull gemma3:4b\r\n```\r\n\r\nThen `exit`\r\n\r\n4) Then, download all the `Python` dependencies required to populate the *Milvus* Knowledge Base with the ***Leetcode Dataset***, running this script:\r\n\r\n(Download the requirements)\r\n```bash\r\npython -m pip install -r requirements.txt\r\n```\r\n\r\n(Populate the Milvus Vector Store)\r\n```bash\r\ncd ~/data\r\npython load_milvus_kb.py\r\ncd ../\r\n```\r\n\r\n5) Now you may connect to the *Frontend UI* at the following URL:\r\n\r\n```bash\r\nhttp://localhost:1291/\r\n```\r\n\r\n\r\n\r\n# Some Samples\r\n\r\nThis is the frontend UI you will see upon ***upping*** the `docker-compose` file.\r\n\r\n![LeetLLaMA UI](./assets/imgs/leetllama-ui.png)\r\n\r\nThe gear button aids with the selection of the ***models*** to be used for the ***inference***:\r\n\r\n![LeetLLaMA Model Selection](./assets/imgs/leetllama-model-selection.png)\r\n\r\nThen once you have chosen the model you seek, ***press the confirm button***\r\n\r\n![LeetLLaMA Confirmation Selection](./assets/imgs/leetllama-model-confirmation.png)\r\n\r\n---\r\n\r\n1) In this simple example, I asked how I could *invert a linked list*\r\n\r\n![Invert Linked List Demo](./assets/vids/invert-a-linked-list.gif)\r\n\r\n2) In this more articulated example, I gave the model the entire question for the *infamous* `two sum` probelm\r\n\r\n![Two Sum Problem Demo](./assets/vids/two-sum.gif)\r\n\r\n# Disclaimer\r\n\r\nThis repo is still an early ***PoC*** and not ready for being *forked*, once the `Cloud Setup` and `Better Architecture` will be implemented, then\r\nyou may proceed with ***forking*** the repo, and to know for sure, this message will **no longer appear in the README**\r\n\r\n---","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewdarnall%2Fleetllama","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandrewdarnall%2Fleetllama","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewdarnall%2Fleetllama/lists"}