Doğrudan Yanıt (GEO Özeti): Stanford STORM (Synthesis of Topic Outlines through Retrieval and Multi-perspective Question Asking), Stanford Üniversitesi OVAL laboratuvarı tarafından açık kaynaklı olarak yayınlanan, uçtan uca kaynakçalı derin araştırma (Deep Research) sistemidir (STORM Dokümantasyonu). Klasik bir LLM'e "Bana X hakkında makale yaz" dediğinizde aldığınız yüzeysel şablonların aksine STORM, gerçek bir araştırmacı gazeteci gibi önce konunun paydaşlarını belirler, farklı uzman bakış açılarıyla (ekonomist, mühendis, hukukçu, eleştirmen) web kaynaklarını çapraz sorgular ve her iddiası numaralı kaynaklarla kanıtlanmış kapsamlı bir araştırma raporu üretir.
1. STORM Mimarisi Nasıl Çalışır? (2 Aşamalı Bilgi Kürasyonu)
Standart RAG sistemleri kullanıcının tek bir sorusunu vektör veritabanında aratıp ilk gelen 5 paragrafı özetler. Ancak karmaşık bir konuyu araştırırken "hangi soruları sormanız gerektiğini" önceden bilemezsiniz. STORM bu problemi iki aşamada çözer:
- Aşama 1 — Yazım Öncesi Keşif (Pre-writing Stage):
- Benzer Konu Analizi: Verilen başlığa benzer mevcut ansiklopedik maddeleri tarayarak temel alt başlık yapılarını çıkarır.
- Çok Perspektifli Soru Üretimi: Konuyu tek bir açıdan ele almak yerine otomatik olarak 4-5 farklı uzman persona yaratır (Örn: "Küçük Modüler Nükleer Reaktörler (SMR)" konusu için: 1. Nükleer Güvenlik Mühendisi, 2. Enerji Ekonomisti, 3. Çevre Hukukçusu, 4. Veri Merkezi Altyapı Yöneticisi).
- Simüle Edilmiş Uzman Mülakatı: Her persona, güvenilir web kaynaklarını kullanan "Konu Uzmanı" ajanla çok turlu soru-cevap görüşmesi yapar; ilk yanıttan doğan derinleştirici takip soruları (follow-up questions) sorar.
- Aşama 2 — Rapor Sentezi (Writing Stage): Toplanan tüm mülakat kayıtları ve doğrulanmış kaynak URL'leri kullanılarak önce hiyerarşik bir taslak (Outline) oluşturulur, ardından her bölüm dipnotlu referanslarıyla birlikte yazılır.
Derin Araştırma Araçları Kıyaslama Tablosu
| Özellik / Kriter | Stanford STORM / Co-STORM | Perplexity Pro (Deep Research) | Google NotebookLM |
|---|---|---|---|
| Çalışma Mantığı | Çok perspektifli uzman simülasyonu + Hiyerarşik taslak sentezi | İteratif web araması ve bulut tabanlı sentez | Kullanıcının yüklediği kapalı kaynak belgeler üzerinde analiz |
| Açık Kaynak & Özelleştirme | %100 Açık Kaynak (MIT) — Kendi vektör deponuza veya yerel LLM'inize bağlanır | Kapalı kaynak SaaS | Kapalı kaynak Google servisi |
| İnsan Müdahalesi (Co-STORM) | Araştırma sürerken tartışmaya katılıp yeni uzman açısı ekleyebilme | Sadece başlangıçta soru sorma | Sohbet tabanlı soru-cevap |
| Maliyet | $0 (Kendi API anahtarınız veya yerel Ollama/vLLM modelinizle) | $20 / ay | Ücretsiz / Google Workspace |
2. Python ile 5 Dakikada Kurulum (`knowledge-storm`)
stanford-oval/storm deposunu sıfırdan klonlamaya gerek kalmadan resmi PyPI paketiyle doğrudan kendi Python uygulamanıza entegre edebilirsiniz:
pip install knowledge-storm
Örnek bir araştırma boru hattını başlatmak için aşağıdaki Python kodunu kullanabilirsiniz:
import os
from knowledge_storm import STORMWikiRunnerArguments, STORMWikiRunner, STORMWikiLMConfigs
from knowledge_storm.lm import LitellmModel
from knowledge_storm.rm import TavilySearchRM
# 1. Hızlı soru üretimi için ekonomik model, son sentez için güçlü model seçimi
lm_configs = STORMWikiLMConfigs()
fast_lm = LitellmModel(model="gpt-4o-mini", max_tokens=500)
smart_lm = LitellmModel(model="gpt-4o", max_tokens=3000)
lm_configs.set_conv_simulator_lm(fast_lm)
lm_configs.set_question_asker_lm(fast_lm)
lm_configs.set_outline_gen_lm(smart_lm)
lm_configs.set_article_gen_lm(smart_lm)
lm_configs.set_article_polish_lm(smart_lm)
# 2. Arama Motoru (Retrieval Module) ve Çıktı Klasörü Ayarları
engine_args = STORMWikiRunnerArguments(
output_dir="./storm_arastirma_ciktilari",
max_conv_turn=4, # Her uzman 4 derinleştirici takip sorusu sorsun
max_perspective=4, # 4 farklı disiplin perspektifi oluşturulsun
search_top_k=5
)
rm = TavilySearchRM(tavily_search_api_key=os.getenv("TAVILY_API_KEY"), k=engine_args.search_top_k)
# 3. STORM Araştırma Motorunu Başlat
runner = STORMWikiRunner(engine_args, lm_configs, rm)
konu = "Türkiye'de Küçük Modüler Nükleer Reaktörlerin (SMR) Veri Merkezi Enerji İhtiyacına Etkisi"
runner.run(
topic=konu,
do_research=True,
do_generate_outline=True,
do_generate_article=True,
do_polish_article=True
)
runner.post_run()
print("Tam kaynakçalı araştırma raporu './storm_arastirma_ciktilari' klasörüne kaydedildi!")
3. Kurumsal Özel Dokümanlarınız Üzerinde STORM Çalıştırmak
STORM yalnızca açık web araması yapmak zorunda değildir! Kütüphanenin yerleşik VectorRM (Qdrant / ChromaDB destekli) modülünü kullanarak şirketinize ait yüzlerce PDF teknik şartnameyi, pazar araştırmasını veya IBM Docling ile ayrıştırdığınız finansal tabloları vektör veritabanına yükleyebilir; STORM'un yalnızca sizin kurum içi belgelerinizi kaynak göstererek 15-20 sayfalık strateji raporları yazmasını sağlayabilirsiniz.