WindowsにPythonを導入して生成AI「Llama 3 Youko」を実行してみた

最近、巷では生成AIが盛んだとか。いや、もうすでに乗り遅れている感じが満載ですが、まだいけるはず!ChatGPTが公開されてから盛んですよねー。
そんな訳で、生成AIをWindows 11のマシンで試してみました。

まず必要となるのは、GPUが搭載されたマシンだとか。でも手元にないので、テキトーな仮想マシンを立ち上げてからテスト的に実施してみます。
そう、私はまだスタートラインにすら立っていないという。ボーナスが入ればきっと。。。
セットアップしたのは、CPU:2core、メモリ:16GB、HDD:480GBな環境です。

最初に、基本となる Python の導入です。導入バージョンは古いほうがいろいろ組み合わせ上サポートがあるらしく、最新のものが良いというわけではないとか。
そのためPython 3.10.11をダウンロードしてインストールしてみました。

https://www.python.org/downloads/windows/
https://www.python.org/ftp/python/3.10.11/python-3.10.11-amd64.exe

インストールが完了した後、自動的に環境変数のパスにpythonインストールディレクトリが登録されます。ただ即座に反映はしないようなので、一度サインアウトをするか、PCの再起動を実施したほうがよさそうです。
ソフトウェア導入すると大体再起動すると思いますが。次に使うコマンドpipが実行できなくて焦ったのは私だけ・・・(笑)

そのあとに、Pythonで使用するパッケージのインストールを、コマンドプロンプトを起動させて実行します。

今回は仮想なので実施しませんが、GPUがある場合はドライバ最新化とかも必要なようです。
nVIDIAなどの場合は、下記からcuDNN for CUDAも導入するとか。
https://developer.nvidia.com/cudnn-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_local

導入したら、スタートメニューからpythonをクリックして実行させます。
今回実施してみる生成AIは、FacebookのMetaが開発したLlama-3に、昔Microsoftでよく見た女子高生bot「りんな」の学習を追加したLlama 3 Youko 8B Instructというものです。
https://huggingface.co/rinna/llama-3-youko-8b-instruct

何かよくわかりませんが、量子化というのがされているらしく、GPUのメモリが少なくても動作するようになっているらしいです。
今回の環境はGPUがないので、それでどこまで動くかがポイントでしょうか。

Llama 3 Youkoは、サイトに記載されているサンプルそのままを、起動したpythonへ貼り付けて実行です。
貼り付けした時に複数行の警告が出ますが、そのまま貼り付けさせました。

そうすると下記のような、良くわからない警告が表示されます。今回は実行できているので無視しましたが、eos_token_idというのを指定してあげないとだめって感じのことが書かれてます。そのうち調べる(たぶんやらない)リストへ追加です。

The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input’s attention_mask to obtain reliable results.
Setting pad_token_id to eos_token_id:128001 for open-end generation.
The attention mask is not set and cannot be inferred from input because pad token is same as eos token. As a consequence, you may observe unexpected behavior. Please pass your input’s attention_mask to obtain reliable results.

実行結果ですが、1時間20分ほどかかり、下記が出力されました。めちゃくちゃ時間がかかりますが、CPUだけでも文字生成できるのはすごいですね!

西田幾多郎(にしだきわたろう、1870年 – 1945年)は、日本の哲学者であり、京都大学教授を務めた人物です。
彼は「純粋経験」という概念を提唱し、現代日本哲学において最も重要な思想家の一人とされています。西田は、知識や認識が外部世界に基づくものではなく、むしろ主体的な経験によって生じるという考え方を示しました。この考え方は、現代の認知科学や脳神経科学にも影響を与えていると言われています。
また、西田は倫理学においても独自の立場を確立し、「善」の概念を再定義したことで知られています。彼の哲学は、戦後の日本哲学界に大きな影響を与えたと評価されており、その業績は現在でも広く研究され続けています。

ちなみにノートパソコンでも実行してみました。
CPU:Intel Core i5-1135G7 (4c/8T)、メモリ:23.7GB(24GB)な環境で、同じコマンドを実行すると10分程度で完了します。CPUだけでも、coreがたくさんある環境であればそこそこ動きそうです。

普通に安いグラフィックカードを使ったほうが、もっと早いんでしょうけどねー(笑)
自分でやるのは楽しいけど、普通にChatGPTなどのサービス利用していたほうが、日々進歩していくので楽かもです。

Google PlayでAndroidアプリを収益化すると個人情報が全世界に公開されるらしい

Qiitaトレンドで下記記事が上がってました。

こどおじがAndroidアプリ作ってたらGoogleに子供部屋を追い出された話
要約すると、新しい規約で収益化しているアカウントについては住所と氏名がGoogle Playで公開されるとのこと。記事の人はそのため、実家ではなく賃貸を別途契約して住み始めたって事みたいです。

そういえば、私もGoogle Playに登録していたなぁと思ってしばらく使ってないGmailを開いてみると。。。下記メッセージが届いておりすでに削除されていました!(笑)

[ご対応のお願い] デベロッパー アカウント(yamahide.biz)に問題があります
デベロッパー アカウントは使用されていないため、閉鎖される可能性があります

[最終通知] yamahide.biz 様、Google Play Console デベロッパー アカウントが閉鎖されました
デベロッパー アカウントは使用されていなかったため閉鎖されました

つかっていないアカウントだったのでショウガナイという気持ちと、25ドルがモッタイナイという気持ちとがせめぎあっています。まぁ、残っていてもAndroidアプリを公開する可能性は低いので、不要なアカウントは消していくっていう方針自体には同意です。

教訓としては、定期的にメール確認しましょうって事ですね!