panco’s blog

興味が沸いたことを書く

Llama 2 をダウンロードしてみた【Llama 2 シリーズ vol.1】

ミーハーな競馬オタクによる Llama 2 ダウンロード記。皆さんサクッとやっていそうだけど苦戦した。単なる好奇心の塊で Llama 2 を知りたい、あわよくばアイビスSDの予想に使いたい、とか思っていたけど道のりが長そう・・・しばらく遊びたいのでシリーズで書くつもりだが、次回はこの vol.1 でセットしたものを壊すところから始めているかもしれない。

前提

Meta AI の公式サイトから Llama 2 をダウンロードした方法について書く。 正面突破で公式サイトからDLしたが、別のルートのほうが簡単だった模様。(そちらは試していないし、途中で知ったので時すでに)

実行環境・元々入れていたもの

ダウンロードの流れ

大きく5つの流れからなる。

1.公式サイトへGo

ダウンロード申請へ。名前・メールアドレスなど必要事項を入力してポチる。

ai.meta.com

2.届いたメールの案内に従う

まずは GitHub に行けとのことなので行く。そして、READMEに従えとのことなので従う。ポイントは以下3つ。

  1. 届いたメールに記載された signed URL (unique custom URL) は右クリックでコピーしないこと
  2. signed URL は24時間後に有効期限が切れること
  3. download.sh を実行する前に、wget と md5sum を実行環境にインストールしておくこと

3.wget のインストール&パスを通す

私の環境には入っていなかったので入れた。 以下のサイトから、最新バージョンのZIPをダウンロード。適当な場所に解凍してパスを通す。最新バージョンであることが重要。 eternallybored.org

執筆時点では Ver.1.21.4 だった。

4.md5sum のインストール&パスを通す

これは半信半疑だが、ググって以下のサイトからそれっぽいものを入れた。結果論、チェックサムは機能していて Llama 2 は正常にダウンロードできたが、これでよかったの?(誰か教えてください・・)

www.winmd5.com

5.任意のフォルダに Llama repository をクローン&シェル実行

Git Bash で以下の流れでコマンド実行。

git clone https://github.com/facebookresearch/llama
cd llama
bash download.sh

download.sh 実行後、どのモデルをダウンロードするか、もしくは全部入れるか聞かれるので入力する。私は何も考えずに 70B-Chat を入れてしまい、DLに1.5時間かかった。サイズは 130GB ぐらい。

以上で作業完了。こうして書くとどうってことないが、つまづいた箇所があったので残しておく。

OKの羅列で拍手喝采(DL完了時)

つまづいた箇所

download.sh の実行で何回もこけた。エラーは1事象。対処は次の通り。初歩的。。。

エラーメッセージ

OpenSSL: error:140773E8:SSL routines:SSL23_GET_SERVER_HELLO:reason(1000)
SSL による接続が確立できません。

対処

最新バージョンの wget をインストールする。

最初に入れたものを最新バージョンと思い込んでいたが、実はかなり古いもの(ver.1.11.4)だった。この結論に至るまでに、余計なことをたくさんした。(OpenSSLを入れたり、”--no-check-certificate” を wget コマンドに入れたり。いろいろ知ることはできたので良しとしよう)

エラー解消過程における反省点

初心者がノリでシェルスクリプトを書き換えるという暴挙に出てはいけない。
案の定、オリジナルのシェルを実行していたつもりが、自身による改ざんスクリプトを実行しており、2回ぐらい余計にリトライしてしまった。夜更けに「何してんねん」って声が漏れた瞬間。

参考になったサイト

download - Wget returning error: "Unable to establish SSL connection." - Super User
SSL Server Rating Guide · ssllabs/research Wiki · GitHub