0Pricing
AI Agents · Ders

Web'de Gezen Araştırma Aracısı

Bir arama aracını, bir getirme aracını ve bir LLM'yi birleştirerek bir konuyu araştırın ve kaynaklı bir özet yazın.

Web'de Gezen Araştırma Aracısı, CoddyKit'te ücretsiz bir AI Agents dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Agents öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Agents kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

Proje Hedefi

Web'de arama yapan, sayfaları getiren ve kaynak gösteren bir özet yazan bir konu araştırma ajanı oluşturun — Perplexity'nin küçük bir sürümü gibi.

İhtiyacınız Olan Araçlar

  1. search — bir arama API'sini (Tavily, Serper, Brave) sorgulayın ve sonuçları döndürün
  2. fetch_url — bir sayfayı indirin ve temizlenmiş metni döndürün
  3. answer — ajan, kaynak gösteren son özeti yazar

Step 1: Search Tool

import requests

def search(query: str, k: int = 5) -> list[dict]:
    r = requests.post(
        'https://api.tavily.com/search',
        json={'api_key': TAVILY_KEY, 'query': query, 'max_results': k}
    )
    return r.json()['results']   # list of {url, title, snippet}

Step 2: Fetch Tool

from bs4 import BeautifulSoup

def fetch_url(url: str) -> str:
    r = requests.get(url, timeout=10)
    soup = BeautifulSoup(r.text, 'html.parser')
    for tag in soup(['script', 'style', 'nav', 'footer']):
        tag.decompose()
    return soup.get_text(separator='\n', strip=True)[:5000]   # truncate

Step 3: Tool Definitions

tools = [
    {'type': 'function', 'function': {
        'name': 'search',
        'description': 'Search the web for a query, return top results with URLs',
        'parameters': {'type': 'object', 'properties': {'query': {'type': 'string'}}, 'required': ['query']}
    }},
    {'type': 'function', 'function': {
        'name': 'fetch_url',
        'description': 'Download the text of a URL',
        'parameters': {'type': 'object', 'properties': {'url': {'type': 'string'}}, 'required': ['url']}
    }}
]
import json
print(json.dumps(tools, indent=2))

Step 4: The Agent Loop

def research(question, max_steps=8):
    messages = [
        {'role': 'system', 'content': 'You are a research agent. Use search and fetch_url to gather facts. Cite each claim with a URL.'},
        {'role': 'user', 'content': question}
    ]
    for _ in range(max_steps):
        r = oai.chat.completions.create(model='gpt-4o-mini', messages=messages, tools=tools)
        msg = r.choices[0].message
        messages.append(msg)
        if not msg.tool_calls:
            return msg.content
        for tc in msg.tool_calls:
            result = dispatch(tc)
            messages.append({'role': 'tool', 'tool_call_id': tc.id, 'content': json.dumps(result)})
    return 'Step limit reached'

Tool Dispatcher

def dispatch(tc):
    args = json.loads(tc.function.arguments)
    if tc.function.name == 'search':
        return search(**args)
    if tc.function.name == 'fetch_url':
        return fetch_url(**args)
    return {'error': 'unknown tool'}

Adım Sınırı Ekleme

Sınır olmazsa ajan sonsuza kadar döngüde kalabilir. max_steps=8 makul bir varsayılandır.

Getirilen Sayfaları Kısaltma

Çoğu sayfa 50 KB veya daha büyüktür — fazlasıyla büyük. 5000 karaktere (yaklaşık 1300 belirteç) kısaltın. Modelin daha fazlasına nadiren ihtiyacı olur.

robots.txt'ye Uyun

Üretim ortamında gezinme, robots.txt dosyasına ve sitenin Hizmet Koşulları'na uymalıdır. Şüpheye düştüğünüzde yönetilen bir arama/getirme hizmeti kullanın.

Sonuçları Önbelleğe Alma

Aynı sorgu ve URL sık sık istenir. Sonuçları Redis'te bir saat boyunca önbelleğe alın:

@lru_cache(maxsize=1000)
def cached_fetch(url):
    return fetch_url(url)

Hataları İşleme

Ağ hataları olağandır. Hatayı modele döndürün; böylece başka bir kaynağı deneyebilir:

try:
    return fetch_url(url)
except Exception as e:
    return {'error': f'Could not fetch {url}: {e}'}

Kaynak Atıflarını Zorunlu Kılma

Sistem istemini şu ifadeyle bitirin: "Son yanıtınız [1] https://... biçiminde her iddia için bir URL içermelidir." — ayrıca bir çıktı şeması kontrolü eklemeyi düşünün.

Maliyeti İzleme

Araştırma ajanları pahalıdır — soru başına 5-15 araç çağrısı yapılır ve her biri kilobaytlarca veri getirir. Sorgu başına bir bütçe sınırı belirleyin.

Adım Sınırı

Ajan döngüsünde neden bir max_steps sınırı belirlemelisiniz?

Özet

search + getirme + LLM + bir adım sınırı = 50 satırda çalışan bir araştırma ajanı. Harika 3. proje.

Sıkça Sorulan Sorular

“Web'de Gezen Araştırma Aracısı” dersi ücretsiz mi?

Evet — “Web'de Gezen Araştırma Aracısı” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Agents kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Agents kursu toplamda 4 dersten oluşur.

“Web'de Gezen Araştırma Aracısı” dersinde ne öğreneceğim?

Bir arama aracını, bir getirme aracını ve bir LLM'yi birleştirerek bir konuyu araştırın ve kaynaklı bir özet yazın. AI Agents ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Agents öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Agents, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Web'de Gezen Araştırma Aracısı” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Agents dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Agents dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Belgeleriniz Üzerinde Soru-Cevap Botu
  2. Kod Açıklayan Bir Aracı
  3. Web'de Gezen Araştırma Aracısı
  4. DB'niz için SQL Asistanı
← AI Agents Sayfasına Dön