2024-02-01から1ヶ月間の記事一覧

llama.cpp:複雑化する量子化バリエーションの整理(2024.02現在)

https://github.com/ggerganov/llama.cpp/pull/5747 llama.cpp では最近、ikawrakow氏による量子化手法のアップデートが熱心に行われています。 新しい量子化の実装が重なり個人的に分かりづらくなってきたので、簡単に整理しておこうと思います。 quantize.…

【LLM論文を読む】ファインチューニングか検索か?LLMにおける知識追加手法の比較

「ファインチューニングか検索(Retrieval)か?LLMにおける知識追加手法の比較」というarXiv論文が上がっていました。執筆者はMicrosoft Israelの研究グループです。 arxiv.org 先日、Microsoft の別のグループが「RAG vs ファインチューニング:パイプライン…

llama.cpp:Importance Matrix による新しい量子化手法を試す

年明けにllama.cppに実装された「Importance Matrix(重要度行列?)」を使用したgguf量子化について調べてみました。 Importance Matrixは、llama.cppのikawrakow氏が取り組んでいる一連の量子化精度改善の中心的なアイディアのようで、特に2-3bitの極端な…

llama.cpp:再量子化(requantize)による劣化を調べる

llama.cpp の量子化では、safetensorsなどの元モデルを一度FP16フォーマットのggufに変換した後で(convert.py)、このFP16モデルをもとに./quantizeによって8bitや4bitなどのggufに圧縮します。 ただquantize.cppに目を通すと [--allow-requantize](再量子…

【LLM論文を読む】テキスト分類のためのデータ拡張(Data Augmentation)

LLMに知識を追加するためのファインチューン手法を調べていたところ、限られたデータセットを量的に拡張する「データ拡張/Data Augmentation」という研究領域があることを知りました。 簡単に見てみると、データ拡張はテキストAIよりも画像AI・音声AIなどの…

各チャットテンプレートの長所と短所

Redditに「ファインチューンにおける各チャットフォーマットの長所/短所」という投稿が上がっていました。 長文ポストですが、一部を訳出すると: 古き良き「Alpacaフォーマット(###Instruction\n...)」は、1)ベースモデルを含めどんなモデルでも指示追従…

LLMは単語予測機に過ぎない。けれど

RedditのローカルLLM板に「Llama-2とチャットしてたら、驚くような質問をされた」という投稿が上がっていました。 https://www.reddit.com/r/LocalLLaMA/comments/1amfiec/took_me_by_surprise/ 曰く、投稿者がuncensoredの(非検閲データセットで学習した)…

知識記憶のためのファインチューン:文書IDとの紐づけ学習

ファインチューンでLLMに知識を教え込むための試行錯誤を解説した記事がありました。 helixml.substack.com 投稿者は、最初Llmaindexのドキュメント("知識記憶させるためのファインチューン")で紹介されている手順で試したものの、うまくいかなかったよう…

QLoRAでMistralをChatMLフォーマットに対応させる(Unsloth)

チャットテンプレートについて ローカルLLMのチャットテンプレートはモデルによってバラバラで、けっこう不便に感じる場面が多いです。 Alpacaデータセットに由来するAlpaca形式(###Instruction\n\n...)や、ChatGPTが採用するChatML形式が有名ですが、例え…

llama.cpp:量子化による出力劣化の調査事例

Redditに「LLMの量子化の影響を調べてみた」という投稿が上がっていました。 huggingface.co LLMの量子化では、最小で2bit近く(ファイルサイズ1/8程度)まで圧縮できますが、圧縮率を高めると出力の質が低下することが知られています。 ただ量子化による変…

OpenAI代替API機能の比較:llama.cpp / koboldcpp / Text generation web UI

OpenAI APIを使った各種アプリケーションをローカルLLMに置き換えるためのOpenAI代替API機能についてのメモです。 いずれも、パッケージ標準のAPI機能に追加してOpenAIスタイルのAPIに対応させたものです。ChatGPT互換にこだわらない場合はそれぞれの標準API…