10 puan yazan GN⁺ 2024-06-21 | 2 yorum | WhatsApp'ta paylaş
  • Octomind, Playwright'ta uçtan uca testleri otomatik olarak oluşturmak ve düzeltmek için AI ajanları kullanıyor.
  • Başlangıçta LangChain framework'ünü kullandı, ancak zamanla LangChain'in yüksek soyutlama seviyesi sorun yaratmaya başladı.

LangChain'in sorunları

  • LangChain'in soyutlamaları ilk başta faydalıydı, ancak karmaşık gereksinimler ortaya çıktıkça kodu anlamak ve bakımını yapmak zorlaştı.
  • LangChain'in iç yapısını anlamak ve hata ayıklamak için çok zaman harcandı.
  • Örneğin, basit bir İngilizce kelimeyi İtalyancaya çevirmek gibi bir kodda bile LangChain kullanıldığında karmaşıklık artıyor.

LangChain'in soyutlama sorunu

  • LangChain, birden fazla soyutlamayı üst üste kullanarak kodun karmaşıklığını artırıyor.
  • Bu soyutlamalar, kodu anlamayı ve hata ayıklamayı zorlaştırıyor.
  • Örneğin, bir API'den JSON verisi alma gibi basit bir işte bile LangChain kullanıldığında karmaşıklık artıyor.

Geliştirme ekibi üzerindeki etkisi

  • Karmaşık ajan mimarilerini hayata geçirmeye çalışırken LangChain sınırlayıcı bir unsur haline geldi.
  • LangChain kaldırıldıktan sonra, gereksinimlere uygun şekilde özgürce kod yazmak mümkün oldu.

Yapay zeka uygulamaları geliştirmek için bir framework gerekli mi?

  • LangChain ilk başta faydalıydı, ancak uzun vadede framework olmadan geliştirme yapmak daha iyi olurdu.
  • Yapay zeka uygulamalarının çoğu, basit kod ve birkaç harici paketle yeterince geliştirilebilir.
  • Ajan kullanım kalıpları yerleşene kadar basit bir yaklaşım öneriliyor.

Modüler yapı taşlarıyla hızlı ve sade geliştirme

  • Framework'ler bir yapı dayatır, ancak yapay zeka uygulamaları için henüz yerleşmiş kullanım kalıpları yok.
  • Modüler yapı taşı yaklaşımı, basit düşük seviyeli kodu tercih eder ve geliştirme hızını artırır.
  • Vektör veritabanı gibi modüler bileşenler kullanılarak kod tabanı sade ve uyarlanabilir tutulur.

GN⁺ görüşü

  • LangChain'in sınırları: LangChain'in yüksek soyutlama seviyesi ilk başta faydalı olsa da, karmaşık gereksinimler ortaya çıktığında engel haline gelebilir.
  • Modüler yaklaşımın avantajları: Modüler yapı taşı yaklaşımı, kodun anlaşılmasını ve bakımını kolaylaştırırken geliştirme hızını artırır.
  • Framework gerekliliğini yeniden düşünmek: Her yapay zeka uygulaması için framework gerekli değildir; basit kod ve harici paketlerle de yeterli çözümler üretilebilir.
  • Geliştirme hızının önemi: Yapay zeka alanında hızlı deney ve prototipleme önemlidir; framework'ler bunu sınırlayabilir.
  • Gelecekteki ajan kullanım kalıpları: Ajan kullanım kalıpları yerleşene kadar basit yaklaşımı korumak daha iyidir.

2 yorum

 
yangeok 2024-06-24

Bunun başarısız bir mimari olduğu söyleniyordu; şimdi bunu GeekNews'te de görüyoruz.

 
GN⁺ 2024-06-21
Hacker News görüşü
  • İlk ticari LLM ajanını geçen yıl Ekim/Kasım döneminde geliştirdi: LangChain kullanmak yerine ajanı sıfırdan doğrudan geliştirmenin daha iyi sonuçlar almaya yardımcı olduğu belirtildi.

  • LLM framework'lerinin karmaşıklığı: LangChain gibi LLM framework'leri, Java veya Python'daki türden bir karmaşıklığı içeri taşıma eğiliminde.

  • LangChain ile ChatGPT karşılaştırması: LangChain, ChatGPT ortaya çıkmadan önce geliştirildi; ancak ChatGPT daha iyi bir konuşma modeli sununca LangChain'e duyulan ihtiyaç azaldı.

  • LangChain'in değeri tartışması: LangChain, geliştirici ile LLM arasında konumlanmaya çalıştı, ancak pratikte kayda değer bir değer katmayıp gereksiz soyutlamalar ekledi.

  • İyi soyutlama ve kötü soyutlama: İyi soyutlama uygulama mantığını ele alır; kötü soyutlama ise yapılması gereken işi soyutlayarak içgörünün kaybolmasına yol açar.

  • Ajan kullanımının sorunları: İçerik üretiminde ajan kullanmak yerine sıralı prompt'lar kullanmanın daha kolay ve daha etkili olduğu ifade edildi.

  • Ragged framework'ünün tanıtımı: LLM'lerle kolay bağlanabilen hafif bir bağlayıcı olan Ragged tanıtıldı. ORM benzeri birleşik bir arayüz sunduğu belirtildi.

  • LangChain'in sınırlı faydası: LangChain'in yaklaşımı ilgi çekici olsa da, pratikte LLM runtime kütüphanelerini doğrudan kullanmak daha verimli.

  • Hızla değişen ajan framework'leri: Kullanılan ajan framework'leri çok hızlı değişiyor ve küçük sürüm değişiklikleri bile mevcut kurulumu bozabiliyor.

  • LangChain'in karmaşıklık sorunu: LangChain, basit kullanım senaryoları için fazla karmaşık; karmaşık kullanım senaryoları içinse uyarlaması zor. Çoğu durumda doğrudan kod yazmak daha iyi bir seçenek.