{"data":{"slug":"pnkvalavala-repochat","name":"repochat","tagline":"Chatbot assistant enabling GitHub repository interaction using LLMs with Retrieval Augmented Generation","github_url":"https://github.com/pnkvalavala/repochat","owner":"pnkvalavala","repo":"repochat","owner_avatar_url":"https://avatars.githubusercontent.com/u/108526358?v=4","primary_language":"Python","stars":316,"forks":54,"topics":["chat-application","code-llama","deeplake","github","huggingface","langchain","openai","retrieval-augmented-generation","streamlit"],"archived":false,"github_pushed_at":"2024-08-28T18:59:58+00:00","maintenance_label":"Dormant","url":"https://www.graphcanon.com/tools/pnkvalavala-repochat","markdown_url":"https://www.graphcanon.com/tools/pnkvalavala-repochat.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/pnkvalavala-repochat","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=pnkvalavala-repochat","description":"Chatbot assistant enabling GitHub repository interaction using LLMs with Retrieval Augmented Generation","homepage_url":"https://repochat.streamlit.app","license":"Apache-2.0","open_issues":3,"watchers":1,"ai_summary":null,"readme_excerpt":"## Installation\n\nTo get started with Repochat, you'll need to follow these installation steps:\n\n1. Create a virtual environment and activate on your local machine to isolate the project's dependencies.\n   ```bash\n   python -m venv repochat-env\n   source repochat-env/bin/activate\n   ```\n\n2. Clone the Repochat repository and navigate to the project directory.\n   ```bash\n   git clone https://github.com/pnkvalavala/repochat.git\n   cd repochat\n   ```\n\n3. Install the required Python packages using `pip`.\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n4. Install the \"llama-cpp-python\" library.\n    ### Installation without Hardware Acceleration\n   ```bash\n   pip install llama-cpp-python\n   ```\n\n   ### Installation with Hardware Acceleration\n\n    `llama.cpp` supports multiple BLAS backends for faster processing.\n\n    To install with OpenBLAS, set the `LLAMA_BLAS and LLAMA_BLAS_VENDOR` environment variables before installing:\n\n    ```bash\n    CMAKE_ARGS=\"-DLLAMA_BLAS=ON -DLLAMA_BLAS_VENDOR=OpenBLAS\" pip install llama-cpp-python\n    ```\n\n    To install with cuBLAS, set the `LLAMA_CUBLAS=1` environment variable before installing:\n\n    ```bash\n    CMAKE_ARGS=\"-DLLAMA_CUBLAS=on\" pip install llama-cpp-python\n    ```\n\n    To install with CLBlast, set the `LLAMA_CLBLAST=1` environment variable before installing:\n\n    ```bash\n    CMAKE_ARGS=\"-DLLAMA_CLBLAST=on\" pip install llama-cpp-python\n    ```\n\n    To install with Metal (MPS), set the `LLAMA_METAL=on` environment variable before installing:\n\n    ```bash\n    CMAKE_ARGS=\"-DLLAMA_METAL=on\" pip install llama-cpp-python\n    ```\n\n    To install with hipBLAS / ROCm support for AMD cards, set the `LLAMA_HIPBLAS=on` environment variable before installing:\n\n    ```bash\n    CMAKE_ARGS=\"-DLLAMA_HIPBLAS=on\" pip install llama-cpp-python\n    ```\n\n    To get to know more about Hardware Acceleration, refer to official README from [llama-cpp-python](https://github.com/abetlen/llama-cpp-python)\n\n5. Create a folder named `models` in the project directory.\n\n6. Download a Language Model from the Hugging Face Model Hub based on your computer's capabilities. It is recommended using the following model as a starting point: [TheBloke/CodeLlama-7B-GGUF](https://huggingface.co/TheBloke/CodeLlama-7B-GGUF/blob/main/codellama-7b.Q4_K_M.gguf). If you want to quantize a model available on Hugging Face, follow the instructions from [llama.cpp](https://github.com/ggerganov/llama.cpp)\n\n7. Copy the downloaded model file to the \"models\" folder.\n\n8. Open the `models.py` file located in the \"repochat\" folder and set the model file location in the `code_llama()` function as follows:\n   ```python\n   def code_llama():\n       callbackmanager = CallbackManager([StreamingStdOutCallbackHandler()])\n       llm = LlamaCpp(\n           model_path=\"./models/codellama-7b.Q4_K_M.gguf\",\n           n_ctx=2048,\n           max_tokens=200,\n           n_gpu_layers=1,\n           f16_kv=True,\n           callback_manager=callbackmanager,\n           verbose=True,\n           use_mlock=True\n       )\n       return llm\n   ```\n\n---\n\n## License\n\nThis project is licensed under the [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0). For details, see the [LICENSE](LICENSE) file.\nPlease note that this is a change from the previous license, and it's important to review the terms and conditions of the new license.","github_created_at":"2023-07-03T19:45:57+00:00","created_at":"2026-07-11T10:49:13.172645+00:00","updated_at":"2026-07-11T10:49:17.631994+00:00","categories":[{"slug":"llm-frameworks","name":"LLM Frameworks","url":"https://www.graphcanon.com/categories/llm-frameworks","markdown_url":"https://www.graphcanon.com/categories/llm-frameworks.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/llm-frameworks"},{"slug":"data-retrieval","name":"Data & Retrieval","url":"https://www.graphcanon.com/categories/data-retrieval","markdown_url":"https://www.graphcanon.com/categories/data-retrieval.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/data-retrieval"},{"slug":"inference-serving","name":"Inference & Serving","url":"https://www.graphcanon.com/categories/inference-serving","markdown_url":"https://www.graphcanon.com/categories/inference-serving.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/inference-serving"}],"tags":[{"slug":"github","name":"github"},{"slug":"deeplake","name":"deeplake"},{"slug":"chat-application","name":"chat-application"},{"slug":"retrieval-augmented-generation","name":"retrieval-augmented-generation"},{"slug":"openai","name":"openai"},{"slug":"langchain","name":"langchain"},{"slug":"huggingface","name":"huggingface"},{"slug":"code-llama","name":"code-llama"}],"trust":{"provenance":{"is_fork":false,"github_id":661847690,"owner_type":"User","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-07-11T10:49:13.828Z","maintenance":{"label":"Dormant","score":18,"methodology":"github_public_v1","releases_90d":0,"days_since_push":681,"last_release_at":null},"security_summary":{"status":"findings","scanner":"osv@v1","low_count":27,"high_count":0,"last_scan_at":"2026-07-11T10:49:14.641Z","medium_count":0,"scan_profile":"deps","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-07-11T10:49:14.240Z"},"languages":{"value":["python"],"source":"github.language","observed_at":"2026-07-11T10:49:14.240Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-07-11T10:49:14.240Z"}}}}