> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ko/llms.txt # withMastra() Mastra 프로세서 및/또는 Memory로 AI SDK Model을 래핑합니다. ## 사용예 ```typescript import { openai } from '@ai-sdk/openai' import { generateText } from 'ai' import { withMastra } from '@mastra/ai-sdk' import type { Processor } from '@mastra/core/processors' const loggingProcessor: Processor<'logger'> = { id: 'logger', async processInput({ messages }) { console.log('Input:', messages.length, 'messages') return messages }, } const model = withMastra(openai('gpt-5.4'), { inputProcessors: [loggingProcessor], }) const { text } = await generateText({ model, prompt: 'What is 2 + 2?', }) ``` ## 매개변수 **model** (`LanguageModelV2 | LanguageModelV3`): 모든 AI SDK v5 또는 v6 언어 Model(예: openai('gpt-5.4'), anthropic('claude-opus-4-6'))입니다. **options** (`WithMastraOptions`): 프로세서 및 Memory의 구성 객체입니다. **options.inputProcessors** (`InputProcessor[]`): LLM 호출 전에 실행할 입력 프로세서입니다. **options.outputProcessors** (`OutputProcessor[]`): LLM 응답에 대해 실행할 출력 프로세서입니다. **options.memory** (`WithMastraMemoryOptions`): Memory 구성입니다. 자동 메시지 기록 영속성을 활성화합니다. **options.memory.storage** (`MemoryStorage`): 메시지 영속성을 위한 Memory 스토리지 도메인입니다. 복합 스토어에서 await storage.getStore('memory')를 사용하여 가져오세요. **options.memory.threadId** (`string`): 대화 영속성을 위한 스레드 ID입니다. **options.memory.resourceId** (`string`): 리소스 ID(사용자/세션 식별자)입니다. **options.memory.lastMessages** (`number | false`): 가져올 최근 메시지 수입니다. 비활성화하려면 false를 사용합니다. **options.memory.semanticRecall** (`WithMastraSemanticRecallOptions`): 의미 기반 회상 구성(RAG 기반 Memory 검색)입니다. **options.memory.workingMemory** (`MemoryConfig['workingMemory']`): 작업 Memory 구성(영구 사용자 데이터)입니다. **options.memory.readOnly** (`boolean`): 읽기 전용 모드입니다. 새 메시지가 저장되지 않도록 합니다. ## 보고 다음과 호환되는 랩핑 Model`generateText`, `streamText`, `generateObject`, 그리고`streamObject`. ## 스트리밍 동작 `processOutputResult`를 구현하는 출력 프로세서는 스트림이 완료된 후 실행됩니다. 메시지 기록과 의미 기반 회상을 영속화하려면 스트림을 끝까지 소비하세요.