Ana içeriğe geç

Bir Akış Nasıl Çalışır

Bir akış yürütüldüğünde ne olduğunu anlamak, beklediğiniz gibi davranan akışlar oluşturmanıza yardımcı olur. Bu sayfa, tek bir çalışmayı — baştan sona — ve bilginin yol boyunca nasıl aktığını adım adım anlatır.

Bir "tur"

Bir tur, bir şeyin olmasıyla tetiklenen, akışınızın tek bir çalışmasıdır: bir müşteri bir mesaj gönderir, bir form gönderilir, bir webhook tetiklenir ya da bir zamanlama tıklar. Her tur:

  1. Başlangıç node'unda başlar.
  2. Bağlantıları node'dan node'a takip eder.
  3. Kendisinden sonra hiçbir şey bağlı olmayan bir node'a ulaştığında sona erer (genellikle bir Doğrudan Yanıt ya da bir Agent).

Müşterinin gönderdiği bir sonraki mesaj yeni bir tur başlatır — aynı akışın taze bir çalışması.

Doğrusal bir akıştan geçen tek bir tur

Node sırası

Flowera, node'ları onları bağladığınız sırayla çalıştırır. Her node işini bitirir, sonucunu çizgi boyunca bir sonraki node'a devreder ve bu böyle sürer. Bir node yalnızca kendisinden önceki node tamamlandıktan sonra çalışır — bu yüzden sonraki bir node, önceki bir node'un çıktısını güvenle kullanabilir.

Değişken paletinin size yalnızca düzenlediğiniz node'dan önce çalışan node'ların çıktılarını sunmasının nedeni budur: turun o noktasında yalnızca bu sonuçlar mevcuttur. Bkz. Değişkenler.

Dallanma

Çoğu node'un tek bir çıkışı vardır ve turu doğrudan iletir. Ancak dört node'un birden fazla çıkışı vardır ve bu, bir turun ne olduğuna bağlı olarak farklı yollar izlemesine olanak tanır. Yalnızca eşleşen dal takip edilir — diğerleri o tur için atlanır.

NodeDallarDalın nasıl seçildiği
KoşulKural başına bir dal + sonda bir ElseKurallarınızı yukarıdan aşağıya kontrol eder ve eşleşen ilk kuralı alır (eşittir, içerir vb.); hiçbiri eşleşmezse Else
Koşullu AgentTanımladığınız her senaryo için bir dalBir yapay zeka modeli mesajı okur ve eşleşen senaryoyu seçer
İnsan GirişiDevam Et / ReddetBir kişinin onaylayıp onaylamadığı ya da reddedip reddetmediği
FiltreTrue / False (sabit)Mesajın filtre koşulunu geçip geçmediği
Koşullu Agent'ın otomatik bir "else"i yoktur

Bir Koşullu Agent, yazdığınız her senaryo için tam olarak bir dal üretir — yerleşik bir yakalayıcı (catch-all) yoktur. Bir mesaj hiçbir senaryoyla eşleşmezse, o tur sessizce düşürülür. Geri kalan her şeyi yakalamak için her zaman açık bir "Other" ya da "default" senaryosu ekleyin.

Bir karar node'unda iki yola dallanan bir akış

Çalışma boyunca akan state

Bir tur çalışırken, node'lar flow state'i okuyabilir ve yazabilir — tüm akış boyunca ilerleyen adlandırılmış değerler kümesi (örneğin name ya da orderId). Bir node bir değeri kaydedebilir; sonraki bir node onu {{$flow.state.<key>}} ile geri okuyabilir.

Akış Değişkenlerini Kalıcı Yap açıksa (varsayılan), bu state aynı sohbet için turlar arasında da varlığını sürdürür — böylece bu tur kaydedilen bir değer bir sonraki turda hâlâ oradadır. Tüm hikaye için Flow state ve Bellek sayfalarına bakın.

Turla birlikte başka bilgiler de ilerler:

  • Kullanıcının mesajı{{$question}}
  • Sohbet geçmişi{{$chat_history}} (bellek etkinken)
  • Yüklenen dosyalar{{$uploads}} (yalnızca bu tur gönderilen dosyalar; bkz. Yüklemeler ve dosyalar)
  • Webhook yükü (payload) — kanal ve özel webhook tetikleyicileri için {{$webhook.<name>.<field>}}

Çıktıyı Sohbette Göster

Bir sonuç üretmek ile onu söylemek iki ayrı şeydir. Çoğu node'da, o node'un sonucunun ziyaretçiye bir sohbet mesajı olarak gönderilip gönderilmeyeceğine karar veren bir Çıktıyı Sohbette Göster anahtarı vardır (Ek Parametreler altında).

Bu anahtar akışın kendisini hiçbir zaman etkilemez. Kapalı olan bir node yine çalışır, çıktısını yine üretir ve sonraki node'lar o çıktıyı label'ıyla yine okuyabilir ({{ Agent }}, {{ Retriever }}, …) — yalnızca konuşmaz.

Varsayılanlar node'a göre değişir, çünkü node'ların çoğu çalışma adımıdır ve yalnızca birkaçı konuşmak için tasarlanmıştır:

VarsayılanNode'lar
AçıkAgent, LLM, Doğrudan Yanıt, Araç, İnsan Girişi
KapalıHTTP, Bilgi Getirici, Özel Fonksiyon, Koşul, Koşullu Agent, Filtre, Döngü, İterasyon, Akış Çalıştır

Başlangıç, Bekle ve Yapışkan Not node'larında böyle bir anahtar yoktur — bunlar sohbete hiçbir zaman mesaj göndermez.

Yinelenen yanıt tuzağı

İnsanların en sık takıldığı durum: bir Agent'ın ardından gelen bir Doğrudan Yanıt.

Agent'ın anahtarı varsayılan olarak açıktır, dolayısıyla yanıtını gönderir. Ardından Doğrudan Yanıt aynı metni bir kez daha gönderir — ve ziyaretçi yanıtı iki kez görür.

Hangi node'un konuşacağına karar verin ve diğerini susturun:

  • Doğrudan Yanıt konuşsun — Agent'ta Çıktıyı Sohbette Göster'i kapatın. Düşünme ile yanıtlama arasına adım eklemek ya da yanıtın etrafına sabit bir metin sarmak istediğinizde tercih edilir.
  • Agent konuşsun — Doğrudan Yanıt node'unu tamamen kaldırın. Agent'ın yanıtı zaten gönderilecek yanıtsa en basiti budur.

Aynı durum, bir Doğrudan Yanıt'ı besleyen LLM node'u için de geçerlidir.

Nasıl fark edilir

Bir sohbette her bot yanıtı iki kez görünüyorsa, sebebi neredeyse her zaman budur. Çalıştırmalar sayfasını açıp hangi node'ların mesaj gönderdiğine bakın.

Bir çalışmayı izleme

Her tur kaydedilir. Bir turun izlediği tam yolu, her node'un ne aldığını ve ne ürettiğini görmek için Çalıştırmalar sayfasını açın. Beklediğiniz gibi davranmayan bir akışta hata ayıklamak için en iyi yer burasıdır.

İlgili