Re:ゼロから始めるML生活

どちらかといえばエミリア派です

LangChainでGeminiの明示的Context Cacheを使う

前回までプロンプトキャッシングについて調べたりコード書いたりしていました。

www.nogawanogawa.com

www.nogawanogawa.com

似たような機能で、Geminiにも明示的Context Cacheという機能があります。

ai.google.dev

公式ドキュメントにも、

  • 暗黙的なキャッシュ保存(自動、費用削減は保証されない)
  • 明示的なキャッシュ保存(手動、費用削減保証)

とあるので、コンテキストキャッシュを使って費用削減しようと思ったら、明示的にやるのが良さそうではあります。

LangChainでそれをやっている文献が見当たらなかったので、今回試しにやってみたのでそのメモです。・

続きを読む

LangChainでPrompt Cachingが利用されていることを確認する

この前はプロンプトキャッシュについて調べていました。

www.nogawanogawa.com

実際に各種生成AIサービスを利用する際にはLangChainを利用することが多いと思うので(諸説あり)、今回はLangChainを使いつつちゃんとプロンプトキャッシュが効いていることを確認したいと思います。

続きを読む

OpenAI, Claude, Geminiのプロンプトキャッシュについて調べる

プロンプトキャッシングについて調査してみた記録です。

生成AI系のAPIはたくさんあると思うんですが、そのコスト削減策について調べていました。 少し調べてみるとわかったこととして、2024年ごろからプロンプトのキャッシュを効かせる機能が登場したようで、このキャッシュを上手に使うとコストを下げられるようでした。

今回はその仕様について調べてみたのでそのメモです。

続きを読む

vllmで埋め込みモデルの推論を高速化する

小ネタです。

transformersの埋め込みモデルを使ってembeddingを作りたいことは割といろんなところであるかと思いますが、このembedding作成もそこそこ時間を食ったりします。

可能であれば埋め込みを計算するときも高速化したいので、今回はvllmで高速化してみたいと思います。

続きを読む

torchtuneを使ってカスタムデータセットでLlama 3.1をfinetuneする

最近LLMをいじってるんですが、LLMのfinetuneをコードを自分で書いて実行するのはまだまだ不安です。 処理も重たくGPU必須なのでそれなりにコストがかかるのに、変にバグらせるとショックもでかいです。 なので、できればコマンドだけでぱぱっとできると嬉しい気がしてきました。

そんなときにtorchtuneというツールを見つけました。 どうやらLLMをコマンドと設定ファイルを書くだけでfinetuneできるようで、試してみることにしました。 ということで、今回はそのtorchtuneを使ってみたメモです。

続きを読む

vast.aiを使ってみる

最近LLMを使って自力で学習とか回していたんですが、最近のNLP系のコンペはLLMがほぼ必須になっており庶民でも気軽に使えるColab ProにあるA100 ではメモリ40GBしかないのでどうにもならないことがあります。

AWSとかGCPにあるハイエンドGPUインスタンスを使える人はそれでも全然いいんですが、自分の経験上性能が高いGPUは使用申請してもなかなか承認が通らなかったりしたりしてその段階でLLMの学習を回せなくて詰むということもありえます。

そんな状況ではあるんですが、世の中にはGPUをOn-demandで利用させてくれるサービスがあったりします。 お金はかかりますが、それでも通常では絶対使用できないGPUを使えるというメリットがあるので、いざとなったら必要になります。

今回はそんな、On-demandで利用できるGPUのサービスの一つであるvast.aiを使ってみたので今回はそのメモです。

続きを読む

TabMの使い方のメモ

軽めのネタです。

ちょっと前にCMIコンペに出てまして、そこでテーブルデータに大してNNを適用させる実験をしていました。

www.nogawanogawa.com

この実験で色々試しているときに、なにやら別のコンペでTabMというNNの手法が効いたという話を耳にしたのでCMIコンペでも試してみました。 CMIコンペも終わったので、今回はそのTabMを試しに使ってみたときのメモを放流しようと思います。

続きを読む

Unslothの覚書き

これまでLLMはChatGPTとかを使うくらいの関わり方をしていたんですが、最近重い腰上げてLLMについてキャッチアップしようと勉強したりしていたりします。

LLMをfine tuneしようとしたときにどうやらUnslothというライブラリが便利らしいという話を小耳に挟みました。 このあたり、本当かどうかよく分からなかったので今回はUnslothを使ってみたメモです。

続きを読む