複数のデバイスにまたがる会話や、長期間中断された会話のメッセージリストを手動で管理すると、コンテキストの損失につながる可能性があります。Alibaba Cloud Model Studio は、OpenAI 互換のカンバセーション API を提供しており、レスポンス API と組み合わせて使用することで、履歴コンテキストを自動的に注入できます。これにより、手動でのメッセージの同期が不要になり、さまざまなシナリオやデバイス間での会話の継続性を確保します。
カンバセーションの作成
新しいカンバセーションを作成します。初期メッセージアイテムをオプションで含めることができます。
North China 2 (Beijing): POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations
Singapore: POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations
items array (省略可能)最大 20 個の初期メッセージアイテムのリストです。
プロパティ type string(必須)メッセージタイプです。message のみがサポートされています。role string(必須)メッセージのロールです。system および developer ロールからの指示は、user ロールからの指示よりも優先度が高くなります。assistant ロールは、以前のやり取りでモデルが生成したメッセージを示します。有効な値は user、assistant、system、developer です。content string または array(必須)メッセージのコンテンツです。このパラメーターは、プレーンテキスト文字列または構造化されたコンテンツリスト (ResponseInputText オブジェクト配列など) をサポートします。リスト形式には、テキストなどのさまざまなコンテンツタイプを含めることができます。object (省略可能)カンバセーションのメタデータです。このパラメーターを使用して、追加のカンバセーション情報を構造化された形式で保存します。最大 16 個のキーと値のペアを指定できます。キーは最大 64 文字、値は最大 512 文字です。 | Python |
レスポンスパラメーター
created_at integerカンバセーションが作成された日時を示す UNIX タイムスタンプ (ミリ秒単位) です。id stringカンバセーションの一意の ID です。metadata objectカンバセーションのメタデータです。このパラメーターは、追加情報をキーと値のペアとして保存します。最大 16 個のペアを含めることができます。キーは最大 64 文字、値は最大 512 文字です。object stringオブジェクトタイプです。値は conversation に固定されています。 |
カンバセーションの取得
指定されたカンバセーションの情報を取得します。
North China 2 (Beijing): GET https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}
Singapore: GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}
conversation_id文字列(必須、パス)カンバセーション ID です。 | Python |
応答パラメーター
created_at整数カンバセーションが作成された日時を示す UNIX タイムスタンプ (ミリ秒単位) です。id文字列カンバセーションの一意の ID です。メタデータオブジェクトカンバセーションのメタデータです。このパラメーターは、追加情報をキーと値のペアとして保存します。最大 16 個のペアを含めることができます。キーは最大 64 文字、値は最大 512 文字まで指定できます。オブジェクト文字列オブジェクトタイプです。値は conversation に固定されています。 |
カンバセーションの更新
カンバセーションのメタデータを更新します。
中国北部 2 (北京): POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}
シンガポール: POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}
conversation_idstring(必須、パス)カンバセーションの ID です。metadataobject(必須)カンバセーションのメタデータです。このパラメーターは、既存のメタデータを完全に上書きします。最大 16 個のキーと値のペアを指定できます。キーの長さは最大 64 文字、値の長さは最大 512 文字です。 | Python |
応答パラメーター
created_atintegerカンバセーションが作成された日時を示す、ミリ秒単位の UNIX タイムスタンプです。idstringカンバセーションの一意の ID です。metadataobjectカンバセーションのメタデータです。このパラメーターには、キーと値のペアとして情報が保存されます。最大 16 個のペアを含めることができます。キーの長さは最大 64 文字、値の長さは最大 512 文字です。objectstringオブジェクトタイプです。値は conversation に固定されています。 |
カンバセーションの削除
指定のカンバセーションを削除します。カンバセーション内のメッセージ項目は削除されません。
North China 2 (Beijing): DELETE https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}
Singapore: DELETE https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}
conversation_id文字列 (必須、パス)カンバセーション ID です。 | Python |
レスポンスパラメーター
deletedブール値削除が成功したかどうかを示します。id文字列削除されたカンバセーションの ID です。object文字列オブジェクトタイプです。値は conversation.deleted に固定されています。 |
アイテムの作成
指定した会話にメッセージアイテムを追加します。
North China 2 (Beijing): POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items
Singapore: POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items
conversation_idstring(必須、パス)会話の ID です。itemsarray(必須)メッセージアイテムのリストです。一度に最大 20 個のアイテムを追加できます。
プロパティ type string(必須)メッセージタイプです。message のみがサポートされています。rolestring(必須)メッセージのロールです。system および developer ロールからの指示は、user ロールからの指示よりも優先度が高くなります。assistant ロールは、以前のやり取りでモデルによって生成されたメッセージを示します。有効な値は user、assistant、system、developer です。contentstring or array(必須)メッセージのコンテンツです。このパラメーターは、プレーンテキスト文字列または構造化されたコンテンツリスト (ResponseInputText オブジェクト配列など) をサポートします。リスト形式には、テキストなどのさまざまなコンテンツタイプを含めることができます。 | Python |
レスポンスパラメーター
dataarray[object]作成されたメッセージアイテムのリストです。
プロパティ id stringメッセージアイテムの一意の ID です。contentstring or arrayメッセージのコンテンツです。プレーンテキスト文字列または構造化されたコンテンツリスト (ResponseInputText オブジェクト配列など) のいずれかです。rolestringメッセージのロールです。有効な値は user、assistant、system、developer です。statusstringメッセージの処理ステータスです。有効な値は in_progress、completed、incomplete です。typestringメッセージアイテムのタイプです。値は message に固定されています。stringリスト内の最初のメッセージアイテムの ID です。has_moreブール値追加のデータがあるかどうかを示します。last_idstringリスト内の最後のメッセージアイテムの ID です。 |
アイテムの一覧表示
会話内のすべてのメッセージ項目を一覧表示します。
North China 2 (Beijing): GET https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items
シンガポール: GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items
conversation_id 文字列 (必須、パス)会話の ID です。after 文字列 (省略可能)ページネーションカーソルです。指定されたメッセージ ID より後に作成されたメッセージ項目のみを返します。order 文字列 (省略可能)ソート順です。有効な値は asc (昇順) または desc (降順) です。デフォルトは desc です。limit 整数 (省略可能)返すアイテム数です。1~100 の整数を指定します。デフォルトは 20 です。 | Python |
レスポンスパラメータ
data 配列[object]メッセージ項目のリストです。
プロパティ id 文字列メッセージ項目の一意の ID です。content 文字列または配列メッセージのコンテンツです。プレーンテキスト文字列、または input_text オブジェクトの配列などの構造化されたコンテンツリストのいずれかです。role 文字列メッセージのロールです。有効な値は user、assistant、system、developer のいずれかです。status 文字列メッセージの処理ステータスです。有効な値は in_progress、completed、incomplete のいずれかです。type 文字列メッセージ項目のタイプです。値は message で固定です。文字列リスト内の最初のメッセージ項目の ID です。has_more ブール値さらにデータが利用可能かどうかを示します。last_id 文字列リスト内の最後のメッセージ項目の ID です。object 文字列オブジェクトタイプです。値は list で固定です。 |
アイテムの取得
指定されたメッセージアイテムの詳細を取得します。
中国北部 2 (北京): GET https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items/{item_id}
Singapore: GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items/{item_id}
conversation_idstring(必須、パス)会話の ID です。item_idstring(必須、パス)メッセージアイテムの ID です。 | Python |
レスポンスパラメーター
contentarray[object]1 つ以上のコンテンツオブジェクトを含むメッセージコンテンツのリストです。
プロパティ type stringコンテンツタイプです。ユーザー入力テキストの場合は input_text 、モデル出力テキストの場合は output_text などです。textstringテキストコンテンツです。stringメッセージアイテムの一意の ID です。rolestringメッセージのロールです。有効な値は user 、 assistant 、 system 、 developer です。statusstringメッセージの処理ステータスです。有効な値は in_progress 、 completed 、 incomplete です。typestringメッセージアイテムのタイプです。値は message に固定されています。 |
アイテムの削除
指定のメッセージアイテムを削除します。
North China 2 (Beijing): DELETE https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items/{item_id}
Singapore: DELETE https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/conversations/{conversation_id}/items/{item_id}
conversation_id文字列 (必須、パス)会話のIDです。item_id文字列 (必須、パス)メッセージアイテムのIDです。 | Python |
応答パラメーター
deletedブール値アイテムが正常に削除されたかどうかを示します。id文字列削除されたメッセージアイテムのIDです。object文字列オブジェクトタイプです。値は conversation.item.deleted で固定です。 |
Responses API での会話の使用
Responses API の conversation パラメーターを使用して、マルチターン会話でコンテキストを維持します。
previous_response_idとconversationを同時に渡さないでください。同時に渡すと、次のエラーが発生します。[400] INVALID_REQUEST: Mutually exclusive parameters: Ensure you are only providing one of: previous_response_id or conversation.
Python
制限
- 会話を作成する、またはメッセージ項目を追加する際、
items配列には最大 20 件のエントリを含めることができます。 metadataオブジェクトには最大 16 個のキーと値のペアを含めることができます。キーは最大 64 文字、値は最大 512 文字です。- 会話データは最大 7 日間保持され、最新 100 件に制限されます。期間または数量制限を超えたデータは自動的に削除されます。