llama2のアーキテクチャを変更してpre trainingしてみる

できるだけ小さいサイズのモデルで日本語を喋れるモデルを作りたい、ということでllama2のpre_trainingはすでにおこなったがさらなる改善のため、いくつかのアーキテクチャを考えてみる。 比較のベースとなる標準的なモデルに対し、新たに3つのモデルを作成し比較する transformerのatt

複数ファイルに分割されたデータセットをHuggingface Hubにアップロードするメモ

データセットなどサイズの大きいデータをHuggingface Hubにアップロードして使う場合のメモ。 公式ドキュメントにはアップロードする方法が様々あるが、いまいちどれを使えば良いか分かりづらかったのでメモ。 今回作成したデータセットは以下。 https://huggingface.co/data

xgenでJGLUEを試す

日本語ベンチマークとしてJGLUE(JP Language Model Evaluation Harness)が提案されている。 https://techblog.yahoo.co.jp/entry/2022122030379907/ 文章分類、文ペア分類、質問応答のタスクに対し評価を行う。 タスク

loraで学習する場合のpromptって何でも良いんだっけ?rinna instruction 3Bで試す

loraを用いて学習する場合の、promptのtemplateは日本語にしたほうが良いんだっけ? ユーザー入力のフォーマットとかLLM側の出力のフォーマットとかどうすれば良いんだっけ? ってなったので学習させて結果を比較してみる。 せっかくなのでrinna/japanese-gpt-neox-3.6

rinna 3Bをcppで動かす

rinnaをcppで動かせるように色々試して見ました。 instructionもあり、そのままlangchainなどに突っ込んでも動かせそうということで、 ローカルで遊ぶならcppしてないと遊べないので色々試してみました。 https://huggingface.co/rinna/japanese-

VicunaでReActっぽいことを試してみる

vicunaでReActっぽいことを試してみる。正確には違うので注意 ReActは、Thought、Action、Observationをループさせ、LLMの出力の精度上げる手法 ReActの処理の流れは以下のような形。LangChainの実装を参考にする。 与えられた質問(Question)に対し

Rust TokenizerをC++から呼び出す

Bloomz.cppのtokenizerが日本語でうまく動かなかったので、 Rust製のHuggingface TokenizerをC++から呼び出せるようにしました。 初めに 「応答」の応の文字には2つのIDが振られている。 model_name = "bigscience/bloomz-

BloomをLoRaで日本語finetuning

LlamaをAlpacaデータセットを使いLoRaでfine tuneしたものが良い感じだったので、Bloomを日本語で学習させてみようと思う。 https://github.com/tloen/alpaca-lora とりあえず動かすまででしっかりfine tuneしきってないので注意 huggi

LlamaIndex(GPTIndex)を触る

LlamaIndexを動かしていきます。最近名前がGPTIndexから変わったみたい。 LlamaIndexとは、LLMのPromptの作成などを外部のデータソースと連携して行えるようにしたツールキット。 https://gpt-index.readthedocs.io/en/latest/guid

code blockにrefarenceをつける

Hugoでコードブロックを使うときは、GitHubからの引用し、その下に参照元のURLを貼り付けることが多い。 コードブロックの下にそのままURLが表示されるの若干見づらかったので、コードブロックとセットでいい感じに表示したい。 HugoにMarkdown Render Hooksにcodebloc

FlexGenで遊ぶ

くそでかlarge language modelsは一般人の持ってるPCだと動かすこともできない。 FlexGenでは、そんなLLMを限られたリソースで実行できるようにしてくれる。 https://github.com/FMInference/FlexGen 日本語が喋れるモデルでも動かせるように色

xglmをquick start

多言語モデルであるxglmを動かしてみます。 最も大きいもので7.5Bのparameterを持つ。 同等のサイズのGPT3のモデルを上回るらしい。 Our largest model with 7.5 billion parameters sets new state of the art in f

flan_t5をquick start

T5を強化したモデルであるFlan-t5を動かしてみます。 FlanはFinetunedLAnguage Netの略。 ちなみに、Flanはカスタードプリンとかプリンの意味らしい。だからプリンのイラストあったのか https://huggingface.co/docs/transformers/mo