16 puan yazan xguru 2023-07-16 | 4 yorum | WhatsApp'ta paylaş
  • LangChain: OpenAI'nin GPT API'siyle yapay zeka metin üretimi için arayüz sağlayan Python ve JavaScript kütüphanesi
    • ReAct makalesinin bir uygulaması olarak, LLM çıktı metni kalitesini artırdığı biliniyor
    • ReAct iş akışı özellikle InstructGPT/text-davinci-003 üzerinde etkiliydi, ancak pahalıydı ve küçük ölçekli projelerde kullanımı kolay değildi
  • LangChain, popülerlik kazanırken belirgin bir gelir ya da gelir yaratma planı olmamasına rağmen oldukça fazla yatırım aldı
  • Gerçekte BuzzFeed'de bir chatbot yapmak için kullanılmaya çalışıldı
    • Çünkü RAG (Retrieval-Augmented Generation) için LangChain popüler bir araçtı
    • Ancak uzun süre araştırılmasına rağmen iyi çalışmadı. Hata da çoktu, kalite de iyi değildi
    • Daha sonra tekrar düşük seviyeye inip doğrudan geliştirme yapılınca LangChain'den çok daha iyi sonuçlar elde edildi
    • Hacker News'teki "100 satır kodla LangChain yapmak" yazısı ve yorumlarında LangChain eleştirilerini görünce bunun sadece kendisine özgü olmadığını anladı
  • LangChain'in sorunu, yapay zeka ekosistemine gereksiz karmaşıklık ve önyargı eklemesi
    • ChatGPT ile nasıl arayüz kurulacağını öğrenmek isteyen yeni başlayanlar asla LangChain ile başlamamalı
    • Örnekler ve kod, OpenAI'nin resmî Python kütüphanesini kullanmaktan daha karmaşık
    • LangChain'in prompt engineering yaklaşımı, fiilen ekstra adımlar eklenmiş f-stringlerden ibaret
    • Agent iş akışı ve konuşma belleği özellikleri yeterince iyi belgelenmediği için kullanımı kafa karıştırıcı olabilir
    • Sistem prompt özelliği, Agent iş akışıyla düzgün biçimde entegre olmuyor
    • Dokümantasyon ve örneklerde avantajlardan çok sorunlar olduğu için gerçek kullanımda zorluk yaratıyor
  • LangChain agent'ları, prompt engineering ve JSON çıktısı üzerinden kendine özgü bir araç seçme yöntemi kullanıyor
    • Normal çıktı yapısındaki değişiklikler nedeniyle agent çalışmayabilir ve ayrıştırma hatalarının ele alınması gerekebilir
    • Chatbot, tarifleri doğru şekilde çıkarıp biçimlendirebilir, ancak çıktı sıkıcıdır
    • Özel agent ve chain özellikleri sunsa da bu süreçleri daha karmaşık hâle getirir
    • Metin bölücüler ve entegre vektör depoları gibi yardımcı özelliklere sahip olsa da, LangChain yalnızca LangChain tabanlı kodun kullanılabilmesine yönelik kısıtlamalar getirir
  • LangChain, en popüler kullanım senaryolarının çoğunda ek yük ve karmaşıklığı artırıyor
    • Görünüşe göre “it’s complicated, so it must be better!” felsefesini hayata geçiriyor
  • Yazar, LangChain'e alternatif olarak çok daha basit bir Python paketi olan simpleaichat'i geliştirdi
  • Bu, simpleaichat reklamı değil; yazar, yeni başlayanların LangChain'e yönelmesinden endişe duyuyor

4 yorum

 
sungwoo 2023-07-18

Ben de LangChain’i analiz ettiğimde, aşırı mühendislik yapılmış olduğu hissine güçlü biçimde kapıldım.
http://swcho.github.io/blogs/2023-07-15-langchainjs-part-3

langchain llm ecosystem’ini nasıl kurgulamalı? sorusunu ortaya atan ilk açık kaynak olduğu noktasında anlamını aramak gerekiyor gibi görünüyor.

LangChain’in kullanılabilirliği düşük olsa da, LangChain’in çözmeye çalıştığı sorun hâlâ ortada duruyor.

 
ohyecloudy 2023-07-17

Artık GN+ RSS'ye de dahil oluyor. Teşekkürler. @xguru, takip edeceğim.

 
xguru 2023-07-16

LangChain anlamsızdır

Bunun, o yazının devamı niteliğinde bir metin olduğunu düşünüyorum.
Bu blogun yazarı Max Woolf, yukarıdaki yazının yorumlarında LangChain'in gerçekten işe yaramaz olduğunu eleştirmiş, ardından alternatif olarak simpleaichat geliştirip yayımlamıştı.
Bu kez de sorunları derleyen bir yazı yayımlamış.

 
GN⁺ 2023-07-16
Hacker News görüşü
  • LangChain, çöp yazılım olarak değerlendiriliyor ve her şeyi baştan yazma planı var.
  • LLM CLI aracına Python kütüphanesi API'si eklendi ve hafif model çağrıları mümkün hale geldi.
  • LangChain, aracı katman olarak gereksiz olması ve kodlama deneyimini iyileştirememesi nedeniyle eleştiriliyor.
  • Sorunlarına rağmen birçok kullanıcı LangChain'i eğlenceli buluyor ve LLM ile bir şeyler geliştirmede faydalı şekilde kullanıyor.
  • LangChain, ilginç araçlar ve örnek seçiciler sunuyor ancak kod kalitesi yetersiz.
  • Bu yazı eleştirel olmakla birlikte, asıl yazarın çalışmalarını kötülediği gerekçesiyle suçlanıyor.
  • Fikir edinmek ve prototipleme yapmak için LangChain faydalı olsa da, çoğu zaman her şeyi doğrudan kendiniz uygulamak daha kolaydır.
  • LangChain ile prototipleme yapmak, önemli kaynaklar yatırmadan önce fikirleri doğrulamaya yardımcı olur.
  • Benzer işlevleri gerçekleştirmek için lambda over let over lambda kullanan alternatif bir yaklaşım öneriliyor.