Skip to content

reid41/QA-Pilot

Repository files navigation

qa-pilot

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).

Features

  • 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

Disclaimer

  • 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!!

QA-Pilot

Image Alt text

CodeGraph

codegraph

To deploy QA-Pilot, you can follow the below steps:

  1. Clone the QA-Pilot repository:
git clone https://github.com/reid41/QA-Pilot.git
  1. 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
  1. Install the required dependencies:
pip install -r requirements.txt
  1. Install the pytorch with cuda pytorch

  2. Setup ollama website and ollama github to manage the local LLM model. e.g.

ollama pull <model_name>

ollama list
  1. Setup OpenAI or MistralAI, add the key in .env

  2. Set the related parameters in config/config.ini, e.g. model provider, model, variable, Ollama API url

  3. Run the QA-Pilot:

streamlit run qa_pilot.py
  1. Enable codegraph in config/config.ini and set the host ip(localhost by default)
[codegraph]
enabled = True
codegraph_host = http://localhost:5001
  1. Open another terminal to run:
python codegraph/codegraph.py

Tips

  • 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 in QA-Pilot to view the code(make sure the the already in the project session and loaded before click)

About

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).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published