Inspiration
The inspiration for Recur AI came from the frustration of dealing with dense, lengthy annual reports. These documents often contain critical business insights buried within hundreds of pages of text, tables, and charts. We recognized that professionals across industries spend countless hours manually extracting information from these reports, often missing key connections and insights. We wanted to create an AI solution that would transform this tedious process into an intuitive, conversation-based experience.
What it does
Recur AI is an AI-powered application that enables users to have natural conversations with their PDF documents, specifically focusing on annual reports. Users can:
Upload any annual report PDF through a simple web interface Ask questions in plain English about the content (e.g., "What were the key risk factors last year?") Generate executive summaries and PowerPoint presentations automatically Schedule automated analyses with alerts for significant findings Compare different reports to identify trends and changes Export insights in various formats for sharing with stakeholders
The system uses advanced NLP techniques to understand both the question context and document structure, delivering precise answers rather than just keyword searches.
How we built it
We built Recur AI using a modular Python architecture with these key components:
PDF Processing Engine: Using PyPDF2, pdfplumber, and camelot to extract text and tables while preserving structure Text Processing Pipeline: Employing spaCy for NLP tasks and sentence-transformers for creating semantic embeddings Vector Database: Creating searchable vector representations of document chunks for semantic retrieval AI Query Interface: Leveraging LLM APIs to understand questions and generate human-like responses Report Generation System: Automatically creating summaries and presentations using python-pptx Web Interface: Building a Flask-based web application with intuitive UI for document upload and interaction Scheduling System: Implementing automated analysis with APScheduler
Challenges we ran into
Our development journey had several significant challenges:
PDF Extraction Complexity: Annual reports often have complex layouts, tables, and charts that resist simple text extraction Python Version Compatibility: We encountered issues with spaCy and other dependencies when using newer Python versions Model Installation: Setting up the required NLP models required additional configuration steps Memory Management: Processing large PDFs demanded efficient memory handling to avoid crashes Semantic Understanding: Training the system to understand financial terminology and context-specific language Web Application Deployment: Ensuring the Flask application properly handled template rendering and file uploads
Accomplishments that we're proud of
Despite the challenges, we're particularly proud of:
Creating a system that can answer complex questions about financial data with human-like understanding Developing an automated presentation generator that creates professional-quality slides Building a comparison engine that can identify significant changes between reports Implementing an alerting system that proactively identifies risks and opportunities Designing a user-friendly interface that makes the power of AI accessible to non-technical users
What we learned
This project provided valuable lessons in:
Advanced PDF processing techniques and their limitations Vector database implementation for semantic document retrieval Integrating multiple NLP libraries to create a cohesive analysis pipeline Web application development with Flask The complexities of financial reporting and analysis Practical applications of embeddings and semantic search Creating production-ready AI applications with proper error handling
What's next for Recur AI We have ambitious plans to expand Recur AI:
Support for additional document types beyond annual reports (research papers, legal documents, etc.) Multi-language support for international reports Advanced data visualization options for financial metrics Fine-tuned domain-specific models for improved accuracy API integration with financial data providers for real-time context Collaborative features allowing teams to work together on document analysis Mobile application for on-the-go insights
By continuously improving Recur AI, we aim to transform how professionals interact with complex documents, saving countless hours and uncovering insights that might otherwise remain hidden.
Built With
- css
- flask
- html
- javascript
- langchain
- natural-language-processing
- openai
- python
- spacy
Log in or sign up for Devpost to join the conversation.