@memorylayerai/vercel-ai
v0.6.1
Published
Vercel AI SDK integration for MemoryLayer
Downloads
38
Maintainers
Readme
@memorylayer/vercel-ai
Vercel AI SDK integration for MemoryLayer - Add memory-augmented AI to your applications.
Installation
npm install @memorylayer/vercel-ai @memorylayer/sdk ai zodQuick Start
Provider Adapter
import { createMemoryLayerProvider } from '@memorylayer/vercel-ai';
import { MemoryLayerClient } from '@memorylayer/sdk';
import { generateText } from 'ai';
const client = new MemoryLayerClient({
apiKey: process.env.MEMORYLAYER_API_KEY!,
});
const provider = createMemoryLayerProvider({
client,
projectId: 'proj_abc123',
});
const { text } = await generateText({
model: provider,
prompt: 'What are my preferences?',
});Memory Tools
import { memoryTool, searchTool } from '@memorylayer/vercel-ai';
import { generateText } from 'ai';
const { text } = await generateText({
model: provider,
prompt: 'Remember that I prefer dark mode',
tools: {
addMemory: memoryTool({ client, projectId: 'proj_abc123' }),
searchMemory: searchTool({ client, projectId: 'proj_abc123' }),
},
});Multi-Provider Support
MemoryLayer supports multiple AI providers. Configure at the organization level or override per-request:
Supported Providers
| Provider | Language Models | Embedding Models | |----------|-----------------|------------------| | OpenAI | gpt-4o, gpt-4o-mini | text-embedding-3-small | | Google | gemini-2.5-flash, gemini-2.0-flash | text-embedding-004 | | Anthropic | claude-3-5-sonnet, claude-3-opus | Uses OpenAI embeddings |
Using Different Providers
import { createMemoryLayerProvider } from '@memorylayer/vercel-ai';
// OpenAI (default)
const openaiProvider = createMemoryLayerProvider({
client,
projectId: 'proj_abc123',
modelSettings: {
provider: 'openai',
languageModel: 'gpt-4o-mini',
embeddingModel: 'text-embedding-3-small'
}
});
// Google Gemini
const googleProvider = createMemoryLayerProvider({
client,
projectId: 'proj_abc123',
modelSettings: {
provider: 'google',
languageModel: 'gemini-2.0-flash',
embeddingModel: 'text-embedding-004'
}
});
// Anthropic Claude
const anthropicProvider = createMemoryLayerProvider({
client,
projectId: 'proj_abc123',
modelSettings: {
provider: 'anthropic',
languageModel: 'claude-3-5-sonnet-20241022',
embeddingModel: 'text-embedding-3-small' // Uses OpenAI for embeddings
}
});Documentation
For full documentation, visit https://docs.memorylayer.com
License
MIT
