toAISdkV4메시지()
메시지를 입력 형식에서 AI SDK V4 UI 메시지 형식으로 변환합니다. 이 함수는 다양한 형식(문자열, AI SDK V4/V5 메시지, Mastra DB 메시지 등)의 메시지를 수용하고 이를 AI SDK V4로 정규화합니다.UIMessage다음과 같은 AI SDK UI 구성요소와 함께 사용하기에 적합한 형식입니다.useChat().
사용예사용예에 대한 직접 링크
app/chat/page.tsx
import { toAISdkV4Messages } from '@mastra/ai-sdk'
import { useChat } from 'ai/react' // AI SDK V4
// Stored messages from your database, memory or API
const storedMessages = [
{ id: '1', role: 'user', parts: [{ type: 'text', text: 'Hello' }] },
{ id: '2', role: 'assistant', parts: [{ type: 'text', text: 'Hi there!' }] },
]
export default function Chat() {
const { messages } = useChat({
initialMessages: toAISdkV4Messages(storedMessages),
})
return (
<div>
{messages.map(message => (
<div key={message.id}>
{message.role}: {message.content}
</div>
))}
</div>
)
}
매개변수매개변수에 대한 직접 링크
messages:
MessageListInput
변환할 메시지입니다. 문자열, 문자열 배열, 단일 메시지 객체 또는 지원되는 형식의 메시지 객체 배열일 수 있습니다.
보고보고에 대한 직접 링크
다음 구조를 갖는 AI SDK V4 UIMessage 객체 배열을 반환합니다.
id:
string
고유한 메시지 식별자입니다.
role:
'user' | 'assistant' | 'system'
메시지 발신자의 역할입니다.
content:
string
메시지의 텍스트 콘텐츠입니다.
parts:
UIMessagePart[]
텍스트, Tool 호출, 파일, 추론, 출처 및 단계 마커를 포함하는 UI 부분의 배열입니다.
createdAt:
Date
메시지 생성 타임스탬프입니다.
toolInvocations?:
ToolInvocation[]
어시스턴트 메시지의 Tool 호출 배열입니다.
experimental_attachments?:
Attachment[]
메시지의 파일 첨부 항목입니다.
metadata?:
Record<string, unknown>
메시지에 첨부된 사용자 정의 메타데이터입니다.
예예에 대한 직접 링크
문자 메시지 변환 중문자 메시지 변환 중에 대한 직접 링크
import { toAISdkV4Messages } from '@mastra/ai-sdk'
const messages = toAISdkV4Messages(['Hello', 'How can I help you today?'])
// Returns array of UIMessage objects with user role and content string
Mastra 클라이언트로 메시지 로드Mastra 클라이언트로 메시지 로드에 대한 직접 링크
import { MastraClient } from '@mastra/client-js'
import { toAISdkV4Messages } from '@mastra/ai-sdk'
const client = new MastraClient()
const { messages } = await client.listThreadMessages('thread-id', { agentId: 'myAgent' })
const uiMessages = toAISdkV4Messages(messages)