Inspiration
As a financial professional, I always thought that SEC financial reports (10-K and 10-Q) are difficult to read through because they contain valuable financial information but the information is buried in dense, lengthy documents. I wanted to build a tool that could make SEC filings easier to understand and turn them into engaging podcast style conversations
What it does
FilingTalk transforms SEC filings into concise, ~3-minute podcast-style summaries in multiple languages
- Summarizes filings into a natural conversation between two speakers
- Prioritizes numeric data like revenue, net income, and EPS, ensuring only official SEC data is used to avoid hallucinations
- Uses locale-aware number formatting and voice selection to match each language
- Provides a modern web interface for users to enter a ticker, choose a filing, and select a language
- Converts the final script into realistic audio using Google Cloud Text-to-Speech (TTS)
How we built it
- Backend (FastAPI): Handles API requests, orchestrates chunk summarization and audio synthesis.
- OpenAI GPT-4o: Summarizes each chunk of the filing, prioritizing key metrics and natural conversation flow.
- Google Cloud TTS API: Generates high-quality audio in each language and gender (Alex and Jamie).
- Frontend (React): Provides a sleek web interface for easy input and output.
- Parallel Processing: Processes summaries in chucks concurrently for faster performance
- Localization: Numbers and voices are localized for each supported language using Google Cloud TTS.
- Deployment: Backend on Render / Frontend deployment on Vercel
** Multi-Agent Structure** (Google ADK)
- SECAgent: Retrieves SEC filings (10-K/10-Q), ticker/CIK mapping
- SummarizationAgent: Summarizes chunks prioritizing revenue, growth, net income, EPS, main drivers, risks and opportunities, and future outlook
- TranslationAgent: Translates final podcast script to the target language if users select non-English language
- TTSAgent: Synthesizes language and gender-appropriate voices for Alex and Jamie
Challenges we ran into
- Extracting numeric metrics accurately: Crafting prompts that consistently pulled real financial data — and never hallucinated figures — required multiple iterations
- Summarization focus: The LLM often provided generic summaries. I had to design the logic that prioritized the key metrics and financial drivers mentioned in the filing
- Handling large filings: Breaking up the filings into chunks was critical to avoid exceeding token limits and causing API errors.
- Localization of numbers and audio: Ensure that numbers and currencies are formatted and spoken naturally for each supported language.
- Voice mapping : Matching speaker names to the correct voice was challenging. Some instances, the speakers start responses with their name (Jamie: Jamie, Hello ..) so multiple iterations required.
Accomplishments that we're proud of
- Created a tool that bridges complex financial reports with engaging podcasts.
- Made SEC data more accessible and engaging for financial professionals, global users, and anyone who wants to quickly understand key points of the 10-K/10-Q reports
- Support multi languages with proper localization and voice selection.
- Ensures no hallucinated numbers — all figures come directly from SEC filings.
What we learned
- Prompt Engineering Matters: Well-crafted prompts are essential not only for summarization accuracy but also to avoid hallucinations.
- Chunking + Truncation = Scale: Parallel chunk processing with safe summary truncation allows us to handle lengthy filings without exceeding API limits.
- Voice & Localization = Impact: Text-to-Speech (TTS) and multilingual support make insights more engaging and accessible across global audiences.
What's next for FilingTalk: Turn 10-Q & 10-K filings into engaging podcasts
- Continue refining prompts to improve the output quality and enable dynamic prompt adjustments based on company sector and size so we can generate more relevant summaries that align with key metrics.
- Deeper Financial Insights: Incorporate contextual analysis of key metrics (e.g. margin shifts, market positioning).
- Personalized Experience: Allow users to customize tone, speaking style, and region-specific voices for tailored summaries.
- Continuous Improvements: Optimize generation speed, resolve minor issues, and make the codebase more robust.
Log in or sign up for Devpost to join the conversation.