> Discover all available pages from the documentation index: https://mastra.zisheng.pro/fr/llms.txt # withMastra() Encapsule un modèle AI SDK avec des Processors Mastra et/ou une mémoire. ## Exemple d’utilisation ```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?', }) ``` ## Paramètres **model** (`LanguageModelV2 | LanguageModelV3`): Tout modèle de langage AI SDK v5 ou v6, par exemple openai('gpt-5.4'), anthropic('claude-opus-4-6'). **options** (`WithMastraOptions`): Objet de configuration des Processors et de la mémoire. **options.inputProcessors** (`InputProcessor[]`): Processors d’entrée à exécuter avant l’appel au LLM. **options.outputProcessors** (`OutputProcessor[]`): Processors de sortie à exécuter sur la réponse du LLM. **options.memory** (`WithMastraMemoryOptions`): Configuration de la mémoire, qui active la conservation automatique de l’historique des messages. **options.memory.storage** (`MemoryStorage`): Domaine de stockage de la mémoire pour la conservation des messages. Récupérez-le depuis un stockage composite avec await storage.getStore('memory'). **options.memory.threadId** (`string`): ID du thread pour la conservation de la conversation. **options.memory.resourceId** (`string`): ID de la ressource, c’est-à-dire l’identifiant de l’utilisateur ou de la session. **options.memory.lastMessages** (`number | false`): Nombre de messages récents à récupérer, ou false pour désactiver cette fonctionnalité. **options.memory.semanticRecall** (`WithMastraSemanticRecallOptions`): Configuration du rappel sémantique, c’est-à-dire de la récupération en mémoire basée sur RAG. **options.memory.workingMemory** (`MemoryConfig['workingMemory']`): Configuration de la mémoire de travail, qui contient les données utilisateur persistantes. **options.memory.readOnly** (`boolean`): Mode lecture seule, qui empêche l’enregistrement de nouveaux messages. ## Valeur renvoyée Un modèle encapsulé compatible avec `generateText`, `streamText`, `generateObject` et `streamObject`. ## Comportement du streaming Les Processors de sortie qui implémentent `processOutputResult` s’exécutent une fois le flux terminé. Consommez le flux jusqu’à son terme afin de conserver l’historique des messages et le rappel sémantique.