メモリ周りいじってて、なんかかみ合わないなと感じていた原因が分かった。
LangChainにしろ、LangGraphにしろ、スレッドベースでメモリ管理というのが設計思想にある。
しかし、私の場合キャラクターベースでのメモリ管理というのが設計思想だから、かみ合ってなかった。
Lang—にもSysTemPrompt設定する部分があるからLang—はこの辺りが混ざっているのではなかろうか。私もこの辺りの思想を言語ができてやっと気づけた。
メモリ周りいじってて、なんかかみ合わないなと感じていた原因が分かった。
LangChainにしろ、LangGraphにしろ、スレッドベースでメモリ管理というのが設計思想にある。
しかし、私の場合キャラクターベースでのメモリ管理というのが設計思想だから、かみ合ってなかった。
Lang—にもSysTemPrompt設定する部分があるからLang—はこの辺りが混ざっているのではなかろうか。私もこの辺りの思想を言語ができてやっと気づけた。
LangGraphでこれまでのを書き換えている最中。ストリーミング表示とツールの使用は確認できた。
あとLMstudioに対応させた。
メモリ周りがきちんと動作しているか確認が必要。
langchainのメモリが使えなくなっていたのでそのあたり見直しています。
今toolを使わないこと前提した作りだけど、そろそろきちんと使ってくれるんじゃないかと思って触ってる。あとエージェントの動作確認をできる環境を整えようと思っている。使用するモデルでどう変わるかとか。まあまだ全然まとまりがない感じだけど。
さんざん迷走したあげく、何か公開できるかというと………
まあそういうこともある。
ollamaからうまくデータが取れない。langchainのアップデートしてみたけどうまくいかない。
別のこともやっているし、いったんは保留しておく。
追記:英語で指示出したらトークンが返ってきた。日本語がダメなのかな。でも同じ質問をollama guiでやると普通に帰ってくる。ちなみぬ英語で帰ってきたときのtpsは50位出てた。
なんかアップデートが来てたから入れたら。GPT-oss20Bがだいぶ改善してた。
アイドル時

GPT-oss20B実行時

120B実行時

120Bはさすがに変わってないかな。
でも20Bは使えるかもと思える速度は出てた。
以下OllamaのデフォルトのGUIで動かいてみたときのシステムの状態
アイドル時

20B実行時

120B実行時

120BはVRAMに乗らないのは当然だけど一応動いためちゃくちゃ遅かったけど。
20BもVRAMに乗らなかった。ollamaでは4bit量子化の恩恵は受けられないのかもしれない。それとも何か設定があるのか?
一部不具合見つけて直したりしている。あと俺まで作ってきたエージェントをどうするかも迷っている。新しく複数のモデルを選択できるようになっているので、そのあたりをどうまとめるのか。今後新しいのを作るときどうするのか。なんというか頭の中が散らかってまとまらない。
Ollamaの比較用のプログラムを公開
正直できがいいとは言えず、もう少し作りこみたかったけど、ここで時間をかけてもしょうがないのでこのあたりで公開。