llama.cppサポート

#2
by cpumaxx - opened

8xH100持ってない皆さんのために、llama.cppのサポート予定はありますか?

SB Intuitions org

申し訳ないですが現状はサポート予定はありません

ご返答ありがとうございます。
残念です。たいへん使ってみたいです。
アーキテクチャはMixtralForCausalLMですからGGUFファイルを作ることが出来ましたが、使ってもナンセンスしか出ません。
Mixtralと異なるところがあるんでしょうか?
その違いが分かれば、PR作れるかもしれません。

SB Intuitions org

いえ、アーキテクチャに変更は加えていないのでMixtral形式で良いはずですね

ならば是非使えるようにしたいです。
デバッグするために、sbintuitionsさんが使ってるテストプロンプトの一つを教えていただけませんか?
よろしくおねがいします。

SB Intuitions org

定性的には「今日の天気は」などを入力して出力の日本語が崩れていないかを確認していますが、主には定量評価として flexeval で性能が落ちていないかどうかを確認していますね
flexeval での評価時は JSQuAD や JCommonsenseQA なども利用しているので、それらのデータセット内の事例で試していただくのが良いかもしれません

「今日の天気」の入力のCompletionからでる文章がおかしいと思います:

今日の天気はウェブ
本文: 2019年10月1日 / 最終更新日時 : 2019年10月1日 ssaiai ハーバリウム
ハーバリウム☆
ハーバリウムレッスンに
来てくださったのは、
以前、トールペイントの
レッスンに来てくださっていた
お久しぶりの再会に
話が弾んでしまいました♪
ハーバリウムは
トールペイントとは
また違った楽しさがあります!
トールペイントは
下絵を写して、
色を塗って、
ニスを塗って・・・
と、工程がたくさんありますが、
ハーバリウムは、瓶にお花を入れて、
オイルを入れるだけ!
(それだけじゃないですが)
お花選びに
一番時間がかかりますが、
それも楽しい♪
お二人とも、素敵な作品が
出来上がりましたよ♪
ハーバリウムレッスンは
随時受付しております♪
ハーバリウム、レッスンメニュー
トールペイント☆ハロウィンのウェルカムプレート

llama.cppがモデルをロードするこち、以下のパラメータを使っています:

Model metadata: {'tokenizer.ggml.add_space_prefix': 'false'
 'tokenizer.ggml.add_eos_token': 'true'
 'tokenizer.ggml.eos_token_id': '2'
 'general.quantization_version': '2'
 'tokenizer.ggml.model': 'llama'
 'llama.rope.dimension_count': '128'
 'llama.vocab_size': '102400'
 'general.file_type': '7'
 'general.architecture': 'llama'
 'llama.rope.freq_base': '10000.000000'
 'tokenizer.ggml.bos_token_id': '1'
 'llama.attention.head_count': '64'
 'tokenizer.ggml.pre': 'default'
 'llama.expert_used_count': '2'
 'llama.context_length': '8192'
 'general.name': 'Sarashina2'
 'general.type': 'model'
 'general.size_label': '8x70B'
 'llama.expert_count': '8'
 'tokenizer.ggml.add_bos_token': 'false'
 'llama.embedding_length': '8192'
 'llama.feed_forward_length': '28672'
 'llama.attention.layer_norm_rms_epsilon': '0.000010'
 'llama.block_count': '80'
 'llama.attention.head_count_kv': '8'}

なにかの手がかりになるでしょうか?

トケナイザーがカスタムでしょうか?

llm_load_vocab: control token: 102398 '<|suffix|>' is not marked as EOG
llm_load_vocab: control token: 102397 '<|prefix|>' is not marked as EOG
llm_load_vocab: control token:      5 '<mask>' is not marked as EOG
llm_load_vocab: control token: 102399 '<|middle|>' is not marked as EOG
llm_load_vocab: control token:      9 '<|user|>' is not marked as EOG
llm_load_vocab: control token:     13 '<|code|>' is not marked as EOG
llm_load_vocab: control token:     11 '<|tool_calls|>' is not marked as EOG
llm_load_vocab: control token:      2 '</s>' is not marked as EOG
llm_load_vocab: control token:      3 '<pad>' is not marked as EOG
llm_load_vocab: control token:      8 '<|assistant|>' is not marked as EOG
llm_load_vocab: control token:      7 '<|system|>' is not marked as EOG
llm_load_vocab: control token:      1 '<s>' is not marked as EOG
llm_load_vocab: control token:     12 '<|tool_results|>' is not marked as EOG
llm_load_vocab: control token:     10 '<|available_tools|>' is not marked as EOG
llm_load_vocab: control token:     14 '<|file|>' is not marked as EOG
llm_load_vocab: special_eos_id is not in special_eog_ids - the tokenizer config may be incorrect

普通のMixtralとの違いはありますか?

SB Intuitions org

configを見たところ、こちらのPRがマージされる前の設定が使われているような気がします。
tokenizer_config.jsonを更新する、もしくはtokenizer.ggml.add_eos_tokentrueからfalseに変えていただいて、もう一度お試しいただいてもよろしいでしょうか。

そうだったんです。またGGUFを作り直して試します。
結果を報告します。

tokenizer_config.jsonの更新で動くようになりました。
優しい指導ありがとうございます。

Sign up or log in to comment