ストリーミング応答を実装するには、ZipAgentが提供するrun_streamメソッドとイベント処理メカニズム:
基本的な実現ステップ:
1.通話run_streamオルタナティブrunメソッドでイベント・ストリームを取得する。
2.異なるタイプのイベントオブジェクトを反復処理する
3.ターゲティングANSWER_DELTAイベント・リアルタイム出力内容
stream = Runner.run_stream(agent, "解释量子计算原理")
for event in stream:
if event.type == StreamEventType.ANSWER_DELTA:
print(event.content, end="", flush=True)
elif event.type == StreamEventType.TOOL_CALL:
print(f"n调用工具: {event.tool_name}")
高度なアプリケーションのヒント:
- 可
flush=Trueパラメータは、個々の文字のタイムリーな出力を保証します。 - ANSIエスケープを組み合わせることで、カラフルな進行インジケーターなどの機能拡張を実現できる。
- 複雑なシナリオの場合、イベントストリームをキャッシュして後処理することができる。
この仕組みは、キャラクターレベルのリアルタイム出力効果を実現するだけでなく、ツールが呼び出されたときに明確なヒントを与えることで、プロ級の対話体験を構築するための重要な特徴である、人間とコンピュータの対話の自然さと透明性を大幅に向上させます。
この答えは記事から得たものである。ZipAgent: 5分で専属AIアシスタントを構築する軽量Pythonフレームワークについて































