拡張機能からのストリーミング

開始前に

ウェブチャットでストリーミングを有効にしたい場合は、以下の手順を実行してください:

  • ホーム > プレビュー > ウェブチャットをカスタマイズ.
  • 「スタイル」タブをクリックします。
  • ストリーミングトグルボタンを On に設定します。
  • **「保存して終了」**をクリックします。

拡張機能からストリーミングする方法

以下の手順に従ってください。カスタム拡張機能を呼び出す。 選択された手術定義する text/event-stream 応答として content-type この機能を使用すると、操作によって生成された SSE からストリーミングされるテキストを選択できるようになります。

拡張機能からのストリーミング
拡張機能からのストリーミング

操作によって次の例のようなサーバー送信イベントが生成される場合:

data: {"model_id":"ibm/granite-13b-chat-v2","created_at":"2024-07-01T21:49:29.696Z","results":[{"generated_text":"to lear","generated_token_count":10,"input_token_count":0,"stop_reason":"not_finished"}]}

data: {"model_id":"ibm/granite-13b-chat-v2","created_at":"2024-07-01T21:49:29.731Z","results":[{"generated_text":"n ne","generated_token_count":11,"input_token_count":0,"stop_reason":"not_finished"}]}

data: {"model_id":"ibm/granite-13b-chat-v2","created_at":"2024-07-01T21:49:29.767Z","results":[{"generated_text":"w skill","generated_token_count":12,"input_token_count":0,"stop_reason":"not_finished"}]}

text をJSONパスとして watsonx Assistantに指定し、各SSEからテキストまたはトークンが抽出される場所を示します。 前の例では、results[0].generated_text テキストが抽出されるパスであり、結果は次のようになります。to learn new

ストリームの実行

カスタム拡張機能が呼び出されると watsonx Assistantは指定された操作からテキストをストリームする呼び出しを試みます。 次のステップは、ストリームが正常に完了した後、またはストリーミングの開始前にエラーが発生した場合にのみ実行されます。 ストリームが正常に完了すると、ストリームされたテキストは .body 結果変数のプロパティ。

.last_event プロパティを参照することで、ストリームの最後のイベントからプロパティにアクセスできます。 例えば、${step_596_result_1.last_event.citations} を使って特定のデータを取得します。

成功か失敗かの確認

使用 Ran successfully ストリームが正常に完了したかどうかを確認したり、ストリームの開始に失敗した場合を処理したりするための応答変数。 この変数はブール値 (true または false) を返します。 それは true ストリームが正常に完了し、false ストリームの開始に失敗した場合。 HTTPに基づく条件付けの詳細については HTTP 」 を参照してください。

ネットワークの問題によりストリームが開始後に失敗した場合、または最大 30 秒のタイムアウトに達した場合は、ユーザーに対してエラーが生成されます。