Turbopilot is an open source large-language-model based code completion engine that runs locally on CPU
Go to file
2023-04-10 08:16:12 +01:00
assets add screen recording gif 2023-04-10 08:05:21 +01:00
ggml@a25b0a84ab add ggml 2023-04-09 17:49:03 +01:00
.gitmodules add ggml 2023-04-09 17:49:03 +01:00
convert-codegen-to-ggml.py add conversion script 2023-04-09 17:49:42 +01:00
LICENSE.md add readme and license 2023-04-10 08:16:12 +01:00
README.md add readme and license 2023-04-10 08:16:12 +01:00

TurboPilot

TurboPilot is a self-hosted copilot clone which uses the library behind llama.cpp to run huge 6 Billion Parameter Salesforce Codegen models in 4GiB of RAM. It is heavily based and inspired by on the fauxpilot project.

NB: This is a proof of concept right now rather than a stable tool. Autocompletion is quite slow in this version of the project. Feel free to play with it, but your mileage may vary.

a screen recording of turbopilot running through fauxpilot plugin

Getting Started

git clone https://github.com/ravenscroftj/turbopilot
git submodule init
cd ggml
mkdir build
cd build
cmake ..
make codegen codegen-quantize

Getting The Models

Start by downloading either the 2B or 6B GPT-J versions of CodeGen.

Convert The Model

python convert-codegen-to-ggml.py ./codegen-6B-multi-gptj 0

Quantize the model

./bin/codegen-quantize ../../codegen-6B-multi-gptj/ggml-model-f32.bin ../../codegen-6B-multi-gptj/ggml-model-quant.bin 2

Run the model

./bin/codegen -t 6 -m ../../codegen-6B-multi-gptj/ggml-model-quant.bin -p "def main("

Acknowledgements