Müşteri Yorumlarını AI ile Otomatik Sınıflandırma (n8n Tarifi)

AgentRoost · April 12, 2026 · 5 dk okuma · Markdown olarak görüntüle
AgentRoost — AI & LLM How-To

Günde onlarca, belki yüzlerce yorum geliyor: destek formu, uygulama mağazası incelemesi, anket yanıtı, e-posta. Bunları okuyup "bu şikayet mi, öneri mi, acil mi?" diye manuel seçmek hem zaman alıyor hem de gözden kaçma riski yaratıyor. Bir n8n akışıyla her mesajı saniyeler içinde duygu + kategori + aciliyet etiketiyle çıkartabilirsiniz. Bu yazıda bu akışı sıfırdan kuruyoruz.


Ne İnşa Ediyoruz?

Akış üç şeyi yapıyor:

  1. Tetikleyici: Yeni bir yorum/mesaj geldiğinde devreye girer (webhook, Google Sheets satırı veya zamanlı toplu çekim).
  2. LLM Düğümü: Metni bir AI modeline gönderir; yapılandırılmış JSON çıktısı alır.
  3. Yönlendirme: Çıktıya göre Slack'e bildirim atar, e-tabloya yazar veya CRM'yi günceller.

Sonuç: manuel triyaj sıfır, her şey etiketli ve aranabilir.


Adım 1 — Tetikleyiciyi Seçin

Kaynağınıza göre üç seçenek var:

A) Webhook (gerçek zamanlı)

Webhook düğümü ekleyin. n8n size https://<id>.agentroost.app/webhook/xxx gibi kamuya açık bir HTTPS adresi verir. Formunuzun ya da uygulamanızın bu adrese POST atmasını sağlayın:

{
  "source": "app_store",
  "text": "Uygulama sürekli çöküyor, inanılmaz sinir bozucu.",
  "customer_id": "u-4821"
}

B) Google Sheets'ten Toplu Çekim

Schedule Trigger düğümü (örn. Her gün 08:00) + ardından Google Sheets → Get Rows düğümü. processed sütunu boş olan satırları filtreleyin.

C) E-posta Gelen Kutusu

Email Trigger (IMAP) düğümüyle destek posta kutusunu dinleyin. Subject + Text alanlarını bir araya getirip LLM'e gönderin.


Adım 2 — AI/LLM Düğümünü Yapılandırın

n8n'de AI Agent veya doğrudan LLM düğümü ekleyin. AgentRoost'ta bu düğümlerin model seçeneği zaten dolu gelir; API anahtarı girmeniz gerekmez — dahili krediler devrede.

Model Seçimi

Sınıflandırma görevi için büyük modeller genellikle gereksiz. Düşük maliyetli seçenekler yeterince güvenilir:

Model Güçlü Yanı
mistral-small-latest Hızlı, ucuz, Türkçe yeterli
gemini-flash-1.5 Çok yüksek token limiti, detaylı metinler için
gpt-4o-mini Güçlü talimat takibi, uygun fiyat

350'den fazla model arasından seçim yapabilir, planınızı değiştirmeden istediğiniz zaman model geçişi yapabilirsiniz.

Sistem Mesajı (Prompt)

Sen bir müşteri geri bildirimi sınıflandırma asistanısın.
Verilen metni analiz edip YALNIZCA aşağıdaki JSON yapısında yanıt ver.
Açıklama, yorum veya markdown ekleme.

Çıktı şeması:
{
  "sentiment": "positive" | "neutral" | "negative",
  "category": "bug" | "feature_request" | "billing" | "praise" | "other",
  "urgency": "low" | "medium" | "high",
  "summary": "<max 20 kelime>"
}

Kullanıcı Mesajı (Dinamik)

n8n'de Expression kullanarak tetikleyiciden gelen metni bağlayın:

{{ $json.text }}

Adım 3 — JSON Çıktısını Güvenilir Kılın

LLM'ler zaman zaman JSON dışında metin ekleyebilir. Bunu önlemek için iki yöntem:

Yöntem 1 — Output Parser (n8n yerleşik)
LLM düğümünüzün çıktısına Structured Output Parser ekleyin. JSON Schema tanımlayın:

{
  "type": "object",
  "properties": {
    "sentiment": { "type": "string", "enum": ["positive", "neutral", "negative"] },
    "category":  { "type": "string", "enum": ["bug", "feature_request", "billing", "praise", "other"] },
    "urgency":   { "type": "string", "enum": ["low", "medium", "high"] },
    "summary":   { "type": "string" }
  },
  "required": ["sentiment", "category", "urgency", "summary"]
}

Bu parser, model geçersiz JSON döndürürse otomatik yeniden dener.

Yöntem 2 — Code Düğümüyle Manuel Parse
Daha eski n8n sürümleri veya parser desteklemeyen modeller için Code düğümü ekleyin:

const raw = $input.first().json.text;
const match = raw.match(/\{[\s\S]*\}/);
if (!match) throw new Error("JSON bulunamadı: " + raw);
return [{ json: JSON.parse(match[0]) }];

Adım 4 — IF Düğümüyle Yönlendirin

IF düğümü ekleyerek aciliyete göre dallandırın:

  • urgency === "high"Slack düğümü: #support-urgent kanalına anında bildirim
  • urgency !== "high"Google Sheets düğümü: etiketlerle birlikte satır ekle

Slack mesajı şablonu:

🚨 *Acil Geri Bildirim*
Kaynak: {{ $json.source }}
Duygu: {{ $json.sentiment }}
Kategori: {{ $json.category }}
Özet: {{ $json.summary }}

İsterseniz urgency === "high" AND sentiment === "negative" kombinasyonu için CRM'de otomatik destek talebi açan bir dal daha ekleyebilirsiniz.


Adım 5 — Test Edin

Webhook tabanlı akışınızı test etmek için n8n editörünün sol üst köşesindeki "Test workflow" butonuna basın, ardından terminalde:

curl -X POST https://<id>.agentroost.app/webhook/musteri-yorum \
  -H "Content-Type: application/json" \
  -d '{"source":"web_form","text":"Ödeme sayfası hata veriyor, sipariş veremedim."}'

Beklenen çıktı:

{
  "sentiment": "negative",
  "category": "bug",
  "urgency": "high",
  "summary": "Ödeme sayfasında hata nedeniyle sipariş tamamlanamıyor"
}

Yaygın Tuzaklar

Kategori listesini küçük tutun. 10'dan fazla kategori tanımladığınızda model kararsız kalır ve "other" oranı artar. Önce 5-6 ile başlayın, gerçek veriden genişletin.

Dili açıkça belirtin. Türkçe metinler için prompt'a "Metin Türkçe olabilir, bu durumda da aynı JSON yapısını kullan" ekleyin.

Çok kısa metinlere dikkat. "Kötü" gibi tek kelimelik yorumlar için model urgency: low atayabilir ama bağlam yoktur. Bu durumları filtrelemek için bir IF dalı ekleyin: text.length < 10 → doğrudan "belirsiz" etiketiyle kaydet.


AgentRoost'ta Bu Akışı Kurmak

Kendi n8n instance'ınızı birkaç dakikada başlatabilirsiniz:

  1. AgentRoost'a kaydolun (e-posta, Google, Microsoft veya Discord ile).
  2. n8n framework'ünü seçin, instance'ınıza bir isim verin.
  3. https://<sizin-id>.agentroost.app adresiniz açılır — bu sizin özel n8n editörünüz, kimseyle paylaşılmaz; siz yönetirsiniz.
  4. Yukarıdaki akışı kurun. LLM düğümündeki model seçeneği önceden dolu gelir; AI kredileri planınıza dahil, ayrıca API anahtarı girmenize gerek yok.

Aylık $19,99'dan başlayan fiyatlarla, 14 gün para iade garantisi, dilediğinizde iptal. Planları karşılaştırın.

Akışı devre dışı bıraktığınızda instance silinmez — webhook'larınız çalışmaya devam eder; istediğinizde tekrar etkinleştirebilirsiniz.


Özet

Birkaç düğümle kurduğunuz bu akış:

  • Her yeni yorumu otomatik olarak duygu, kategori ve aciliyet etiketiyle damgalar
  • Yüksek aciliyetli bildirimleri Slack'e anında iletir
  • Düşük öncelikli olanları bir tabloya yazar, toplu analiz için hazır tutar
  • Haftalık binlerce mesajı manuel okumadan işleyebilir

Manuel triyajın tek kırılgan noktası "gözden kaçan mesaj"dır. Bu akış o riski kaldırır.

Sıkça sorulan sorular

Bu akış için hangi AI modelini kullanmalıyım?

Sınıflandırma için büyük modeller genellikle gereksiz. mistral-small-latest, gemini-flash-1.5 veya gpt-4o-mini başlangıç için idealdir — hızlı, ucuz ve Türkçe metinlerde yeterince güvenilir. AgentRoost'ta 350'den fazla model arasından seçim yapabilir, planınızı değiştirmeden model geçişi yapabilirsiniz.

LLM zaman zaman geçersiz JSON döndürüyor, ne yapmalıyım?

n8n'nin Structured Output Parser'ını kullanın: JSON Schema tanımlayın, parser geçersiz yanıtta otomatik yeniden dener. Alternatif olarak Code düğümünde regex ile JSON bloğunu ayıklayabilirsiniz. Prompt'a 'YALNIZCA JSON döndür, açıklama ekleme' ifadesi de başarı oranını önemli ölçüde artırır.

AgentRoost'ta n8n kullanmak için ayrıca API anahtarı almam gerekiyor mu?

Hayır. AgentRoost planlarında AI/LLM kredileri dahildir; n8n'deki AI ve LLM düğümleri bu kredilerle çalışır. OpenAI, Anthropic veya başka bir sağlayıcıdan ayrıca API anahtarı almanıza gerek yok.

Akışı durdurmak istesem verilerim ne olur?

Akışı devre dışı bırakmak instance'ı silmez; tüm workflow'larınız, çalışma geçmişiniz ve bağlantılarınız korunur. İstediğinizde tekrar etkinleştirebilirsiniz. Aboneliği iptal etmeden önce n8n'nin yerleşik dışa aktarma özelliğiyle workflow'larınızı JSON olarak indirebilirsiniz.

Günde kaç mesaj işleyebilirim?

Limit, planınızdaki dahili AI kredisi miktarına ve n8n instance kaynaklarına bağlıdır. Sınıflandırma gibi kısa giriş/çıkış gerektiren görevler token açısından oldukça verimlidir; düşük maliyetli modeller seçildiğinde aynı kredi bütçesiyle çok daha fazla mesaj işlenebilir. Kullanımınız dahili kredileri aşarsa daha üst bir plana geçebilirsiniz.