mirror of
https://github.com/QwenLM/Qwen.git
synced 2026-05-21 00:45:48 +08:00
Update README_JA.md
This commit is contained in:
72
README_JA.md
72
README_JA.md
@@ -1,4 +1,5 @@
|
||||
<br>
|
||||
|
||||
<p align="center">
|
||||
<img src="assets/logo.jpg" width="400"/>
|
||||
<p>
|
||||
@@ -13,6 +14,10 @@
|
||||
<a href="README_CN.md">中文</a>  |  <a href="README.md">English</a>  |  日本語
|
||||
</p>
|
||||
<br><br>
|
||||
<p align="right">
|
||||
Japanese document maintainer: Ikko Eltociear Ashimine
|
||||
</p>
|
||||
<br><br>
|
||||
|
||||
私たちは、**Qwen-7B** と **Qwen-7B-Chat** を **🤖 ModelScope** と **🤗 Hugging Face** の両方でオープンソース化しています(上部のロゴをクリックすると、コードとチェックポイントのあるリポジトリに移動します)。このレポには、Qwen-7B の簡単な紹介と、使い方の手引き、さらに詳しい情報を提供する技術メモ [link](tech_memo.md) が含まれています。
|
||||
|
||||
@@ -50,13 +55,19 @@ Qwen-7Bは、アリババクラウドが提唱する大規模言語モデルシ
|
||||
<p>
|
||||
<br>
|
||||
|
||||
より詳細な実験結果(より多くのベンチマークデータセットでの詳細なモデル性能)や詳細については、[こちら](techmemo-draft.md)をクリックして、我々の技術メモを参照してください。
|
||||
より詳細な実験結果(より多くのベンチマークデータセットでの詳細なモデル性能)や詳細については、[こちら](tech_memo.md)をクリックして技術メモを参照してください。
|
||||
|
||||
## 必要条件
|
||||
|
||||
* python 3.8 以上
|
||||
* pytorch 1.12 以上、2.0 以上を推奨
|
||||
* CUDA 11.4 以上を推奨(GPU ユーザー、フラッシュアテンションユーザー向けなど)
|
||||
|
||||
## クイックスタート
|
||||
|
||||
以下では、Qwen-7B と 🤖 ModelScope と 🤗 Transformers の簡単な使用例を示します。
|
||||
|
||||
コードを実行する前に、環境のセットアップと必要なパッケージのインストールが済んでいることを確認してください。pytorch のバージョンが `1.12` 以上であることを確認し、依存するライブラリをインストールします。
|
||||
コードを実行する前に、環境のセットアップと必要なパッケージのインストールが済んでいることを確認してください。上記の要件を満たしていることを確認してから、依存するライブラリをインストールしてください。
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
@@ -67,6 +78,7 @@ pip install -r requirements.txt
|
||||
```bash
|
||||
git clone -b v1.0.8 https://github.com/Dao-AILab/flash-attention
|
||||
cd flash-attention && pip install .
|
||||
# 以下はオプションです。インストールに時間がかかる場合があります。
|
||||
pip install csrc/layer_norm
|
||||
pip install csrc/rotary
|
||||
```
|
||||
@@ -81,21 +93,20 @@ Qwen-7B-Chat を推論に使用するには、以下のように数行のコー
|
||||
from transformers import AutoModelForCausalLM, AutoTokenizer
|
||||
from transformers.generation import GenerationConfig
|
||||
|
||||
# 注: トークナイザーの使用法については、examples/tokenizer_showcase.ipynb を参照してください。
|
||||
# デフォルトの動作では、インジェクション攻撃防止機能がオフになりました。
|
||||
# 注: デフォルトの動作では、インジェクション攻撃防止機能がオフになっています。
|
||||
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen-7B-Chat", trust_remote_code=True)
|
||||
# まずは BF16 の対応を確認することをお勧めします。以下のコマンドを実行してください:
|
||||
# import torch
|
||||
# torch.cuda.is_bf16_supported()
|
||||
# use bf16
|
||||
|
||||
# bf16 を使用
|
||||
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B-Chat", device_map="auto", trust_remote_code=True, bf16=True).eval()
|
||||
# use fp16
|
||||
# fp16 を使用
|
||||
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B-Chat", device_map="auto", trust_remote_code=True, fp16=True).eval()
|
||||
# use cpu only
|
||||
# CPU のみ使用
|
||||
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B-Chat", device_map="cpu", trust_remote_code=True).eval()
|
||||
# use fp32
|
||||
# オートモードを使用すると、デバイスに応じて自動的に精度が選択されます。
|
||||
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B-Chat", device_map="auto", trust_remote_code=True).eval()
|
||||
model.generation_config = GenerationConfig.from_pretrained("Qwen/Qwen-7B-Chat", trust_remote_code=True) # 異なる世代の長さ、top_p、その他の関連するハイパーパラメータを指定することができます
|
||||
|
||||
# 生成のためのハイパーパラメータを指定
|
||||
model.generation_config = GenerationConfig.from_pretrained("Qwen/Qwen-7B-Chat", trust_remote_code=True)
|
||||
|
||||
# 第一轮对话 第一回対話ターン
|
||||
response, history = model.chat(tokenizer, "你好", history=None)
|
||||
@@ -128,18 +139,20 @@ from transformers import AutoModelForCausalLM, AutoTokenizer
|
||||
from transformers.generation import GenerationConfig
|
||||
|
||||
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen-7B", trust_remote_code=True)
|
||||
## use bf16
|
||||
# bf16 を使用
|
||||
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="auto", trust_remote_code=True, bf16=True).eval()
|
||||
## use fp16
|
||||
# fp16 を使用
|
||||
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="auto", trust_remote_code=True, fp16=True).eval()
|
||||
## use cpu only
|
||||
# CPU のみ使用
|
||||
# model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="cpu", trust_remote_code=True).eval()
|
||||
# use fp32
|
||||
# オートモードを使用すると、デバイスに応じて自動的に精度が選択されます。
|
||||
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen-7B", device_map="auto", trust_remote_code=True).eval()
|
||||
model.generation_config = GenerationConfig.from_pretrained("Qwen/Qwen-7B", trust_remote_code=True) # 異なる世代の長さ、top_p、その他の関連するハイパーパラメータを指定することができます
|
||||
|
||||
# 生成のためのハイパーパラメータを指定
|
||||
model.generation_config = GenerationConfig.from_pretrained("Qwen/Qwen-7B", trust_remote_code=True)
|
||||
|
||||
inputs = tokenizer('モンゴルの首都はウランバートル(Ulaanbaatar)\nアイスランドの首都はレイキャビク(Reykjavik)\nエチオピアの首都は', return_tensors='pt')
|
||||
inputs = inputs.to('cuda:0')
|
||||
inputs = inputs.to(model.device)
|
||||
pred = model.generate(**inputs)
|
||||
print(tokenizer.decode(pred.cpu()[0], skip_special_tokens=True))
|
||||
# モンゴルの首都はウランバートル(Ulaanbaatar)\nアイスランドの首都はレイキャビク(Reykjavik)\nエチオピアの首都はアディスアベバ(Addis Ababa)...
|
||||
@@ -176,18 +189,24 @@ response, history = results['response'], results['history']
|
||||
print(f'Response: {response}')
|
||||
```
|
||||
|
||||
## トークナイザー
|
||||
|
||||
tiktoken に基づくトークナイザーは、他のトークナイザー、例えばセンテンスピーストークナイザーとは異なります。特にファインチューニングの際には、特殊なトークンに注意を払う必要があります。トークナイザに関する詳細な情報や、ファインチューニングにおける使用方法については、[ドキュメント](tokenization_note.md)を参照してください。
|
||||
|
||||
## 量子化
|
||||
|
||||
`NF4` と `Int8` のモデルをロードする方法を示す例を提供する。手始めに、`bitsandbytes` を実装していることを確認しよう。
|
||||
`NF4` と `Int8` のモデルをロードする方法を示す例を提供します。手始めに、`bitsandbytes` が実装されていることを確認して下さい。`bitsandbytes` の要件は以下の通りになります:
|
||||
|
||||
```
|
||||
pip install bitsandbytes
|
||||
**必要条件** Python >= 3.8。Linux ディストリビューション(Ubuntu、MacOS など)+ CUDA > 10.0。
|
||||
```
|
||||
|
||||
そして、量子化設定を `AutoModelForCausalLM.from_pretrained` に追加するだけでよいです。以下の例を参照してください:
|
||||
Windows ユーザは、[bitsandbytes-windows-webui](https://github.com/jllllll/bitsandbytes-windows-webui/releases/tag/wheels) という別のオプションを見つける必要があります。
|
||||
|
||||
そして、量子化の設定を `AutoModelForCausalLM.from_pretrained` に追加するだけとなります。以下の例を参照してください:
|
||||
|
||||
```python
|
||||
from transformers import BitsAndBytesConfig
|
||||
from transformers import AutoModelForCausalLM, BitsAndBytesConfig
|
||||
|
||||
# NF4(4ビット)の量子化設定
|
||||
quantization_config = BitsAndBytesConfig(
|
||||
@@ -216,16 +235,20 @@ model = AutoModelForCausalLM.from_pretrained(
|
||||
| Int8 | 52.8 | 10.1G |
|
||||
| NF4 | 48.9 | 7.4G |
|
||||
|
||||
## CLI デモ
|
||||
|
||||
`cli_demo.py` に CLI のデモ例を用意しています。ユーザはプロンプトを入力することで Qwen-7B-Chat と対話することができ、モデルはストリーミングモードでモデルの出力を返します。
|
||||
|
||||
## ツールの使用
|
||||
|
||||
Qwen-7B-Chat は、API、データベース、モデルなど、ツールの利用に特化して最適化されており、ユーザは独自の Qwen-7B ベースの LangChain、エージェント、コードインタプリタを構築することができます。近日公開予定のツール利用能力を評価するための内部評価ベンチマークでは、Qwen-7B は安定した性能に達していることがわかります。
|
||||
Qwen-7B-Chat は、API、データベース、モデルなど、ツールの利用に特化して最適化されており、ユーザは独自の Qwen-7B ベースの LangChain、エージェント、コードインタプリタを構築することができます。ツール利用能力を評価するための評価[ベンチマーク](eval/EVALUATION.md)では、Qwen-7B は安定した性能に達しています。
|
||||
[](https://)
|
||||
|
||||
| Model | Tool Selection (Acc.↑) | Tool Input (Rouge-L↑) | False Positive Error↓ |
|
||||
|-------------|------------------------|-----------------------|-----------------------|
|
||||
| GPT-4 | 95% | **0.90** | 15% |
|
||||
| GPT-3.5 | 85% | 0.88 | 75% |
|
||||
| **Qwen-7B** | **99%** | 0.89 | **8.5%** |
|
||||
| **Qwen-7B** | **99%** | 0.89 | **9.7%** |
|
||||
|
||||
ReAct プロンプトの書き方や使い方については、[ReAct の例](examples/react_prompt.md)を参照してください。ツールを使用することで、モデルがよりよいタスクを実行できるようになります。
|
||||
|
||||
@@ -274,4 +297,3 @@ Qwen-7B と Qwen-7B-Chat のコードとモデルウェイトは、研究者や
|
||||
## お問い合わせ
|
||||
|
||||
研究チームまたは製品チームへのメッセージは、qianwen_opensource@alibabacloud.com までお気軽にお送りください。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user