YAI777's picture
Update README.md
d38a9a1 verified
|
raw
history blame
2.55 kB
---
license: cc-by-nc-sa-4.0
base_model:
- llm-jp/llm-jp-3-13b
---
## 環境準備
### 必要なライブラリのインストール
```bash
pip install transformers torch accelerate peft bitsandbytes
```
## モデルのロードと推論
### Pythonスクリプト例
```python
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch
# モデルとトークナイザーのロード
base_model_id = "llm-jp/llm-jp-3-13b"
model_id = "your-huggingface-username/llm-jp-3-13b-finetune"
# トークナイザーをロード
tokenizer = AutoTokenizer.from_pretrained(base_model_id)
# ベースモデルをロード (4bit量子化)
model = AutoModelForCausalLM.from_pretrained(
base_model_id,
load_in_4bit=True,
device_map="auto"
)
# LoRAアダプタをマージ
model = PeftModel.from_pretrained(model, model_id)
model = model.merge_and_unload()
def generate_response(prompt):
# プロンプトフォーマット
full_prompt = f"""### 指示
{prompt}
### 回答
"""
# トークン化
inputs = tokenizer(full_prompt, return_tensors="pt").to(model.device)
# 推論
outputs = model.generate(
input_ids=inputs.input_ids,
attention_mask=inputs.attention_mask,
max_new_tokens=100,
do_sample=False,
repetition_penalty=1.2
)
# デコード
response = tokenizer.decode(
outputs[0][inputs.input_ids.size(1):],
skip_special_tokens=True
)
return response
# 使用例
prompt = "日本の首都について教えてください。"
print(generate_response(prompt))
```
## 注意事項
- このモデルは `CC-BY-NC-SA` ライセンスの下で提供されています
- 非営利目的での使用に限定されます
- 元のデータセットと同様のライセンス条件が適用されます
## 引用情報
モデル元データセット:
- 関根聡, 安藤まや, 後藤美知子, 鈴木久美, 河原大輔, 井之上直也, 乾健太郎.
- "ichikara-instruction: LLMのための日本語インストラクションデータの構築"
- 言語処理学会第30回年次大会 (2024)
## トラブルシューティング
1. CUDA out of memory エラー
- `device_map="auto"``device_map="balanced"` に変更
- バッチサイズを減らす
- より大きなGPUを使用
2. ライブラリバージョンの不整合
- 推奨バージョン:
- transformers: 最新版
- torch: 2.0以降
- accelerate: 最新版
- peft: 最新版