AI SDKs
Email checker integration with AI SDKs. Anthropic, OpenAI, LangChain, Vercel AI SDK guides.
Construa aplicações de IA com recursos integrados de verificação de e-mail usando frameworks e SDKs de IA populares.
Frameworks Suportados
Vercel AI SDK
Chamada de ferramenta com aplicações Next.js e React
LangChain
Ferramentas personalizadas para agentes LangChain em Python e JavaScript
OpenAI Function Calling
Chamada de função nativa com modelos GPT da OpenAI
Anthropic Tool Use
Uso de ferramenta com modelos Claude
Comparação
| Framework | Linguagem | Melhor Para | Complexidade |
|---|---|---|---|
| Vercel AI SDK | TypeScript | Apps Next.js, streaming | Baixa |
| LangChain | Python/JS | Agentes complexos, cadeias | Média |
| OpenAI Functions | Qualquer | Integração direta GPT | Média |
| Anthropic Tools | Qualquer | Integração direta Claude | Média |
Exemplo Rápido
Aqui está uma definição simples de ferramenta que funciona em vários 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();
},
};Melhores Práticas
1. Tratamento de Erros
Sempre trate erros da API de forma elegante em suas ferramentas:
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. Descrições Claras de Ferramentas
Escreva definições de ferramentas descritivas para que a IA saiba quando usá-las:
description: `Verifica se um endereço de e-mail é válido e entregável.
Retorna:
- status: "valid", "invalid" ou "unknown"
- deliverable: se o e-mail pode receber mensagens
- disposable: se é um serviço de e-mail temporário
- role: se é um endereço baseado em função como info@ ou support@
- score: pontuação de confiança de 0 a 1
Use esta ferramenta quando:
- Usuário pedir para verificar um e-mail
- Verificar se um e-mail é real
- Validar informações de contato`3. Lote para Eficiência
Ao verificar múltiplos e-mails, use o endpoint em massa:
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 de Resultados
Considere fazer cache dos resultados de verificação para economizar créditos:
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;
}