AI SDKs
Email checker integration with AI SDKs. Anthropic, OpenAI, LangChain, Vercel AI SDK guides.
Bouw AI-applicaties met ingebouwde e-mailverificatiemogelijkheden met behulp van populaire AI-frameworks en SDK's.
Ondersteunde Frameworks
Vercel AI SDK
Tool calling met Next.js en React-applicaties
LangChain
Aangepaste tools voor LangChain-agents in Python en JavaScript
OpenAI Functieaanroepen
Native functieaanroepen met OpenAI GPT-modellen
Anthropic Tool Use
Tool use met Claude-modellen
Vergelijking
| Framework | Taal | Beste Voor | Complexiteit |
|---|---|---|---|
| Vercel AI SDK | TypeScript | Next.js apps, streaming | Laag |
| LangChain | Python/JS | Complexe agents, chains | Gemiddeld |
| OpenAI Functions | Elke | Directe GPT-integratie | Gemiddeld |
| Anthropic Tools | Elke | Directe Claude-integratie | Gemiddeld |
Snel Voorbeeld
Hier is een eenvoudige tool-definitie die werkt over frameworks:
const verifyEmailTool = {
name: 'verify_email',
description: 'Verify if an email address is valid and deliverable',
parameters: {
type: 'object',
properties: {
email: {
type: 'string',
description: 'The email address to verify',
},
},
required: ['email'],
},
execute: async ({ email }) => {
const response = await fetch('https://api.emailverify.ai/v1/verify', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.EMAILVERIFY_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ email }),
});
return response.json();
},
};Best Practices
1. Foutafhandeling
Handel API-fouten altijd netjes af in uw tools:
execute: async ({ email }) => {
try {
const response = await fetch('https://api.emailverify.ai/v1/verify', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.EMAILVERIFY_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ email }),
});
if (!response.ok) {
if (response.status === 429) {
return { error: 'Rate limit exceeded. Please try again later.' };
}
return { error: `Verification failed: ${response.statusText}` };
}
return response.json();
} catch (error) {
return { error: 'Network error. Could not reach verification service.' };
}
}2. Duidelijke Tool Beschrijvingen
Schrijf beschrijvende tool-definities zodat de AI weet wanneer ze te gebruiken:
description: `Verify if an email address is valid and deliverable.
Returns:
- status: "valid", "invalid", or "unknown"
- deliverable: whether the email can receive messages
- disposable: whether it's a temporary email service
- role: whether it's a role-based address like info@ or support@
- score: confidence score from 0 to 1
Use this tool when:
- User asks to verify an email
- Checking if an email is real
- Validating contact information`3. Batch voor Efficiëntie
Bij het verifiëren van meerdere e-mails, gebruik het bulk endpoint:
const verifyEmailsBulkTool = {
name: 'verify_emails_bulk',
description: 'Verify multiple emails at once. More efficient than verifying one by one.',
parameters: {
type: 'object',
properties: {
emails: {
type: 'array',
items: { type: 'string' },
maxItems: 100,
},
},
required: ['emails'],
},
};4. Cache Resultaten
Overweeg verificatieresultaten te cachen om credits te besparen:
const cache = new Map<string, { result: any; timestamp: number }>();
const CACHE_TTL = 3600000; // 1 hour
async function verifyWithCache(email: string) {
const cached = cache.get(email);
if (cached && Date.now() - cached.timestamp < CACHE_TTL) {
return cached.result;
}
const result = await verifyEmail(email);
cache.set(email, { result, timestamp: Date.now() });
return result;
}