15 puan yazan xguru 2024-02-07 | 1 yorum | WhatsApp'ta paylaş
  • SQL-Eval'de %76,5'e ulaşarak model boyutu bazında en iyi performansı gösteriyor
    • GPT-4'ten (%83) geride kalsa da GPT-3.5-Turbo'dan (%65) / Claude-2'den (%64,5) daha iyi
    • sqlcoder-7b'den (%71) daha yüksek ve sqlcoder-15b'ye (%78) yakın
  • SQL yazmaya gerek kalmadan dashboard'ları no-code şekilde oluşturmayı sağlayan ChatDB aracı geliştirildi

Örnek

  • Soru: Geçen ay en yüksek sipariş tutarına sahip müşteriyi belirleyin ve sipariş ettiği tüm ürünleri ve miktarlarını listeleyin.
  • Çıktı:
    WITH LastMonthOrders AS (  
      SELECT o.customerid, o.orderid, op.productid, op.quantity, p.productname, op.quantity * p.unitprice AS total_order_value  
      FROM orders o  
      JOIN order_details op ON o.orderid = op.orderid  
      JOIN products p ON op.productid = p.productid  
      WHERE o.orderdate >= date_trunc('month', CURRENT_DATE) - INTERVAL '1 month'  
      AND o.orderdate < date_trunc('month', CURRENT_DATE)  
    ),  
    CustomerTotalOrderValue AS (  
      SELECT customerid, SUM(total_order_value) AS total_value  
      FROM LastMonthOrders  
      GROUP BY customerid  
      ORDER BY total_value DESC  
      LIMIT 1  
    )  
    SELECT c.customerid, c.companyname, lm.productid, lm.productname, lm.quantity  
    FROM CustomerTotalOrderValue ctov  
    JOIN LastMonthOrders lm ON ctov.customerid = lm.customerid  
    JOIN customers c ON c.customerid = lm.customerid;  
    
  • NaturalQuery, yukarıdaki gibi karmaşık sorular, alt sorgular ve oranlar konusunda çok iyi performans gösteriyor.

1 yorum

 
xguru 2024-02-07

Hacker News görüşleri

  • SQL-Eval'deki performans puanı %76,5; GPT-4'ün %83'ünün ve sqlcoder-15b'nin %78'inin biraz gerisinde.

    • Böyle bir yapay zeka veri bilimi stajyerinin faydalı olabileceği uygulama alanları neler olabilir? %75 doğruluğa sahip bir yapay zekayla ne yapılabilir?
    • SQL görevlerinde sık sık referanslara bakan bir programcı olarak, bunun ilk sorgu taslağını yazmak için kullanılabileceğini düşünüyorum.
    • Daha büyük modeller tek seferlik vakalarda daha iyi sonuç verebilir, ancak 15b modeli 64GB'lık bir m1 üzerinde kolayca çalıştırabilirsiniz.
    • Kurumsal ortamlarda şema bilgisinin OpenAI'nin eğitim verilerine sızmasını istemeyebilirsiniz ve sorguları çevrimdışı çalıştırmak istediğiniz durumlar da olabilir.
    • Çok sayıda sorgu çalıştırmak istediğinizde küçük ve yerel bir model faydalıdır (maliyet tasarrufu).
    • Teknik olmayan kişilerin de sorgu sorabildiği mini bir veri bilimci harika olurdu, ancak sorgunun %25'lik “hatalı” kısma girip girmediğini nasıl anlayacağımızı merak ediyorum.
    • Birden fazla yapay zekanın birbirinin yanıtlarını doğruladığı RAID benzeri bir uzlaşma algoritmasıyla genel başarı oranı artırılabilir belki.
    • Bunların çoğu sadece düşüncelerimi toparlama süreci, ama başkalarının daha fazla fikri olabilir. OP'yi lansman için tebrik ederim!
  • Text-to-SQL modellerinin doğru problemi çözmediğini düşünüyorum.

    • Zor kısım sözdizimi ya da bir group by sorgusunun nasıl yazılacağını bilmemek değil, verinin ne anlama geldiğini anlamaktır.
    • Snowflake'te 50 sütunlu bir tabloya bakıp sadece sütun adlarından bunun ne olduğunu tahmin edemezsiniz.
    • Örneğin, hepsi ...price diye adlandırılmış 10 sütunu olan bir tabloda, gerçekten ne anlama geldiklerini öğrenmek için wiki'ye bakmanız veya DBT tanımlarını okumanız gerekir.
    • Modelin ürettiği sorgulara güvenilemez; model veriyi anlamıyor, yalnızca sorgu sözdizimini anlıyor.
  • Bunun açık kaynak olmadığını belirtmek isterim; kullanım temelli kısıtlar olduğu için buna “source available” derdim.

  • Bu ilginç ve ilgilendiğim bir alan, ancak bunun karmaşık bir soru olduğunu düşünmüyorum; bu temel bir analitik soru.

    • Çoğu analist bunu uykusunda bile yazabilir.
    • SQL yazmak için ChatGPT kullanmayı denedim, vasat kaldı; ama kesinlikle daha iyi olacaktır.
  • Yapay zekanın birçok kullanımında olduğu gibi, özellikle aralığa göre gruplama gibi fikirler önerirken bu bir “seed” olarak çok iyi.

    • Ancak neredeyse tüm veritabanlarında sorun ayrıntılarda gizlidir.
    • Farklı ürünler “miktar”ı farklı yorumlar (ör. kutu vs birim), kuponlar ve indirimler garip şekillerde modellenir, ağırlık bazen pound/kilogram varsayılır ve birim belirtilmeden karıştırılır, vb.
  • Bunun yalnızca %75 doğru olması nedeniyle işe yaramaz olduğunu söyleyenler şu iki noktayı düşünmeli:

    • Bu ilk sürüm ve ürün sahipleri ile analistler için hayal edebileceğiniz herhangi bir Airtable'dan şimdiden bin kat daha faydalı.
    • Her zorlukta tam doğruluk istemek anlaşılır, ama biz zaten “yeterince iyi” ekonomisinde yaşıyoruz ve bu yeterince yakınsa iş açısından yeterince iyi olacaktır.
  • Daha karmaşık ve gerçekçi bir benchmark olan Bird'de nasıl performans gösterdiğini merak ediyorum.

  • Veri alanında çalışma deneyimime göre, birçok kişi yöneticilerden soru alıyor, veri ambarını bu sorulara SQL yazarak cevaplayacak kadar iyi anlıyor ve bazen de güzel biçimlendirilmiş yanıtlar sunmakla sorumlu oluyor.

    • Bazen yöneticilerin “Bu sayı neden bu kadar düşük? Bu kadar düşük olmaması gerekirdi” gibi takip sorularını önceden tahmin etmek gerekir; bu yüzden veri mühendisine bir bug olup olmadığını kontrol ettirmeniz gerekir.
    • Tüm LLM'lerde olduğu gibi, bunun bu sorumluluğu çok daha kolay mı hâle getireceğinden yoksa tamamen ortadan mı kaldıracağından emin değilim.
  • Gerçekten çok hoş, ancak lisans standart olmamasına rağmen açık kaynakmış gibi görünüyor.

    • Asıl modeli burada bulabilirsiniz: NaturalSQL-6.7B-v0
    • Bu harika bir temel model gibi görünüyor, ama küçük modeller için text-to-sql'in iyi bir kullanım senaryosu olup olmadığını merak ediyorum.
    • Biz de bu alanda araç geliştiriyoruz ve yanıtları daha iyi bilmesini umarak gpt-4 kullanmak istiyoruz. Hatta gpt 3.5 bile üretim için yeterli değil.
  • Çok hoş; bu lisansın Vanna ile birlikte kullanılıp kullanılamayacağını merak ediyorum.