> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ko/llms.txt # toAISdkV4메시지() 메시지를 입력 형식에서 AI SDK V4 UI 메시지 형식으로 변환합니다. 이 함수는 다양한 형식(문자열, AI SDK V4/V5 메시지, Mastra DB 메시지 등)의 메시지를 수용하고 이를 AI SDK V4로 정규화합니다.`UIMessage`다음과 같은 AI SDK UI 구성요소와 함께 사용하기에 적합한 형식입니다.`useChat()`. ## 사용예 ```typescript 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 (
{messages.map(message => (
{message.role}: {message.content}
))}
) } ``` ## 매개변수 **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`): 메시지에 첨부된 사용자 정의 메타데이터입니다. ## 예 ### 문자 메시지 변환 중 ```typescript 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 클라이언트로 메시지 로드 ```typescript 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) ```