Конектор OpenAI

Свържете OpenAI с Brevo чрез Tajo, за да използвате AI-задвижвано генериране на съдържание, анализ на клиентски сантимент, интелигентно сегментиране и предиктивна аналитика за вашите маркетингови автоматизации.

Преглед

СвойствоСтойност
ПлатформаOpenAI
КатегорияAI / ML (Персонализирана)
Сложност на настройкаСредна
Официална интеграцияНе
Синхронизирани данниСъдържание, Embeddings, Инсайти, Прогнози
Метод на автентикацияAPI Key (Bearer Token)

Функции

  • AI генериране на съдържание – Генерирайте subject line на имейли, body copy и CTA с GPT модели
  • Анализ на клиентски сантимент – Анализирайте support тикети и обратна връзка за скориране на сантимент
  • Интелигентно сегментиране – Използвайте embeddings за клъстериране на клиенти по поведенчески модели
  • Предиктивна аналитика – Прогнозирайте churn, LTV и склонност към покупка
  • Съдържание на множество езици – Генерирайте маркетингово съдържание на всеки поддържан език
  • Генериране на изображения – Създавайте визуални елементи за кампании с DALL-E интеграция

Предварителни условия

Преди да започнете, уверете се, че имате:

  1. Акаунт в OpenAI с API достъп
  2. API ключ от OpenAI dashboard
  3. Акаунт в Brevo с API достъп
  4. Акаунт в Tajo с конекторни права
  5. Достатъчно OpenAI API кредити за очакваната ви употреба

Автентикация

API Key автентикация

OpenAI използва Bearer token автентикация за всички API заявки:

Terminal window
# Set your API keys
export OPENAI_API_KEY=sk-your-api-key
export TAJO_API_KEY=your_tajo_api_key
export BREVO_API_KEY=your_brevo_api_key
// All requests require the Authorization header
const headers = {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
};
// For organization-scoped access
const orgHeaders = {
...headers,
'OpenAI-Organization': process.env.OPENAI_ORG_ID,
'OpenAI-Project': process.env.OPENAI_PROJECT_ID
};

Сигурност на API ключа

Никога не излагайте вашия OpenAI API ключ в client-side код. Винаги използвайте environment променливи и server-side заявки. Ротирайте ключовете периодично чрез OpenAI dashboard.

Конфигурация

Основна настройка

connectors:
openai:
enabled: true
model: "gpt-4o"
embedding_model: "text-embedding-3-small"
image_model: "dall-e-3"
features:
content_generation: true
sentiment_analysis: true
smart_segmentation: true
predictive_analytics: true
limits:
max_tokens_per_request: 4096
max_requests_per_minute: 60
temperature: 0.7

Шаблони за генериране на съдържание

templates:
email_subject:
model: "gpt-4o"
system_prompt: |
You are an expert email marketer. Generate compelling
subject lines that drive open rates.
max_tokens: 100
temperature: 0.8
email_body:
model: "gpt-4o"
system_prompt: |
Generate personalized email content based on customer
data and campaign objectives.
max_tokens: 2048
temperature: 0.7

API крайни точки

EndpointMethodОписание
https://api.openai.com/v1/responsesPOSTСъздаване на AI отговори (Responses API)
https://api.openai.com/v1/chat/completionsPOSTГенериране на текстови completions
https://api.openai.com/v1/embeddingsPOSTСъздаване на текстови embeddings
https://api.openai.com/v1/images/generationsPOSTГенериране на изображения
https://api.openai.com/v1/audio/speechPOSTГенериране на text-to-speech
https://api.openai.com/v1/audio/transcriptionsPOSTSpeech-to-text транскрипция
https://api.openai.com/v1/moderationsPOSTМодерация на съдържание
https://api.openai.com/v1/modelsGETСписък на наличните модели

Примери за код

Инициализация на конектора

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
await tajo.connectors.connect('openai', {
apiKey: process.env.OPENAI_API_KEY,
defaultModel: 'gpt-4o'
});

Генериране на съдържание за имейли

// Generate personalized email subject lines
const response = await fetch('https://api.openai.com/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gpt-4o',
messages: [
{
role: 'system',
content: 'Generate 5 compelling email subject lines for a product launch.'
},
{
role: 'user',
content: `Product: ${product.name}. Target: ${segment.description}.`
}
],
max_tokens: 200,
temperature: 0.8
})
});
const result = await response.json();
const subjectLines = result.choices[0].message.content;

Анализ на клиентски сантимент

// Analyze customer feedback sentiment
const sentimentAnalysis = await fetch(
'https://api.openai.com/v1/chat/completions',
{
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gpt-4o',
messages: [
{
role: 'system',
content: 'Analyze sentiment. Return JSON: {score: -1 to 1, label: string, topics: string[]}'
},
{ role: 'user', content: customerFeedback }
],
response_format: { type: 'json_object' },
max_tokens: 150
})
}
);
const sentiment = await sentimentAnalysis.json();
await tajo.contacts.update(email, {
attributes: { SENTIMENT_SCORE: JSON.parse(sentiment.choices[0].message.content).score }
});

Интелигентно сегментиране с embeddings

// Generate embeddings for customer clustering
const embeddingResponse = await fetch(
'https://api.openai.com/v1/embeddings',
{
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'text-embedding-3-small',
input: customerDescriptions,
dimensions: 256
})
}
);
const embeddings = await embeddingResponse.json();
// Use embeddings for similarity-based customer clustering

Лимити на заявки

МоделRPM (заявки/мин)TPM (токени/мин)RPD (заявки/ден)
gpt-4o50030,00010,000
gpt-4o-mini500200,00010,000
text-embedding-3-small5001,000,00010,000
dall-e-35N/A200

Rate Limit Headers

Следете headers за лимитите на заявките (x-ratelimit-remaining-requests, x-ratelimit-remaining-tokens) в API отговорите, за да внедрите проактивно throttling и да избегнете 429 грешки.

Отстраняване на проблеми

ПроблемПричинаРешение
401 UnauthorizedНевалиден API ключПроверете ключа в OpenAI dashboard
429 Rate LimitedТвърде много заявкиВнедрете експоненциален backoff
500 Server ErrorПрекъсване на OpenAIПроверете status.openai.com и повторете
Съкратен отговорmax_tokens е твърде нисъкУвеличете параметъра max_tokens
Лошо качество на съдържаниетоТвърде висока temperatureНамалете temperature за последователност

Debug режим

connectors:
openai:
debug: true
log_level: verbose
log_prompts: false # Don't log prompts in production
log_usage: true

Най-добри практики

  1. Кеширайте отговорите – Съхранявайте генерираното съдържание, за да намалите API повикванията и разходите
  2. Използвайте структурирани изходи – Изисквайте JSON отговори за надеждно парсване
  3. Внедрете retry логика – Обработвайте лимитите на заявките с експоненциален backoff
  4. Следете употребата на токени – Проследявайте консумацията, за да контролирате разходите
  5. Използвайте подходящи модели – Използвайте gpt-4o-mini за прости задачи, gpt-4o за сложни
  6. Валидирайте изходите – Винаги валидирайте AI-генерирано съдържание преди да го изпратите до клиенти

Сигурност

  • Bearer token автентикация – API ключове, предавани чрез Authorization header
  • Само от сървъра – Никога не излагайте API ключове в client-side код
  • Ротация на ключове – Ротирайте API ключовете редовно чрез OpenAI dashboard
  • Мониторинг на употребата – Задайте лимити на разходите в OpenAI billing настройките
  • Модерация на съдържание – Използвайте Moderations API, за да филтрирате неподходящо съдържание
  • Поверителност на данните – Прегледайте политиките на OpenAI за използване на данни за вашия случай

Свързани ресурси

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
AI асистент

Здравейте! Попитайте ме за документацията.