Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 0 additions & 16 deletions Jujutsu_Quants/app/adk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,4 @@ This directory contains the core agent framework for advanced news and market da
- BiasDetector: Detects potential bias in news coverage.
- NewsQAAgent: Answers questions from the news corpus.

## Hybrid RAG Summarizer (optional)

- `HybridRAGSummarizer`: Fuses retrieval-ranked passages, market move regimes, and bias flags into a cited summary available under `rag_summary` in the `/api/v2/report` response.
- Enable/disable via config flag `ENABLE_HYBRID_RAG` (env var). Default: enabled.
- Minimal usage:

```bash
uvicorn Jujutsu-Quants.app.adk.main:app --reload
curl -s -X POST http://localhost:8000/api/v2/report -H "Content-Type: application/json" -d '{
"symbols": ["AAPL"],
"news_urls": ["https://example.com/news1"],
"question": "What are key drivers today?"
}' | jq
```


To add a new agent, create a new Python file in `agents/` and integrate it in `orchestrator.py`.
1 change: 0 additions & 1 deletion Jujutsu_Quants/app/adk/agents/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,3 @@
from .bias_detector import create_bias_detector
from .news_qa_agent import create_news_qa_agent
from .sentiment_agent import create_sentiment_agent
from .hybrid_rag_summarizer import create_hybrid_rag_summarizer
148 changes: 0 additions & 148 deletions Jujutsu_Quants/app/adk/agents/hybrid_rag_summarizer.py

This file was deleted.

7 changes: 1 addition & 6 deletions Jujutsu_Quants/app/adk/orchestrator.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ def filter(self, record):
from google.adk.agents import Agent
from app.config.adk_config import ADK_CONFIG
from app.adk.agents import (
create_anomaly_detector, create_summarizer, create_diversity_analyzer, create_breaking_news_alert, create_bias_detector, create_news_qa_agent, create_sentiment_agent, create_hybrid_rag_summarizer
create_anomaly_detector, create_summarizer, create_diversity_analyzer, create_breaking_news_alert, create_bias_detector, create_news_qa_agent, create_sentiment_agent
)
from app.adk.adk_agents import (
create_adk_anomaly_agent, create_adk_summarizer_agent, create_adk_diversity_agent, create_adk_breaking_agent, create_adk_bias_agent, create_adk_sentiment_agent, create_adk_qa_agent
Expand Down Expand Up @@ -79,9 +79,6 @@ def _init_lightweight(self):
self.bias_detector = create_bias_detector()
self.news_qa_agent = create_news_qa_agent()
self.sentiment_agent = create_sentiment_agent()
self.enable_hybrid_rag = ADK_CONFIG.get("enable_hybrid_rag_summarizer", False)
if self.enable_hybrid_rag:
self.hybrid_rag_summarizer = create_hybrid_rag_summarizer()

def _init_adk(self):
self.adk = {
Expand Down Expand Up @@ -109,8 +106,6 @@ async def _process_lightweight(self, market_data, news_articles, question=None):
results['sentiment'] = self.sentiment_agent.analyze(news_articles)
if question:
results['qa'] = self.news_qa_agent.answer(news_articles, question)
if getattr(self, 'enable_hybrid_rag', False):
results['rag_summary'] = self.hybrid_rag_summarizer.summarize(market_data, news_articles, question)
return results

async def _process_with_adk(self, market_data, news_articles, question=None):
Expand Down
2 changes: 0 additions & 2 deletions Jujutsu_Quants/app/config/adk_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@
"model": "gemini-2.0-flash",
"use_vertex_ai": True,
"adk_mode": os.getenv("ADK_MODE", "0") == "1",
# Optional hybrid RAG summarizer stage toggle
"enable_hybrid_rag_summarizer": os.getenv("ENABLE_HYBRID_RAG", "1") == "1",
}

# Agent Configuration
Expand Down
36 changes: 0 additions & 36 deletions Jujutsu_Quants/tests/test_hybrid_rag_summarizer.py

This file was deleted.

Loading