> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ko/llms.txt
# toAISdkV5메시지()
메시지를 입력 형식에서 AI SDK V5(이상) UI 메시지 형식으로 변환합니다. 이 함수는 다양한 형식(문자열, AI SDK V4/V5 메시지, Mastra DB 메시지 등)의 메시지를 수용하고 이를 AI SDK V5+로 정규화합니다.`UIMessage`다음과 같은 AI SDK UI 구성요소와 함께 사용하기에 적합한 형식입니다.`useChat()`.
## 사용예
```typescript
import { toAISdkV5Messages } from '@mastra/ai-sdk/ui'
import { useChat } from 'ai/react'
// Stored messages from your database, memory or API
const storedMessages = [
{ id: '1', role: 'user', content: 'Hello', parts: [{ type: 'text', text: 'Hello' }] },
{
id: '2',
role: 'assistant',
content: 'Hi there!',
parts: [{ type: 'text', text: 'Hi there!' }],
},
]
export default function Chat() {
const { messages } = useChat({
initialMessages: toAISdkV5Messages(storedMessages),
})
return (
{messages.map(message => (
{message.role}: {message.parts.map(part => (part.type === 'text' ? part.text : null))}
))}
)
}
```
## 매개변수
**messages** (`MessageListInput`): 변환할 메시지입니다. 문자열, 문자열 배열, 단일 메시지 객체 또는 지원되는 형식의 메시지 객체 배열일 수 있습니다.
## 보고
다음 구조를 갖는 AI SDK V5+ `UIMessage` 객체 배열을 반환합니다.
**id** (`string`): 고유한 메시지 식별자입니다.
**role** (`'user' | 'assistant' | 'system'`): 메시지 발신자의 역할입니다.
**parts** (`UIMessagePart[]`): 텍스트, Tool 결과, 파일, 추론, 출처 및 단계 마커를 포함하는 UI 부분의 배열입니다.
**metadata** (`Record`): createdAt, threadId, resourceId 및 사용자 정의 필드를 포함하는 선택적 메타데이터입니다.
## 예
### 문자 메시지 변환 중
```typescript
import { toAISdkV5Messages } from '@mastra/ai-sdk/ui'
const messages = toAISdkV5Messages(['Hello', 'How can I help you today?'])
// Returns array of UIMessage objects with user role
```
### Mastra 클라이언트로 메시지 로드
```typescript
import { MastraClient } from '@mastra/client-js'
import { toAISdkV5Messages } from '@mastra/ai-sdk/ui'
const client = new MastraClient()
const { messages } = await client.listThreadMessages('thread-id', { agentId: 'myAgent' })
const uiMessages = toAISdkV5Messages(messages)
```