Dersler · Kodlama · başlangıç · Tech With Tim

Python'da Sıfırdan Bir YZ Ajanı Oluşturun - Yeni Başlayanlar İçin Eğitim

Tech With Tim kanalının “Build an AI Agent From Scratch in Python - Tutorial for Beginners” videosu 9 ders halinde: konunun anlatımı, ekrandaki kod, alıştırma terminalinde denenecek adımlar, çözümlü alıştırmalar ve cevabı videodaki ana götüren bir quiz.

9ders
17kod parçası
20alıştırma
30soru
34dk video
Derslere git →1. ders ücretsiz · Beyond Pass hepsini açar

Diğer dillerde: English

Video İngilizce. YouTube oynatıcısında altyazıyı açıp Otomatik çevir → Türkçe seçebilirsin.

Build an AI Agent From Scratch in Python - Tutorial for Beginners, video by Tech With Tim▶ 34:19 · Tech With Tim
123456789
0:00videonun tamamına yayılmış 9 ders34:19

Neler yapabileceksin

  • Bir Python sanal ortamı oluşturun ve gereksinim dosyasından LangChain bağımlılıklarını yükleyin
  • .env dosyasında saklanan API anahtarlarını kullanarak OpenAI veya Anthropic sohbet modeline bağlanın
  • LLM'nin yapılandırılmış ve öngörülebilir çıktı vermesi için bir Pydantic şeması ve ayrıştırıcı tanımlayın
  • Bir AgentExecutor ile araç çağıran bir ajan oluşturun ve kullanıcı girdisinden çalıştırın
  • DuckDuckGo aramasını, Wikipedia sorgusunu ve özel bir Python fonksiyonunu ajan araçları olarak sarmalayın
  • Ayrıştırma hatalarını ele alın ve yapılandırılmış ajan sonuçlarını bir metin dosyasına kaydedin

Önce bilmen iyi olur

  • Python 3.10 veya daha yeni bir sürümün kurulu olması; sınıflar ve fonksiyonlar gibi temel Python söz dizimini bilmeniz
  • Terminalde komut çalıştırma ve VS Code gibi bir kod editörünü kullanma konusunda rahat olmanız
  • LLM API'sinin ne olduğunu ve nasıl çağrıldığını temel düzeyde bilmeniz
  • Bir OpenAI veya Anthropic hesabınız ve bir API anahtarınızın olması

Müfredat

9 ders ve bir final projesi

  1. 1

    Tamamlanmış araştırma asistanının gösterimi Ücretsiz

    0:00–1:352 dk video

    Bu derste bitmiş yapay zeka araştırma asistanının terminalde çalıştığını göreceksiniz: bir konu yazarsınız, ajan Wikipedia'da arama yapar, bir özeti dosyaya kaydeder ve yapılandırılmış bir rapor yazdırır. Bu ders, inşa etmeye başlamadan önce hedefinizin ne olduğunu bilmeniz için bitmiş ajanın ne yaptığını gösterir.

    4 adım2 alıştırma3 soru
  2. 2

    Proje klasörünü ve sanal ortamı kurma Beyond Pass

    1:35–6:555 dk video

    Ajanın ihtiyaç duyduğu Python paketlerini bir requirements.txt dosyasında listeleyeceksiniz ve bunları yükleyeceğiniz izole bir sanal ortam (venv) kuracaksınız. Sonunda terminalinizde (venv) öneki görünecek ve paketler kurulmuş olacak.

    5 kod5 adım2 alıştırma3 soru
  3. 3

    Seçilecek bir LLM ve API Anahtarlarını Yükleme Beyond Pass

    6:55–12:306 dk video

    main.py dosyasında bir dil modeli oluşturacaksın (OpenAI'ın ya da Anthropic'in Claude modeli), gizli API anahtarını güvenli şekilde bir .env dosyasında saklayacak ve ilk test çağrını çalıştıracaksın. Bu bölüm, ajanının bir yapay zeka modeliyle konuşabilmesi için her parçanın nasıl birbirine bağlandığını gösteriyor.

    2 kod5 adım2 alıştırma3 soru
  4. 4

    Defining a Pydantic schema and prompt template Beyond Pass

    12:30–16:404 dk video

    You will define a Pydantic class that describes the shape of the answer you want from the LLM, and build a prompt template that tells the model to follow that shape. Together they make the model's output predictable enough for your code to use as a normal Python object.

    1 kod4 adım3 alıştırma3 soru
  5. 5

    Creating the tool-calling agent and executor Beyond Pass

    16:40–20:574 dk video

    You will fill in the prompt's format instructions with partial(), build a tool-calling agent with create_tool_calling_agent, and run it through an AgentExecutor to get a raw response. This is the point where the pieces from earlier (LLM, parser, prompt) become one working agent.

    1 kod5 adım2 alıştırma4 soru
  6. 6

    Agent çıktısını ayrıştırma ve hataları yönetme Beyond Pass

    20:57–23:373 dk video

    Agent'ın ham yanıtından metni çıkaracak, bir parser ile tipli bir Python nesnesine dönüştürecek ve bu adımı try/except içine alarak kötü bir model yanıtının çökme yerine okunabilir bir hata üretmesini sağlayacaksın. Ardından sonucun alanlarını, örneğin topic'i, doğrudan okuyacaksın.

    2 kod3 adım3 alıştırma3 soru
  7. 7

    Giving your agent a search tool (DuckDuckGo) Beyond Pass

    23:37–28:535 dk video

    You will learn what a tool is for an AI agent and how to wrap a free DuckDuckGo search as a named, described Tool the agent can call. You will then hand that tool to the agent and ask it a question that needs live web search.

    2 kod4 adım2 alıştırma4 soru
  8. 8

    Ajana Wikipedia aracı eklemek Beyond Pass

    28:53–30:552 dk video

    Bu bölümde WikipediaAPIWrapper ve WikipediaQueryRun ile bir Wikipedia aracı oluşturmayı, ne kadar sonuç döndüreceğini ayarlamayı ve bunu ajanın tools listesine vermeyi öğreneceksin. Ayrıca ajanın arama aracı ile Wikipedia aracı arasında nasıl seçim yaptığını da göreceksin.

    2 kod5 adım2 alıştırma3 soru
  9. 9

    Writing a custom save-to-file tool Beyond Pass

    30:55–34:193 dk video

    You learn how any ordinary Python function can become a tool an agent can call, by typing its parameters and wrapping it with a name and description. You then give the agent the new save tool and watch it research a topic and write the result to a file.

    2 kod5 adım2 alıştırma4 soru

Final projesi

Build Your Own Research Assistant Agent

Build a terminal research assistant from scratch. It takes a topic, uses a web search tool, a Wikipedia tool and a custom save-to-file tool, and prints a structured report. This ties together the environment setup, LLM connection, Pydantic parsing, tools and error handling from the course.

7 görev Beyond Pass ile açılır.

Ücretsiz önizleme · 1. dersin tamamı

Tamamlanmış araştırma asistanının gösterimi

Bu derste bitmiş yapay zeka araştırma asistanının terminalde çalıştığını göreceksiniz: bir konu yazarsınız, ajan Wikipedia'da arama yapar, bir özeti dosyaya kaydeder ve yapılandırılmış bir rapor yazdırır. Bu ders, inşa etmeye başlamadan önce hedefinizin ne olduğunu bilmeniz için bitmiş ajanın ne yaptığını gösterir.

0:00 videoda 1:35 anına kadar

Alıştırma terminali

Dersin komutlarını yaz, boz ve nedenini gör.

Karalama defteri

Videonun yanında çiz ve yaz.

Fikir

Bu bölüm bir önizlemedir. Tech With Tim, projeyi inşa etmeden önce bitmiş halini gösterir, böylece neyi hedeflediğinizi bilirsiniz. Proje bir araştırma asistanıdır: sizden bir soru alan, bilgi aramaya gidip düzenli bir cevap veren bir programdır.

Program, What should I research? (Ne araştırmamı istersin?) sorusunu sorarak başlar. Sen düz İngilizce bir istek yazarsın; örneğin: Tell me about LangChain and its applications and save it to a file. İstekte hiçbir araç adı geçmez. Hangi araçları kullanacağına ajanın kendisi karar vermelidir.

Ajan çalışırken terminal ajanın adımlarını gösterir. Entering new AgentExecutor chain... satırı ajanın başladığı anlamına gelir. Ardından Invoking: wikipedia satırını yazdırır; bu, ajanın Wikipedia aracını seçtiği ve LangChain framework gibi bir arama terimi verdiği anlamına gelir. Daha sonra sonucu diske yazmak için saveTextToFile aracını çağırır. Yalnızca son cevabı istiyorsan bu adım adım görünümü kapatabilirsin.

Son çıktı yapılandırılmıştır. Bir Topic (Konu), bir Summary (Özet), kullandığı Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar) bölümü vardır. Video ayrıca proje klasöründe research_output.txt adlı bir dosyanın belirdiğini gösterir. Bu dosya araştırma metnini, bir zaman damgasını ve içeriği tutar; böylece sonuç daha sonra kullanılmak üzere saklanır.

Temel fikir şudur: ajan, Claude veya GPT gibi bir dil modelidir; ona verdiğiniz araçları çağırabilir, sonuçlarını okuyabilir ve bir cevaba ulaşana kadar devam edebilir. Gösterim küçüktür, ama aynı kalıp çok daha fazla aracı destekleyebilir.

Ana noktalar

  • Ajan, düz İngilizce bir isteği alır ve hangi araçları kullanacağına kendi başına karar verir. 0:26
  • Invoking: wikipedia, ajanın bir arama sorgusuyla bir aracı çağırdığını gösterir. 0:48
  • Son cevap yapılandırılmıştır: Topic (Konu), Summary (Özet), Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar). 1:06
  • Ajan, sonucunu özel saveTextToFile aracını kullanarak zaman damgasıyla birlikte bir metin dosyasına da kaydeder. 1:12
  • Bir araç, modele verdiğiniz bir fonksiyondur; modelin ne zaman ve nasıl çağıracağına model karar verir. 1:30

Alıştırma terminalinde birlikte yap

  1. Proje klasörünüzde (main.py dosyasının bulunduğu klasörde) bir terminal açın ve programı python main.py komutuyla çalıştırın.
    $ python main.py
    What should I research?
    Göreceğin: Program ne araştırmak istediğinizi sorar ve metninizi bekler.
  2. Bir araştırma isteği yazın ve Enter tuşuna basın. Kaydetme aracının kullanılması için bir dosyanın kaydedilmesini isteyin. Göreceğin: Ajan çalışmaya başlar ve ilk adımını yazdırır.
  3. wikipedia gibi bir aracın adını içeren Invoking satırına ve gönderdiği sorguya dikkat edin. Göreceğin: Ajanın hangi aracı seçtiğini ve neyi aradığını görebilirsiniz.
  4. Zincir bittiğinde yapılandırılmış raporu okuyun: Topic (Konu), Summary (Özet), Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar). Göreceğin: Temiz bir rapor alırsınız ve proje klasörünüzde research_output.txt dosyası belirir.

Alıştırma

Açıkla Çözümü kontrol edildi

Kendi cümlelerinizle açıklayın: bir YZ ajanı, düz bir sohbet botunun cevabının yapmadığı neyi yapar?

İpucu

Araçları düşünün: model, hafızasından cevap veren bir modelin yapamayacağı neleri ajan tek başına yapabilir?

Çözüm
  1. Düz bir model, zaten bildiklerinden cevap verir.
  2. Bir ajan, işi sırasında araç çağırabilir (örneğin Wikipedia araması veya dosyaya kaydetme fonksiyonu gibi).
  3. Araç sonuçlarını okur ve nihai bir cevap verebilene kadar sonraki adıma karar verir.

Bir ajan Wikipedia'da arama yapabilir veya dosya kaydedebilir, sonuçları okuyup sonraki adıma karar verebilir; düz bir sohbet botu ise yalnızca kendi bilgisinden cevap verir.

Yap Çözümü kontrol edildi

Demoyu veya herhangi bir örnek isteği kendiniz çalıştırın, ardından ajanın kullandığı araçları ve oluşturduğu dosyayı (varsa) listeleyin.

İpucu

Invoking ile başlayan satırlara ve sondaki Tools Used satırına bakın.

Çözüm
  1. Programı başlatın ve araştırma gerektiren bir istek yazın.
  2. Her Invoking satırını ve araç adını not edin.
  3. Tools Used satırını ve proje klasörünüzde yeni bir metin dosyası olup olmadığını kontrol edin.

Çağrılan araçların ve oluşturulan çıktı dosyasının listesi.

Karalama defterinde

Basit bir kutu diyagramı çizin: Sen (soru) -> Ajan (dil modeli) -> Araçlar (Wikipedia, dosyaya kaydetme) -> Son rapor. Her oktan geçen şeyi oklara yazın.

Test

  1. 'Invoking: wikipedia with {query: LangChain framework}' satırı neyi gösterir?

    1. Ajan işini bitirdi ve programı kapatıyor
    2. Ajan Wikipedia aracını seçti ve ona bir arama sorgusu gönderdi
    3. research_output.txt dosyası silindi
    4. Dil modeli çöktü
    Cevabı göster

    B. Ajan Wikipedia aracını seçti ve ona bir arama sorgusu gönderdi · Invoking, ajanın bir aracı çağırdığı anlamına gelir. Burada wikipedia aracını LangChain framework sorgusuyla çağırmıştır. (Videoda bu, 0:53 ve 0:48 anlarında gösterilir.)

    0:53 o anı izle
  2. Bunlardan hangisi demodaki son yapılandırılmış çıktının parçasıdır?

    1. Topic (Konu), Summary (Özet), Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar)
    2. Python paket sürümlerinin listesi
    3. main.py dosyasının kaynak kodu
    4. Yanıt sürelerinin grafiği
    Cevabı göster

    A. Topic (Konu), Summary (Özet), Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar) · Son rapor bir Topic (Konu), bir Summary (Özet), kullandığı Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar) bölümünü içerir. (1:06'da gösterilir.)

    1:06 o anı izle
  3. Kaydedilen araştırma nereye gider?

    1. Yalnızca terminal geçmişinde kalır ve sonra kaybolur
    2. Proje klasöründeki research_output.txt adlı bir metin dosyasına
    3. Videonun yazarına ait uzak bir sunucuya
    4. Yalnızca Python yorumlayıcısının belleğinde
    Cevabı göster

    B. Proje klasöründeki research_output.txt adlı bir metin dosyasına · saveTextToFile aracı, zaman damgası dahil içeriği editörün sol tarafındaki research_output.txt dosyasına yazar. (1:12'de gösterilir.)

    1:12 o anı izle

1. dersi videoyla aç →

2–9. dersler ve final projesi

Beyond Pass ile açılırlar: her kursun her dersi, eksiksiz. Tek ödeme: 90 gün için $14.99 ya da bir yıl için $29. Abonelik yok.

Beyond, Tech With Tim kanalının “Build an AI Agent From Scratch in Python - Tutorial for Beginners” videosundan yaptı. Video YouTube’un kendi oynatıcısında oynar. YouTube’da izle · Bütün dersler