はじめに
七尾百合子さん、お誕生日 107日目 おめでとうございます! nikkieです。
毎週水曜のリリース報告エントリです1。
3ヶ月を超えましたね!
目次
llm-devin v0.0.4
前回 v0.0.3 では、HTTPXを使った実装を小さく改善
v0.0.4も小さい改善を積みました。
- DevinのsessionページのURLを即表示
- Devinが返す複数のメッセージを1つずつストリーム出力
https://pypi.org/project/llm-devin/0.0.4/
1点目の改善について:
DevinのAPIにプロンプトを送ったとき、返り値にsessionのURLが含まれています。
これをsimonw/llmの実装にならって、即座に表示するようにしました。
これまではバッファされていて、レスポンスが全部揃うまで待ってから表示されていました。
# ref: https://github.com/simonw/llm/blob/0.26/llm/cli.py#L867-L868 print("Devin URL:", create_session_response.json()["url"]) sys.stdout.flush()
なおこれは組み込み関数print()のflush=Trueと同じようです2。
https://docs.python.org/ja/3/library/functions.html#print
2点目の改善について:
simonw/llmでは、llm.Modelのcan_streamがTrueであれば、yieldのたびに出力するように実装されています3。
https://github.com/simonw/llm/blob/0.26/llm/cli.py#L856-L869
全体としてストリーム出力になります4
最初can_stream=Falseで、Devinがメッセージを返すたびにyieldしていましたが、これだとメッセージが全部揃うまで表示されませんでした。
ドキュメントの関連箇所:
https://llm.datasette.io/en/stable/python-api.html#streaming-responses
今週のリリースは以上です
終わりに
3ヶ月を超えて、ミリオンライブ!の52週連続CDリリースと重なるのが見えてきました(Crossing!)
ミリオンライブ!は現在8周年イベントのお祭り期間なのですが、Claude Code・DevinといったコーディングAIに全部投げて、私はミリシタに全部賭けられています
- 始めたきっかけは765プロです(頭ミリオン) 2025年4月2日(水)のリリース - nikkie-ftnextの日記↩
- Claude 4 Sonnetに質問もしました↩
- DeepWikiに聞きながら理解を深めていきました ↩
- llm-perplexityのストリーム出力が見事です↩