Flowise, düşük kodlu ve iş akışı tabanlı bir araç kullanarak bir CSV veri kümesine dayalı soruları yanıtlayan bir yapay zeka aracısı nasıl oluşturulur, öğrenin.
Bu yazıda, bir CSV veri kümesine dayalı soruları yanıtlayabilen bir yapay zeka aracısını Flowise kullanarak adım adım nasıl oluşturacağınızı açıklayacağım.
Flowise, karmaşık kodlarla uğraşmadan yapay zeka aracısı geliştirmek isteyenler için kullanışlı bir araçtır. Düşük kod yaklaşımı sayesinde teknik ayrıntılar yerine asıl göreve odaklanmamıza olanak tanır.
Son zamanlarda, yapay zeka aracısı oluşturmak için tasarlanan araçlarda bir artış görüyorum. Bu araçlar daha erişilebilir ve kullanıcı dostu hale geldi; kapsamlı teknik beceriler gerektirmeden akıllı sistemler oluşturmayı mümkün kılıyor. Bu araçlar hakkında daha fazlasını keşfetmek isterseniz, şu eğitimlere de göz atın:
Flowise, sürükle-bırak arayüzüyle yapay zeka aracıları oluşturmamıza yardımcı olmak için tasarlanmış bir araçtır. Çeşitli işlevleri temsil eden farklı blokları birbirine bağlayarak özelleştirilmiş bir iş akışı oluşturmamıza olanak tanır. Her bir blok belirli bir eylemi gerçekleştirecek şekilde yapılandırılabilir.
Örneğin, büyük dil modeline mesaj göndermek için kullanılan LLM blokları vardır. Ayrıca, özel JavaScript fonksiyonları çalıştırmamıza imkân tanıyan ve daha da özelleştirilmiş işlemler yapabilen fonksiyon blokları da bulunur.
Bu blokları birbirine bağladığımızda, bilgi bir bloktan diğerine akar; veriler adım adım işlenir ve dönüştürülür. Bu modüler yaklaşım, iş akışını tasarlamaya ve gerekli eylemleri yapılandırmaya odaklanmamıza imkân tanıdığı için, derin programlama bilgisi olmadan da yapay zeka aracısı oluşturmayı kolaylaştırır.
Flowise ile Veri Analisti Bir Yapay Zeka Aracısı Oluşturma
Flowise kullanarak bir veri analisti yapay zeka aracısı oluşturma sürecini adım adım inceleyelim. Bu rehber, Flowise’a kaydolmayı, özel bir iş akışı kurmayı ve veri kümelerini analiz edebilen etkileşimli bir aracı oluşturmak için çeşitli blokları kullanmayı kapsar.
Adım 1: Flowise üzerinde bir hesap oluşturun
Öncelikle Flowise kayıt sayfasını ziyaret ederek bir hesap oluşturun. Gerekli bilgileri doldurun ve hesabınızı doğrulayıp etkinleştirmek için e-posta ile gönderilen talimatları izleyin.
Adım 2: Veritabanı kurulumu
Flowise hesabımız hazır olduğuna göre, kullanacağımız veritabanını kurma zamanı. Analiz etmek istediğimiz verileri saklamak için bir veritabanına ihtiyacımız var.
Verilerimizi yönetmek için popüler ve kullanıcı dostu bir SQL veritabanı sağlayıcısı olan SingleStore’u kullanacağız. Şu adımları izleyelim:
Aktif bir SingleStore hesabınızla, bir sonraki adım çalışacağımız veri kümesini yüklemektir. Bu örnekte, öğrencilerin sosyal medya alışkanlıklarına odaklanan ve Kaggle üzerinde bulunan bir veri kümesini kullanıyoruz. Kaggle’dan veri kümesi dosyasını indirdiğinizden ve SingleStore’a yüklediğinizden emin olun.
Veri kümesi yüklendikten sonra, SingleStore bundan otomatik olarak bir veritabanı tablosu oluşturacaktır. Bu tablo, veri analizimizin temelini oluşturacak ve Flowise yapay zeka aracımızın etkileşim kurması için verileri hazır hale getirecektir.
Adım 3: Chatflows bölümüne gidin
Oturum açtıktan sonra gösterge panosuna gidin ve "Chatflows" bölümünü bulun. Yeni bir iş akışı oluşturmaya başlamak için "Add New" seçeneğine tıklayın.
Adım 4: Tablo bilgisini yüklemek için özel bir fonksiyon oluşturun
Bu adımda, tablonun açıklaması ve sütun adları gibi bilgileri almak için özel bir fonksiyon yazacağız. Bu veriler, aracımızın sorgulayacağı veri kümesinin yapısını anlaması açısından kritik öneme sahiptir.
Özel bir fonksiyon bloğu oluşturun.
Aşağıdaki kodu fonksiyon bloğu düzenleyicisine yapıştırın:
İlk kısım, benim örneğimde françois-19ecc, kullanıcı adıdır. Hemen ardından şifre için bir yer tutucu olan <françois-19ecc Password> gelir ve bunu gerçek şifreyle değiştirmemiz gerekir.
Bu fonksiyon SingleStore veritabanına bağlanır ve tabloya ait sütun bilgilerini alır. İki girdisi vardır:
tableName: Tablonun adı
tableDescription: Tablonun açıklaması.
Bunlar, özel kod düğümündeki “Input Variables” düğmesine tıklanarak yapılandırılmalıdır. Değişkenlere, adlarının başına $ eklenerek kod içinde erişilebilir.
Benim durumumda, tablo SingleStore üzerinde oluşturulduğunda dataset olarak adlandırıldı. Siz CSV dosyasını yüklerken belirlediğiniz adı kullanmalısınız.
Adım 5: Bir prompt şablonu düğümü oluşturun
Bu düğüm, aracımıza yol gösterecek soruları oluşturduğumuz yerdir. Bu düğümü özel fonksiyonunuza bağlayın.
Bir prompt şablonu düğümü oluşturun.
Şu promptu ekleyin:
Based on the SQL table information and the user's questions, return a SQL query that answers that question.
TABLE INFORMATION: {tableInformation}
QUESTION: {question}Altyapı:
Prompt iki yer tutucuya sahiptir: {tableInformation} ve {question}. question kullanıcı tarafından gönderilen prompttur, tableInformation ise önceki adımda tanımladığımız fonksiyonun çıktısıdır.
Bu yer tutucuların değerleri, prompt şablonu düğümündeki “Format Prompt Values” düğmesine tıklanarak yapılandırılmalıdır.
Adım 6: Bir LLM chain bloğuna bağlayın
Şimdi, prompt şablonu düğümünü bir LLM chain bloğuna bağlayacağız; bu blok promptu yorumlayarak ondan bir SQL sorgusu üretecek. İzlememiz gereken adımlar şunlardır:
Bir LLM chain bloğu ekleyin.
OpenAI kullanacak şekilde yapılandırılmış bir model bloğu ekleyin ve bunu LLM chain bloğunun “Language Model” girişine bağlayın.
OpenAI modelini yapılandırmak için bir OpenAI API anahtarı ayarlamanız gerekir. Eğer yoksa, buradan oluşturabilirsiniz.
Oluşturulan SQL sorgusunu daha sonra kullanmak üzere saklamak için bir set variable bloğu oluşturun ve bunu LLM chain bloğunun çıktısına bağlayın.
Adım 8: SQL sorgusunu çalıştırın
SQL sorgusunu veritabanında çalıştırmak için yeni bir özel kod bloğuna gönderin.
Başka bir özel kod bloğu oluşturun.
Şu kodu girin:
const mysql =require('mysql2/promise');const connectionUrl ="<PASTE_THE_SAME_URL_USED_BEFORE>";functionformatQuery(){// This function is used to clean the query provided by ChatGPT // by removing markdown quotesconst q = $query;let lines = q.trim().split(/\r\n|\r|\n/);if(lines[0].startsWith("")){
lines = lines.slice(1, lines.length -1);}return lines.join("\n").trim()}const q =formatQuery();try{const pool = mysql.createPool(connectionUrl);const[rows]=await pool.query(q);return rows;}catch(error){returnQuery: ${q}\nError:${String(error)}`
}Altyapı:
connectionUrl değerini ayarlamayı unutmayın. Daha önce kullandığımızın aynısıdır.
Bu fonksiyonun tek bir girdisi vardır: çalıştırmak istediğimiz sorgu. Koda $query kullanılarak erişilir.
Adım 9: Başka bir prompt şablonu oluşturun
Bu şablon, sorgu sonuçlarına dayanarak yapay zeka aracısının kullanıcıya sunacağı yanıtı biçimlendirmek için kullanılır.
Yeni bir prompt şablonu oluşturun.
Şu promptu kullanın:
Based on the question and the query result, provide an answer to the user's question. Always show the query to the user.
QUERY: {query}
QUERY RESULT: {queryResult}
QUESTION: {question}Altyapı:
Bu prompt üç yer tutucuya sahiptir:
query: LLM tarafından üretilen SQL sorgusu; değişken düğümü bağlanarak elde edilir.
queryResult: Önceki özel fonksiyon düğümü tarafından hesaplanan sorgu sonucu.
question: Başlangıçtaki kullanıcı promptu.
Adım 10: Son LLM chain bloğu
Son olarak, bu prompt şablonunu yeni bir LLM chain bloğuna bağlayın; bu blok promptu kullanarak yanıtı oluşturacaktır. Daha önce kullanılan aynı OpenAI model bloğuna bağlayabilirsiniz.
İşte nihai aracı akışı:
Bu adımlar tamamlandığında aracımız hazırdır. Soruları alabilir, ilgili verileri getirmek için SQL sorguları üretebilir ve net, öz yanıtlar sunabilir.
Veri Analisti Aracısıyla Sohbet Etme
Aracı artık kullanıma hazır. Onunla sohbet etmek için sağ üst köşedeki mor sohbet düğmesine tıklayın:
Anketin kaç yanıt aldığını sorarak test edelim:
Dikkat ederseniz, son promptun tasarım şekli nedeniyle aracı yanıtında sorguyu da gösteriyor. Veriler hakkında bazı istatistikler soralım:
Bir başka örnek daha:
Flowise Hakkındaki Düşüncelerim
Birçok yapay zeka aracısı geliştirme aracını denedikten sonra, Flowise ile yaşadığım deneyim bir ölçüde hayal kırıklığı yarattı. Sıkça karşılaştığım sorunlardan biri, bazı değişken yapılandırmalarını yanlışlıkla silmem ve bunun sonucunda aracının nedenini açıkça anlayamadığım biçimde tutarsız davranmasıydı. Bu durum, sorun gidermeyi çoğu zaman zahmetli hale getirdi.
Ayrıca, Flowise’ın aracı akışları için net bir başlangıç noktası olmaması, aracının nasıl çalıştığını takip etmeyi ve anlamayı zorlaştırıyor. Bu, özellikle yapay zeka sistemleri geliştirmeye yeni başlayanlar için göz korkutucu olabilir. Ek olarak, Flowise ara sonuçları kolayca görüntüleme veya düğümleri tek başına test etme konusunda yetersiz kalıyor. Bu da sorunları tespit etmeyi veya iş akışını etkin bir şekilde iyileştirmeyi zorlaştırıyor.
Düğümlerin yapılandırmalarını bir bakışta görmekte de zorlandım. Örneğin, kullandığımız özel kod düğümleri girdi değişkenleri tanımlıyordu, ancak bunun böyle olduğu görünür durumda değil. Bunu görmek için düğümün o bölümüne tıklamamız gerekiyor. Bu da akışı yalnızca bakarak anlamayı güçleştiriyor.
Sonuç
Flowise, yapay zeka aracıları oluşturmak için umut verici bir düşük kod arayüzü sunsa da, benzer araçlara kıyasla kullanımı zorlaştıran birkaç kullanılabilirlik sorunu barındırıyor; özellikle daha akıcı ve sezgisel bir deneyim arayanlar için. Bu zorluklara rağmen, Flowise’ın konsepti potansiyel taşıyor ve bazı iyileştirmelerle yapay zeka çözümleri geliştirmek için harika bir araca dönüşebilir.
CheapGPT’te full-stack mühendisi ve kurucuyum. Öğretmek her zaman tutkum oldu. Öğrencilik yıllarımdan itibaren diğer öğrencilere ders verme ve yardımcı olma fırsatlarını hevesle aradım. Bu tutku beni doktora yapmaya yönlendirdi; bu süreçte akademik çalışmalarımı desteklemek için araştırma görevlisi olarak da görev aldım. O yıllarda, geleneksel sınıf ortamında bağlar kurmaktan ve öğrenmeyi kolaylaştırmaktan büyük bir tatmin duydum. Ancak çevrim içi öğrenme platformlarının ortaya çıkmasıyla birlikte dijital eğitimin dönüştürücü potansiyelini fark ettim. Nitekim üniversitemizde bu tür bir platformun geliştirilmesinde aktif rol aldım. Geleneksel öğretim ilkelerini yenilikçi dijital yöntemlerle bütünleştirmeye derinden bağlıyım. Tutkum, yalnızca ilgi çekici ve bilgilendirici olmakla kalmayan, aynı zamanda bu dijital çağdaki öğrenenler için erişilebilir kurslar tasarlamaktır.
Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
OpenAI API, Hugging Face ve LangChain dahil olmak üzere en yeni yapay zeka geliştirici araçlarıyla yapay zeka destekli uygulamalar oluşturmayı öğrenin.
Bu yazıda, bir CSV veri kümesine dayalı soruları yanıtlayabilen bir yapay zeka aracısını Flowise kullanarak adım adım nasıl oluşturacağınızı açıklayacağım.
Flowise, karmaşık kodlarla uğraşmadan yapay zeka aracısı geliştirmek isteyenler için kullanışlı bir araçtır. Düşük kod yaklaşımı sayesinde teknik ayrıntılar yerine asıl göreve odaklanmamıza olanak tanır.
Son zamanlarda, yapay zeka aracısı oluşturmak için tasarlanan araçlarda bir artış görüyorum. Bu araçlar daha erişilebilir ve kullanıcı dostu hale geldi; kapsamlı teknik beceriler gerektirmeden akıllı sistemler oluşturmayı mümkün kılıyor. Bu araçlar hakkında daha fazlasını keşfetmek isterseniz, şu eğitimlere de göz atın:
Flowise Nedir?
Flowise, sürükle-bırak arayüzüyle yapay zeka aracıları oluşturmamıza yardımcı olmak için tasarlanmış bir araçtır. Çeşitli işlevleri temsil eden farklı blokları birbirine bağlayarak özelleştirilmiş bir iş akışı oluşturmamıza olanak tanır. Her bir blok belirli bir eylemi gerçekleştirecek şekilde yapılandırılabilir.
Örneğin, büyük dil modeline mesaj göndermek için kullanılan LLM blokları vardır. Ayrıca, özel JavaScript fonksiyonları çalıştırmamıza imkân tanıyan ve daha da özelleştirilmiş işlemler yapabilen fonksiyon blokları da bulunur.
Bu blokları birbirine bağladığımızda, bilgi bir bloktan diğerine akar; veriler adım adım işlenir ve dönüştürülür. Bu modüler yaklaşım, iş akışını tasarlamaya ve gerekli eylemleri yapılandırmaya odaklanmamıza imkân tanıdığı için, derin programlama bilgisi olmadan da yapay zeka aracısı oluşturmayı kolaylaştırır.
Flowise ile Veri Analisti Bir Yapay Zeka Aracısı Oluşturma
Flowise kullanarak bir veri analisti yapay zeka aracısı oluşturma sürecini adım adım inceleyelim. Bu rehber, Flowise’a kaydolmayı, özel bir iş akışı kurmayı ve veri kümelerini analiz edebilen etkileşimli bir aracı oluşturmak için çeşitli blokları kullanmayı kapsar.
Adım 1: Flowise üzerinde bir hesap oluşturun
Öncelikle Flowise kayıt sayfasını ziyaret ederek bir hesap oluşturun. Gerekli bilgileri doldurun ve hesabınızı doğrulayıp etkinleştirmek için e-posta ile gönderilen talimatları izleyin.
Adım 2: Veritabanı kurulumu
Flowise hesabımız hazır olduğuna göre, kullanacağımız veritabanını kurma zamanı. Analiz etmek istediğimiz verileri saklamak için bir veritabanına ihtiyacımız var.
Verilerimizi yönetmek için popüler ve kullanıcı dostu bir SQL veritabanı sağlayıcısı olan SingleStore’u kullanacağız. Şu adımları izleyelim:
Adım 3: Chatflows bölümüne gidin
Oturum açtıktan sonra gösterge panosuna gidin ve "Chatflows" bölümünü bulun. Yeni bir iş akışı oluşturmaya başlamak için "Add New" seçeneğine tıklayın.
Adım 4: Tablo bilgisini yüklemek için özel bir fonksiyon oluşturun
Bu adımda, tablonun açıklaması ve sütun adları gibi bilgileri almak için özel bir fonksiyon yazacağız. Bu veriler, aracımızın sorgulayacağı veri kümesinin yapısını anlaması açısından kritik öneme sahiptir.
Fonksiyonun başında
connectionUrldeğerini ayarlamamız gerekiyor. Bu bilgi SingleStore’da Deployments sekmesinde bulunur.Bağlantı dizesi şu şekilde görünür:
İlk kısım, benim örneğimde
françois-19ecc, kullanıcı adıdır. Hemen ardından şifre için bir yer tutucu olan<françois-19ecc Password>gelir ve bunu gerçek şifreyle değiştirmemiz gerekir.Bu fonksiyon SingleStore veritabanına bağlanır ve tabloya ait sütun bilgilerini alır. İki girdisi vardır:
tableName: Tablonun adıtableDescription: Tablonun açıklaması.Bunlar, özel kod düğümündeki “Input Variables” düğmesine tıklanarak yapılandırılmalıdır. Değişkenlere, adlarının başına
$eklenerek kod içinde erişilebilir.Benim durumumda, tablo SingleStore üzerinde oluşturulduğunda
datasetolarak adlandırıldı. Siz CSV dosyasını yüklerken belirlediğiniz adı kullanmalısınız.Adım 5: Bir prompt şablonu düğümü oluşturun
Bu düğüm, aracımıza yol gösterecek soruları oluşturduğumuz yerdir. Bu düğümü özel fonksiyonunuza bağlayın.
Prompt iki yer tutucuya sahiptir:
{tableInformation}ve{question}.questionkullanıcı tarafından gönderilen prompttur,tableInformationise önceki adımda tanımladığımız fonksiyonun çıktısıdır.Bu yer tutucuların değerleri, prompt şablonu düğümündeki “Format Prompt Values” düğmesine tıklanarak yapılandırılmalıdır.
Adım 6: Bir LLM chain bloğuna bağlayın
Şimdi, prompt şablonu düğümünü bir LLM chain bloğuna bağlayacağız; bu blok promptu yorumlayarak ondan bir SQL sorgusu üretecek. İzlememiz gereken adımlar şunlardır:
Adım 7: Bir set variable bloğu kullanın
Oluşturulan SQL sorgusunu daha sonra kullanmak üzere saklamak için bir set variable bloğu oluşturun ve bunu LLM chain bloğunun çıktısına bağlayın.
Adım 8: SQL sorgusunu çalıştırın
SQL sorgusunu veritabanında çalıştırmak için yeni bir özel kod bloğuna gönderin.
connectionUrldeğerini ayarlamayı unutmayın. Daha önce kullandığımızın aynısıdır.Bu fonksiyonun tek bir girdisi vardır: çalıştırmak istediğimiz sorgu. Koda
$querykullanılarak erişilir.Adım 9: Başka bir prompt şablonu oluşturun
Bu şablon, sorgu sonuçlarına dayanarak yapay zeka aracısının kullanıcıya sunacağı yanıtı biçimlendirmek için kullanılır.
Bu prompt üç yer tutucuya sahiptir:
query: LLM tarafından üretilen SQL sorgusu; değişken düğümü bağlanarak elde edilir.queryResult: Önceki özel fonksiyon düğümü tarafından hesaplanan sorgu sonucu.question: Başlangıçtaki kullanıcı promptu.Adım 10: Son LLM chain bloğu
Son olarak, bu prompt şablonunu yeni bir LLM chain bloğuna bağlayın; bu blok promptu kullanarak yanıtı oluşturacaktır. Daha önce kullanılan aynı OpenAI model bloğuna bağlayabilirsiniz.
İşte nihai aracı akışı:
Bu adımlar tamamlandığında aracımız hazırdır. Soruları alabilir, ilgili verileri getirmek için SQL sorguları üretebilir ve net, öz yanıtlar sunabilir.
Veri Analisti Aracısıyla Sohbet Etme
Aracı artık kullanıma hazır. Onunla sohbet etmek için sağ üst köşedeki mor sohbet düğmesine tıklayın:
Anketin kaç yanıt aldığını sorarak test edelim:
Dikkat ederseniz, son promptun tasarım şekli nedeniyle aracı yanıtında sorguyu da gösteriyor. Veriler hakkında bazı istatistikler soralım:
Bir başka örnek daha:
Flowise Hakkındaki Düşüncelerim
Birçok yapay zeka aracısı geliştirme aracını denedikten sonra, Flowise ile yaşadığım deneyim bir ölçüde hayal kırıklığı yarattı. Sıkça karşılaştığım sorunlardan biri, bazı değişken yapılandırmalarını yanlışlıkla silmem ve bunun sonucunda aracının nedenini açıkça anlayamadığım biçimde tutarsız davranmasıydı. Bu durum, sorun gidermeyi çoğu zaman zahmetli hale getirdi.
Ayrıca, Flowise’ın aracı akışları için net bir başlangıç noktası olmaması, aracının nasıl çalıştığını takip etmeyi ve anlamayı zorlaştırıyor. Bu, özellikle yapay zeka sistemleri geliştirmeye yeni başlayanlar için göz korkutucu olabilir. Ek olarak, Flowise ara sonuçları kolayca görüntüleme veya düğümleri tek başına test etme konusunda yetersiz kalıyor. Bu da sorunları tespit etmeyi veya iş akışını etkin bir şekilde iyileştirmeyi zorlaştırıyor.
Düğümlerin yapılandırmalarını bir bakışta görmekte de zorlandım. Örneğin, kullandığımız özel kod düğümleri girdi değişkenleri tanımlıyordu, ancak bunun böyle olduğu görünür durumda değil. Bunu görmek için düğümün o bölümüne tıklamamız gerekiyor. Bu da akışı yalnızca bakarak anlamayı güçleştiriyor.
Sonuç
Flowise, yapay zeka aracıları oluşturmak için umut verici bir düşük kod arayüzü sunsa da, benzer araçlara kıyasla kullanımı zorlaştıran birkaç kullanılabilirlik sorunu barındırıyor; özellikle daha akıcı ve sezgisel bir deneyim arayanlar için. Bu zorluklara rağmen, Flowise’ın konsepti potansiyel taşıyor ve bazı iyileştirmelerle yapay zeka çözümleri geliştirmek için harika bir araca dönüşebilir.