Option B best satisfies the requirements because it directly applies Retrieval Augmented Generation principles using managed Amazon Bedrock Knowledge Bases, which are designed to handle large, complex documents while preserving contextual relationships. Financial reports often interleave tables with explanatory narrative, and accurate analysis depends on keeping those elements logically connected. By segmenting documents based on their structural layout—for example, sections, subsections, tables, and surrounding commentary—the knowledge base can retrieve semantically relevant chunks that maintain this relationship during inference.
Amazon Bedrock Knowledge Bases support contextual chunking strategies that go beyond simple fixed-size segmentation. This is critical for financial documents, where a metric in a table may be explained in adjacent paragraphs or footnotes. Context-aware chunking ensures that retrieved content includes both the numeric data and its interpretation, enabling the foundation model to generate accurate, grounded responses. Including citations further improves analyst trust and auditability by allowing users to trace answers back to specific source sections, which is a common requirement in financial environments.
Scalability is another key requirement. Knowledge Bases manage embedding generation, indexing, and retrieval orchestration as a managed service, which allows the solution to scale across large document collections without requiring custom infrastructure or model hosting. This approach also supports efficient updates as new quarterly reports are added, ensuring the retrieval layer remains current.
Option A does not scale well because processing entire 5–100 page documents in a single prompt increases token usage, latency, and cost while risking context truncation. Option C relies on fixed-size chunking triggered at query time, which often breaks semantic relationships in structured financial content. Option D introduces unnecessary architectural complexity by splitting structured and unstructured data into separate applications, increasing operational overhead without providing better contextual retrieval than a unified RAG approach.