🛠️

OpenVINOでLLMを動作させるサンプルを少し修正して気軽に試せるように

2024/10/03に公開

記事「Why and How to Use OpenVINO™ Toolkit to Deploy Faster, Smaller LLMs」
https://medium.com/openvino-toolkit/why-and-how-to-use-openvino-toolkit-to-deploy-faster-smaller-llms-00ac90f408ed
のサンプルコードを少し書き換え。

  • llamaのコミュニティライセンスどーたら、でダウンロードがめんどくさい
  • せっかくなので新しいモデルで

サンプルコード

from optimum.intel import OVModelForCausalLM
# new imports for inference
from transformers import AutoTokenizer, pipeline

# load the model
# model_id = "meta-llama/Llama-2-7b-chat-hf"
model_id = "unsloth/Llama-3.2-3B"
model = OVModelForCausalLM.from_pretrained(model_id, export=True)

# inference
tokenizer = AutoTokenizer.from_pretrained(model_id)
pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
prompt = "What is OpenVINO?"
results = pipe(prompt)

print(results[0]['generated_text'])

コマンドライン(Ubuntu 24.04 Amd64)

上のコードをsample.pyとして保存して実行します。

python3 -m venv venv; venv/bin/pip install wheel
venv/bin/pip install optimum[openvino]
venv/bin/pip install openvino-tokenizers[transformers]
venv/bin/python ./sample.py

スクリーンショット

モデルを変換してから実行するという動作が面白いです。

参考文献

Discussion