LoginSignup
0
0

More than 1 year has passed since last update.

FauxPilotを試してみます

Last updated at Posted at 2023-05-11

はじめに

GitHub CopilotのOSSクローンFauxPilotを試してみます. WindowsのWSLにインストールしてみます.

必要なコンポーネント

  • Docker
  • Docker Compose >= 1.28
  • NVIDIAのGPU
    • 2GB, 7GB, 13GB, 32GBのモデルがあり, それぞれのサイズ分のGPUメモリが必要
  • nvidia-docker
  • curl
  • zstd

セットアップ

WSLはインストール済みとします. 私はDebian 11を使っています.
次のコンポーネントインストールそれぞれは, 公式の手順で大丈夫だと思います.

CUDA Toolkit

CUDAのドライバが必要なので, Windows側でツールキットをインストールします.
CUDA Toolkit

Docker

apt経由だと古いバージョンなので, 本家からパッケージをインストールします.

Docker - Install Docker Engine on Debian

NVIDIA Container Toolkit

nvidia-dockerをインストールします.
このNVIDIAの拡張をインストールしないとGPUが見つけられず立ち上がりません.

NVIDIA Container Toolkit - Installation Guide

Faux Pilot

ツール類をインストールして,

$ sudo apt install -y git curl zstd

FauxPilotをインストールします.

$ git clone https://github.com/fauxpilot/fauxpilot.git
$ cd fauxpilot
$ ./setup.sh

モデル選択以外はエンター連打でいいと思います.

setup.sh
Checking for curl ...
/usr/bin/curl
Checking for zstd ...
/usr/bin/zstd
Checking for docker ...
/usr/bin/docker
Enter number of GPUs [1]: 1
External port for the API [5000]:
Address for Triton [triton]:
Port of Triton host [8001]:
Where do you want to save your models [/home/taqu/fauxpilot/models]?
Choose your backend:
[1] FasterTransformer backend (faster, but limited models)
[2] Python backend (slower, but more models, and allows loading with int8)
Enter your choice [1]: 1
Models available:
[1] codegen-350M-mono (2GB total VRAM required; Python-only)
[2] codegen-350M-multi (2GB total VRAM required; multi-language)
[3] codegen-2B-mono (7GB total VRAM required; Python-only)
[4] codegen-2B-multi (7GB total VRAM required; multi-language)
[5] codegen-6B-mono (13GB total VRAM required; Python-only)
[6] codegen-6B-multi (13GB total VRAM required; multi-language)
[7] codegen-16B-mono (32GB total VRAM required; Python-only)
[8] codegen-16B-multi (32GB total VRAM required; multi-language)
Enter your choice [6]: 4
$ sudo bash ./launch.sh

成功すると, http://localhost:5000にサンプルページが表示されるはずです.

image.png

Visual Studio Code Plugin

VSCode用のプラグインが公開されているので, Copilotのプラグインを流用するよりいいでしょう (Fauxpilot).

まとめ

よくインフェランスに時間がかかってサーバからの応答がなくなるので, つよつよサーバが必要だと思います. 問い合わせ頻度も設定する必要があると思います.

補完それ自体は, 逐一本質でないコメントを書くのが面倒くさいです. 頭でロジックを考えながら, 同時にインターフェイスを書いていく人間には煩わしいだけなのかなと思いました. リファクタリング提案や, よりよいフォーマッタやリンタになったらいいなと思います.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0