1. Genel Bakış
Bu codelab'de, Google'ın Agent Development Kit (ADK), Neo4j Graph Database ve Model Context Protocol (MCP) Toolbox'ın gücünü birleştiren gelişmiş bir çok ajanlı yatırım araştırma sistemi oluşturacaksınız. Bu uygulamalı eğitimde, grafik ilişkileri aracılığıyla veri bağlamını anlayan ve son derece doğru sorgu yanıtları veren akıllı temsilcilerin nasıl oluşturulacağı gösterilmektedir.
Neden GraphRAG + Çoklu Aracı Sistemleri?
GraphRAG (Grafik Tabanlı Veriyle Artırılmış Üretim), bilgi grafiklerinin zengin ilişki yapısından yararlanarak geleneksel RAG yaklaşımlarını geliştirir. GraphRAG aracıları, yalnızca benzer belgeleri aramak yerine şunları yapabilir:
- Varlıklar arasındaki karmaşık ilişkilerde gezinme
- Grafik yapısı aracılığıyla bağlamı anlama
- Bağlı verilere dayalı olarak açıklanabilir sonuçlar sunma
- Bilgi grafiğinde çok adımlı akıl yürütme gerçekleştirme
Çoklu aracı sistemleri şunları yapmanıza olanak tanır:
- Karmaşık sorunları özelleşmiş alt görevlere ayırma
- Modüler ve bakımı kolay yapay zeka uygulamaları oluşturun
- Paralel işlemeyi ve verimli kaynak kullanımını etkinleştirme
- Orkestrasyon ile hiyerarşik akıl yürütme kalıpları oluşturma
Ne oluşturacaksınız?
Aşağıdakileri içeren eksiksiz bir yatırım araştırma sistemi oluşturacaksınız:
- Graph Database Agent: Cypher sorgularını yürütür ve Neo4j şemasını anlar.
- Yatırımcı Araştırma Aracısı: Yatırımcı ilişkilerini ve yatırım portföylerini keşfeder.
- Yatırım Araştırması Asistanı: MCP araçları aracılığıyla kapsamlı bilgi grafiklerine erişir.
- Kök Temsilci: Tüm alt temsilcileri akıllıca yönetir.
Sistem, aşağıdaki gibi karmaşık soruları yanıtlar:
- "YouTube'un başlıca rakipleri kimler?"
- Ocak 2023'te hangi şirketlerden olumlu bir şekilde bahsedildi?
- "ByteDance'e kim yatırım yaptı ve başka nerelere yatırım yaptı?"
Mimariye Genel Bakış

Bu codelab'de, kurumsal düzeyde GraphRAG aracı oluşturmanın hem kavramsal temellerini hem de pratik uygulamasını öğreneceksiniz.
Neler öğreneceksiniz?
- Google'ın Agent Development Kit'ini (ADK) kullanarak birden fazla temsilci sistemi oluşturma
- Neo4j grafik veritabanını GraphRAG uygulamaları için ADK ile entegre etme
- Önceden doğrulanmış veritabanı sorguları için Model Context Protocol (MCP) Araç Kutusu'nu uygulama
- Akıllı temsilciler için özel araçlar ve işlevler oluşturma
- Aracı hiyerarşilerini ve düzenleme kalıplarını tasarlama
- Optimum performans için aracı talimatlarını yapılandırma
- Çoklu aracı etkileşimlerinde etkili bir şekilde hata ayıklama
Gerekenler
- Chrome web tarayıcısı
- Gmail hesabı
- Faturalandırmanın etkin olduğu bir Google Cloud projesi
- Terminal komutları ve Python hakkında temel bilgi (faydalı ancak zorunlu değil)
Her seviyeden geliştirici (yeni başlayanlar dahil) için tasarlanan bu codelab'de örnek uygulamada Python ve Neo4j kullanılır. Python ve grafik veritabanları hakkında temel bilgi sahibi olmak faydalı olsa da kavramları anlamak veya takip etmek için önceden deneyim sahibi olmanız gerekmez.
2. GraphRAG ve çoklu aracı sistemlerini anlama
Uygulamaya geçmeden önce bu sistemi destekleyen temel kavramları anlayalım.
Neo4j, verileri bir düğüm (varlık) ve ilişki (varlıklar arasındaki bağlantılar) ağı olarak depolayan, alanında lider bir yerel grafik veritabanıdır. Bu nedenle, bağlantıları anlamanın önemli olduğu kullanım alanları (ör. öneriler, sahtekarlık tespiti, bilgi grafikleri vb.) için idealdir. Sert tablolara veya hiyerarşik yapılara dayanan ilişkisel ya da belge tabanlı veritabanlarının aksine, Neo4j'nin esnek grafik modeli, karmaşık ve birbirine bağlı verilerin sezgisel ve verimli bir şekilde gösterilmesine olanak tanır.
Neo4j, verileri ilişkisel veritabanları gibi satırlar ve tablolar halinde düzenlemek yerine grafik modeli kullanır. Bu modelde bilgiler düğümler (varlıklar) ve ilişkiler (bu varlıklar arasındaki bağlantılar) olarak gösterilir. Bu model, doğası gereği bağlantılı olan verilerle (ör. kişiler, yerler, ürünler veya bizim durumumuzda filmler, aktörler ve türler) çalışmayı son derece kolaylaştırır.
Örneğin, bir film veri kümesinde:
- Bir düğüm
Movie,ActorveyaDirectoröğesini temsil edebilir. - İlişki
ACTED_INveyaDIRECTEDolabilir.

Bu yapı, aşağıdaki gibi soruları kolayca sormanıza olanak tanır:
- Bu oyuncu hangi filmlerde rol aldı?
- Christopher Nolan ile kimler çalıştı?
- Ortak oyunculara veya türlere göre benzer filmler hangileridir?
GraphRAG nedir?
Veriyle Artırılmış Üretim (RAG), harici kaynaklardan alakalı bilgileri alarak LLM yanıtlarını geliştirir. Geleneksel RAG genellikle:
- Dokümanları vektörlere yerleştirir.
- Benzer vektörler için aramalar
- Alınan belgeleri LLM'ye iletir.
GraphRAG, bilgi grafikleri kullanarak bu özelliği genişletir:
- Varlıkları ve ilişkileri yerleştirir.
- Grafik bağlantılarını geçme
- Çok adımlı bağlam bilgilerini alır
- Yapılandırılmış ve açıklanabilir sonuçlar sunar
Yapay Zeka Temsilcileri İçin Neden Grafikler?
Şu soruyu ele alalım: "YouTube'un rakipleri kimler ve hem YouTube'u hem de rakiplerini hangi yatırımcılar finanse etti?"
Geleneksel RAG yaklaşımında neler olur?
- YouTube'un rakipleriyle ilgili belgeler için yapılan aramalar
- Yatırımcı bilgilerini ayrı ayrı arar
- Bu iki bilgiyi bağlamakta zorlanıyor
- Örtülü ilişkileri kaçırabilir.
GraphRAG yaklaşımında neler olur?
MATCH (org:Organization {name: "OpenAI"})-[:HAS_COMPETITOR]-(competitor:Organization)
MATCH (org)-[:HAS_INVESTOR]->(investor:Person)
MATCH (competitor)-[:HAS_INVESTOR]->(investor)
RETURN org, competitor, investor
Grafik, ilişkileri doğal olarak temsil ettiğinden çok adımlı sorgular kolay ve verimli bir şekilde yapılabilir.
ADK'daki Çok Temsilcili Sistemler
Agent Development Kit (ADK), Google'ın üretim düzeyinde yapay zeka ajanları oluşturmak ve dağıtmak için kullandığı açık kaynaklı çerçevedir. Çoklu ajan düzenleme, araç entegrasyonu ve iş akışı yönetimi için sezgisel temel öğeler sunarak uzmanlaşmış ajanları gelişmiş sistemlere dahil etmeyi kolaylaştırır. ADK, Gemini ile sorunsuz bir şekilde çalışır ve Cloud Run, Kubernetes veya herhangi bir altyapıya dağıtımı destekler.
Agent Development Kit (ADK), birden fazla temsilci sistemi oluşturmak için temel öğeler sağlar:
- Temsilci hiyerarşisi:
# Root agent coordinates specialized agents
root_agent = LlmAgent(
name="RootAgent",
sub_agents=[
graph_db_agent,
investor_agent,
investment_agent
]
)
- Uzman Temsilciler: Her temsilcinin
- Belirli araçlar: Çağırabileceği işlevler
- Net talimatlar: Rolü ve özellikleri
- Alan uzmanlığı: Alan bilgisi
- Düzenleme Kalıpları:
- Sıralı: Aracılar sırayla yürütülür.
- Paralel: Aynı anda birden fazla aracı çalıştırın
- Koşullu: Sorgu türüne göre yönlendirme
Veritabanları için MCP Araç Kutusu
Model Context Protocol (MCP), yapay zeka sistemlerini harici veri kaynaklarına ve araçlara bağlamak için kullanılan açık bir standarttır. Veritabanları için MCP Toolbox, Google'ın bildirim temelli veritabanı sorgu yönetimini etkinleştiren uygulamasıdır. Bu sayede, önceden doğrulanmış ve uzmanlar tarafından oluşturulmuş sorguları yeniden kullanılabilir araçlar olarak tanımlayabilirsiniz. MCP Toolbox, LLM'lerin güvenli olmayan sorgular oluşturmasına izin vermek yerine, önceden onaylanmış sorguları parametre doğrulamasıyla birlikte sunar. Böylece, yapay zeka aracıları için esnekliği korurken güvenlik, performans ve güvenilirlik sağlanır.
Geleneksel Yaklaşım:
# LLM generates query (may be incorrect/unsafe)
query = llm.generate("SELECT * FROM users WHERE...")
db.execute(query) # Risk of errors/SQL injection
MCP Yaklaşımı:
# Pre-validated query definition
- name: get_industries
description: Fetch all industries from database
query: |
MATCH (i:Industry)
RETURN i.name, i.id
Avantajları
- Uzmanlar tarafından önceden doğrulanmış
- Enjeksiyon saldırılarına karşı güvenli
- Performansı optimize edilmiş
- Merkezi olarak yönetilen
- Farklı müşteri temsilcileri tarafından tekrar kullanılabilir.
Parçaları Birleştirme
ADK + MCP tarafından GraphRAG + Çoklu Aracı Çerçevesi kombinasyonu güçlü bir sistem oluşturur:
- Root Agent, kullanıcı sorgusunu alır.
- Sorgu türüne göre uzman temsilciye yönlendirme
- Temsilci, verileri güvenli bir şekilde getirmek için MCP araçlarını kullanır.
- Grafik yapısı zengin bağlam sağlar.
- LLM, temellendirilmiş ve açıklanabilir bir yanıt oluşturur.
Artık mimariyi anladığımıza göre oluşturmaya başlayabiliriz.
3. Google Cloud projesi oluşturma
Proje oluşturma
- Google Cloud Console'daki proje seçici sayfasında bir Google Cloud projesi seçin veya oluşturun.
- Cloud projeniz için faturalandırmanın etkinleştirildiğinden emin olun. Bir projede faturalandırmanın etkin olup olmadığını kontrol etmeyi öğrenin .
- Google Cloud'da çalışan bir komut satırı ortamı olan Cloud Shell'i kullanacaksınız. Google Cloud Console'un üst kısmından Cloud Shell'i etkinleştir'i tıklayın. Cloud Shell'deki ilgili düğmeyi tıklayarak Cloud Shell Terminali (bulut komutlarını çalıştırmak için) ile Düzenleyici (projeleri oluşturmak için) arasında geçiş yapabilirsiniz.

- Cloud Shell'e bağlandıktan sonra aşağıdaki komutu kullanarak kimliğinizin doğrulandığını ve projenin proje kimliğinize ayarlandığını kontrol edin:
gcloud auth list
- gcloud komutunun projeniz hakkında bilgi sahibi olduğunu onaylamak için Cloud Shell'de aşağıdaki komutu çalıştırın.
gcloud config list project
- Projeniz ayarlanmamışsa ayarlamak için aşağıdaki komutu kullanın:
gcloud config set project <YOUR_PROJECT_ID>
gcloud komutları ve kullanımı için belgelere bakın.
Harika! Şimdi bir sonraki adıma, yani veri kümesini anlamaya geçebiliriz.
4. Şirketler veri kümesini anlama
Bu codelab'de, Diffbot'un Bilgi Grafiği'ndeki yatırım ve şirket verileriyle önceden doldurulmuş salt okunur bir Neo4j veritabanı kullanıyoruz.
Veri kümesi şunları içerir:
- Şunları temsil eden 237.358 düğüm:
- Kuruluşlar (şirketler)
- Kullanıcılar (yöneticiler, çalışanlar)
- Makaleler (haberler ve bahsetmeler)
- Sektörler
- Teknolojiler
- Yatırımcılar
- Aşağıdakiler dahil ilişkiler:
HAS_INVESTOR- Yatırım bağlantılarıHAS_COMPETITOR- Rekabete dayalı ilişkilerMENTIONS- Makale referanslarıHAS_CEO- İstihdam ilişkileriHAS_CATEGORY- Sektör sınıflandırmaları

Demo veritabanına erişme
Bu codelab'de, barındırılan bir demo örneği kullanacağız. Notlarınıza şu kimlik bilgilerini ekleyin:
URI: neo4j+s://demo.neo4jlabs.com
Username: companies
Password: companies
Database: companies
Tarayıcı Erişimi:
Verileri görsel olarak incelemek için: https://demo.neo4jlabs.com:7473
Aynı kimlik bilgileriyle giriş yapın ve aşağıdaki kodu çalıştırmayı deneyin:
// Sample query to explore the graph
MATCH (c:Organization)-[:HAS_COMPETITOR]-(competitor:Organization)
RETURN c.name, competitor.name
LIMIT 10
Grafik Yapısını Görselleştirme
İlişki kalıplarını görmek için Neo4j Browser'da şu sorguyu deneyin:
// Find investors and their portfolio companies
MATCH (company:Organization)-[:HAS_INVESTOR]->(investor:Person)
WITH investor, collect(company.name) as portfolio
RETURN investor.name, size(portfolio) as num_investments, portfolio
ORDER BY num_investments DESC
LIMIT 5
Bu sorgu, en aktif 5 yatırımcıyı ve portföylerini döndürür.
GraphRAG için Neden Bu Veritabanı?
Bu veri kümesi, GraphRAG'i göstermek için mükemmeldir. Bunun nedeni:
- Zengin İlişkiler: Öğeler arasındaki karmaşık bağlantılar
- Gerçek Dünya Verileri: Gerçek şirketler, kişiler ve haber makaleleri
- Çok adımlı sorgular: Birden fazla ilişki türünün geçilmesini gerektirir.
- Zamana Dayalı Veriler: Zamana dayalı analiz için zaman damgaları içeren makaleler
- Duygu Analizi: Makaleler için önceden hesaplanmış duygu puanları
Veri yapısını anladığınıza göre şimdi geliştirme ortamınızı ayarlayalım.
5. Depoyu Klonlama ve Ortamı Yapılandırma
Depoyu Klonlama
Cloud Shell terminalinizde şu komutu çalıştırın:
# Clone the repository
git clone https://github.com/sidagarwal04/neo4j-adk-multiagents.git
# Navigate into the directory
cd neo4j-adk-multiagents
Depo Yapısını Keşfetme
Proje düzenini anlamak için bir dakikanızı ayırın:
neo4j-adk-multiagents/
├── investment_agent/ # Main agent code
│ ├── agent.py # Agent definitions
│ ├── tools.py # Custom tool functions
│ └── .adk/ # ADK configuration
│ └── tools.yaml # MCP tool definitions
├── main.py # Application entry point
├── setup_tools_yaml.py # Configuration generator
├── requirements.txt # Python dependencies
├── example.env # Environment template
└── README.md # Project documentation
Sanal Ortamı Ayarlama
uv'yi kullanarak Python sanal ortamı oluşturun ve etkinleştirin:
# Install uv if not already installed
pip install uv
# Create virtual environment
uv venv
# Activate the environment
source .venv/bin/activate # On macOS/Linux
# or
.venv\Scripts\activate # On Windows
Terminal isteminizin başına (.venv) eklenmiş olmalıdır.
Bağımlılıkları yükleme
Gerekli tüm paketleri yükleyin:
uv pip install -r requirements.txt
Temel bağımlılıklar:
txtgoogle-adk>=1.21.0 # Agent Development Kit
neo4j>=6.0.3 # Neo4j Python driver
python-dotenv>=1.0.0 # Environment variables
google-cloud-aiplatform>=1.30.0 # Vertex AI
Ortam değişkenlerini yapılandırma
- **
.env** **dosyanızı oluşturun:**
cp example.env .env
- **
.env** **dosyasını düzenleyin:**
Cloud Shell kullanıyorsanız araç çubuğunda Düzenleyiciyi Aç'ı tıklayın, ardından .env bölümüne gidin ve güncelleyin:
Gizli .env dosyasını göstermek için:
Google Cloud Shell Düzenleyici'de View > Toggle Hidden files simgesini tıklayın.
# Neo4j Configuration (Demo Database)
NEO4J_URI=neo4j+s://demo.neo4jlabs.com
NEO4J_USERNAME=companies
NEO4J_PASSWORD=companies
NEO4J_DATABASE=companies
# Google AI Configuration
# Choose ONE of the following options:
# Option 1: Google AI API (Recommended)
GOOGLE_GENAI_USE_VERTEXAI=0
GOOGLE_API_KEY=your_api_key_here # Get from https://aistudio.google.com/app/apikey
# Option 2: Vertex AI (If using GCP)
# GOOGLE_GENAI_USE_VERTEXAI=1
# GOOGLE_CLOUD_PROJECT=your-project-id
# GOOGLE_CLOUD_LOCATION=us-central1
# ADK Configuration
GOOGLE_ADK_MODEL=gemini-3.1-flash-lite-preview # or gemini-3-flash-preview
# MCP Toolbox Configuration
MCP_TOOLBOX_URL=https://toolbox-990868019953.us-central1.run.app/mcp/sse
- MCP Araç Kutusu Yapılandırması oluşturun:
Ortam değişkenlerinizden tools.yaml dosyasını oluşturmak için kurulum komut dosyasını çalıştırın:
python setup_tools_yaml.py
Bu işlem, MCP araçları için düzgün şekilde yapılandırılmış Neo4j kimlik bilgilerinizle investment_agent/.adk/tools.yaml oluşturur.
Yapılandırmayı doğrulama
Her şeyin doğru şekilde ayarlandığını kontrol edin:
# Verify .env file exists
ls -la .env
# Verify tools.yaml was generated
ls -la investment_agent/.adk/tools.yaml
# Test Python environment
python -c "import google.adk; print('ADK installed successfully')"
# Test Neo4j connection
python -c "from neo4j import GraphDatabase; print('Neo4j driver installed')"
Geliştirme ortamınız artık tamamen yapılandırıldı. Ardından, çoklu aracı mimarisine geçeceğiz.
6. Çoklu Ajan Mimarisi'ni Anlama
Dört Ajanlı Sistem
Yatırım araştırma sistemimiz, şirketler, yatırımcılar ve pazar bilgileriyle ilgili karmaşık sorguları yanıtlamak için birlikte çalışan dört uzman aracının bulunduğu hiyerarşik bir çoklu aracı mimarisi kullanır.
┌──────────────┐
│ Root Agent │ ◄── User Query
└──────┬───────┘
│
┌────────────────┼────────────────┐
│ │ │
┌─────▼─────┐ ┌────▼─────┐ ┌────▼──────────┐
│ Graph DB │ │ Investor │ │ Investment │
│ Agent │ │ Research │ │ Research │
└───────────┘ │ Agent │ │ Agent │
└──────────┘ └───────────────┘
- Kök Aracı (Düzenleyici):
Kök aracı, tüm sistemin akıllı koordinatörü olarak görev yapar. Kullanıcı sorgularını alır, amacı analiz eder ve istekleri en uygun uzmanlaşmış aracıya yönlendirir. Bu özelliği, hangi ekip üyesinin hangi görev için en uygun olduğunu bilen bir proje yöneticisi olarak düşünebilirsiniz. Ayrıca yanıtları toplar, istendiğinde sonuçları tablo veya grafik olarak biçimlendirir ve birden fazla sorguda sohbet bağlamını korur. Kök Ajan, sorguların mevcut en uzman bileşen tarafından işlenmesini sağlamak için her zaman genel veritabanı ajanı yerine uzmanlaşmış ajanları tercih eder.
- Graph Database Agent:
Graph Database Agent, Neo4j'nin güçlü grafik özelliklerine doğrudan bağlantınızı sağlar. Veritabanı şemasını anlar, doğal dilden Cypher sorguları oluşturur ve karmaşık grafik geçişlerini yürütür. Bu ajan, bilgi grafiğindeki yapısal sorular, toplamalar ve çok adımlı akıl yürütme konusunda uzmanlaşmıştır. Sorgular, önceden tanımlanmış araçların işleyemediği özel mantık gerektirdiğinde yedek uzman olarak kullanılır. Bu nedenle, sistem tasarımında öngörülmeyen keşif analizi ve karmaşık analitik sorgular için vazgeçilmezdir.
- Yatırımcı Araştırması Aracısı:
Yatırımcı Araştırma Temsilcisi yalnızca yatırım ilişkilerine ve portföy analizine odaklanır. Tam ad eşleştirme kullanarak belirli şirketlere kimlerin yatırım yaptığını bulabilir, tüm yatırımlarını gösteren yatırımcı portföylerini alabilir ve sektörler genelindeki yatırım modellerini analiz edebilir. Bu uzmanlık, "ByteDance'e kim yatırım yaptı?" veya "Sequoia Capital başka hangi şirketlere yatırım yaptı?" gibi soruları yanıtlamada son derece etkili olmasını sağlar. Aracı, yatırımcılarla ilgili ilişkiler için doğrudan Neo4j veritabanını sorgulayan özel Python işlevlerini kullanır.
- Yatırım Araştırması Temsilcisi:
Yatırım Araştırması Asistanı, önceden doğrulanmış ve uzmanlar tarafından oluşturulmuş sorgulara erişmek için Model Context Protocol (MCP) Araç Kutusu'ndan yararlanır. Mevcut tüm sektörleri getirebilir, belirli sektörlerdeki şirketleri alabilir, duygu analizi içeren makaleleri bulabilir, haberlerdeki kuruluşlardan bahsedilen kısımları keşfedebilir ve şirketlerde çalışan kişiler hakkında bilgi edinebilir. Sorguları dinamik olarak oluşturan Graph Database Agent'ın aksine bu aracı, merkezi olarak yönetilen ve doğrulanan güvenli, optimize edilmiş, önceden tanımlanmış sorgular kullanır. Bu sayede, yaygın araştırma iş akışları için hem güvenli hem de yüksek performanslı bir araç haline gelir.
7. Çoklu Ajan Sistemini Çalıştırma ve Test Etme
Uygulamayı başlatma
Mimariyi anladığınıza göre şimdi sistemi tamamen çalıştıralım ve sistemle etkileşime geçelim.
ADK web arayüzünü başlatın:
# Make sure you're in the project directory with activated virtual environment
cd ~/neo4j-adk-multiagents
source .venv/bin/activate # If not already activated
# Launch the application
uv run adk web
Şuna benzer bir çıkış alırsınız:
INFO: Started server process [2542]
INFO: Waiting for application startup.
+----------------------------------------------------------------+
| ADK Web Server started |
| |
| For local testing, access at http://127.0.0.1:8000. |
+----------------------------------------------------------------+
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
Test Sorguları ve Beklenen Davranış
Sistemin özelliklerini giderek karmaşıklaşan sorgularla keşfedelim:
Temel Sorgular (Tek Temsilci)
1. Sorgu: Sektörleri Keşfetme
What industries are available in the database?
Beklenen Davranış:
- Kök Ajan, Yatırım Araştırması Ajanı'na yönlendirir
- MCP aracını kullanır:
get_industries() - Tüm sektörlerin biçimlendirilmiş bir listesini döndürür.
Gözlemlenecekler:
ADK kullanıcı arayüzünde, yürütme ayrıntılarını genişleterek şunları görebilirsiniz:
- Temsilci seçim kararı
- Araç çağrısı:
get_industries() - Neo4j'den alınan işlenmemiş sonuçlar
- Biçimlendirilmiş yanıt
2. Sorgu: Yatırımcı Bulma
Who invested in ByteDance?
Beklenen Davranış:
- Kök temsilci, bunu yatırımcıyla ilgili sorgu olarak tanımlar.
- Yatırımcı Araştırma Ajanı'na yönlendirme
- Kullanılan araç:
find_investor_by_name("ByteDance") - Yatırımcıları türleriyle (Kişi/Kuruluş) birlikte döndürür.
Beklenen Yanıt:
I found 2 investors in ByteDance:
1. Rong Yue (Person)
2. Wendi Murdoch (Person)
Would you like to know more about their investment portfolios?
3. sorgu: Sektöre göre şirketler**
I found 2 investors in ByteDance:
1. Rong Yue (Person)
2. Wendi Murdoch (Person)
Would you like to know more about their investment portfolios?
"Show me companies in the Artificial Intelligence industry"
Beklenen Davranış:
- Kök Ajan, Yatırım Araştırması Ajanı'na yönlendirir
- MCP aracını kullanır:
get_companies_in_industry("Artificial Intelligence") - Kimlikleri ve kuruluş tarihleriyle birlikte yapay zeka şirketlerinin listesini döndürür.
Gözlemlenecekler:
- Aracının, sektör adını tam olarak eşleştirmeyi nasıl kullandığına dikkat edin.
- Sonuçlar, aşırı çıktı oluşmasını önlemek için sınırlandırılır.
- Veriler, okunabilirlik için net bir şekilde biçimlendirilir.
Ara Sorgular (Tek Bir Ajan İçinde Çok Adımlı)
4. Sorgu: Yaklaşım Analizi
Find articles with positive sentiment from January 2023
Beklenen Davranış:
- Yatırım Araştırması Temsilcisi'ne yönlendirme
- MCP aracını kullanır:
get_articles_with_sentiment(0.7, 2023, 1) - Başlıklar, duygu puanları ve yayınlanma tarihleri içeren makaleler döndürür.
Hata Ayıklama İpucu:
Araç çağırma parametrelerine bakın:
min_sentiment: 0,7 (temsilci, "olumlu"yu >= 0,7 olarak yorumluyor)year: 2023month: 1
Sorgu 5: Karmaşık Veritabanı Sorgusu
How many companies are in the database?
Beklenen Davranış:
- Kök temsilci, grafik veritabanı temsilcisine yönlendirir
- Yapıyı anlamak için önce aracı çağrıları
get_neo4j_schema() - Cypher oluşturur:
MATCH (c:Company) RETURN count(c) - Sorguyu yürütür ve sayımı döndürür.
Beklenen Yanıt:
There are 8,064 companies in the database.
Gelişmiş Sorgular (Çoklu Temsilci Koordinasyonu)
6. Sorgu: Portföy Analizi
Who invested in ByteDance and what else have they invested in?
Beklenen Davranış:
Bu, iki bölümlü ve temsilci koordinasyonu gerektiren bir sorgudur:
- 1. adım: Root Agent → Investor Research Agent
- Aramalar
find_investor_by_name("ByteDance") - Yatırımcı listesini al: [Rong Yue, Wendi Murdoch]
- 2. adım: Her yatırımcı için → Yatırımcı Araştırma Aracısı
- Aramalar
find_investor_by_id(investor_id) - Portföyün tamamını alır.
- 3. adım: Root Agent, toplama ve biçimlendirme işlemlerini yapar
Beklenen Yanıt:
I found 2 investors in ByteDance. Here are their portfolios:
1. Rong Yue (Person)
- ByteDance
- Inspur
2. Wendi Murdoch (Person)
- ByteDance
- (No other investments in database)
Gözlemlenecekler:
- Sırayla birden fazla araç çağrısı
- Adımlar arasında bağlam korunur.
- Sonuçlar akıllıca toplanır
7. Sorgu: Çok Alanlı Araştırma
What are 5 AI companies mentioned in positive articles, and who are their CEOs?
Beklenen Davranış:
Bu karmaşık sorgu için birden fazla aracı ve araç gerekir:
- 1. adım: Yatırım Araştırması Aracısı
get_companies_in_industry("Artificial Intelligence")- Yapay zeka şirketlerinin listesini döndürür.
- 2. adım: Yatırım Araştırması Aracısı
get_articles_with_sentiment(0.8)- Olumlu makaleler döndürür.
- 3. adım: Root Agent filtreleri
- Hangi yapay zeka şirketlerinin olumlu makalelerde yer aldığını belirler.
- İlk 5'i seçer
- 4. adım: Yatırım Araştırması Temsilcisi
get_people_in_organizations([company_names], "CEO")- CEO bilgilerini döndürür.
- 5. adım: Root Agent'ı tablo olarak biçimlendirin
Beklenen Yanıt:
Here are 5 AI companies with positive news and their CEOs:
| Company | Industry | CEO | Avg Sentiment |
|---------|----------|-----|---------------|
| OpenAI | Artificial Intelligence | Sam Altman | 0.92 |
| Anthropic | Artificial Intelligence | Dario Amodei | 0.89 |
| ... | ... | ... | ... |
Gözlemlenecekler:
- Farklı aracılarda birden fazla araç çağrısı
- Veri filtreleme ve birleştirme mantığı
- Profesyonel tablo biçimlendirmesi
8. Sorgu: Rekabet Analizi
Who are YouTube's main competitors?
Beklenen Davranış:
- Kök aracı, Graph Database Agent'a (ilişki sorgusu) yönlendirir.
- Temsilci, GraphRAG ile geliştirilmiş Cypher oluşturur:
MATCH (c:Company {name: "YouTube"})-[:COMPETES_WITH]->(competitor)
RETURN competitor.name as competitor_name
- Rakip şirketlerin listesini döndürür.
Beklenen Yanıt:
YouTube's main competitors are:
- TikTok (ByteDance)
- Dailymotion
- Twitter
- BuzzFeed
- Mixer
- OpenAI (for video content)
Bağlama Duyarlı Takip Sorguları (Context-Aware Follow-Up Queries)
9. Sorgu: Takip Sorusu (8. Sorgudan Sonra)
Which investors funded both YouTube and its competitors?
Beklenen Davranış:
- Root Agent, önceki bağlamı (YouTube ve rakipleri) hatırlar.
- Yatırımcı Araştırma Ajanı'na yönlendirme
- YouTube ve her rakip için yatırımcı bulur.
- Birden fazla şirkette görünen yatırımcıları tanımlar
Beklenen Yanıt:
Based on our previous analysis of YouTube's competitors, I found these
investors who funded multiple companies in this competitive landscape:
Sequoia Capital invested in:
- YouTube
- TikTok (ByteDance)
- Twitter
Accel Partners invested in:
- YouTube
- BuzzFeed
This suggests these investors have strategic positions across the video content platform ecosystem.
10. Sorgu: Araştırma Özeti
Summarize our research findings so far
Beklenen Davranış:
- Kök aracı, görüşme geçmişini inceler
- Önceki sorgulardaki temel bulguları sentezler.
- Tutarlı bir özet sunar.
Beklenen Yanıt:
Here's a summary of our investment research session:
1. Industry Overview: We explored the Artificial Intelligence industry
with 150+ companies in the database.
2. ByteDance Analysis:
- Investors: Rong Yue, Wendi Murdoch
- Rong Yue also invested in Inspur
3. Market Sentiment: We analyzed articles from January 2023, finding
strong positive sentiment (avg 0.85) for tech companies.
4. Competitive Landscape: YouTube faces competition from TikTok,
Dailymotion, and others, with some investors (Sequoia, Accel) holding
positions across competing platforms.
5. Key Players: Identified CEOs of major AI companies with positive media coverage.
Hata ayıklama görünümünde aracı etkileşimlerini anlama
ADK web arayüzü, ayrıntılı yürütme görünürlüğü sağlar. Aşağıdaki özelliklere dikkat edin:
- Etkinlik Zaman Çizelgesi
Kronolojik akışı gösterir:
[USER] Query received
[ROOT_AGENT] Analyzing query intent
[ROOT_AGENT] Routing to investment_research_agent
[INVESTMENT_RESEARCH_AGENT] Tool call: get_companies_in_industry
[TOOL] Executing with params: {"industry_name": "Artificial Intelligence"}
[TOOL] Returned 47 results
[INVESTMENT_RESEARCH_AGENT] Formatting response
[ROOT_AGENT] Presenting to user
- Araç Çağırma Ayrıntıları
Şunları görmek için herhangi bir araç çağrısını tıklayın:
- İşlev adı
- Giriş parametreleri
- Döndürülen değer
- Yürütme süresi
- Tüm hatalar
- Temsilci Karar Alma (Agent Decision Making)
LLM'nin muhakemesini gözlemleyin:
- Neden belirli bir aracı seçtiği
- Sorguyu nasıl yorumladığı
- Hangi araçların dikkate alındığı
- Sonuçları neden belirli bir şekilde biçimlendirdiği
Sık Karşılaşılan Gözlemler ve Analizler
- Sorgu Yönlendirme Kalıpları:
- "Yatırımcı", "yatırım yaptı" gibi anahtar kelimeler → Yatırımcı Araştırma Aracısı
- "Sektör", "şirketler", "makaleler" gibi anahtar kelimeler → Yatırım Araştırması Aracısı
- Toplamalar, sayımlar, karmaşık mantık → Graph Database Agent
- Performans Notları:
- MCP araçları genellikle daha hızlıdır (önceden optimize edilmiş sorgular).
- Karmaşık şifre oluşturma daha uzun sürer (LLM düşünme süresi).
- Birden fazla araç çağrısı gecikmeye neden olur ancak daha zengin sonuçlar sağlar
- Hata İşleme:
- Bir sorgu başarısız olursa:
- Temsilci, neyin yanlış gittiğini açıklıyor
- Düzeltme önerir (ör. "Şirket adı bulunamadı, yazımı kontrol edin")
- Alternatif yaklaşımları deneyebilir.
Etkili test için ipuçları
- Basit Başlayın: Her aracının temel işlevini karmaşık sorgulardan önce test edin.
- Takip soruları kullanma: Takip sorularıyla bağlamı koruma özelliğini test etme
- Yönlendirmeyi İzleme: Mantığı anlamak için her sorguyu hangi temsilcinin işlediğini izleyin.
- Araç Çağrılarını Kontrol Etme: Parametrelerin doğal dilden doğru şekilde çıkarıldığını doğrulayın.
- Sınır Durumları Test Etme: Belirsiz sorguları, yazım hatalarını veya sıra dışı istekleri deneyin.
Artık tam işlevsel bir çoklu aracı GraphRAG sisteminiz var. Özelliklerini keşfetmek için kendi sorularınızla denemeler yapın.
8. Temizleme
Bu yayında kullanılan kaynaklar için Google Cloud hesabınızın ücretlendirilmesini istemiyorsanız şu adımları uygulayın:
- Google Cloud Console'da Kaynakları yönetin sayfasına gidin.
- Proje listesinde silmek istediğiniz projeyi seçin ve Sil'i tıklayın.
- İletişim kutusunda proje kimliğini yazın ve projeyi silmek için Kapat'ı tıklayın.
9. Tebrikler
🎉 Tebrikler! Google'ın Agent Development Kit'ini, Neo4j'yi ve MCP Toolbox'ı kullanarak üretim kalitesinde çok ajanlı bir GraphRAG sistemi başarıyla oluşturdunuz.
ADK'nın akıllı düzenleme özelliklerini Neo4j'nin ilişki açısından zengin veri modeli ve önceden doğrulanmış MCP sorgularının güvenliğiyle birleştirerek basit veritabanı sorgularının ötesine geçen gelişmiş bir sistem oluşturdunuz. Bu sistem, bağlamı anlıyor, karmaşık ilişkilerdeki nedenleri açıklıyor ve kapsamlı, doğru analizler sunmak için uzmanlaşmış aracıları koordine ediyor.
Bu codelab'de şunları yaptınız:
✅ Hiyerarşik düzenleme ile Google'ın Agent Development Kit'ini (ADK) kullanarak çoklu temsilci sistemi oluşturma
✅ İlişki odaklı sorgulardan ve çok adımlı akıl yürütmeden yararlanmak için entegre Neo4j grafik veritabanı
✅ Yeniden kullanılabilir araçlar olarak güvenli, önceden doğrulanmış veritabanı sorguları için MCP Araç Kutusu'nu uyguladık.
✅ Yatırımcı araştırması, yatırım analizi ve grafik veritabanı işlemleri için uzman temsilciler oluşturdu.
✅ Sorguları otomatik olarak en uygun uzman temsilciye yönlendiren akıllı yönlendirme tasarlandı.
✅ Sorunsuz Python entegrasyonu için uygun Neo4j türü serileştirme ile karmaşık veri türleri işlendi.
✅ Aracı tasarımı, hata işleme ve sistemde hata ayıklama için üretimle ilgili en iyi uygulamalar uygulandı.
Sırada ne var?
Bu çoklu aracı GraphRAG mimarisi yatırım araştırmasıyla sınırlı değildir. Aşağıdaki alanlarda da kullanılabilir:
- Finansal hizmetler: Portföy optimizasyonu, risk değerlendirmesi, sahtekarlık tespiti
- Sağlık hizmetleri: Hasta bakım koordinasyonu, ilaç etkileşimi analizi, klinik araştırma
- E-ticaret: Kişiselleştirilmiş öneriler, tedarik zinciri optimizasyonu, müşteri analizleri
- Yasal bilgiler ve uygunluk: Sözleşme analizi, düzenleyici izleme, içtihat araştırması
- Akademik araştırma: Edebiyat incelemesi, ortak çalışma keşfi, alıntı analizi
- Kurumsal zeka: Rekabet analizi, pazar araştırması, kurumsal bilgi grafikleri
Karmaşık bir şekilde birbirine bağlı veriler + alan uzmanlığı + doğal dil arayüzlerinin olduğu her yerde, ADK çoklu aracı sistemleri + Neo4j bilgi grafikleri + MCP onaylı sorgular kombinasyonu, yeni nesil akıllı kurumsal uygulamalara güç verebilir.
Google'ın Agent Development Kit'i ve Gemini modelleri gelişmeye devam ettikçe daha da karmaşık akıl yürütme kalıpları, gerçek zamanlı veri entegrasyonu ve çok formatlı özellikler ekleyerek gerçekten akıllı, bağlama duyarlı sistemler oluşturabileceksiniz.
Keşfetmeye ve geliştirmeye devam edin, akıllı aracı uygulamalarınızı bir üst seviyeye taşıyın.
Neo4j GraphAcademy'de daha fazla uygulamalı Bilgi Grafiği eğitimine göz atın ve ADK Örnekleri Deposu'nda ek ajan kalıplarını keşfedin.
🚀 Bir sonraki akıllı aracı sisteminizi oluşturmaya hazır mısınız?