ai-wonderland.com Open in urlscan Pro
13.230.115.161  Public Scan

URL: https://ai-wonderland.com/entry/cyberagentllm
Submission: On August 08 via api from US — Scanned from JP

Form analysis 1 forms found in the DOM

GET https://ai-wonderland.com/search

<form class="search-form" role="search" action="https://ai-wonderland.com/search" method="get">
  <input type="text" name="q" class="search-module-input" value="" placeholder="記事を検索" required="">
  <input type="submit" value="検索" class="search-module-button">
</form>

Text Content

AIワンダーランド


AIエンジニアの個人開発ブログ


トップ > 言語モデル > CyberAgentのLLMをローカル(Windows)で動かしてみた
2023-05-17


CYBERAGENTのLLMをローカル(WINDOWS)で動かしてみた

言語モデル


更新日:2023年7月23日

 * 概要
 * 環境
 * 手順
   * 1.ライブラリのインストール
   * 2.動作確認「open-calm-small」
   * 3.本命「open-clam-3b」


概要

昨日5月16日に記事で紹介したCyberAgentさんのLLM

予定通り本日5月17日huggingfaceで公開されましたね!!

 

7/23追記:

Metaがオープンソースとして7月18日に公開した大規模言語モデル(LLM)【Llama-2】をWindowsのCPUだけで動かす手順を簡単にまとめました。

ai-wonderland.com

 

 

ai-wonderland.com

 

さっそく動かしてみました!

huggingface.co

 



 

Modelは6つ用意されていて

一番大きい「open-clam-7b」はVRAM15GBほど必要なようです。

なんたって68億パラメータですからね。

 

私の環境では無理なので、その下の「open-clam-3b」を動かします

こちらならVRAM8GBあればOK。

 


環境

実行環境:Windows11,GPU(RTX3060 12GB)

私は仮想環境で試しました。

py -3.10 -m venv ./venv

.\venv\Scripts\activate

 

もちろん仮想環境じゃなくても問題はありません。


手順

1.ライブラリのインストール

pip install transformers accelerate

 

2.動作確認「OPEN-CALM-SMALL」

「open-calm-small」381MB

とりあえず一番小さいモデルで動くかどうか試す。

 

RuntimeError: "LayerNormKernelImpl" not implemented for 'Half'

TypeError: dispatch_model() got an unexpected keyword argument 'offload_index'

 

そのままだと上記のようなエラーが出るかもしれません。

とりあえずは下記で解決するかと思います。

 

Copy


import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

#model = AutoModelForCausalLM.from_pretrained("cyberagent/open-calm-small", device_map="auto", torch_dtype=torch.float16)
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
model = AutoModelForCausalLM.from_pretrained("cyberagent/open-calm-small")
model = model.to(device)
tokenizer = AutoTokenizer.from_pretrained("cyberagent/open-calm-small")

inputs = tokenizer("日本のエンジニアは世界でどう評価されているか", return_tensors="pt").to(device)
with torch.no_grad():
    tokens = model.generate(
        **inputs,
        max_new_tokens=64,
        do_sample=True,
        temperature=0.7,
        pad_token_id=tokenizer.pad_token_id,
    )

output = tokenizer.decode(tokens[0], skip_special_tokens=True)
print(output)


【結果】

inputs:日本のエンジニアは世界でどう評価されているか

output:日本だけでなく、世界全体も注目する「AI(人工知能)」の世界的な普及はどのように進んでいくのか。そのヒントを探る。IoT技術の高度化・産業競争力の強化に向けた技術動向を解説AI技術を活用すれば、現場の作業量・工数を大幅に削減できるAIエンジニアに求められるスキル

 

まあ、動作確認用なのでこんなもんでしょう

 

3.本命「OPEN-CLAM-3B」

さて、本題の「open-clam-3b」の実力はどうか、、わくわく

Downloading pytorch_model.binで5.7GBのモデルをダウンロードするので3分30秒ほどかかりました。

Copy


import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

#model = AutoModelForCausalLM.from_pretrained("cyberagent/open-calm-3b", device_map="auto", torch_dtype=torch.float16)
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
model = AutoModelForCausalLM.from_pretrained("cyberagent/open-calm-3b")
model = model.to(device)
tokenizer = AutoTokenizer.from_pretrained("cyberagent/open-calm-3b")

inputs = tokenizer("最近人気のある技術書はどんなのですか", return_tensors="pt").to(device)
with torch.no_grad():
    tokens = model.generate(
        **inputs,
        max_new_tokens=64,
        do_sample=True,
        temperature=0.7,
        pad_token_id=tokenizer.pad_token_id,
    )

output = tokenizer.decode(tokens[0], skip_special_tokens=True)
print(output)


CPUだとレスポンスに30秒ほどかかりました。

GPUだと45秒??挙動がどうもおかしいので私の環境の問題かもしれません。

 

さて、結果はどうかな~~~

 

【結果】

inputs:日本のエンジニアは世界でどう評価されているか

output:2018年10月から2019年9月までの1年間で、私は3つのプログラミング言語を学習する事にしました。Python(パイソン)とPHP(ピーエイ
チピー)とJavaScript(ジャバスクリプト)です。私はこれまで、様々なプログラミング言語を独学で習得してきました。
たとえばといったものです。

 

え。。。なんだって?

 

【結果】

inputs:最近人気のある技術書はどんなのですか

output:

「どんな技術書を読んでいるのですか?」という質問を頂くことがあります。

「どんな技術書を読んでいるのですか?」という質問を頂くことがあります。
「どんな技術書を読んでいるのですか?」という質問を頂くことがあります。

「どんな技術書を読んでいるのですか?」という

 

え、、こわい

 

【もう一回】

inputs:最近人気のある技術書はどんなのですか

output:私は、3DCADやVR、AR、自動運転技術や人工知能など、最先端技術の技術書を読みたいのですが、どれを読めばよいのかわかりません 。
また、おすすめの書籍があれば、教えてほしいです。例えば、下記のような技術AILは、どのように読めばよいのでしょうか?・人工知能

 

「私は」ときましたか!?

プロンプト指示なしのプレーンですが、何かデフォルトで設定されているんですかね。

 

【もう一回】

inputs:最近人気のある技術書はどんなのですか

output:書籍版の技術書だと、技術の進化についていくのに時間がかかりそうですし、何より、お
金がかかります。「技術書典6」で技術書典7で出す予定の本と、今後出す予定の本について。技術書典6で出した技術書と、今後出す予定の技術書について

 

うーん、当然ですがこのまま使用というのは厳しいですね。

基盤モデルですので、「一緒にお勉強していきましょう」というところですかね。

 

しかしうまく使いこなせていければ楽しいですね~

とにかく公開してくれたCyberAgent様に感謝です!!

 

 

以上、CyberAgentのLLMをローカル(Windows)で動かしてみた でした

ではまた

 



ランキング参加中
Python
ランキング参加中
人工知能





ランキング参加中
プログラミング
ランキング参加中
インターネット
ランキング参加中
テクノロジー



 

人工知能 AI CyberAgent LLM

わんぺん (id:ai-wonderland) 83日前



関連記事
 * 2023-07-22
   MetaのLLM【Llama2】の使い方(CPUで7Bを動かす簡単手順)
   更新日:2023年7月24日 概要 「13B」も動きました! Metaがオー…
 * 2023-06-03
   【YOLOv8】WindowsでWEBカメラからリアルタイム物体検出してメッセージボックス表示
   更新日:2023年6月3日 概要 環境 手順 1.リアルタイム検出の…
 * 2023-05-28
   【YOLOv8】WindowsでWEBカメラからリアルタイム物体検出
   更新日:2023年6月1日 環境 概要 手順 1.リアルタイム検出用…

読者になる

 * もっと読む

コメントを書く
« Stability AIの画像生成AIアプリ【StableS… 日本語特化型大規模言語モデル(LLM)の公… »

プロフィール
わんぺん (id:ai-wonderland) はてなブログPro

AIをもっと身近に!最新のAI関連情報と個人開発を記事にしています。
2023年5月20日ブログ開設。



読者です 読者をやめる 読者になる 読者になる
18
このブログについて
検索

最新記事
 * MetaのLLM【Llama2】の使い方(CPUで7Bを動かす簡単手順) 
 * 【無料で楽しむ】Stable Doodleで落書きからイラスト生成!
 * 【実例付き】Stable Diffusionの「ControlNet」使い方ガイド
 * 【Stable Diffusion】おしゃれなQRコード生成する方法
 * 【QuickQR Art】誰でも生成AIでおしゃれなQRコードを作成する方法

月別アーカイブ
 * ▼ ▶
   2023 (17)
   * 2023 / 7 (3)
   * 2023 / 6 (6)
   * 2023 / 5 (8)

リンク
 * お問い合わせ
 * プライバシーポリシー

ブログ村

にほんブログ村






引用をストックしました

ストック一覧を見る 閉じる

引用するにはまずログインしてください

ログイン 閉じる

引用をストックできませんでした。再度お試しください

閉じる

限定公開記事のため引用できません。

読者です 読者をやめる 読者になる 読者になる
18