AWS Türkçe Blog

HAQM Bedrock, HAQM Connect, HAQM Lex, LangChain ve WhatsApp ile yeni nesil bir sohbet asistanı oluşturun

Orijinal Makale: Link

Bu yazı LangChain’den Harrison Chase, Erick Friis ve Linda Ye ile ortak olarak yazılmıştır.

Üretken yapay zekanın önümüzdeki yıllarda kullanıcı deneyimlerinde devrim yaratması bekleniyor. Bu yolculukta önemli bir adım, müşterilerin dijital ortamda gezinmelerine yardımcı olmak için araçları akıllıca kullanan yapay zeka asistanlarının devreye alınmasını içeriyor. Bu makalede, bağlamsal bir AI asistanının nasıl kullanıma alınacağını gösteriyoruz. HAQM Bedrock Knowledge Bases, HAQM Lex ve HAQM Connect kullanılarak oluşturulan çözümümüz, WhatsApp’ı iletişim kanalı olarak kullanarak kullanıcılara tanıdık ve kolay bir arayüz sunuyor.

HAQM Bedrock Knowledge Bases, altyapı modellerine (foundation models – FM’ler) ve temsilcilere (agents) şirketinizin özel veri kaynaklarından bağlamsal bilgiler sağlayarak, Veri Almayla Artırılmış Üretim (Retrieval Augmented Generation – RAG) aracılığıyla daha alakalı, doğru ve özelleştirilmiş yanıtlar sunar. Ayrıca, üretken yapay zeka destekli uygulamalar geliştirmek isteyen kuruluşlar için güçlü bir çözüm sağlar. Bu özellik, HAQM Lex ve HAQM Connect ile doğrudan uyumluluğu sayesinde alana özgü bilginin diyalogsal yapay zekaya entegrasyonunu kolaylaştırır. Belge içeri aktarma, parçalara ayırma ve yerleştirmeyi otomatik hale getirerek, karmaşık vektör veritabanlarını veya özel erişim sistemlerini elle kurma ihtiyacını ortadan kaldırır ve geliştirme karmaşıklığını ve süresini önemli ölçüde azaltır.

Sonuç olarak, doğrulanmış verilere dayalı olması sayesinde FM yanıtlarının doğruluğu artar ve halüsinasyonlar azalır. Maliyet verimliliği, özelleştirilmiş bilgi yönetimi sistemlerinin bakımına kıyasla daha az geliştirme kaynağı ve daha düşük operasyonel maliyetlerle sağlanır. Çözümün ölçeklenebilirliği, AWS’in sunucusuz hizmetleri sayesinde artan veri hacimleri ve kullanıcı sorgularına hızla uyum sağlar. Ayrıca veri gizliliğini ve mevzuata uygunluğu korumak için AWS’nin güçlü güvenlik altyapısını kullanır. Bilgi tabanını sürekli güncelleme ve genişletme yeteneği sayesinde, yapay zeka uygulamaları en son bilgilerle güncel kalır. Kuruluşlar HAQM Bedrock Bilgi Tabanlarını seçerek katma değerli yapay zeka uygulamaları oluşturmaya odaklanabilirken AWS, bilgi yönetimi ve erişiminin karmaşıklıklarını üstlenerek daha az çabayla daha doğru ve yetenekli yapay zeka çözümlerinin daha hızlı dağıtılmasını sağlar.

Ön Koşullar

Bu çözümü uygulamak için aşağıdakilere ihtiyacınız var:

Çözüme genel bakış

Bu çözüm, yapay zeka asistanını oluşturmak ve dağıtmak için birkaç temel AWS yapay zeka servisini kullanır:

  • HAQM Bedrock – AI21 Labs, Anthropic, Cohere, Meta, Mistral AI, Stability AI ve HAQM gibi önde gelen yapay zeka şirketlerinden yüksek performanslı altyapı modellerini tek bir API aracılığıyla sunan, güvenlik, gizlilik ve sorumlu yapay zeka ile üretken yapay zeka uygulamaları oluşturmak için ihtiyaç duyduğunuz geniş yetenekler seti ile birlikte tam yönetilen bir hizmettir
  • HAQM Bedrock Knowledge Bases (Bilgi Tabanları) – Yapay zeka asistanına şirketin özel veri kaynaklarından bağlamsal bilgiler sağlar
  • HAQM OpenSearch Service – HAQM Bedrock Knowledge Bases tarafından doğrudan desteklenen vektör deposu olarak çalışır
  • HAQM Lex – Yapay zeka asistanı için görüşme arayüzünün oluşturulmasını sağlar, buna amaçların (intent) ve alanların (slot) tanımlanması da dahildir
  • HAQM Connect – Yapay zeka asistanını popüler mesajlaşma uygulamasında kullanıcılara sunmak için WhatsApp ile entegrasyonu destekler
  • AWS Lambda – Servisleri entegre etmek ve yapay zeka asistanının temel mantığını oluşturan LangChain ajanını çalıştırmak için kodu yürütür
  • HAQM API Gateway – WhatsApp’tan gelen istekleri alır ve işlenmek üzere AWS Lambda’ya yönlendirir
  • HAQM DynamoDB – Konuşma hafızasını etkinleştirmek için alınan ve oluşturulan mesajları depolar
  • HAQM SNS – HAQM Connect’ten giden yanıtın yönlendirilmesini sağlar
  • LangChain – FM’lerinizin bağlama duyarlı akıl yürütme gerçekleştirmesine yardımcı olan LangChain aracısını oluşturmak için güçlü bir soyutlama katmanı sağlar
  • LangSmith – Hata ayıklama, izleme, test ve değerlendirme yetenekleri de dahil olmak üzere daha fazla gözlemlenebilirlik için ajan kayıtlarını LangSmith’e yükler

Aşağıdaki şema mimariyi göstermektedir.

Solution Architecture

Akışın tanımlaması

Şemanın sağ tarafındaki kırmızı renkli sayılar veri alım sürecini göstermektedir:

  1. Dosyalar HAQM Simple Storage Service (HAQM S3) Veri Kaynağına yüklenir
  2. Yeni dosyalar Lambda Function’ı (işlev) tetikler
  3. Lambda işlevi, bilgi tabanı veri kaynağının senkronizasyon işlemini başlatır
  4. HAQM Bedrock Knowledge bases, verileri HAQM S3’ten alır, parçalara ayırır ve seçtiğiniz FM aracılığıyla yerleştirmeleri oluşturur
  5. HAQM Bedrock Knowledge Bases, yerleştirmeleri HAQM OpenSearch servisinde depolar

Şemanın sol tarafındaki numaralar mesajlaşma sürecini gösterir:

  1. Kullanıcı, HAQM API Gateway’de barındırılan webhook’a WhatsApp üzerinden bir mesaj göndererek iletişimi başlatır
  2. HAQM API Gateway, gelen mesajı AWS Lambda’da çalıştırılan gelen mesaj işleyicisine yönlendirir
  3. Gelen mesaj işleyicisi kullanıcının iletişim detaylarını HAQM DynamoDB‘ye kaydeder
  4. İlk kez kullananlar için, gelen mesaj işleyicisi HAQM Connect’te yeni bir oturum oluşturur ve DynamoDB’ye kaydeder. Geri dönen kullanıcılar için mevcut HAQM Connect oturumunu devam ettirir
  5. HAQM Connect kullanıcının mesajını doğal dil işleme için HAQM Lex’e iletir
  6. HAQM Lex, bir Lambda fonksiyonu olarak uygulanan LangChain AI asistanını tetikler
  7. LangChain AI asistanı DynamoDB’den konuşma geçmişini alır
  8. HAQM Bedrock Knowledge Bases kullanarak, LangChain AI asistanı ilgili bağlamsal bilgileri getirir
  9. LangChain AI asistanı, bağlam verilerini ve kullanıcının sorgusunu içeren bir prompt derler ve HAQM Bedrock üzerinde çalışan bir FM’ye gönderir
  10. HAQM Bedrock girdiyi işler ve modelin yanıtını LangChain AI asistanına döndürür
  11. LangChain AI asistanı modelin yanıtını HAQM Lex’e iletir
  12. HAQM Lex modelin yanıtını HAQM Connect’e iletir
  13. HAQM Connect modelin yanıtını HAQM Simple Notification Service’e (HAQM SNS) yayınlar
  14. HAQM SNS giden mesaj işleyici Lambda fonksiyonunu tetikler
  15. Giden mesaj işleyicisi ilgili sohbet iletişim bilgilerini HAQM DynamoDB’den alır
  16. Giden mesaj işleyicisi yanıtı Meta’nın WhatsApp API’si aracılığıyla kullanıcıya gönderir

Bu yapay zeka asistanının dağıtımı üç ana adımı içerir:

  1. HAQM Bedrock Knowledge Bases kullanarak bilgi tabanı oluşturun ve yapay zeka asistanının kullanıcı sorularını yanıtlamak için kullanabileceği ilgili ürün dokümantasyonunu, SSS’leri, bilgi makalelerini ve diğer faydalı verileri içe aktarın. Veriler, yapay zeka asistanının destekleyeceği temel kullanım durumlarını ve konuları kapsamalıdır.
  2. Yapay zeka asistanının çalışma mantığını yöneten LangChain ajanını oluşturun. Ajan bir Lambda işlevinde uygulanır ve bilgileri aramak için birincil aracı olarak bilgi tabanını kullanır. Ajanın diğer kaynaklarla birlikte dağıtımı, sağlanan AWS CloudFormation şablonu aracılığıyla otomatikleştirilir. Bir sonraki bölümde kaynaklar listesine bakın.
  3. HAQM Connect örneği oluşturun ve WhatsApp entegrasyonunu yapılandırın. Bu, kullanıcıların yapay zeka asistanı ile WhatsApp kullanarak sohbet etmesine olanak tanır, tanıdık bir arayüz sağlar ve resimler ve butonlar gibi zengin etkileşimleri mümkün kılar. WhatsApp’ın popülerliği yapay zeka asistanına erişilebilirliği artırır.

Çözümün devreye alınması

AWS hesabınızda ihtiyacınız olan tüm parçaların kurulumunu yapan önceden oluşturulmuş AWS CloudFormation şablonları sağladık.

  1. Henüz yapmadıysanız AWS konsoluna giriş yapın.
  2. CloudFormation konsolunu açmak ve yeni bir yığın (stack) oluşturmak için aşağıdaki Launch Stack düğmesini seçin.
  3. Aşağıdaki parametreleri girin:
    • StackName: Yığın için bir isim girin, örneğin WhatsAppAIStack
    • LangchainAPIKey: LangChain üzerinden oluşturulan API anahtarını girin
Bölge Kurulum butonu Şablon URL’i – mevcut yığını yeni bir sürüme yükseltmek için kullanın Gerektiğinde özelleştirilebilecek AWS CDK yığını
N. Virginia (us-east-1) Launch Stack button YML GitHub
  1. AWS Identity and Access Management (IAM) kaynakları oluşturduğunuzu onaylamak için kutucuğu işaretleyin ve Create Stack‘i seçin.
  2. Yaklaşık 10 dakika içinde yığın oluşturmanın tamamlanmasını bekleyin, bu işlem aşağıdaki kaynakları oluşturacaktır:
  3. WhatsApp için oluşturulan veri kaynağına (HAQM S3) dosyaları yükleyin. Bir dosya yüklediğinizde veri kaynağı otomatik olarak senkronize olacaktır.
  4.  Ajanı test etmek için HAQM Lex konsolunda en son oluşturulan asistanı seçin. English‘i, sonrasında Test‘i seçin ve bir mesaj gönderin.

HAQM Connect Örneği Oluşturma ve WhatsApp Entegrasyonu

WhatsApp business hesabınızla entegre olmak ve yapay zeka asistanı için WhatsApp kanalını etkinleştirmek üzere HAQM Connect’i yapılandırın:

  1. AWS konsolunda HAQM Connect‘e gidin. Henüz yapmadıysanız bir örnek oluşturun. Distribution settings altındaki Instance ARN değerini kopyalayın. WhatsApp business hesabınızı bağlamak için bu bilgiye daha sonra ihtiyacınız olacak.
  2. Örneğinizi seçin, ardından navigasyon panelinde Flows‘u seçin. Aşağı kaydırın ve HAQM Lex‘i seçin. Botunuzu seçin ve Add HAQM Lex Bot‘u seçin.
  3. Navigasyon panelinde Overview‘i seçin. Access Information altında Log in for emergency access‘i seçin.
  4. HAQM Connect konsolunda, navigasyon panelinde Routing altında Flows‘u seçin. Create flow‘u seçin. Akışa bir Get customer input bloku sürükleyin. Bloku seçin. Text-to-speech or chat text’i seçin ve “Merhaba, size bugün nasıl yardımcı olabilirim?” gibi bir karşılama mesajı ekleyin. Aşağı kaydırın ve HAQM Lex‘i seçin, ardından 2. adımda oluşturduğunuz HAQM Lex botunu seçin.
  5. Bloku kaydettikten sonra “Disconnect” adlı başka bir blok ekleyin. Entry okunu Get customer input‘a ve Get customer input okunu Disconnect’e sürükleyin. Publish’i seçin.
  6. Yayınladıktan sonra, navigasyon panelinin altındaki Show additional flow information‘ı seçin. Akışın HAQM Resource Name (ARN)’sini kopyalayın, buna WhatsApp entegrasyonunu dağıtmak için ihtiyacınız olacak. Aşağıdaki ekran görüntüsünde akışla birlikte HAQM Connect konsolu gösterilmektedir.

Connect Flow Diagram

  1. WhatsApp entegrasyonunu “Provide WhatsApp messaging as a channel with HAQM Connect” linkinde ayrıntılı olarak açıklandığı şekilde devreye alın.

Kaynakların silinmesi

Devam eden maliyetlerden kaçınmak için işiniz bittiğinde kaynakları silin:

  1. CloudFormation yığınlarını silin.
  2. HAQM Connect örneğini silin.

Sonuç

Bu makale, HAQM Bedrock, HAQM Lex ve HAQM Connect‘i entegre ederek ve WhatsApp üzerinde kullanıma alarak akıllı bir yapay zeka konuşma asistanı oluşturmayı gösterdi.

Çözüm, ilgili verileri HAQM Bedrock Knowledge Bases üzerinde bir bilgi tabanına aktarır, soruları yanıtlamak için bilgi tabanını kullanan bir LangChain ajanı uygular ve ajanı WhatsApp aracılığıyla kullanıcılara sunar. Bu, kullanıcılara şirketinizin ürün ve hizmetleri konusunda rehberlik edebilen, erişilebilir ve akıllı bir AI asistanı sağlar.

Olası sonraki adımlar arasında AI asistanını belirli kullanım durumunuz için özelleştirme, bilgi tabanını genişletme ve FM çağrı dizinizde sorunları tanımlama, hataları iyileştirme ve performans darboğazlarını analiz etmek için LangSmith kullanarak konuşma günlüklerini analiz etme yer alır.