Overview
The Document Generation feature enables creation of LMA (Loan Market Association) templates from CDM data with AI-powered field population, interactive chatbot assistance, and comprehensive template management. Code Reference:client/src/apps/document-generator/DocumentGenerator.tsx, app/generation/service.py, app/chains/decision_support_chain.py
Key Features
Template-Based Generation
- LMA Templates: Standard LMA template library
- CDM Data Hydration: Automatic field mapping from CDM data
- Field Overrides: Manual field value overrides
- Template Preview: Preview templates before generation
app/generation/service.py (DocumentGenerationService)
AI-Powered Assistance
- Decision Support Chatbot: Interactive AI assistant for template selection
- Field Population: AI-powered field filling for missing data
- Template Recommendations: AI suggests appropriate templates
- Context Awareness: Deal-aware assistance with deal context
app/chains/decision_support_chain.py, client/src/apps/document-generator/ChatbotPanel.tsx
Multi-Input Support
- CDM Data Input: Manual CDM data entry
- Document Library: Select from previously extracted documents
- Deal Context: Load CDM data from deals
- Field Editing: Interactive field editing interface
client/src/apps/document-generator/DocumentGenerator.tsx
Workflow
1. Select Data Source
- Choose Input Mode: Manual CDM, library document, or deal
- Load Data: Load CDM data from selected source
- Review Data: Review CDM data completeness
- Edit if Needed: Edit CDM data using field editor
2. Select Template
- Browse Templates: Browse available LMA templates
- AI Recommendations: Get AI recommendations based on CDM data
- Template Preview: Preview template structure
- Select Template: Choose template for generation
3. Configure Generation
- Review Mappings: Review CDM to template field mappings
- Field Overrides: Set field overrides if needed
- Missing Fields: Review missing fields
- AI Assistance: Use chatbot for field filling guidance
4. Generate Document
- Generate: Click “Generate Document”
- AI Processing: AI fills missing fields
- Document Rendering: Render final document
- Download/Save: Download or save generated document
API Endpoints
Generate Document
Generate a document from a template using CDM data. Request Body:app/api/routes.py (generate_document endpoint)
Get Template Mappings
Get field mappings for a template. Response: Template field mappingsDecision Support Chatbot
Chatbot Features
- Template Selection: Help select appropriate templates
- Field Filling: Assist with missing field values
- CDM Schema Help: Explain CDM schema and structure
- Best Practices: Provide guidance on document generation
- Deal Context: Use deal context for better assistance
app/chains/decision_support_chain.py (DecisionSupportChatbot)
Chatbot Interface
Location:client/src/apps/document-generator/ChatbotPanel.tsx
Features:
- Conversation History: Maintain conversation context
- Knowledge Base: Access to template and CDM documentation
- Deal Integration: Load deal context for assistance
- Template Suggestions: AI-powered template recommendations
Template Management
Template Storage
- Database Storage: Templates stored in database
- File Storage: Template files stored in file system
- Version Control: Template versioning support
- Active/Inactive: Enable/disable templates
app/db/models.py (LMATemplate model)
Field Mappings
- Automatic Mapping: Automatic CDM to template field mapping
- Custom Mappings: Custom field mapping configuration
- Mapping Preview: Preview mappings before generation
- Mapping Validation: Validate mappings for completeness
app/generation/service.py (field mapping logic)
User Interface
Document Generator
Location:client/src/apps/document-generator/DocumentGenerator.tsx
Features:
- Input Tabs: Multiple input modes (manual, library, deal)
- Template Grid: Browse and select templates
- CDM Preview: Preview CDM data structure
- Field Editor: Edit individual fields
- Chatbot Panel: Interactive AI assistant
- Generation Status: Track generation progress
Best Practices
- Complete CDM Data: Ensure CDM data is complete before generation
- Template Selection: Choose appropriate template for deal type
- Field Review: Review all field mappings and values
- AI Assistance: Use chatbot for guidance on missing fields
- Document Review: Always review generated documents before use
Additional Resources
Last Updated: 2026-01-14
Code Reference:
client/src/apps/document-generator/DocumentGenerator.tsx, app/generation/service.py, app/chains/decision_support_chain.py