huggingfaceのgenerationの関数をtorch modelから使えるようにしたい torchなどのライブラリを使いpre_trainingを行い文章生成させる際、文章生成の計算は基本的に自分で実装する必要がある。 huggingface用のmodelに変換しても良いが、おれおれアーキテクチャにした場合、変換も面倒… そこで、huggingfaceにあるtop_kやt python nlp huggingface torch pre_training 2023-12-05
llama2のアーキテクチャを変更してpre trainingしてみる できるだけ小さいサイズのモデルで日本語を喋れるモデルを作りたい、ということでllama2のpre_trainingはすでにおこなったがさらなる改善のため、いくつかのアーキテクチャを考えてみる。 比較のベースとなる標準的なモデルに対し、新たに3つのモデルを作成し比較する transformerのatt python nlp transformer pre_training 2023-12-05
複数ファイルに分割されたデータセットをHuggingface Hubにアップロードするメモ データセットなどサイズの大きいデータをHuggingface Hubにアップロードして使う場合のメモ。 公式ドキュメントにはアップロードする方法が様々あるが、いまいちどれを使えば良いか分かりづらかったのでメモ。 今回作成したデータセットは以下。 https://huggingface.co/data python nlp huggingface 2023-11-21
HuggingfaceのDataLoaderとDatacollatorのソースコードを眺める エラーでハマったので、hugging faceのdatasetからbatche_sizeごとのinput_idsやlabelsにするあたりの実装、特にDataLoaderとDataCollatorあたりをちゃんと確認しておく train loopは以下から始まる def train( self, r python nlp huggingface 2023-09-21
xgenでJGLUEを試す 日本語ベンチマークとしてJGLUE(JP Language Model Evaluation Harness)が提案されている。 https://techblog.yahoo.co.jp/entry/2022122030379907/ 文章分類、文ペア分類、質問応答のタスクに対し評価を行う。 タスク python nlp jglue xgen 2023-07-01
OpenCALM-7Bをloraで学習して、quantizeするまで cyberagent/open-calm-7bをLoraを用いて学習し、quantizeするまでやっていきます https://huggingface.co/cyberagent/open-calm-7b gpt-neoxのlora weight mergeの記事が見つからなかったのでメモとして 動 nlp deeplearning python huggingface 2023-05-22
loraで学習する場合のpromptって何でも良いんだっけ?rinna instruction 3Bで試す loraを用いて学習する場合の、promptのtemplateは日本語にしたほうが良いんだっけ? ユーザー入力のフォーマットとかLLM側の出力のフォーマットとかどうすれば良いんだっけ? ってなったので学習させて結果を比較してみる。 せっかくなのでrinna/japanese-gpt-neox-3.6 nlp deeplearning python huggingface 2023-05-21
rinna 3Bをcppで動かす rinnaをcppで動かせるように色々試して見ました。 instructionもあり、そのままlangchainなどに突っ込んでも動かせそうということで、 ローカルで遊ぶならcppしてないと遊べないので色々試してみました。 https://huggingface.co/rinna/japanese- nlp deeplearning python huggingface 2023-05-18
VicunaでReActっぽいことを試してみる vicunaでReActっぽいことを試してみる。正確には違うので注意 ReActは、Thought、Action、Observationをループさせ、LLMの出力の精度上げる手法 ReActの処理の流れは以下のような形。LangChainの実装を参考にする。 与えられた質問(Question)に対し nlp python langchain 2023-04-01
Rust TokenizerをC++から呼び出す Bloomz.cppのtokenizerが日本語でうまく動かなかったので、 Rust製のHuggingface TokenizerをC++から呼び出せるようにしました。 初めに 「応答」の応の文字には2つのIDが振られている。 model_name = "bigscience/bloomz- nlp deeplearning python huggingface 2023-03-31
BloomをLoRaで日本語finetuning LlamaをAlpacaデータセットを使いLoRaでfine tuneしたものが良い感じだったので、Bloomを日本語で学習させてみようと思う。 https://github.com/tloen/alpaca-lora とりあえず動かすまででしっかりfine tuneしきってないので注意 huggi nlp deeplearning python huggingface 2023-03-20
LlamaIndex(GPTIndex)を触る LlamaIndexを動かしていきます。最近名前がGPTIndexから変わったみたい。 LlamaIndexとは、LLMのPromptの作成などを外部のデータソースと連携して行えるようにしたツールキット。 https://gpt-index.readthedocs.io/en/latest/guid nlp deeplearning python huggingface 2023-03-04
code blockにrefarenceをつける Hugoでコードブロックを使うときは、GitHubからの引用し、その下に参照元のURLを貼り付けることが多い。 コードブロックの下にそのままURLが表示されるの若干見づらかったので、コードブロックとセットでいい感じに表示したい。 HugoにMarkdown Render Hooksにcodebloc hugo 2023-02-28
FlexGenで遊ぶ くそでかlarge language modelsは一般人の持ってるPCだと動かすこともできない。 FlexGenでは、そんなLLMを限られたリソースで実行できるようにしてくれる。 https://github.com/FMInference/FlexGen 日本語が喋れるモデルでも動かせるように色 nlp deeplearning python huggingface 2023-02-28
Huggingfaceのtext generation pipelineとtext2text generation pipeline HuggingfaceのpipelineでTextGenerationPipelineとText2TextGenerationPipelineがあるが、 何が違うのかよくわからなかったので軽く調査。 https://huggingface.co/docs/transformers/main_clas nlp deeplearning python huggingface 2023-02-06
xglmをquick start 多言語モデルであるxglmを動かしてみます。 最も大きいもので7.5Bのparameterを持つ。 同等のサイズのGPT3のモデルを上回るらしい。 Our largest model with 7.5 billion parameters sets new state of the art in f nlp deeplearning python huggingface 2023-02-05
flan_t5をquick start T5を強化したモデルであるFlan-t5を動かしてみます。 FlanはFinetunedLAnguage Netの略。 ちなみに、Flanはカスタードプリンとかプリンの意味らしい。だからプリンのイラストあったのか https://huggingface.co/docs/transformers/mo nlp deeplearning python huggingface 2023-02-04
Hugging Faceのtokenizerで迷ったのでまとめておく tokeninzerとかencodeとか色々あって毎回調べることになるのでメモ。 以下の日本語tokenizerを使わせてもらう。 tokenizer = T5Tokenizer.from_pretrained("sonoisa/t5-base-japanese") よく見る書き方 nlp deeplearning python huggingface 2022-08-16
Hugging Faceのpipelineで会話モデルを動かす Hugging Faceのpipelineを’使って会話モデルを動かしたのでメモ。 あまり日本語記事がなかったので残しておく。 huggingfaceについてはこっちの記事を参照 https://www.if-blog.site/posts/nlp/huggingface-doc/ pipeline nlp deeplearning python huggingface 2022-05-05
プログラミングTypeScript――スケールするJavaScriptアプリケーション開発 オライリーのtypescriptの本を読んだ。 typescriptのジェネリクスなど基本的な動作は知ってたがいくつか知らないことが合ったので それだけメモしておく。 4章 関数 4.1.4 thisの型付け javascriptではすべての関数に対してthisが定義される。 これによりコードが脆弱 typescript 2021-12-26