駄文。

プログラマーの日常でつまずいたこと・気づいたことなどの記録です

google colaboratoryをself hostedで立ち上げてみた

Deep Larningの勉強で以前自宅のGPUを使った環境を構築していたが、 検証する毎に都度セットアップをするのが大変でなんとなく遠ざかって しまっていた。

ちょうどLLMが盛り上がってきた時に触っていたが一休みしていたが その間にもLLMのバリエーションが増えてきてもう少し触りたいという 気持ちとは裏腹に遠ざかっていた面倒臭さに手を出せずにいた。

世間ではLLM検証となるとgoogle colaboratoryを使用していたのだが、 費用や無料で使用できるGPUのメモリサイズ上限もあって手をだせず にいた。

世に出ているサンプルは圧倒的にgoogle colaboratoryを使っていることも あり、ちょっと触ってみようとやってみたら相当簡単に環境が準備できる ことに感動。

ただ、やっぱりメモリ上限がかなりきつくLLM検証に使用するとかなり壁に なる(無料の範囲で使う前提でw)

と悩んでいたら、自宅のサーバにgoogle colaboratoryを立ち上げて(ローカルランタイムと呼ばれています) google colaboratoryのUIと連携できることをネットの記事で知り*1、 この点での課題も一気に解決した。 *2

dockerイメージで環境が提供されているのでコマンド一発で立ち上がるのものいいところ。 なぜ今までこれに気が付か手を出さなかったのかと後悔するくらいに。

我が家での検証環境はVMWareで仮想化されたサーバにGPUを割り当てた環境になるので 一癖があり単純にDockerでとはいかない環境を作っていくので、いろいろ手間がかかり そうだったのだがこちらもansibleを使うとあっさり出来上がった。

まぁ、実際にはちょっとゴタゴタもあったのだが、長くなるのでこちらについては 時間がある時に別記事で紹介していきたい。

これで、無事googleインスタンスではなく、自宅サーバで検証ができるようになったのである。

ただ一点注意が必要なのは、接続先URLがセキュリティの都合かlocalhostに限定されているため サーバ上でブラウザを実行しない場合にはブラウザを実行しているマシンからサーバまでsshトンネリング を設定しておくことで問題を回避する必要がある。

なんだかんだでちょっと性能の良い費用がかからない google colaboratoryが手に入った。

ということで、これからもうちょっと時間をかけてLLMを検証していくことにするのである。

参考情報