- 💡 Overview
- 🛠 Tech Stack
- 📥 Setting Up a Local Instance
- 🖇 How it works?
- 🧩 Known Issues
- 🧭 Bugnix Roadmap
- ⭐ Credits
Bugnix is a powerful and efficient generative A.I. based code error analyzer and interpretor to make code debugging simpler
Powered by Microsoft's Azure AI and Azure Computer Vision, Bugnix is made under specific consideration of beginner level programmers, who find programming jargon an overwhelming experience, as well as for all the other programmers who find code debugging a tedious process.
Trained on code errors from famous programming languages, Bugnix analyses the error fed by the user, and provides a simple explaination of the error.
- 👁 Azure AI Vision:
For extracting text from image snapshots of code error. - 🧠 Azure OpenAI:
LLM for processing the error and generating an explaination with solution. Uses GPT o3 mini as the model for processing.
- 💻 Streamlit:
Open Source Python Web Application Framework especially designed to deploy Generative A.I. based web applications.
- 🔑 Python Dotenv
Python Library to ready key-value pairs and set them as environment variables. Essential for storing API Keys.
- Python (version 3.10+): To execute and run the app
- Any operating system (Windows, MacOS, Linux)
- As a good programming practice, it is recommended to set up a Python virtual environment to run Bugnix in order to avoid potential build errors or conflicts while installing packages
Assuming that you already have setup your virtual environment,
> git clone https://github.com/datdevsteve/bugnix.git
> cd bugnix➡ Install the required packages:
> pip install -r requirements.txtOr install all the packages manually:
> pip install openai azure-functions py-stackexchange azure-ai-vision-imageanalysis==1.0.0b1 azure-identity azure-core streamlit requests beautifulsoup4 html5lib python-dotenv- Create a file named
.envin the project directory - Setup the
.envfile's content as below:
AZURE_OCR_ENDPOINT = "https://yourocrendpoint.azure.com/"
AZURE_OCR_KEY = yourazurekey
AZURE_OPENAI_ENDPOINT = "https://youropenaiendpoint.azure.com/"
AZURE_OPENAI_KEY = yourazurekey
STACKOVERFLOW_API_KEY= yourstackoverflowkey➡ You upload a screenshot of your error or paste the error text and click ⏩ Analyze Error Button
➡ You can also try using a random test error by clicking on ❔ Try a Test Error Button
➡ Bugnix will do it's magic by:
- Extracting the error text from the image using OCR or grab the pasted error text.
- Feed it into the LLM, generate interpretation of the error with solution.
- Return the generated output on your screen.
- OCR not functioning and extracting text due to poor quality screenshot.
- The LLM may sometimes need additional context to provide better analysis of the error. You may share additional information accordingly.
✅ OCR and LLM Integration.
⬜ Codebase Grounding.
⬜ Better User Interface.
⬜ Better Performance
