- VPS üzerinde LLM kullanarak kişiselleştirilmiş bir e-posta kampanyasını nasıl otomatik hale getirebilirsiniz?
- Genel Mimari — VPS Üzerinde Çalışan LLM ile Kişiselleştirilmiş E-posta Kampanyası Oluşturma Otomasyonu
- Önkoşullar ve sunucu seçimi
- Pratik Uygulama — Adım Adım
- E-posta ayarları ve teslim edilebilirlik
- Güvenlik ve gizlilik
- İzleme, geri dönüş yönetimi ve ölçümler
- Ölçeklenebilirlik ve model optimizasyonu
- Konumları karşılaştırın ve kampanyalar önerin
- Uygulama kontrol listesi (adım adım)
- Farklı takımlar için pratik ipuçları
- Çözüm
- Sıkça Sorulan Sorular
VPS üzerinde LLM kullanarak kişiselleştirilmiş bir e-posta kampanyasını nasıl otomatik hale getirebilirsiniz?
Bu teknik, adım adım kılavuz, MTA ve DNS kayıtlarını doğru şekilde yapılandırarak bir VPS veya bulut sunucusuna LLM'yi nasıl dağıtacağınızı, kişiselleştirilmiş e-posta metinleri nasıl oluşturacağınızı ve büyük ölçekte güvenli ve güvenilir bir şekilde gönderim kampanyaları nasıl yürüteceğinizi göstermektedir.
Genel Mimari — VPS Üzerinde Çalışan LLM ile Kişiselleştirilmiş E-posta Kampanyası Oluşturma Otomasyonu
Tipik mimari, her birinin e-posta oluşturma, sıraya alma ve gönderme işlemlerinde belirli bir rolü olan aşağıdaki bileşenleri içerir:
- LLM çıkarım sunucusu (VPS/GPU Bulutunda) — Kişiselleştirilmiş içerik üretmek için modelin uygulanması.
- Uygulama API'si (FastAPI/Flask) — Veri bankası, LLM ve gönderme kuyruğu arasındaki arayüz.
- Mesaj kuyruğu ve çalışan (Redis + Celery veya RabbitMQ) — Arka plan gönderimi ve fiyatlandırma yönetimi.
- MTA veya SMTP rölesi (Postfix/Haraka veya Mailgun/Sendgrid gibi harici servis) — E-postanın fiilen gönderilmesi.
- İzleme ve Günlük Kaydı (Prometheus + Grafana + ELK) ve geri dönüş yönetimi.
- DNS kayıtlarıÖzel IP adresleri için SPF, DKIM, DMARC ve PTR.
VPS veya bulut sunucusuna dağıtım yapmanın avantajları:
- Veriler ve model üzerinde tam kontrol. — Gizlilik ve uyumluluk açısından önemlidir.
- GPU Bulutunu kullanma yeteneği Büyük ölçekli modellerden çıkarım yapmak için.
- IP tahsisi ve ısınma yönetimi Teslim edilebilirliği artırmak için.
- Coğrafi dağılım Gecikmeyi azaltmak için 85'ten fazla konum kullanılıyor.
Önkoşullar ve sunucu seçimi
Donanım ve konum seçimi
Büyük modeller için (7B/13B+) 16-48 GB VRAM'e sahip bir sunucu GPU'su (örneğin A100/RTX 3090/4090) kullanılması önerilir. Daha küçük veya nicelleştirilmiş modeller için, LLama-2-7B q4_0 32 GB veya daha fazla RAM'e sahip bir işlemci kullanabilirsiniz.
Konum: Yerel gelen kutusuna teslimatı artırmak için aynı coğrafi bölgeden gelen IP adresleri yardımcı olabilir; ancak genel teslimat oranı için IP bloğu ve geçmişi daha önemlidir.
Yazılım
Önerilen yazılım bileşenleri:
- Docker, Docker Compose veya Kubernetes (ölçeklenebilirlik için).
- Çıkarım için metin oluşturma-çıkarım (TGI) veya vLLM; CPU sunucuları için GGML/llama.cpp gibi daha hafif yollar.
- API için FastAPI, kuyruk için Celery + Redis, gönderme için Postfix/Haraka veya SMTP rölesi.
Pratik Uygulama — Adım Adım
Temel kurulum (Ubuntu örneği)
Ubuntu'ya Docker kurulumu için talimatlar:
sudo apt update
sudo apt install -y docker.io docker-compose
sudo systemctl enable --now dockerLLM + API + Redis için Docker Compose örneği
TGI'yı çıkarım aracı olarak ve FastAPI uygulamasını çalıştıran basit bir sürüm:
version: "3.8"
services:
tgi:
image: ghcr.io/oobabooga/text-generation-inference:latest
ports:
- "8080:8080"
volumes:
- ./models:/models
environment:
- MODEL_ID=/models/your-model
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
api:
image: yourrepo/email-llm-api:latest
build: ./api
ports:
- "8000:8000"
environment:
- TGI_URL=http://tgi:8080
- REDIS_URL=redis://redis:6379
depends_on:
- tgi
- redis
redis:
image: redis:6
ports:
- "6379:6379"Basit API Örneği (Python + FastAPI) — LLM Çağrısı ve Biçimlendirme
TGI'dan içerik oluşturup arka planda gönderilmek üzere sıraya koymaya yönelik örnek kod parçası:
from fastapi import FastAPI, BackgroundTasks
import requests, smtplib
from jinja2 import Template
app = FastAPI()
def send_email(smtp_host, smtp_port, user, password, to, subject, body):
import smtplib
from email.mime.text import MIMEText
msg = MIMEText(body, "html")
msg["Subject"] = subject
msg["From"] = user
msg["To"] = to
with smtplib.SMTP(smtp_host, smtp_port) as s:
s.starttls()
s.login(user, password)
s.sendmail(user, [to], msg.as_string())
@app.post("/generate-and-send")
def generate_and_send(payload: dict, background_tasks: BackgroundTasks):
tgi_resp = requests.post("http://tgi:8080/generate", json={
"prompt": f"Create a personalized marketing email for {payload['name']} about {payload['product']}",
"max_new_tokens": 200
}).json()
email_body = tgi_resp["generated_text"]
template = Template(email_body)
final = template.render(**payload)
background_tasks.add_task(send_email, "smtp.local", 587, "[email protected]", "smtp-pass", payload["email"], "پیشنهاد ویژه", final)
return {"status": "queued"}E-posta ayarları ve teslim edilebilirlik
SPF, DKIM, DMARC
Örnek kayıtlar ve temel adımlar:
- SPF: DNS'deki TXT kaydı, örnek değerle birlikte:
"v=spf1 ip4:YOUR.IP.ADD.RESS include:spf.yourrelay.com -all" - DKIM: OpenDKIM kullanılıyor. Anahtar oluşturma:
opendkim-genkey -t -s mail -d example.com - DMARC: Örnek kayıt:
_dmarc.example.com TXT "v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100"
PTR, özel IP ve Isınma
PTR (ters DNS) E-posta sunucu adını döndürmelidir.
Isınma: Engellenmeyi önlemek için özel bir IP adresi ve ısınma programı kullanın: başlangıçta sınırlı sayıda e-posta gönderin (örneğin günde 50-200 e-posta) ve kademeli olarak artırın.
Hız sınırlama ve kuyruk oluşturma
Postfix için hız ve bağlantı sınırlamasına ilişkin örnek yapılandırma:
smtpd_client_message_rate_limit = 100
smtpd_client_connection_count_limit = 10Büyük çaplı kampanyalar için genellikle güvenilir bir SMTP rölesi kullanmak ve uygulama tarafının yalnızca sağlayıcının kısıtlamalarına göre gönderim kuyruğunu kontrol etmesini sağlamak daha iyidir.
Güvenlik ve gizlilik
TLS: SMTP e-postalarını her zaman STARTTLS veya SMTPS ile gönderin. Postfix için main.cf dosyasında şu kodu kullanın:
smtpd_tls_cert_file=/etc/letsencrypt/live/example.com/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/example.com/privkey.pemAnahtar ve belirteç depolama: Vault veya Secret Manager'ı kullanın.
Hassas verilerin şifrelenmesi: PostgreSQL'de pgcrypto veya alan düzeyinde şifreleme kullanabilirsiniz.
İzleme, geri dönüş yönetimi ve ölçümler
Sekme yönetimi: VERP veya belirli bir posta kutusu aracılığıyla bir geri dönüş mesajı almak, veritabanındaki durumu işlemek ve güncellemek için gereklidir.
Performans göstergeleri (KPI'lar): Teslimat oranı, açılma oranı, tıklama oranı, hemen çıkma oranı, spam şikayetleri.
Sistem izleme: CPU/GPU/VRAM için Prometheus, gecikme çıkarımı, kuyruk uzunluğu ve başarı/başarısızlık ölçütleri için Grafana panoları.
Ölçeklenebilirlik ve model optimizasyonu
GPU Bulutu ve Nicelleştirme Kullanımı
Büyük modeller için GPU Cloud önerilir. Nicelleştirme (4-bit/8-bit) ve vLLM veya Triton gibi tekniklerin kullanımı, bellek kullanımında 4-10 kat azalma ve işlem hızında artış sağlayabilir.
Önbelleğe alınan ürünler ve istem şablonları
Her model çağrısının maliyetini düşürmek için, tekrarlayan metin bölümlerini önbelleğe alın ve PII alanlarını değiştirmek için istem şablonları ve güvenli yöntemler kullanın.
Konumları karşılaştırın ve kampanyalar önerin
- Yerel izleyici kitlesi: Alıcıların çoğu aynı ülke/kıtada bulunuyorsa, aynı bölgedeki bir VPS gecikmeyi azaltabilir ve bazen birlikte çalışabilirliği artırabilir.
- Başlıca sağlayıcılara (Gmail, Yahoo) teslimat: Konumdan daha önemli olan IP engelleme geçmişi ve DNS ayarlarıdır.
- Saldırılara karşı koruma: DDoS saldırıları sırasında hizmet sürekliliğini sağlamak için DDoS karşıtı sunucuların ve BGP ağının kullanılması şarttır.
Uygulama kontrol listesi (adım adım)
- Modelinize göre konum ve sunucu türünü (GPU veya CPU) seçin.
- VPS kurulumu ve Docker/Docker Compose'un yüklenmesi.
- LLM çıkarım sunucusunun (TGI/vLLM) ve API'nin dağıtımı.
- Kuyruk yapılandırması (Redis + Celery) ve çalışanlar.
- Geçerli bir MTA kurun veya geçerli bir SMTP rölesi seçin.
- DKIM anahtarı oluşturun ve SPF, DKIM, DMARC kayıtlarını ekleyin.
- Certbot ile TLS kurulumu ve PTR ayarlarının yapılması.
- Planlandığı gibi (7-14 gün) IP ısınma işlemini gerçekleştirin.
- Aktif izleme ve geri dönüş işleme.
- A/B testi ve KPI ölçümü.
Farklı takımlar için pratik ipuçları
- DevOps için: Ağ ve DNS dağıtımı için IaC (Terraform veya Ansible) kullanın ve imajları depolamak için Container Registry'yi kullanın.
- Pazarlama için: Teslimat ve etkileşim metriklerini kullanarak yönlendirmeler belirleyin ve hedef kitlelere segmentasyon yapın.
- Güvenlik amacıyla: IP izin listesi ve hız sınırlamaları kullanarak LLM API'sine erişimi kısıtlayın.
Çözüm
VPS üzerinde çalışan LLM, kişiselleştirilmiş e-posta kampanyası oluşturma otomasyonu ile dil modellerinin, kuyruk mimarisinin ve e-posta altyapısının gücünü bir araya getiriyor. 85'ten fazla küresel konumdan doğru olanı seçerek, çıkarım için GPU sunucuları kullanarak ve SPF/DKIM/DMARC ve güvenlik politikalarını ince ayar yaparak, kampanyalar daha yüksek açılma ve dönüşüm oranlarıyla ve daha düşük riskle yürütülebilir.
Ayrıntılı yapılandırmayı (CPU/GPU, konum, özel IP ve ısınma planı) kontrol etmeniz gerekiyorsa, hizmetlerde bulunan profesyonel barındırma ve yapılandırma seçeneklerinden yararlanabilir veya teknik ekiple iletişime geçebilirsiniz.





