OpenAI Responses API Conversations
OpenAI Responses API Conversations は、Mastra Agents の会話管理機能を Responses API として提供します。Mastra でスレッドに紐づく会話を作成、取得、削除、確認するためのメソッドが用意されています。
この API は OpenAI Responses API を補完するものです。保存された Responses 呼び出しは conversation_id を返します。Mastra では、この値はメモリの生の threadId です。そのスレッドを直接操作する場合は client.conversations を使用します。
この API は現在実験的です。
OpenAI Responses との関係OpenAI Responses との関係への直接リンク
生成と継続には OpenAI Responses API を使用します。
const response = await client.responses.create({
agent_id: 'support-agent',
input: 'Start a support thread',
store: true,
})
console.log(response.conversation_id)
保存されたスレッドを確認または管理する場合は Conversations API を使用します。
const conversation = await client.conversations.retrieve(response.conversation_id!)
const items = await client.conversations.items.list(response.conversation_id!)
使用例使用例への直接リンク
import { MastraClient } from '@mastra/client-js'
const client = new MastraClient({
baseUrl: 'http://localhost:4111',
})
const conversation = await client.conversations.create({
agent_id: 'support-agent',
})
console.log(conversation.id)
メソッドメソッドへの直接リンク
ライフサイクルライフサイクルへの直接リンク
create(params)createparamsへの直接リンク
選択した Agent 用に新しい会話スレッドを作成します。
const conversation = await client.conversations.create({
agent_id: 'support-agent',
title: 'Billing support',
})
戻り値: Promise<Conversation>。
retrieve(conversationId, requestContext?)retrieveconversationid-requestcontextへの直接リンク
スレッド ID を指定して会話を取得します。
const conversation = await client.conversations.retrieve('thread_123')
console.log(conversation.thread)
戻り値: Promise<Conversation>。
delete(conversationId, requestContext?)deleteconversationid-requestcontextへの直接リンク
スレッド ID を指定して会話を削除します。
const deleted = await client.conversations.delete('thread_123')
console.log(deleted.deleted)
戻り値: Promise<ConversationDeleted>。
項目項目への直接リンク
items.list(conversationId, requestContext?)itemslistconversationid-requestcontextへの直接リンク
会話に保存されている項目を一覧表示します。
const items = await client.conversations.items.list('thread_123')
console.log(items.data)
戻り値: Promise<ConversationItemsPage>。
レスポンスの形式レスポンスの形式への直接リンク
create() と retrieve() は、次のフィールドを持つ会話オブジェクトを返します。
id:生のスレッド IDobject:常に'conversation'thread:保存されたスレッドレコード
delete() は次の値を返します。
id:生のスレッド IDobject:常に'conversation.deleted'deleted:常にtrue
items.list() は次の値を返します。
object:常に'list'data:message、function_call、function_call_outputなどの会話項目first_id:ページ内の最初の項目 IDlast_id:ページ内の最後の項目 IDhas_more:現在のページより後に項目が残っているかどうか
パラメーターパラメーターへの直接リンク
agent_id:
string
必須。会話メモリを所有する、登録済みの Mastra Agent。
conversation_id?:
string
任意。生のスレッド ID として使用する会話 ID。
resource_id?:
string
任意。会話スレッドに関連付けるリソース ID。
title?:
string
任意。会話とともに保存されるスレッドタイトル。
metadata?:
Record<string, unknown>
任意。会話とともに保存されるスレッドのメタデータ。
requestContext?:
RequestContext | Record<string, any>
任意。Mastra サーバーへ転送されるリクエストコンテキスト。