AI SDKs
Email checker integration with AI SDKs. Anthropic, OpenAI, LangChain, Vercel AI SDK guides.
Créez des applications IA avec des capacités de vérification d'e-mail intégrées en utilisant des frameworks et SDK IA populaires.
Frameworks supportés
Vercel AI SDK
Appel d'outils avec applications Next.js et React
LangChain
Outils personnalisés pour agents LangChain en Python et JavaScript
Appel de fonction OpenAI
Appel de fonction natif avec modèles GPT OpenAI
Utilisation d'outils Anthropic
Utilisation d'outils avec modèles Claude
Comparaison
| Framework | Langage | Idéal pour | Complexité |
|---|---|---|---|
| Vercel AI SDK | TypeScript | Apps Next.js, streaming | Faible |
| LangChain | Python/JS | Agents complexes, chaînes | Moyenne |
| OpenAI Functions | Tous | Intégration GPT directe | Moyenne |
| Anthropic Tools | Tous | Intégration Claude directe | Moyenne |
Exemple rapide
Voici une définition d'outil simple qui fonctionne avec tous les 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();
},
};Bonnes pratiques
1. Gestion des erreurs
Gérez toujours les erreurs API avec élégance dans vos outils :
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. Descriptions d'outils claires
Écrivez des définitions d'outils descriptives pour que l'IA sache quand les utiliser :
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. Traiter par lots pour l'efficacité
Lors de la vérification de plusieurs e-mails, utilisez l'endpoint en masse :
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. Mettre en cache les résultats
Envisagez de mettre en cache les résultats de vérification pour économiser des crédits :
const cache = new Map<string, { result: any; timestamp: number }>();
const CACHE_TTL = 3600000; // 1 heure
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;
}