The GPT Code Assistant is an AI-based open-source tool designed to help you explore, query, and understand any codebase efficiently. Utilizing Language Models (LLMs) and vector embeddings—a technique that converts objects like text into vectors—it makes coding and debugging a breeze.
Table of Contents
Features
- LLM-based Search Retrieval: Uses Language Models for efficient code search and comprehension.
- File-system Integration: Works with any codebase and directly interacts with local files.
- Language Agnostic: Supports multiple programming languages.
- Privacy-centric Design: Code snippets are only sent when a question is asked, ensuring privacy. *(Note: Code snippets are shared with OpenAI)*
Future plans include supporting local models and generating code.
Getting Started
Installation
bash
pip install gpt-code-assistant
Usage
Follow these easy steps to start using the GPT Code Assistant:
Create a Project
Index all files by creating embeddings for each file in a local database.
bash
gpt-code-assistant create-project project-name path-to-codebase
gpt-code-assistant create-project gpt-code-assistant .
Ask a Question About Your Codebase
Query the purpose of your codebase using the command:
bash
gpt-code-assistant query project-name What does this codebase do?
To generate a specific test for a file, use:
bash
gpt-code-assistant query gpt-code-assistant Can you generate a test for analytics.py?
For common usage questions about a module, utilize keywords:
bash
gpt-code-assistant query gpt-code-assistant How do I use the analytics module?
Note: Including file names or keywords enhances search accuracy.
List All Projects
bash
gpt-code-assistant list-projects
Refresh and Delete a Project
To reindex or delete a project, use:
bash
gpt-code-assistant refresh-project project-name
gpt-code-assistant delete-project project-name
Select a Model to Use
You can select the model you want to use:
bash
gpt-code-assistant select-model
This defaults to gpt-3.5-turbo-16k and will be stored in $HOME/.gpt-code-assistant/config.toml.
Configuration
During the setup, you’ll need to configure your OPENAI_API_KEY if you haven’t done it already.
Problem
Struggling with effectively utilizing GPT-4 to search your codebase without the hassle of manual code snippet copying? The GPT Code Assistant allows you to leverage GPT-4 to automatically extract relevant code snippets from your project right from your terminal; say goodbye to tedious UI interactions.
Here are examples of queries you might consider:
- Debugging errors and retrieving relevant files
- Documenting large files or functions in markdown
- Generating new code based on existing conventions
- General inquiries about any codebase part
Roadmap
- [x] Enhance search and retrieval with vector embeddings
- [ ] Broaden support for additional models (Claude, Bedrock, etc.)
- [ ] Enable local model support (Llama2, Starcoder, etc.)
- [ ] Develop code generation capabilities
- [ ] Implement searching across multiple codebases
- [ ] Allow the model to execute generated functions
- [ ] Utilize guidance to refine prompts
Contributing
We welcome contributions! Fork the repository and submit a pull request. For guidelines, refer to our Code of Conduct and Contributing Guide.
Troubleshooting
If you encounter any issues using the GPT Code Assistant, feel free to open an issue on GitHub, or contact us directly at narenkmanoharan@gmail.com. For further insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Your feedback is essential for us! Connect with us to share your thoughts or suggestions for improvement.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

