Orchestrating the Ensemble: How Multiple AI Agents Auto-Quote a Policy
There's a tempting approach to AI automation: write one massive prompt that does everything. "Read this submission, check the clearance rules, calculate the premium, generate the quote, and email the broker." One prompt. One API call. Done.
This fails spectacularly in insurance. A commercial property submission might have an ACORD 125, three SOVs with hundreds of locations, five years of loss runs, and financial statements. No single prompt can reliably process all of that and produce a trustworthy quote.
The answer isn't a bigger model. It's a smarter architecture: an ensemble of specialized agents, each responsible for one step, passing structured data to the next.
The Ensemble Architecture
When a broker emails a submission to Oyyo, it doesn't hit a single AI model. It triggers a pipeline of specialized agents:
- The Organizer opens the email, identifies attachments, expands ZIP files, and categorizes each document by type (ACORD, SOV, loss run, financial statement)
- The Extractor processes each document according to its type — different schemas for different document types, different confidence thresholds for different fields
- The Clearance Agent checks the extracted data against the MGA's appetite rules — is this a risk we write? Is the limit within our authority? Are there any red flags?
- The Rater pulls the extracted and cleared data, applies the underwriting guidelines, and calculates the premium with a detailed breakdown
- The Quoter assembles the formal quote document, attaches the coverage terms, and stages the email for underwriter review
Each agent is a specialist. The Organizer knows nothing about premium calculation. The Rater knows nothing about document categorization. They communicate through structured data, not natural language.
Why Specialization Beats Generalization
A "God prompt" that tries to do everything suffers from three fatal problems:
- Context window overflow — a 200-page submission package exceeds what any single prompt can process reliably
- Error propagation — if the extraction is wrong, the rating is wrong, and the quote is wrong. With specialized agents, you can validate at each stage
- No partial success — if the God prompt fails at step 4, you lose all the work from steps 1-3. With agents, each step persists its output independently
The ensemble approach means that when the Extractor is uncertain about a field (confidence below threshold), the pipeline pauses at that point. The human reviews and corrects one field. Then the pipeline resumes from exactly where it stopped — the Rater picks up the corrected data and continues.
The Orchestration Layer
The hardest engineering problem isn't any individual agent — it's the orchestration. How do you manage state across five asynchronous agents, handle failures gracefully, retry on transient errors, and keep the human informed of progress?
Oyyo uses a job-based orchestration system. Each agent step is a job with defined inputs, outputs, and state transitions. Jobs run asynchronously via background processors. The Journal UI subscribes to job state changes in real-time, so the underwriter sees live progress: "Extracting... 38 of 42 fields complete."
If a job fails, it doesn't kill the pipeline. It flags the failure, notifies the human, and waits for resolution. The underwriter fixes the issue, and the pipeline resumes from the failed step — not from the beginning.
The Result: Reliable Automation at Scale
This architecture is why Oyyo can process complex, multi-document submission packages with production-grade reliability. It's not one AI hoping for the best. It's five specialists, each doing their job, each checkpointed, each auditable, each overridable by a human at any point.
That's what "mostly autonomous, entirely human" means in practice. The ensemble runs the pipeline. The human supervises the ensemble. And the result is an 8-minute quote that would have taken 45 minutes of manual work.