summarizedfilings.com · 2025
Summarized Filings - SEC reports, changes and AI
A financial research platform combining section summaries, change detection and RAG answers grounded in company filings.
Visit siteThe challenge
Company filings can run to hundreds of pages, with important updates buried in repeated disclosures. Investors need to understand the report, spot what changed and investigate a topic without opening every document individually.
The solution
We built a web application for the client with company search, a structured document reader, section-level summaries, comparisons between reporting periods and an Ask AI page. The React interface connects to a Django API and an automated SEC filing pipeline, extended with semantic search and RAG.
Read the changes, keep the context
Filings are parsed into identifiable sections, text blocks and tables. That structure supports both summaries and blacklining: matching sections between consecutive annual or quarterly reports and highlighting additions and deletions. Readers can focus on new disclosures while keeping the original filing in view.

Search by meaning, answer from the source
A query for 'stock buyback' can retrieve passages about 'share repurchases', even without matching those exact words. Users can narrow the search by company, year and filing type. RAG (retrieval-augmented generation) then uses the retrieved sections as context for an optional AI answer, rather than passing entire filings to the model. The evaluated flow also handles insufficient context and unrelated questions with explicit messages.

Do the heavy work before the query
AWS Step Functions, SQS and Lambda prepare embeddings in the background, with controlled concurrency, retries and a dead-letter queue. PostgreSQL with pgvectorscale handles similarity search over 1,024-dimensional embeddings. Original HTML sections live separately in DynamoDB; oversized payloads go to S3. Shared section identifiers connect each vector back to its source, letting retrieval and content storage scale independently.
Results
- →December 2025 evaluation: approximately 95 ms database execution time to retrieve the top 20 matches from around 1.5 million vectors.
- →A separate full retrieval run took about 3.7 seconds from query submission to returned sections, excluding AI answer generation.
- →Nine manual test scenarios passed. The exact nearest-neighbour recall test remained outstanding.
- →Early interviews with four retail investors favoured change detection over semantic search, helping put blacklining at the centre of the product.

