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
Tamamlanmış araştırma asistanının gösterimi Ücretsiz
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
Proje klasörünü ve sanal ortamı kurma Beyond Pass
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
Seçilecek bir LLM ve API Anahtarlarını Yükleme Beyond Pass
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
Defining a Pydantic schema and prompt template Beyond Pass
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
Creating the tool-calling agent and executor Beyond Pass
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
Agent çıktısını ayrıştırma ve hataları yönetme Beyond Pass
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
Giving your agent a search tool (DuckDuckGo) Beyond Pass
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
Ajana Wikipedia aracı eklemek Beyond Pass
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
Writing a custom save-to-file tool Beyond Pass
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.
Dersin komutlarını yaz, boz ve nedenini gör.
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
- 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. Göreceğin: Program ne araştırmak istediğinizi sorar ve metninizi bekler.
$ python main.py What should I research?
- 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.
- 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.
- 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
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
- Düz bir model, zaten bildiklerinden cevap verir.
- Bir ajan, işi sırasında araç çağırabilir (örneğin Wikipedia araması veya dosyaya kaydetme fonksiyonu gibi).
- 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.
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
- Programı başlatın ve araştırma gerektiren bir istek yazın.
- Her Invoking satırını ve araç adını not edin.
- 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
'Invoking: wikipedia with {query: LangChain framework}' satırı neyi gösterir?
- Ajan işini bitirdi ve programı kapatıyor
- Ajan Wikipedia aracını seçti ve ona bir arama sorgusu gönderdi
- research_output.txt dosyası silindi
- 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ı izleBunlardan hangisi demodaki son yapılandırılmış çıktının parçasıdır?
- Topic (Konu), Summary (Özet), Sources (Kaynaklar) ve Tools Used (Kullanılan Araçlar)
- Python paket sürümlerinin listesi
- main.py dosyasının kaynak kodu
- 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ı izleKaydedilen araştırma nereye gider?
- Yalnızca terminal geçmişinde kalır ve sonra kaybolur
- Proje klasöründeki research_output.txt adlı bir metin dosyasına
- Videonun yazarına ait uzak bir sunucuya
- 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
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
