Open12
Transformer のライブラリを完全に理解する
pipeline 関数が推論を行う関数なのでスターティングポイントとして良さそう
テキスト生成はもちろん感情分析や画像分類など様々なタスクを実行できる
こんな感じで実行できた
from transformers import pipeline
classifier = pipeline(task="sentiment-analysis")
result = classifier("I'm very tired")
# [{'label': 'NEGATIVE', 'score': 0.9997826218605042}]
AutoClass
model を使えるようにする
from transformers import AutoModel
model = AutoModel.from_pretrained("bert-base-cased")
Huggingface 上からコンフィグやモデルファイルを取得している
local のモデルを読み込むのできる
model config ファイルってどんなん?
mixtral のを見てみる
{
"architectures": [
"MixtralForCausalLM"
],
"attention_dropout": 0.0,
"bos_token_id": 1,
"eos_token_id": 2,
"hidden_act": "silu",
"hidden_size": 4096,
"initializer_range": 0.02,
"intermediate_size": 14336,
"max_position_embeddings": 32768,
"model_type": "mixtral",
"num_attention_heads": 32,
"num_experts_per_tok": 2,
"num_hidden_layers": 32,
"num_key_value_heads": 8,
"num_local_experts": 8,
"output_router_logits": false,
"rms_norm_eps": 1e-05,
"rope_theta": 1000000.0,
"router_aux_loss_coef": 0.02,
"sliding_window": null,
"tie_word_embeddings": false,
"torch_dtype": "bfloat16",
"transformers_version": "4.36.0.dev0",
"use_cache": true,
"vocab_size": 32000
}
一通りのパラメータとその意味はこちらに記載されてるっぽい
Tokenizer のコンフィグ
tokenizer_config.json も別途ある。Chat Template とか見るとこ
transformers のライブラリ本体のコードにも config 入ってるけどこれは自動で追加されるとかなのかしら?
PR 見た感じそんな単純な話でもなさそう
量子化