mmnga's picture
Update README.md
5d67223
metadata
license: apache-2.0

japanese-stablelm-base-gamma-7b-AWQ-calib-ja-1k

stabilityaiさんが公開している、japanese-stablelm-base-gamma-7bを、 日本語のキャリブレーションセットで生成したAWQモデルになります。

キャリブレーションセットはizumi-lab/wikipedia-ja-20230720から、 1kほどランダムサンプリングしています。
mmnga/wikipedia-ja-20230720-1k

AWQモデル

Paper arxiv:2306.00978
キャリブレーションセットからActivationを行うことによって、量子化する際に重要な重みを検出し、f16で保護します。
日本語のキャリブレーションセットを使用して生成すると、どれくらい変化があるのか検証する為に作成しました。

他のモデルはこちら

AWQ
mmnga/japanese-stablelm-base-gamma-7b-AWQ-calib-ja-1k
mmnga/japanese-stablelm-instruct-gamma-7b-AWQ-calib-ja-1k

GPTQ
mmnga/japanese-stablelm-base-gamma-7b-GPTQ-calib-ja-1k
mmnga/japanese-stablelm-instruct-gamma-7b-GPTQ-calib-ja-1k

GGUF
3bモデル
mmnga/japanese-stablelm-3b-4e1t-base-gguf
mmnga/japanese-stablelm-3b-4e1t-instruct-gguf

7bモデル
mmnga/japanese-stablelm-base-gamma-7b-gguf
mmnga/japanese-stablelm-instruct-gamma-7b-gguf

Usage

google colabを利用する場合、A100でのみ動作します。ご注意ください。

pip install autoawq transformers
from awq import AutoAWQForCausalLM
from transformers import AutoTokenizer

model_name_or_path = "mmnga/japanese-stablelm-base-gamma-7b-AWQ-calib-ja-1k"

tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, trust_remote_code=True)
model = AutoAWQForCausalLM.from_quantized(model_name_or_path, safetensors=True, device_map="auto", fuse_layers=True)

prompt = """今日の晩御飯のレシピを紹介します。"""
tokens = tokenizer(
    prompt,
    return_tensors='pt'
).input_ids.cuda()

# Generate output
generation_output = model.generate(
    tokens,
    do_sample=True,
    temperature=0.7,
    top_p=0.95,
    top_k=40,
    max_new_tokens=128
)

print(tokenizer.decode(generation_output[0]))