/ 5 min read
Recently: langgraph, dbos, LLM Test-Time Compute
LangGraph
LangGraphに入門した。公式から各種モジュールごとに構造化されたハンズオンの動画が公開されていて一通り動画を見た。今のご時世CrewAIやagent development kitなどもあってagent frameworkが乱立してはいるが、正直そこまで大きな違いは無い(はず)のとA2Aでプロトコルが整備される未来は見えるのでどのframeworkを使うかというのはあまりクリティカルではなくなってくるのかなと思ってはいる。
short-term/long-termなmemoryの導入やhuman interventionの入れ方含めて開発に必要な要素が一通り学べる。langsmithやtrustcallなど付近のエコシステムも使いながらなので結構実践的なコース内容だった。 次はここからzepとかとintegrationして遊ぼう…という予定であったが、気づけばOSS版がクローズしている。
Announcing a New Direction for Zep’s Open Source Strategy
DBOS
最近情報検索の実験コードを書いている。collectionを取得して、embeddingに変換してindexingし、テスト用のクエリを実行する…みたいなワークフローを書いているが途中で結果をキャッシュしつつ処理を再実行したい需要があり、手軽なワークフローツール何か最近ないかなということでdbosを検討してみた。
durableなアプリケーション構築をサポートするツールという立ち位置でworkflow管理だけでなくqueueやスケジューリング実行も可能。pythonとtypescriptで提供されていて、状態管理にPostgreSQLを使っている。例えばワークフロー中でアプリがクラッシュしても、再起動の後に途中から処理が再実行される。(このあたりはgetting startedを試せばすぐに感覚わかると思う) 従来のワークフロー管理ツールはairflowやprefectが代表的だと思うのだが、機能がtoo muchで構築するのが重たい。一方でdbosは比較的lightweight。 ワークフローを一覧で見るようなconsole UIが用意されていて、ローカルで起動したアプリとdbosのサーバーとwebsocketで通信して確認することができる(つまりアプリが起動してないとステータスは見れない)。
結論自分のユースケースではあまり活用の道を見出せなかったので使わないことにしたが、気になる人はData Engineering PoscastでCEOが話しているので聞くと良い。
Simplifying Data Pipelines with Durable Execution
LLM Test-Time Compute
そもそもTest-time computeの話について
A Visual Guide to Reasoning LLMs Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters
CoT含めテスト時の推論計算を増やすことで改善が見られるというのはひと昔前のML世代の人間としては驚きなんだが、reasoning stepを挟んで正しい回答生成を誘導するというのは感覚的に見ればそこまで変な話でもないのかもしれない。left-to-rightでトークンを生成していく以上、過去のtime stepにどういう”効果的な”トークンを出させるかというのが精度上肝であるというのは頷ける(私見)。
出力にあたってはbeam searchやモンテカルロ木探索などでreasoning過程を評価しながら(程よく)スケールさせたり、token distributionを弄る話をみると一昔前のdecoding techniqueの手法に通ずるものがあると感じる。
雑記
- 新幹線大爆破とコナンを見た。
- poetryからuvにマイグレーションした。