QA-Pilot is an interactive chat project that leverages online/local LLM for rapid understanding and navigation of GitHub code repository or compressed file resource(e.g. xz, zip).
- Chat with github public repository with git clone way
- Chat with compressed file(directories, e.g. xz, zip) with upload way
- Store the chat history
- Easy to set the configuration
- Multiple chat sessions
- Search the source documents
- Integrate with
codegraph
to view the python file - Support the different LLM models
- ollama
- openai
- mistralai
- This is a test project to validate the feasibility of a fully local solution for question answering using LLMs and Vector embeddings. It is not production ready, and it is not meant to be used in production.
Do not use models for analyzing your critical or production data!!
Do not use models for analyzing customer data to ensure data privacy and security!!
Do not use models for analyzing you private/sensitivity code respository!!
To deploy QA-Pilot, you can follow the below steps:
- Clone the QA-Pilot repository:
git clone https://github.com/reid41/QA-Pilot.git
- Install conda for virtual environment management. Create and activate a new virtual environment.
conda create -n QA-Pilot python=3.10.14
conda activate QA-Pilot
- Install the required dependencies:
pip install -r requirements.txt
-
Install the pytorch with cuda pytorch
-
Setup ollama website and ollama github to manage the local LLM model. e.g.
ollama pull <model_name>
ollama list
-
Set the related parameters in
config/config.ini
, e.g.model provider
,model
,variable
,Ollama API url
-
Run the QA-Pilot:
streamlit run qa_pilot.py
- Enable
codegraph
inconfig/config.ini
and set thehost ip
(localhost by default)
[codegraph]
enabled = True
codegraph_host = http://localhost:5001
- Open another terminal to run:
python codegraph/codegraph.py
- Do not use url and upload at the same time.
- The remove button cannot really remove the local chromadb, need to remove it manually when stop it.
- Switch to
New Source Button
to add a new project - To return source documents and start with
rsd:
input - Click
Open Code Graph
inQA-Pilot
to view the code(make sure the the already in the project session and loaded before click)