Ana içeriğe atla

Claude 3.7 Sonnet API: Demo Projeyle Bir Rehber

Yüklenen PDF'lerden içgörüler çıkarmak için Gradio tabanlı bir Araştırma Makalesi Analizörü oluşturarak Claude 3.7 Sonnet'in API'sini nasıl kullanacağınızı öğrenin.
Güncel 3 Eki 2026  · 12 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Claude 3.7 Sonnet, Anthropic'in en yeni yapay zeka modeli olup, yeni Düşünme Modu sayesinde geliştirilmiş akıl yürütme yetenekleri sunar. 200 bin tokenlık bağlam işleyebilir, bu da onu karmaşık araştırma analizleri için ideal kılar.

Bu öğreticide, Claude 3.7 Sonnet kullanarak bir Araştırma Makalesi Analizörünü adım adım nasıl oluşturacağınızı açıklayacağım. Bu araç şunları yapabilir: 

  • Araştırma makalelerinden temel içgörüleri ve bulguları çıkarmak.
  • Her makalenin sınırlamalarını ve eksikliklerini belirlemek.
  • Birden çok makale arasındaki bağlantıları ve ortak atıfları bulmak.
  • Analiz edilen makalelere dayanarak yeni bir araştırma fikri üretmek.

Ayrıca, kullanıcıların birden fazla araştırma makalesi yükleyip yapılandırılmış içgörüler alabilmesi için Claude 3.7 Sonnet'in Düşünme Modunu Gradio ile entegre edeceğiz.

Bu blogda uygulamaya odaklanacağız—yalnızca genel bir bakış arıyorsanız, Claude 3.7 Sonnet üzerine bu makaleyi öneririm.

Ayrıca net bir demo arıyorsanız, Claude 3.7 Sonnet API video eğitimimize göz atın ve çok modlu bir araştırma asistanı oluşturun. Videomuz, Anthropic API kurulumuna nasıl erişileceğini, PyPDF2 ile PDF'lerin nasıl çıkarılıp işlendiğini, Claude 3.7'nin düşünme modunun nasıl kullanılacağını ve Gradio ile gerçek bir araştırma asistanının nasıl oluşturulacağını adım adım gösterir. En yeni Claude modelini, Claude Sonnet 4.5'i ve Claude Agent SDK'yı da inceleyebilirsiniz. 

Proje Genel Bakış: Claude 3.7 Sonnet ile Araştırma Makalesi Analizörü

Kullanıcıların şunları yapabilmesini sağlayan Gradio tabanlı bir Araştırma Makalesi Analizörü geliştireceğiz: 

  • PDF formatında birden çok araştırma makalesi yüklemek.
  • Her makaleden temel katkıları ve sınırlamaları çıkarmak.
  • Bağlantıları, atıfları ve örtüşen araştırma fikirlerini belirlemek.
  • Birden çok makaleden elde edilen içgörülerle yeni bir araştırma fikri üretmek.

Maliyetlerin optimize edilmesi

Claude 3.7 Sonnet API maliyetlerini optimize etmek için kullanımını proje ihtiyaçlarıyla hizalamamız gerekir; çünkü giriş tokenları $3/M ve Düşünme Modu dahil çıkış tokenları $15/M maliyetlidir.

Giderleri istem önbellekleme, toplu işleme ve uzun yanıtlarda akış modu kullanarak azaltmalıyız. Hatta Düşünme Modunu daha düşük bir token bütçesi (1.024 tokendan başlayarak) belirleyip yalnızca gerektiğinde artırarak optimize edebiliriz.

API maliyetini optimize etme hakkında daha fazla bilgiyi Anthropic’in resmi dokümantasyonunda bulabilirsiniz.

Claude 3.7 Sonnet’te Düşünme Modu nedir?

Başlamadan önce, aşina olmayanlar için düşünme modunun ne olduğuna kısaca değinelim. Düşünme Modu, Claude 3.7 Sonnet’te nihai yanıtı üretmeden önce adım adım akıl yürütmeyi etkinleştiren yeni bir özelliktir. Modele şunları sağlar: 

  • Karmaşık araştırma sorunlarını yapılandırılmış, mantıksal adımlara ayırmak.
  • Dahili akıl yürütmesine ilişkin şeffaf içgörüler sunmak.
  • Araştırma analizinde hayal görmeyi önleyerek bilimsel doğruluğu artırmak.

Özetle, çalışma biçimi şöyledir:

  • Düşünme bloklarının oluşturulması: Claude önce, sorunun derinlemesine analizini ve mantıksal ayrıştırmasını kolaylaştıran yapılandırılmış biçimde ara akıl yürütme adımları üretir.
  • Yinelemeli iyileştirme: Model, kendi akıl yürütmesini değerlendirir; tutarlılığı ve bilimsel geçerliliği sağlamak için ilgili içgörüleri entegre edip tutarsızlıkları filtreler.
  • Nihai yanıtın sentezi: Düşünme aşamasındaki yapılandırılmış içgörüler, netlik, doğruluk ve bağlamsal uygunluğu artıracak şekilde iyi formüle edilmiş bir çıktıya dönüştürülür.

Adım 1: Önkoşullar

Başlamadan önce Anthropic API anahtarını ayarlamamız gerekiyor:

1. Anthropic konsoluna giriş yaparak başlayın: https://console.anthropic.com/

2. Get API Keys seçeneğine tıklayın.

API Anahtarı Alma penceresi

3. API Keys sekmesine yönlendirileceksiniz. Create API Key seçeneğine tıklayın ve anahtarınıza bir ad verin.

API Anahtarı Oluştur penceresi

4. Bu anahtarı kopyalayıp daha sonra başvurmak üzere saklayın.

5. Şimdi Billing sekmesi altından fatura hesabınıza kredi ekleyin. Kredileri satın al’a tıklayıp hesabınıza yaklaşık 5 $ ekleyin (bu proje için yeterlidir).

Artık API Anahtarımız hazır. Şimdi gerekli bağımlılıkların kurulu olduğundan emin olalım.

pip install anthropic gradio PyPDF2

Kurulum tamamlandıktan sonra gerekli kütüphaneleri içe aktarın:

import anthropic
import PyPDF2
import os
import gradio as gr

Adım 2: Claude 3.7 Sonnet API'ini Kurma

Gerekli tüm kütüphaneleri içe aktardığımıza göre sırada Claude API'ini kurmak var.

Google Colab kullanıyorsanız, API anahtarını Secrets sekmesine kaydedip get() fonksiyonuyla erişebilirsiniz. Aksi halde, API anahtarını doğrudan kodunuza geçebilirsiniz (önerilmez).

Daha sonra Anthropic kütüphanesini kullanarak Claude istemcisini başlatır ve API anahtarını iletiriz.

# If using Google Colab Secrets
from google.colab import userdata
API_KEY = userdata.get('claude-3.7-sonnet')
client = anthropic.Anthropic(
    api_key=API_KEY,
)

Kurulum kısmını tamamladık. Sırada metin çıkarma bölümü var.

Adım 3: Araştırma Makalelerinden Metin Çıkarma

Yüklenen PDF dosyalarından metin çıkarmak için PyPDF2 kullanacağız. Claude 3.7 Sonnet girdi olarak yalnızca metin ve görselleri kabul eder. Bu nedenle, verimli işleme için metni önceden çıkarıp Düşünme Moduyla Claude 3.7 Sonnet'in yeteneklerini en üst düzeye çıkarırız.

# Function to extract text from a PDF file
def extract_text_from_pdf(pdf_path):
    """Extracts text from a given PDF file."""
    text = ""
    with open(pdf_path, "rb") as f:
        reader = PyPDF2.PdfReader(f)
        for page in reader.pages:
            text += page.extract_text() + "\n"
    return text.strip()

extract_text_from_pdf() fonksiyonu bir PDF dosyasını okur, her sayfadan PyPDF2.PdfReader() kullanarak metni çıkarır ve birleşik metni bir dize olarak döndürür. 

Adım 4: Araştırma Makalesi Analizini Çalıştırma

Artık çıkarılmış metne sahip olduğumuza göre, birden çok makaleyi analiz etmek ve yapılandırılmış bir araştırma fikri üretmek için Claude 3.7 Sonnet'in düşünme ve akış modunu kullanmaya geçiyoruz.

Akış modu, büyük yanıtların aşamalı olarak iletilmesini sağlayarak bekleme sürelerini azaltır ve API zaman aşımı riskini düşürür. Düşünme modu ise, modelin nihai yanıtı oluşturmadan önce yapılandırılmış içsel düşünceler üretmesine olanak tanıyarak karmaşık akıl yürütmeyi güçlendirir ve gerekçelendirilmiş içgörüler sağlar. 

# Function to analyze research papers with streaming
def analyze_papers_streaming(paper_texts, paper_count):
    """Uses Claude 3.7 Sonnet with Thinking Mode in streaming mode to analyze papers, find drawbacks, and generate a research project."""
    formatted_papers = "\n\n".join([f"### Paper {i+1}:\n{paper}" for i, paper in enumerate(paper_texts)])    
    prompt = f"""
        You are an AI research assistant. You have been provided with {paper_count} research papers. 
        Your task is to analyze these papers and perform the following:
        1. **Summarize each paper** with its core contributions and findings.
        2. **Identify key drawbacks** of each paper, focusing on limitations, gaps, or areas needing improvement.
        3. **Find interconnections and citations** between the papers—what ideas, methods, or datasets do they share?
        4. **Propose a novel research idea** that addresses a major limitation across these papers. 
            - Suggest how techniques from different papers can be combined to solve a problem.
            - Ensure the idea is practical and feasible for further research.
            - Justify why this approach is promising.
        Below are the research papers
        {formatted_papers}
    """
    results = {"thinking": "", "research_idea": ""}   
    with client.messages.stream(
        model="claude-3-7-sonnet-20250219",
        max_tokens=25000,
        thinking={
            "type": "enabled",
            "budget_tokens": 16000  # Large budget for deep reasoning
        },
        messages=[{"role": "user", "content": prompt}]
    ) as stream:
        current_block_type = None        
        for event in stream:
            if event.type == "content_block_start":
                current_block_type = event.content_block.type
            elif event.type == "content_block_delta":
                if event.delta.type == "thinking_delta":
                    results["thinking"] += event.delta.thinking
                elif event.delta.type == "text_delta":
                    results["research_idea"] += event.delta.text           
            elif event.type == "message_stop":
                break
    return results["thinking"], results["research_idea"]

analyze_papers_streaming() fonksiyonu şu adımları gerçekleştirir: 

  1. Girdi makalelerini biçimlendirir: Fonksiyon, çıkarılmış araştırma makalesi metinlerinin listesini ve makale sayısını alıp istem için yapılandırır.
  2. Claude 3.7 Sonnet için bir istem oluşturur: İstem, modele şunları yapmasını söyler:
  • Her makaleyi özetlemek.
  • Temel eksiklikleri belirlemek.
  • Makaleler arasındaki bağlantıları bulmak.
  • Farklı makalelerdeki teknikleri birleştirerek yeni bir araştırma fikri üretmek.
  1. Akışlı API isteğini başlatır: İstem ayarlandıktan sonra, client.messages.stream() kullanarak isteği Claude 3.7 Sonnet'e göndeririz. Bu, budget_tokens=16000 ile düşünme modunu ve geniş yanıt uzunluğu için max_tokens=25000 değerini etkinleştirir.
  2. Akış yanıtlarını işler: Fonksiyon, akış halinde gelen yanıt olaylarını yineleyerek farklı yanıt bloklarını tanımlar. Akış etkinleştirildiğinde model içeriği kademeli olarak gönderir. Bir yanıt bloğunun başlangıcını belirtmek için content_block_start olaylarını alırız. Model çıktı ürettikçe thinking_delta olayları ara akıl yürütme adımlarını, text_delta olayları ise nihai araştırma içgörülerini içerir. Süreç, yanıtın tamamlandığını bildiren message_stop olayıyla sona erer.
  3. Analiz sonuçlarını döndürür: Nihai çıktılar, modelin dahili akıl yürütme sürecini ve sağlanan makalelerden elde edilen içgörülerle oluşturulan nihai araştırma fikrini içeren iki yapılandırılmış yanıttır.

Genişletilmiş düşünme için istem oluşturma tekniklerini iyileştirme hakkında daha fazla bilgiyi burada bulabilirsiniz.

Adım 5: Gradio Arayüzünü Oluşturma

Artık ana mantığımız hazır olduğuna göre, bunu Gradio ile entegre etmeye devam ediyoruz. Böylece kullanıcılar araştırma makaleleri yükleyip yapılandırılmış içgörüler alabilecek.

# Gradio UI function
def gradio_interface(pdfs):
    paper_texts = [extract_text_from_pdf(pdf.name) for pdf in pdfs]
    paper_count = len(paper_texts)  # Count number of provided papers
    thinking, research_idea = analyze_papers_streaming(paper_texts, paper_count)
    return thinking, research_idea

# Set up the Gradio app
demo = gr.Interface(
    fn=gradio_interface,
    inputs=gr.File(file_types=[".pdf"], label="Upload Research Papers", file_count="multiple"),
    outputs=[gr.Textbox(label="Thinking Process"), gr.Textbox(label="Research Idea")],
    title="Claude 3.7 Sonnet - Powered Research Paper Analyzer",
    description="Upload multiple research papers to extract insights, identify key limitations, and generate a novel research idea."
)
if __name__ == "__main__":
    demo.launch(debug=True)

Yukarıdaki kod, kullanıcıların birden çok PDF yükleyebileceği bir Gradio arayüzü kurar; PDF'ler metin çıkarmak üzere işlenir, temel içgörüler analiz edilir ve düşünme ve akış modu kullanılarak yeni araştırma fikirleri üretilir.

Demonun Gradio arayüzü

Sonuç

Bu öğreticide, Claude 3.7 Sonnet kullanarak araştırmacıların birden çok makaleden içgörüleri verimli biçimde çıkarmasına, sınırlamaları belirlemesine ve yeni araştırma fikirleri üretmesine olanak tanıyan yapay zeka destekli bir Araştırma Makalesi Analizörü oluşturduk. Düşünme modunu kullanarak model derin akıl yürütme yapar ve bu da onu literatür taramaları ve araştırma sentezi için etkili bir araç haline getirir.

Yapay Zeka Uygulamaları Geliştirin

OpenAI API'sını kullanarak AI uygulamaları oluşturmayı öğrenin.
Ücretsiz Olarak Beceri Geliştirmeye Başlayın

Aashi Dutt's photo
Author
Aashi Dutt
LinkedIn
Twitter

ML (Üretken Yapay Zekâ) alanında Google Developers Uzmanıyım, Kaggle 3x Expert unvanına sahibim ve 3+ yıllık teknoloji deneyimiyle Women Techmakers Elçisiyim. 2020'de bir sağlık teknolojileri girişiminin kurucu ortağı oldum ve Georgia Tech'te makine öğrenmesi alanında uzmanlaşarak bilgisayar bilimleri yüksek lisansı yapıyorum.

Konular
Yapay Zeka
Büyük Dil Modelleri

Bu kurslarla yapay zekayı öğrenin!

{count, plural, one {Program} other {Program}}

Yapay Zeka Uygulamaları Geliştirme

{hours} sa
OpenAI API, Hugging Face ve LangChain dahil olmak üzere en yeni yapay zeka geliştirici araçlarıyla yapay zeka destekli uygulamalar oluşturmayı öğrenin.
Ayrıntıları GörüntüleRight Arrow
Kursa Başla
Devamını GörRight Arrow
İlgili

{count, plural, one {blog} other {blog}}

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

{count, plural, one {blog} other {blog}}

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

{count, plural, one {Eğitim} other {Eğitim}}

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

{count, plural, one {Eğitim} other {Eğitim}}

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Devamını GörDevamını Gör