Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

BEN KİMİM? 2023- YILDIZ TECHNICAL UNIVERSİTY Mathematical Engineering (Licentiate Degree) YILDIZ TECHNICAL UNIVERSİTY Computer Engineering/IT (Master's Degree (Non-Thesis)) 2013-2018 2019-2020 YILDIZ TECHNICAL UNIVERSİTY Mathematical Engineering (Master's Degree (Thesis)) 2021-.. DOĞUŞ TEKNOLOJİ Software Support Asistant Specialist Software Asistant Specialist Software Specialist 2018-2021 KARİYER.NET Software Specialist Senior Software Specialist Expert Software Engineer Mavi (2016) Overtech (2017) INTERNSHIPS Junior Frontend Developer 2018 ICONEC WAVE

Slide 3

Slide 3 text

Basit Bir Graph Yapısı Graphs, düğümler (nodes) ve bu düğümleri birbirine bağlayan kenarlardan (edges) oluşan matematiksel yapılardır. En basit haliyle, bir graph iki düğüm ve bu düğümleri birbirine bağlayan bir kenardan oluşur. Bu yapı, dil modelleri ve doğal dil işleme (NLP) uygulamalarında oldukça faydalıdır

Slide 4

Slide 4 text

Düğümlerin İşlevi Düğümleri, fonksiyonların çalıştırılabileceği yerler olarak düşünebiliriz. Her düğümde bir fonksiyon çalıştırılır ve bu fonksiyonun dönüş değeri bir sonraki düğüme iletilir. Bu şekilde, karmaşık işlemler basit adımlara bölünerek graph üzerinde ilerler.

Slide 5

Slide 5 text

Arkadaşlık Ağları Bilimsel Katkılar Kurumlar Arası İlişkiler Protein Ağları Ulaşım Ağları İnternet

Slide 6

Slide 6 text

Tarihi Bridges of Konigsberg Leonhard Euler's

Slide 7

Slide 7 text

Tarihi Trees in Electric Circuits Gustav Kirchhoff

Slide 8

Slide 8 text

Tarihi Map Coloring Problemi Auguste De Morgan

Slide 9

Slide 9 text

Graph Tanımı Bir graph genellikle G harfi ile gösterilir ve iki temel bileşenden oluşur: Vertex (Node/Düğüm): Graph içerisindeki varlıkları temsil eden elemanlardır. 1. Edges (Kenarlar): Düğümler arasındaki ilişkileri gösteren bağlantılardır. 2.

Slide 10

Slide 10 text

LangGraph Nedir? LangChain'in yeniliği olan LangGraph, LangChain üzerine inşa edilmiştir ve kullanıcılarına daha gelişmiş ajan çalışma zamanları sunmak için tasarlanmıştır. LangGraph, Dil Modelleri (LLM’ler) ile çok aktörlü, durumsal uygulamalar oluşturmak için geliştirilmiş bir kütüphanedir. Ajan ve çok ajanlı iş akışlarını oluşturmak için kullanılan bu kütüphane, LangChain üzerine inşa edilmiştir

Slide 11

Slide 11 text

LangGraph kullanmak için LangChain kullanmam gerekir mi? Aradaki fark nedir? LangGraph, karmaşık ajan sistemleri için bir orkestrasyon çerçevesidir ve LangChain ajanlarına göre daha düşük seviyeli ve kontrol edilebilirdir. Öte yandan LangChain, modeller ve diğer bileşenlerle etkileşim için standart bir arayüz sağlar, bu da doğrudan zincirler ve geri alma akışları için kullanışlıdır.

Slide 12

Slide 12 text

LangGraph açık kaynak mı? Ücretsiz mi? Evet. LangGraph, MIT lisanslı açık kaynaklı bir kütüphanedir ve kullanımı ücretsizdir.

Slide 13

Slide 13 text

Basit Fonksiyonlar ile Graph

Slide 14

Slide 14 text

Basit Fonksiyonlar ile Graph

Slide 15

Slide 15 text

Basit Fonksiyonlar ile Graph

Slide 16

Slide 16 text

Basit Fonksiyonlar ile Graph

Slide 17

Slide 17 text

LLM Çağrısı ile Graph Oluşturma

Slide 18

Slide 18 text

LLM Çağrısı ile Graph Oluşturma

Slide 19

Slide 19 text

LLM Çağrısı ile Graph Oluşturma content='Merhaba! Size nasıl yardımcı olabilirim?' response_metadata={'finish_reason': 'stop'} id='run-8936a285- 717a-4e60-aaa5-af71baeda9a6-0'

Slide 20

Slide 20 text

LLM Çağrısı ile Graph Oluşturma

Slide 21

Slide 21 text

LLM Çağrısı ile Graph Oluşturma Output from node 'agent': --- Merhaba! Size nasıl yardımcı olabilirim? --- Output from node 'node_2': --- Agent söylüyor:Merhaba! Size nasıl yardımcı olabilirim? --- Final Output: Agent söylüyor:Merhaba! Size nasıl yardımcı olabilirim?

Slide 22

Slide 22 text

Daha Kompleks Bir Graph Örneği Üzerinde Çalışma Yapalım!

Slide 23

Slide 23 text

Daha Kompleks Bir Graph Örneği Üzerinde Çalışma Yapalım! Agent söylüyor:İstanbul

Slide 24

Slide 24 text

Peki bunu gerçekten bir hava durumu API’sine bağlar ve sonuçları oradan almak istersek ne yaparız? In İstanbul, the current weather is as follows: Detailed status: broken clouds Wind speed: 3.09 m/s, direction: 70° Humidity: 54% Temperature: - Current: 28.68°C - High: 31.09°C - Low: 28.68°C - Feels like: 29.72°C Rain: {} Heat index: None Cloud cover: 75%

Slide 25

Slide 25 text

Peki bunu gerçekten bir hava durumu API’sine bağlar ve sonuçları oradan almak istersek ne yaparız?

Slide 26

Slide 26 text

Peki bunu gerçekten bir hava durumu API’sine bağlar ve sonuçları oradan almak istersek ne yaparız? In İstanbul, the current weather is as follows: Detailed status: scattered clouds Wind speed: 3.6 m/s, direction: 80° Humidity: 37% Temperature: - Current: 31.59°C - High: 31.68°C - Low: 24.48°C - Feels like: 31.24°C Rain: {} Heat index: None Cloud cover: 40%

Slide 27

Slide 27 text

Peki bunu gerçekten bir hava durumu API’sine bağlar ve sonuçları oradan almak istersek ne yaparız? Output from node 'agent': --- İstanbul --- Output from node 'tool': --- In İstanbul, the current weather is as follows: Detailed status: scattered clouds Wind speed: 3.6 m/s, direction: 80° Humidity: 37% Temperature: - Current: 31.59°C - High: 31.68°C - Low: 24.48°C - Feels like: 31.24°C Rain: {} Heat index: None Cloud cover: 40% --- Final Output: In İstanbul, the current weather is as follows: Detailed status: scattered clouds Wind speed: 3.6 m/s, direction: 80° Humidity: 37% Temperature: - Current: 31.59°C - High: 31.68°C - Low: 24.48°C - Feels like: 31.24°C Rain: {} Heat index: None Cloud cover: 40%

Slide 28

Slide 28 text

Peki bunu gerçekten bir hava durumu API’sine bağlar ve sonuçları oradan almak istersek ne yaparız?

Slide 29

Slide 29 text

Peki ben daha az ve öz bir cevap istersem?

Slide 30

Slide 30 text

Peki ben daha az ve öz bir cevap istersem? Girdi: state (AgentState) sözlüğü. 1. İlk İşlem: messages anahtarını kullanarak state sözlüğündeki mesajları alır. 2. Kullanıcı Girdisi: Son kullanıcı girdisini (son mesajı) alır (user_input = messages[-1]). 3. Tam Sorgu Oluşturma: Kullanıcı girdisine dayalı olarak, şehir ismini bulmak için tam bir sorgu oluşturur (complete_query). 4. Dil Modeli Çağrısı: Bu sorguyu dil modeline gönderir (llm.invoke(complete_query)) ve yanıtı alır. 5. Yanıtı Ekleme: Alınan yanıtı messages dizisine ekler (state['messages'].append(response.cont ent)). 6. Dönüş: Güncellenmiş state sözlüğünü döner. 7.

Slide 31

Slide 31 text

Peki ben daha az ve öz bir cevap istersem? Girdi: state (AgentState) sözlüğü. 1. İlk İşlem: messages anahtarını kullanarak state sözlüğündeki mesajları alır. 2. Agent Yanıtı: Son agent yanıtını alır (agent_response = messages[-1]). 3. Hava Durumu API Çağrısı: OpenWeatherMapAPIWrapper sınıfından bir örnek oluşturur ve şehir adına göre hava durumu verilerini alır (weather_data = weather.run(agent_response)). 4. Yanıtı Ekleme: Alınan hava durumu verilerini messages dizisine ekler (state['messages'].append(weather_da ta)). 5. Dönüş: Güncellenmiş state sözlüğünü döner. 6.

Slide 32

Slide 32 text

Peki ben daha az ve öz bir cevap istersem? Girdi: state (AgentState) sözlüğü. 1. İlk İşlem: messages anahtarını kullanarak state sözlüğündeki mesajları alır. 2. Kullanıcı Girdisi: İlk kullanıcı girdisini alır (user_input = messages[0]). 3. Mevcut Bilgi: En son alınan bilgiyi alır (available_info = messages[-1]). 4. Tam Sorgu Oluşturma: Kullanıcı girdisi ve mevcut bilgilere dayanarak, kısa ve öz bir yanıt oluşturmak için tam bir sorgu oluşturur (agent2_query). 5. Dil Modeli Çağrısı: Bu sorguyu dil modeline gönderir (llm.invoke(agent2_query)) ve yanıtı alır. 6. Dönüş: Dil modelinden alınan yanıtı döner (return response.content). 7.

Slide 33

Slide 33 text

Peki ben daha az ve öz bir cevap istersem? İstanbul'da hava şu anda açık gökyüzüyle birlikte 27.68°C sıcaklıkta ve 10.8 m/s hızında esen 10°'lik bir rüzgarla devam ediyor. Nem oranı ise %65.

Slide 34

Slide 34 text

Langhain ile Bir Chatbot Geliştirme Süreci

Slide 35

Slide 35 text

Langhain ile Bir Chatbot Geliştirme Süreci

Slide 36

Slide 36 text

Peki LangGraph versiyonu nasıl olurdu?

Slide 37

Slide 37 text

Peki LangGraph versiyonu nasıl olurdu?

Slide 38

Slide 38 text

Peki LangGraph versiyonu nasıl olurdu?

Slide 39

Slide 39 text

Thor ve Loki Gibi:LangChain ve LangGraph’ın Güçlü İş Birliği LangChain Mystic LangGraph Alıştırmaları

Slide 40

Slide 40 text

TEŞEKKÜRLER