Production-Scale RAG System for Real-Time News Processing and Analysis

emergent_methods · Media & Entertainment · 2023 · source Agentic: no · promotional bias: med · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Real-time news RAG and contextual news analysis

Emergent Methods needed to provide accurate, timely, source-attributed news answers at million-article-per-day scale, overcoming general-purpose LLM weaknesses around stale information, slow web search, missing global perspectives, and hallucination risk in sensitive news contexts.

Constraints:

Architecture

Ask News uses a Kubernetes microservices architecture built around context engineering. NewsGrabber supplies articles from 50,000 sources, FlowDapt orchestrates 5-minute ingestion/enrichment workflows, Text Embedding Inference produces embeddings, Qdrant stores dense and sparse vectors with timestamp filters, SPLADE plus dense embeddings provide hybrid retrieval, and vLLM serves on-premise reasoning/generation. The product returns timely answers with citations, coverage trends, region/category filters, and source diversity.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  newsgrabber-source-feed["NewsGrabber source feed"] --> flowdapt-orchestrator["FlowDapt orchestrator"]
  flowdapt-orchestrator["FlowDapt orchestrator"] --> text-embedding-inference-service["Text Embedding Inference service"]
  flowdapt-orchestrator["FlowDapt orchestrator"] --> qdrant-vector-database["Qdrant vector database"]
  flowdapt-orchestrator["FlowDapt orchestrator"] --> vllm-inference-service["vLLM inference service"]
  text-embedding-inference-service["Text Embedding Inference service"] --> qdrant-vector-database["Qdrant vector database"]
  qdrant-vector-database["Qdrant vector database"] --> hybrid-retrieval-layer["Hybrid retrieval layer"]
  qdrant-vector-database["Qdrant vector database"] --> ask-news-application["Ask News application"]
  hybrid-retrieval-layer["Hybrid retrieval layer"] --> vllm-inference-service["vLLM inference service"]
  hybrid-retrieval-layer["Hybrid retrieval layer"] --> ask-news-application["Ask News application"]
  vllm-inference-service["vLLM inference service"] --> ask-news-application["Ask News application"]
  remote-model-api["Remote model API"] --> ask-news-application["Ask News application"]
  ask-news-application["Ask News application"] --> recommendation-profile["Recommendation profile"]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
NewsGrabber source feed Provides access to articles from 50,000 news sources. FlowDapt orchestrator
FlowDapt orchestrator Schedules, parallelizes, and resource-manages ingestion/enrichment workflows on Kubernetes. NewsGrabber source feed, Text Embedding Inference service, Qdrant vector database, vLLM inference service
Text Embedding Inference service Dedicated embedding microservice with dynamic batching for heterogeneous text lengths. FlowDapt orchestrator, Qdrant vector database
Qdrant vector database Hybrid vector store supporting batch upserts, timestamp filtering, keyword filters, sparse vectors, on-premise deployment, and deep storage. FlowDapt orchestrator, Text Embedding Inference service, Hybrid retrieval layer, Ask News application
Hybrid retrieval layer Combines dense embeddings, SPLADE sparse vectors, timestamp filters, keyword filters, and query rewriting. Qdrant vector database, vLLM inference service, Ask News application
vLLM inference service On-premise LLM inference service using continuous batching and PagedAttention for high throughput. FlowDapt orchestrator, Hybrid retrieval layer, Ask News application
Remote model API Proprietary remote models used when frontier capability is worth the cost/latency tradeoff. Ask News application
Ask News application User-facing news search and summarization interface with citations, filters, trends, and personalization. Qdrant vector database, Hybrid retrieval layer, vLLM inference service, Remote model API, Recommendation profile
Recommendation profile Planned Qdrant-backed personalization from user likes/dislikes and starred stories. Ask News application

Data flow

Articles arrive continuously from NewsGrabber and are batched into 5-minute ingestion windows. FlowDapt schedules and scales enrichment tasks across Kubernetes, including translation, summarization, custom extraction, and embeddings through TEI. Qdrant stores vectors and metadata for hybrid sparse-dense search with timestamp filtering. A user query is rewritten or clarified when needed, retrieved against fresh article embeddings, and sent to local or remote models for grounded summarization with citations in Ask News.

3 supporting quotes
“They process news in 5-minute buckets, continuously ingesting and enriching the latest articles.”summary, stated
“Rather than letting the vector database handle embeddings (which some solutions offer for convenience), Emergent Methods uses Hugging Face's Text Embedding Inference as a dedicated microservice.”summary, stated
“The interface shows source citations, coverage trends, and where stories are in their coverage cycle.”summary, stated

Why this architecture

Emergent Methods uses modular microservices because news workloads demand freshness, throughput, and easy substitution as LLM infrastructure evolves. Qdrant stays responsible for storage/search, TEI for embeddings, vLLM for inference, and FlowDapt for orchestration. Context engineering replaces rigid pre-LLM pipelines by making translation, summarization, extraction, and output style configurable without rewriting the whole stack.

3 supporting quotes
“Rather than using all-in-one solutions that sacrifice performance for convenience, Emergent Methods orchestrates purpose-built components”summary, stated
“the database should store and search vectors, not generate them.”summary, stated
“This flexibility is crucial for a production system where requirements evolve based on user feedback and new use cases.”summary, stated

Models used: LLaMA 2 · vLLM-served on-premise LLMs · OpenAI remote models · Text Embedding Inference · SPLADE · DistilBART · translation models · dense embedding models

Scale

Alternatives considered (roads not taken)

General-purpose LLM with web search for current news

Rejected because: It was slow and returned outdated information for sensitive current events.

“ChatGPT Plus with Bing search takes considerable time to find articles and often returns outdated information”summary, stated

Rigid pre-LLM NLP pipeline

Rejected because: Fixed chunking, translation, summarization, and classification pipelines could not adapt quickly to changing product requirements.

“While functional, this approach was rigid and couldn't adapt to evolving product requirements.”summary, stated

All-in-one convenience services

Rejected because: They sacrifice performance and independent scaling compared with single-responsibility microservices.

“Rather than using all-in-one solutions that sacrifice performance for convenience, Emergent Methods orchestrates purpose-built components”summary, stated

Vector database-managed embeddings

Rejected because: The team wanted embeddings isolated as a dedicated service for independent resource allocation and scaling.

“This isolation allows independent resource allocation and scaling.”summary, stated

HyDE for all retrieval

Rejected because: It adds compute cost and may generate synthetic documents from stale model training data rather than current news.

“Robert notes limitations: computational cost and the fact that the generated content is based on the LLM's training data, not current information.”summary, stated

Patterns

context-engineering (context)

Emergent Methods explicitly frames the system as context engineering: parsing, enriching, filtering, and packaging news context for current grounded answers.

“Emergent Methods coined the term "Context Engineering" to describe their approach to news processing.”summary, stated

rag-retrieval (retrieval)

Ask News retrieves current articles with timestamp, keyword, sparse, and dense filters before generating source-attributed answers.

“Combined with dense embeddings, this enables hybrid search with superior retrieval quality.”summary, stated

retrieval-ranking (retrieval)

The system combines sparse SPLADE and dense embeddings to improve retrieval quality and align user queries with document embeddings.

“They use SPLADE (Sparse Lexical and Expansion) as an alternative to BM25, leveraging its BERT-based architecture that understands which words are less important to the search (articles, prepositions) while maintaining some semantic awareness.”summary, stated

model-routing (architecture)

The platform uses both on-premise models and remote proprietary models depending on capability, cost, and latency needs.

“The architecture employs both proprietary remote models (like OpenAI's offerings) and on-premise LLMs through vLLM.”summary, stated

cost-aware-routing (operations)

High-volume article processing uses on-premise vLLM, co-located Qdrant, TEI dynamic batching, and microservice scaling to manage throughput and cost.

“• On-premise models reduce costs for high-volume operations and provide lower-latency reasoning”summary, stated

Tradeoffs

Use single-responsibility microservices

Chose Purpose-built Qdrant, TEI, vLLM, FlowDapt, and application services over All-in-one LLM/RAG platforms.

Rationale: Independent scaling and substitution are critical in a high-throughput news system where infrastructure changes quickly.

“This modularity positions them to adapt as the rapidly evolving LLM ecosystem produces better alternatives.”summary, stated

Co-locate Qdrant in Kubernetes

Chose On-premise/in-cluster vector database deployment over Cloud-hosted vector database with external network path.

Rationale: Co-location reduces latency, noisy-neighbor risk, and privacy exposure.

“This eliminates network latency concerns, noisy neighbor problems from cloud providers, and ensures high privacy with data isolation from the external world.”summary, stated

Use hybrid sparse-dense retrieval

Chose SPLADE sparse vectors plus dense embeddings over Dense-only semantic search or BM25 alone.

Rationale: Hybrid search keeps lexical/news specificity while adding semantic retrieval quality.

“Sparse Vector Support: Emergent Methods immediately adopted sparse vectors when Qdrant added support.”summary, stated

Use both remote and on-premise models

Chose Hybrid model strategy over Only proprietary APIs or only self-hosted inference.

Rationale: The tradeoff balances frontier capability, infrastructure cost, throughput, and latency.

“The architecture employs both proprietary remote models (like OpenAI's offerings) and on-premise LLMs through vLLM. This hybrid approach balances cost, latency, and capability:”summary, stated

Gotchas (what bit them)

General-purpose LLMs can be dangerously stale for news.

Root cause: Web-search-augmented LLMs may retrieve old articles and fail recency requirements on sensitive topics.

Resolution: Continuously ingest, timestamp-filter, and retrieve fresh source-attributed news context.

“Robert characterizes this as "borderline dangerous," particularly for sensitive topics requiring accuracy and recency.”summary, stated

News retrieval must preserve source diversity.

Root cause: Single-region or single-language coverage creates incomplete or biased context for global events.

Resolution: Ingest massive multi-source data and enforce diversity across languages, regions, and sources.

“When covering global events, users deserve perspectives from multiple regions and languages—for Gaza coverage, understanding what Egypt, France, and Algeria are saying matters.”summary, stated

Old documents in a vector database can confuse current retrieval.

Root cause: Accumulated versions or stale articles remain semantically similar to current questions.

Resolution: Use timestamp filtering for news and remove outdated information for slower-moving corpora.

“When users ask about events from the last 24 hours, the system cannot be searching through month-old articles.”summary, stated

HyDE can import stale model knowledge into search.

Root cause: The hypothetical document is generated from an LLM's training data, not necessarily from current news.

Resolution: Use HyDE cautiously and use prompt engineering for explicit follow-up query generation where needed.

“For handling ambiguous follow-up questions (like "why did they change the rules?"), they use prompt engineering to generate explicit, unambiguous queries”summary, stated

Evaluation

The case emphasizes production quality through retrieval freshness, source attribution, region/language diversity, timestamp filtering, latency optimization, and user-facing product signals such as coverage trends and source citations rather than a named offline evaluation suite.

Metrics: articles processed per day · 5-minute ingestion buckets · timestamp filtering · source citations · coverage trends · region/category filters · latency · throughput · source diversity

“The system enforces journalistic standards by ensuring diversity across languages, regions, and sources while enabling real-time semantic search with timestamp filtering.”summary, stated
“The interface shows source citations, coverage trends, and where stories are in their coverage cycle. User accounts enable starring stories for tracking ongoing narratives, with personalized recommendations as a planned enhancement.”summary, stated

Outcomes

Key scale anchors include 1M+ articles/day, 50,000 sources, 5-minute processing buckets, 10-100 server development parity, timestamp filters, and in-cluster vector/inference services.

“The result is Ask News, a news application that provides accurate, timely, and contextually rich news summaries with proper source attribution.”summary, stated
“The discussion includes a live walkthrough of asknews.app, demonstrating features like filtering by sentiment (positive news), region (Europe, Americas), and category (sports, finance).”summary, stated