DEV Community

Cover image for Flowise Nedir? LLM Uygulamaları ve Yapay Zeka Ajanları için Açık Kaynak Düşük Kod Platformu
Tobias Hoffmann
Tobias Hoffmann

Posted on • Originally published at apidog.com

Flowise Nedir? LLM Uygulamaları ve Yapay Zeka Ajanları için Açık Kaynak Düşük Kod Platformu

Python'da her bileşeni tek tek kodlamak yerine bir LLM uygulaması veya AI ajanı görsel olarak kurmak istiyorsanız, Flowise pratik bir seçenek sunar. Flowise; düğümleri sürükleyip bırakarak sohbet akışları, ajan akışları ve REST API üzerinden çağrılabilen AI iş akışları oluşturmanızı sağlayan açık kaynaklı, düşük kodlu bir araçtır. Bu rehberde Flowise'ın ne işe yaradığını, sohbet akışı ile ajan akışı arasındaki farkları, yerel/Docker dağıtımını ve tahmin API'sini nasıl test edeceğinizi adım adım ele alacağız. Kod-odaklı alternatifleri görmek isterseniz LangGraph yazımıza da bakabilirsiniz. Kaynak kod için projenin GitHub README'si iyi bir başlangıç noktasıdır.

Apidog'u bugün deneyin

Flowise Nedir?

Flowise, AI ajanları ve LLM iş akışları oluşturmak için kullanılan açık kaynaklı bir üretken AI geliştirme platformudur. Apache 2.0 lisansı altında yayınlanır; bu nedenle yerel makinenizde çalıştırabilir, kendi sunucunuzda barındırabilir veya projeyi çatallayabilirsiniz.

Flowise arayüzü

Flowise'ın temel modeli düğüm tabanlı bir tuvaldir. Her düğüm bir yapı taşını temsil eder:

  • Sohbet modeli
  • Vektör deposu
  • Belge yükleyici
  • Bellek modülü
  • Retriever
  • Araç
  • Özel fonksiyon

Bu düğümleri tuvale eklersiniz, bağlantılarla birbirine bağlarsınız ve veri akışını görsel olarak tanımlarsınız. Akış kaydedildiğinde Flowise bunu bir REST API olarak sunar.

Arka planda Flowise, LangChain ve LlamaIndex gibi çerçevelerden bileşenleri bağlar. Yani zincirler, ajanlar, vektör depoları ve sorgu motorları gibi kavramlar tanıdıktır. Fark şu: sınıfları içe aktarıp kod yazmak yerine, aynı yapıyı görsel olarak oluşturursunuz.

Sohbet Akışları, Ajan Akışları ve Asistanlar

Flowise'ta üç temel oluşturucu türü vardır. Doğru seçimi yapmak, akışın karmaşıklığını yönetmek için önemlidir.

Oluşturucu Türü En Uygun Kullanım Kapsam
Asistan Talimat izleyen, araç kullanan ve dosyalar üzerinde RAG yapan basit sohbet asistanları En dar, en yönlendirici
Sohbet Akışı Tek ajanlı sohbet robotları, RAG sistemleri ve daha basit LLM boru hatları Tek ajanlı
Ajan Akışı Dallanma, döngü, yönlendirme ve çok ajanlı orkestrasyon En geniş kapsam

Sohbet Akışı

Bir sohbet akışı, klasik Flowise kullanım modelidir. Tipik akış şöyledir:

  1. Kullanıcıdan soru alınır.
  2. Gerekirse belge veya vektör deposundan bağlam getirilir.
  3. LLM çağrılır.
  4. Yanıt kullanıcıya döndürülür.

Tek ajanlı sohbet botları, SSS botları ve RAG tabanlı asistanlar için genellikle yeterlidir.

Ajan Akışı

Ajan akışı daha karmaşık orkestrasyonlar içindir. Şunlara ihtiyaç duyuyorsanız ajan akışı kullanın:

  • Birden fazla ajan
  • Dallanma
  • Döngü
  • Karar verme
  • Araçlar arasında yönlendirme
  • İş devri yapan alt ajanlar

Flowise, ajan akışını sohbet akışı ve asistanın daha geniş kapsamlı hali olarak konumlandırır.

Asistan

Asistan, en hızlı başlangıç yoludur. Grafik yapısını detaylı düşünmeden:

  • Talimat verirsiniz.
  • Araç eklersiniz.
  • Dosya yüklersiniz.
  • RAG destekli bir sohbet asistanı oluşturursunuz.

Basit bir kullanım senaryosunu hızlıca test etmek için önce Asistan ile başlamak mantıklıdır.

Tuvalde Bir Akış Nasıl Kurulur?

Flowise'ta tipik bir sohbet akışı oluşturmak için şu adımları izleyebilirsiniz:

  1. Yeni bir sohbet akışı oluşturun.
  2. Sol panelden bir sohbet modeli düğümü ekleyin.
  3. OpenAI, Anthropic veya yerel model gibi sağlayıcıyı seçin.
  4. RAG gerekiyorsa belge yükleyici ve vektör deposu ekleyin.
  5. Konuşma geçmişi gerekiyorsa bellek düğümü ekleyin.
  6. Düğümlerin çıktılarını uygun girdilere bağlayın.
  7. Akışı kaydedin.
  8. Sohbet panelinden canlı test yapın.

Basit bir RAG akışı şu mantıkta çalışır:

Kullanıcı Sorusu
   ↓
Retriever
   ↓
İlgili Belgeler
   ↓
Prompt + Bağlam
   ↓
LLM
   ↓
Yanıt
Enter fullscreen mode Exit fullscreen mode

Flowise görsel düzenleyicisi yalnızca basit boru hatlarıyla sınırlı değildir. Şunları da destekler:

  • Özel kod düğümleri
  • İfadeler
  • Dallanma
  • Döngüler
  • Yönlendirme mantığı

Hazır düğüm yeterli değilse küçük bir özel fonksiyon düğümü yazıp akışın geri kalanını görsel tutabilirsiniz.

Flowise'ı Yerel Olarak Çalıştırma

Flowise varsayılan olarak 3000 numaralı portta çalışan bir Node uygulamasıdır.

En hızlı başlangıç için npm kullanabilirsiniz:

npm install -g flowise
npx flowise start

# Tarayıcıda açın:
# http://localhost:3000
Enter fullscreen mode Exit fullscreen mode

Tekrarlanabilir bir kurulum için Docker kullanabilirsiniz:

docker run -d --name flowise -p 3000:3000 flowiseai/flowise
Enter fullscreen mode Exit fullscreen mode

Ardından arayüze şu adresten erişirsiniz:

http://localhost:3000
Enter fullscreen mode Exit fullscreen mode

Flowise ayrıca kendi sunucunuzda barındırılan ve air-gapped dağıtımları da destekler. Verinin kurum ağınızdan çıkmaması gerekiyorsa kendi sunucunuzda çalıştırma yaklaşımı daha uygundur.

REST Tahmin Bitiş Noktasını Kullanma

Bir akışı kaydettiğinizde Flowise, bu akışı REST API olarak sunar. Resmi format için Flowise tahmin API belgelerine bakabilirsiniz.

Her sohbet akışı veya ajan akışı şu endpoint üzerinden çağrılır:

POST /api/v1/prediction/{id}
Enter fullscreen mode Exit fullscreen mode

Buradaki {id}, Flowise akışınızın kimliğidir.

Minimal istek örneği:

curl -X POST http://localhost:3000/api/v1/prediction/<akis-kimligi> \
  -H "Content-Type: application/json" \
  -d '{"question": "Mağaza saatleriniz nedir?"}'
Enter fullscreen mode Exit fullscreen mode

Tipik JSON gövdesi şu şekildedir:

{
  "question": "Mağaza saatleriniz nedir?"
}
Enter fullscreen mode Exit fullscreen mode

Flowise tahmin endpoint'i yalnızca question alanıyla sınırlı değildir. Kullanım senaryosuna göre şu alanları da gönderebilirsiniz:

  • streaming: Token'ları akış halinde almak için
  • overrideConfig: İstek bazında akış ayarlarını değiştirmek için
  • history: Önceki konuşma dönüşlerini beslemek için
  • uploads: Görsel veya ses gibi dosya girdileri için

Streaming açık olduğunda Flowise start, token, metadata ve son olarak end gibi olaylar yayar.

Bu endpoint, Flowise akışınız ile uygulamanız arasındaki ana sözleşmedir. Ön uç, arka uç veya başka servisler akışla bu API üzerinden konuşur. Bu yüzden akışı yalnızca tuvalde değil, API seviyesinde de test etmeniz gerekir.

Düşük Kod Ne Zaman Uygun?

Flowise özellikle şu durumlarda güçlüdür:

  • Hızlı prototip oluşturma
  • Dahili chatbot geliştirme
  • Belge tabanlı RAG asistanları
  • Demo ve proof-of-concept çalışmaları
  • Mühendis olmayan ekip üyelerinin de akışı anlayabilmesi

Görsel tuval, ajanın ne yaptığını ekip içinde açıklamayı kolaylaştırır. Bir Python dosyasını okumak yerine, modelin hangi veriye ve hangi araca bağlandığını doğrudan görebilirsiniz.

Kod-Odaklı Yaklaşım Ne Zaman Daha İyi?

Daha sıkı kontrol gerekiyorsa kod-odaklı çerçeveler daha uygundur. Örneğin:

  • Ajan mantığını Git üzerinde ayrıntılı diff'lerle sürümlendiriyorsanız
  • Her adım için yoğun birim testleri yazıyorsanız
  • Özel durum makineleri kuruyorsanız
  • Karmaşık araç çağrılarını kodla yönetmeniz gerekiyorsa

Bu durumlarda LangGraph, Google Ajan Geliştirme Kiti veya OpenAI Agents SDK gibi seçenekler daha fazla kontrol sağlar.

Pratik yaklaşım genellikle hibrittir:

  1. Flowise ile hızlı prototip oluşturun.
  2. Akışın doğru çalıştığını doğrulayın.
  3. Gereksinimler netleşirse kritik parçaları koda taşıyın.

Flowise bir oyuncak değildir; API, CLI, SDK, izleme, değerlendirme ve insan döngüde özellikleri sunar. Ancak mantığınız gerçek yazılıma ne kadar benzerse, kod-odaklı yığın o kadar avantajlı hale gelir.

Flowise Tahmin API'sini Test Etme

Flowise'ta oluşturduğunuz ajan, arkasındaki API'ler kadar güvenilirdir. Akış genellikle şunları çağırır:

  • LLM API'si
  • Araç API'leri
  • Dahili REST servisleri
  • Harici üçüncü taraf endpoint'leri

Bu parçalar üretimde hata verebilir. Bu nedenle tahmin endpoint'ini ve bağlı API'leri test etmek gerekir. Bunu Apidog ile yapabilirsiniz.

1. Tahmin Endpoint'ini REST API Gibi Tanımlayın

Flowise endpoint'inizi Apidog'da normal bir REST isteği olarak oluşturun:

POST http://localhost:3000/api/v1/prediction/<akis-kimligi>
Enter fullscreen mode Exit fullscreen mode

Header:

Content-Type: application/json
Enter fullscreen mode Exit fullscreen mode

Body:

{
  "question": "Mağaza saatleriniz nedir?"
}
Enter fullscreen mode Exit fullscreen mode

2. Yanıt İçin Assertion Yazın

Yanıt yapısını kontrol etmek için API onayları ekleyin.

Örneğin şu alanları doğrulayabilirsiniz:

  • HTTP durum kodu 200
  • Yanıt gövdesinin boş olmaması
  • Beklenen ana alanların bulunması
  • Yanıt tipinin beklenen formatta olması

Amaç, Flowise tuvalinde yapılan bir değişikliğin uygulama sözleşmesini bozup bozmadığını erken yakalamaktır.

3. LLM ve Araç API'lerini Ayrı Test Edin

Flowise akışının çağırdığı temel API'leri doğrudan test edin:

  • LLM sağlayıcı endpoint'i
  • Dahili araç API'si
  • Üçüncü taraf servis endpoint'i

Böylece sorun Flowise akışında mı, model sağlayıcısında mı, yoksa harici araçta mı daha hızlı ayırt edilir.

4. Mock API ile Belirleyici Testler Kurun

LLM çağrıları maliyetli, değişken veya hız limitine bağlı olabilir. Geliştirme sırasında akışı gerçek LLM yerine önceden hazırlanmış yanıtlar döndüren bir mock API'ye yönlendirebilirsiniz.

Aynı yaklaşım kararsız üçüncü taraf API'leri için de çalışır:

  1. Gerçek endpoint'in yanıt şeklini modelleyin.
  2. Apidog'da mock yanıt oluşturun.
  3. Flowise akışını mock endpoint'e bağlayın.
  4. Akışın beklenen veri şeklini işlediğini doğrulayın.

Daha kapsamlı bir yaklaşım için AI ajan test donanımı rehberimize bakabilirsiniz.

5. Ortam Bazlı Anahtarları Ayırın

Apidog ile sağlayıcı anahtarlarını ortama göre yönetebilirsiniz:

  • Geliştirme ortamı: test anahtarı
  • Staging ortamı: sınırlı erişimli anahtar
  • Üretim ortamı: gerçek anahtar

Böylece kod veya istek yapısını değiştirmeden farklı ortamlar arasında geçiş yapabilirsiniz. Apidog'u indirip bu akışı birkaç dakika içinde kurabilirsiniz.

Sıkça Sorulan Sorular

Flowise ücretsiz ve açık kaynaklı mı?

Evet. Flowise, Apache 2.0 lisansı altında açık kaynaklıdır. npm veya Docker ile kendi sunucunuzda ücretsiz çalıştırabilirsiniz. Altyapı yönetmek istemiyorsanız barındırılan bulut seçeneği de vardır. Özel veya air-gapped kurulumlar için kendi sunucunuzda barındırma yaklaşımı veriyi ağınız içinde tutar.

Flowise LangChain kullanıyor mu?

Evet. Flowise hem LangChain hem de LlamaIndex'ten bileşenleri bağlar. Tuvaldeki düğümler zincirler, ajanlar, vektör depoları, retriever'lar ve sorgu motorları gibi tanıdık kavramlara karşılık gelir.

Sohbet akışı ile ajan akışı arasındaki fark nedir?

Sohbet akışı, tek ajanlı sistemler ve daha basit LLM boru hatları için uygundur. Ajan akışı ise dallanma, döngü, yönlendirme ve çok ajanlı orkestrasyon gerektiren daha karmaşık yapılar içindir. Basit bir asistan için sohbet akışıyla başlayın; birden fazla ajanın koordine olması gerekiyorsa ajan akışına geçin.

Bir Flowise akışının API'sini nasıl test ederim?

POST /api/v1/prediction/{id} endpoint'ini question alanı içeren bir JSON gövdesiyle çağırın. Bunu curl, resmi SDK'lar veya Apidog ile yapabilirsiniz. Apidog'da isteği tanımlayabilir, yanıt için assertion yazabilir, LLM ve araç API'lerini mock'layabilir ve testleri CI içinde çalıştırabilirsiniz. LLM endpoint'lerine özel kimlik doğrulama ve akış detayları için ChatGPT API'sini Apidog ile test etme rehberine bakabilirsiniz.

Özet

Flowise, LLM uygulamaları ve AI ajanları için düşük kodlu bir geliştirme yoludur. Düğüm tabanlı tuvalde sohbet akışları, ajan akışları veya asistanlar oluşturur; ardından bunları REST tahmin endpoint'i üzerinden uygulamanıza bağlarsınız.

Hızlı prototipler, ekip tarafından okunabilir akışlar ve RAG tabanlı chatbot'lar için güçlü bir seçenektir. Daha sıkı test, sürümleme ve kontrol gerektiğinde kod-odaklı çerçeveler daha uygun olabilir.

Hangi yaklaşımı seçerseniz seçin, Flowise akışınız çağırdığı API'ler kadar sağlamdır. Tahmin endpoint'ini test edin, LLM ve araç API'lerini mock'layın ve akış değişikliklerini üretime gitmeden önce yakalayın.

Top comments (0)