Multi-Agent AI System for Financial Intelligence and Risk Analysis

moody’s · Finance · 2025 · source Agentic: yes · promotional bias: med · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Financial risk intelligence, document analysis, and customer workflow orchestration

Moody's needed production-grade generative AI for high-stakes financial intelligence where customers combine Moody's proprietary data with their own unstructured documents, ask multi-domain analytical questions, and expect accurate, cited answers for credit, climate, economics, compliance, and portfolio decisions.

Constraints:

Architecture

Moody's evolved from a 2023 grounded research-assistant chatbot into a production multi-agent/workflow system. A custom ECS orchestrator consumes JSON workflows containing tools, agents, and prompts; parallelizes independent steps; respects dependencies; retries throttled LLM calls; and optimizes cost. About 80 Lambda-backed tools, 100+ workflows, simple prompt/tool/validation agents, and complex ECS agents use flexible per-step LLM selection through Amazon Bedrock. Unstructured financial PDFs flow through an intelligent page classifier that routes text pages to Bedrock OCR-to-markdown, table pages to Bedrock Data Automation, and charts/images to vision models plus vector metadata. Agentic retrieval plans, searches, reflects, loops, and returns cited chunks as a reusable tool for workflows and agents.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  UI["Research Assistant and Workflow Designer"] --> Orchestrator["Custom Orchestrator"]
  Orchestrator --> Tools["Lambda Tool Layer"]
  Orchestrator --> Simple["Simple Agents"]
  Orchestrator --> Complex["Complex Agents on ECS"]
  Orchestrator --> Retrieval["Agentic Retrieval Tool"]
  Tools --> Data["Moody's Data Universe"]
  Simple --> Bedrock["Bedrock Model Layer"]
  Complex --> Bedrock
  Data --> PDF["PDF Processing Pipeline"]
  PDF --> BDA["Bedrock Data Automation"]
  PDF --> Stores["Vector and Retrieval Stores"]
  BDA --> Stores
  Stores --> Retrieval
  Future["AgentCore Future Services"] --> Orchestrator
  Future --> Tools
  Future --> Complex
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Research Assistant and Workflow Designer Customer-facing interfaces for grounded Q&A and visual orchestration of repeatable Moody's intelligence workflows. Custom Orchestrator
Custom Orchestrator ECS-hosted orchestration brain that interprets JSON workflows, coordinates tools and agents, parallelizes steps, handles dependencies, retries, throttling, and cost/performance optimization. Research Assistant and Workflow Designer, Lambda Tool Layer, Simple Agents, Complex Agents on ECS, Bedrock Model Layer, Agentic Retrieval Tool
Lambda Tool Layer Stateless single-purpose tools that fetch data or perform calculations and can be reused across workflows and agents. Custom Orchestrator, Moody's Data Universe
Simple Agents JSON-defined agents composed of prompts, curated tool sets, and validation steps that can be orchestrated dynamically. Custom Orchestrator, Lambda Tool Layer, Bedrock Model Layer
Complex Agents on ECS Custom software agents for stateful, long-running, or high-compute tasks beyond Lambda's execution limits. Custom Orchestrator, Lambda Tool Layer, Bedrock Model Layer
Bedrock Model Layer Serverless model access layer with global/geographic cross-region inference and per-agent/per-step model selection. Custom Orchestrator, Simple Agents, Complex Agents on ECS, PDF Processing Pipeline
PDF Processing Pipeline Intelligent page classification and multimodal routing pipeline for financial PDFs with text, tables, charts, images, and footnotes. Bedrock Model Layer, Bedrock Data Automation, Vector and Retrieval Stores, Agentic Retrieval Tool
Bedrock Data Automation Table and complex financial-document extraction service used when generic LLM or table extraction is insufficient. PDF Processing Pipeline, Vector and Retrieval Stores
Vector and Retrieval Stores Stores parsed document chunks, embeddings, visual metadata, and retrieved context for workflows and agents. PDF Processing Pipeline, Agentic Retrieval Tool
Agentic Retrieval Tool Plans, executes, reflects, and iterates over document search strategies before returning cited chunks. Custom Orchestrator, Vector and Retrieval Stores, Lambda Tool Layer
Moody's Data Universe Ratings, research, company/entity data, climate, economics, compliance, and customer-uploaded documents. Lambda Tool Layer, PDF Processing Pipeline, Vector and Retrieval Stores
AgentCore Future Services Candidate managed primitives for runtime, tool gateway, identity, observability, and memory to replace custom code and reduce technical debt. Custom Orchestrator, Lambda Tool Layer, Complex Agents on ECS

Data flow

Users start with Moody's research assistant or visual workflow designer to orchestrate financial-intelligence tasks. The custom orchestrator receives JSON-defined workflows with tools, agents, and prompts, runs independent steps in parallel, waits for dependencies, retries throttled model calls, and uses per-step model selection through Bedrock. Lambda tools fetch data or perform calculations, while ECS-hosted complex agents handle stateful or long-running work. Customer PDFs are classified by page type, routed to Bedrock LLM OCR, Bedrock Data Automation, or vision processing, and then stored as queryable text/metadata. Agentic retrieval decomposes questions into search strategies, runs multiple searches, reflects on sufficiency, and returns cited chunks to downstream agents and workflows.

4 supporting quotes
“our custom built orchestration system, right, will take, again, in JSON format, your list of tools, your list of agents, your list of prompts”transcript, stated
“we are paralleling as many of these steps as humanly possible, right? But we're also understanding that, you know, you need to have x amount of these steps finished”transcript, stated
“Not all pages are created equal, right? A text heavy narrative page needs far different processing than a page dominated by complex tables”transcript, stated
“we get the user's query, right? We create a plan off of that, right? So this means decompose the queries, right? Create a search strategy”transcript, stated

Why this architecture

Moody's chose serverless, tool-based, multi-agent workflow orchestration because financial markets create 50x traffic spikes, users build repeatable multi-step analyses rather than simple chat questions, and context switching across credit, sector, news, compliance, and customer data hurts model performance. Lambda-backed tools provide reusable stateless operations; ECS supports custom stateful and long-running agents; Bedrock gives model flexibility and regional capacity; and agentic retrieval plus page-type routing solve the retrieval limits of complex financial PDFs.

4 supporting quotes
“So we moved from, let's ask a question and get an answer to let's orchestrate specialist intelligence, right?”transcript, stated
“The financial world that we live in is incredibly spiky, right? So at any moment, credit risk, a credit change happens, and we go from baseline users on our site to 50x”transcript, stated
“The breakthrough wasn't about better prompts, right? It was about better context boundaries, right?”transcript, stated
“every agent, every step, every tool has the ability to choose a very specific LLM for its needs”transcript, stated

Models used: Amazon Bedrock foundation models · Claude Sonnet 4.5 via Bedrock examples · Reasoning models and small language models selected per agent/tool · Vision models for chart and image processing · Bedrock Data Automation for complex document extraction

Scale

Alternatives considered (roads not taken)

Basic RAG chatbot with one model and one context window

Rejected because: It handled grounded Q&A but crumbled on complex multi-company, multi-domain analyses because a single context had shallow expertise and degraded performance.

“It's a RAG system, one model, one context window, right? Trying to solve everything, right?”transcript, stated
“context window limitations, performance degradations, right? And just shallow expertise, right? And so we were really asking the impossible.”transcript, stated

Basic Python PDF extraction

Rejected because: It was fast and cheap but lost structural context needed for financial analysis.

“we started with basic Python libraries, right? It goes, it extracts a bunch of the text, right? And it does it pretty decently well, and fast and cheap.”transcript, stated
“you lose all context, right? I think about it as throwing a 200-page document into a blender”transcript, stated

Custom PDF parsing algorithms based on hierarchy and bounding boxes

Rejected because: The approach was complex and could not reliably scale across varied financial document layouts.

“we would try to do some bounding boxes around certain sections so that we could group some of these things together.”transcript, stated
“It's not always gonna be able to work, it's not always going to be able to scale with the different types of documents that get thrown at it.”transcript, stated

Multimodal foundation models over whole PDFs

Rejected because: Vision models helped but still struggled with complex tables/layouts and were too expensive at production scale.

“we definitely found that certain complex tables, right, definitely certain complex layouts, right, it would just struggle”transcript, stated
“And the reality? That was very, very costly, right? So thinking about how to do that at scale was gonna be very, very difficult”transcript, stated

Million-token context windows for whole documents

Rejected because: Large contexts worked better initially but degraded as documents grew and were expensive to scale.

“We can just throw these entire giant documents in there and it will be able to understand them all.”transcript, stated
“larger the documents, the more you stuff into a context window, the more you are going to start to degrade what comes out.”transcript, stated

Single-shot vector or hybrid search with top-k chunks and reranking

Rejected because: Financial questions often require scattered information across tables, pages, revenue data, sectors, and footnotes, which a single retrieval shot misses.

“traditional single shop vector search, Which then just returns the top-k chunks, right? Or combining that with some form of keyword search.”transcript, stated
“And so how do you, how are you able to pull all of that stuff together in a single shot search? It's just not gonna happen, right?”transcript, stated

Patterns

multi-agent-orchestration (architecture)

Moody's runs specialized task agents and JSON-defined workflows through a custom orchestrator that coordinates tools, agents, prompts, dependencies, and parallelism.

“we have created custom orchestrators with specialized workflows, with specific task agents all sitting there trying to solve a designated task”transcript, stated
“We have a hundred plus workflows, right? We have many specialized task agents themselves”transcript, stated

context-engineering (architecture)

Moody's frames the architectural shift as context boundaries, domain isolation, and elimination of cross-domain interference rather than prompt tuning.

“No more prompt engineering, right? But true context engineering, right?”transcript, stated
“these multi-agentic workflows, right, they own precise context boundaries, right, about their specific domain. No cross-domain interference.”transcript, stated

tool-use-orchestration (architecture)

The system exposes Lambda tools as reusable single-purpose operations that agents and workflows call for data fetching and calculations.

“tool, right, is a system that performs a very specific task. It is a process, it returns context back to an LLM”transcript, stated
“we have about 80 or so tools.”transcript, stated

rag-retrieval (architecture)

Moody's uses Bedrock Knowledge Bases, vector stores, and agentic retrieval to retrieve cited context from proprietary and uploaded financial documents.

“Knowledge Base for Amazon Bedrock. What this allows you to do is to have a fully managed end-to-end RAG workflow.”transcript, stated
“this is where we went into a agentic retrieval, right?”transcript, stated

observability-tracing (operations)

The AgentCore direction emphasizes collecting every agent step, model call, tool call, reasoning chain, and prompt for troubleshooting and regulatory compliance.

“How do you actually collect every single step that every single agent took behind the scenes? Every single large language model call, every single tool call”transcript, stated
“With AgentCore Observability, you can either use Runtime on AgentCore Gateway, or you can even use outside AgentCore.”transcript, stated

model-routing (architecture)

Every agent, step, and tool can choose its own LLM, allowing reasoning models for complex analysis and smaller models for simpler computations.

“every agent, every step, every tool has the ability to choose a very specific LLM for its needs”transcript, stated
“one of our agents could use a reasoning model and another one could use even a small language model for small computational pieces”transcript, stated

durable-execution (operations)

The custom orchestrator manages long multi-step workflows with dependencies, retries for throttling, error handling, and ECS support for long-running agents.

“you need to have x amount of these steps finished, right, before the next step is allowed to go.”transcript, stated
“to save costs, right, to handle our errors, anytime we get throttled by our LLM providers, right?”transcript, stated

safety-policy-enforcement (safety)

The system design has to account for customer data isolation, regulated financial workflows, and inbound/outbound agent authorization.

“we have to think about compliance. We think we have to think about data separation. When users actually input their data into our systems, we have to think about true data isolation”transcript, stated
“what tools, and what type of calls those agents can do on behalf of the user?”transcript, stated

Tradeoffs

Move from better prompts to better context boundaries.

Chose Specialized agents and workflows with precise domain context over Continued prompt tweaking in a broad research assistant.

Rationale: Small prompt gains could not solve cross-domain interference and shallow expertise in high-stakes financial analysis.

“We spent much of our times in research assistant, tweaking prompts, tweaking the intent engine, and all of these for really small gains.”transcript, stated
“The breakthrough wasn't about better prompts, right? It was about better context boundaries, right?”transcript, stated

Use Lambda tools and ECS complex agents together.

Chose Lambda for stateless tools and ECS for stateful or long-running agents over Using Lambda for every operation or building all agents as one service type.

Rationale: Lambda gives fast stateless reuse, while ECS handles state and tasks that exceed Lambda's runtime and compute limits.

“we chose to do in Lambdas, right? So the reason for this is, because they are single purpose, they are fast, right? And they are stateless”transcript, stated
“ECSs on the other hand, give us that stateful information, right? They allow us to have long running tasks”transcript, stated

Route PDF pages to specialized processors.

Chose Page classification with Bedrock OCR, BDA for tables, and vision models for charts/images over One universal PDF extraction method.

Rationale: Financial PDFs mix narrative text, tables, charts, images, and footnotes, and no single method met cost, accuracy, and scale requirements.

“This is the concept of not trying to find one solution to solve our problem, right? But we would start building pipelines that could route different content types”transcript, stated

Keep custom orchestration initially but evaluate AgentCore managed primitives.

Chose Custom-built orchestration to get fast to market, with future replacement by managed Bedrock AgentCore pieces over Waiting for managed orchestration services or keeping all custom code indefinitely.

Rationale: Custom work solved missing capabilities early, but managed services may reduce technical debt now that AgentCore exists.

“we were incredibly fast to the market, right? And we have been custom building a lot of our solutions, because there just weren't solutions available”transcript, stated
“we are going to be able to replace a lot of our custom code width, right? And it's gonna be able to solve our problems.”transcript, stated

Allow per-agent and per-tool model selection.

Chose Flexible model routing per step over Pigeonholing the whole system into one LLM.

Rationale: Different steps need different model capabilities, costs, and validation contexts.

“we made a concerted effort not to be pigeonholed into a specific model, right, for our systems.”transcript, stated
“one of our agents could use a reasoning model and another one could use even a small language model for small computational pieces”transcript, stated

Gotchas (what bit them)

A single RAG assistant could not answer complex cross-domain financial questions reliably.

Root cause: The system tried to use one model and one context window across credit, sector, news, regulatory, and portfolio analysis, causing context limits and shallow expertise.

Resolution: Moody's moved to specialist intelligence, custom workflows, and context-engineered domain boundaries.

“It's a RAG system, one model, one context window, right? Trying to solve everything, right?”transcript, stated
“context window limitations, performance degradations, right? And just shallow expertise, right? And so we were really asking the impossible.”transcript, stated

Financial PDF extraction lost meaning when structure was flattened.

Root cause: Headers, tables, footnotes, charts, and layouts can span pages, so plain text extraction removes the relationships needed for analysis.

Resolution: Moody's routes pages by modality and uses specialized processors such as Bedrock Data Automation for table-heavy pages.

“A table header can be on one page, right? But the actual table can span two, three pages afterwards”transcript, stated
“you lose all context, right? I think about it as throwing a 200-page document into a blender”transcript, stated

Several plausible PDF strategies failed production requirements.

Root cause: Basic libraries lost structure, custom parsers did not scale, multimodal models were costly and imperfect, and large context windows degraded with document size.

Resolution: The team adopted a pipeline with page classification and modality-specific processing rather than one universal parser.

“So here we have it, four approaches, all of them failed, right, to reach the kind of requirements that we need in the financial industry.”transcript, stated
“Not all pages are created equal, right? A text heavy narrative page needs far different processing than a page dominated by complex tables”transcript, stated

Single-shot retrieval cannot answer questions whose evidence is scattered across large annual reports.

Root cause: Business units, revenue, sector context, and footnotes may live in different tables and pages, beyond top-k search's reach.

Resolution: Moody's built agentic retrieval that plans, searches repeatedly, reflects on sufficiency, and returns cited chunks.

“where the information is just scattered, right, across these documents”transcript, stated
“Then it will reflect, right? Did it actually answer that question? Was it able to pull down that information? If not, continue the loop”transcript, stated

The orchestrator's original 20-step assumption was too small for real customer workflows.

Root cause: Production users built much more complex analyses than designers anticipated.

Resolution: The orchestration system now supports customer workflows over 400 steps.

“he set a max limit to about 20 or so steps, right? Because none of us thought in any way, shape, or form that you would need more than 20 tools”transcript, stated
“Now, some of our customer workflows are over 400 steps, right?”transcript, stated

Evaluation

Moody's reports production status, usage and workflow scale, speed improvements, task-completion reduction, grounding/citation behavior, and operational observability goals. It does not provide exact accuracy/error-rate benchmarks.

Metrics: 60% faster insights from the research assistant. · 30% reduction in task completions. · 80 or so tools, 100+ workflows, many specialized agents. · Over one million tokens processed per day. · Customer workflows over 400 steps.

4 supporting quotes
“It was saving people 60%, it was giving people 60% faster insights, right? It was 30% reduction in task completions.”transcript, stated
“we have about 80 or so tools. We have a hundred plus workflows, right? We have many specialized task agents themselves, and we're processing over a million tokens a day”transcript, stated
“this isn't a demo, this is in production today, right, satisfying our customer's needs.”transcript, stated
“How do you actually collect every single step that every single agent took behind the scenes?”transcript, stated

Outcomes

The system supports Moody's financial-intelligence customers across 165 countries, 97% of the Fortune 100, 2,600 commercial banks, 1,900 asset managers, 800+ insurance companies, and Orbis's 600 million entities.

4 supporting quotes
“We serve over 1,500 customers across 165 countries, 97% of the Fortune 100.”transcript, stated
“this isn't a demo, this is in production today, right, satisfying our customer's needs.”transcript, stated
“It was saving people 60%, it was giving people 60% faster insights, right? It was 30% reduction in task completions.”transcript, stated
“Now, some of our customer workflows are over 400 steps, right?”transcript, stated