ML Analytica × Van Lanschot Kempen
From finding information
to understanding the client.
A secure AI foundation connecting structured client data with the knowledge hidden in notes, emails and documents.
Based on our initial discussion, and designed to be corrected.
First, did I understand you correctly?
This picture comes from one conversation over lunch. It intentionally contains assumptions, and every one of them is marked.
Rather than pretending to know your architecture, I'd like you to correct it. The proposal further down adapts to whatever turns out to be true.
How to read the tags
- Confirmed
- Stated in our discussion
- Assumed
- Our reading. Likely, not verified
- To clarify
- Open. Shapes the design
- Proposed
- What we would add
Current data flow · as I understood it
Finnova
ConfirmedCore banking system, the source of client and portfolio data
Microsoft SQL Server
AssumedDatabase behind the CRM
Internal CRM
ConfirmedThe bank’s own CRM application
Python / Streamlit interface
AssumedHow users work with the CRM
Connected, or potentially connected, to the CRM
CRM notes
AssumedFree text written by relationship managers
Emails
To clarifyLinked to clients? Stored where?
Documents
To clarifyProfiles, agreements, meeting notes
AI infrastructure
NVIDIA DGX Spark
ConfirmedOn-premise inference hardware
Local / in-house LLM
AssumedWhich model and workloads: still open
Correct our assumptions
The architecture below updates as you change the assumptions. Clicking an option, even the current one, confirms it.
Assumptions
0 of 9 confirmed
Opens your mail client with a summary. Nothing is stored on a server; your selections stay in this browser.
Swipe sideways to see the full diagram.
What this means
- Start with full-text search and metadata filters in the existing database. Choose the vector technology once semantic matching shows measurable value.
- Answers reflect Finnova data as of the last daily load. Fine for briefs and reporting; not for intraday positions.
- CheckWhere emails and documents live decides the ingestion design (open question 1).
- Prompts, client context and answers stay on the bank's own infrastructure.
One interface. Two fundamentally different questions.
Filter what we know.
Step 1 · Question
“Show me advisory and discretionary clients whose revenue changed by more than 20%.”
Find what we said.
Step 1 · Question
“What have we discussed with this client regarding mortgages?”
Structured + semantic
Together, they produce client context.
Neither system can answer this alone. SQL finds who changed. Only the recorded conversations can suggest why. And where nothing was recorded, the system says so instead of guessing.
“Which clients had a significant revenue decline, and what do we know about why?”
9 clients, revenue −20% or more
What notes and emails say about each
Client context
- A. Meier−23%Considering a property purchase in Ticino; asked about mortgage rates.Email 12 Sep · Note 03 Sep
- C. Brunner−31%Liquidity withdrawn for a planned business succession.Note 22 Aug
- R. Family−27%No recorded contextNo recorded interaction explains the change
Semantic search doesn't need to start with vectors.
- Step 1Start here
Full-text search + metadata filters
Use the existing database and search capabilities where possible. Search notes, emails and document text; filter by client, RM, type, date and mandate.
- Step 2Technology open
Semantic retrieval
Add embeddings and vector search where semantic matching provides measurable additional value. PostgreSQL + pgvector or SQL Server vector functionality, depending on your roadmap.
- Step 3Local LLM
LLM synthesis
Retrieve first, then let the local LLM summarise and reason over the retrieved context, always with sources.
Step 1, working · try it
4 results
Fictional records · keyword match, no AI
- Email12 Sep · A. Meier · Anna B.
We are looking at a house in Ticino and would like to understand the mortgage and financing options before making an offer.
- CRM note03 Sep · A. Meier · Anna B.
Client concerned about mortgage rates; asked whether a 10-year fixed mortgage makes sense now.
- Meeting note22 Aug · C. Brunner · Marc S.
Business succession planned for 2027. Liquidity to be withdrawn in tranches; no mortgage needed.
- Document02 Jun · L. Keller · Anna B.
Mortgage renewal on the family home confirmed with partner bank, term 5 years.
Build the retrieval foundation first. Add intelligence where it creates measurable value.
One foundation. Many use cases.
“What did we discuss with the client about financing their property?”
Search notes, emails and documents in one place and return the relevant sources, not just an answer.
StructuredSemanticLLM- [1]Email · 12 Sep…understand the mortgage and financing options before making an offer.
- [2]CRM note · 03 SepConcerned about mortgage rates; 10-year fixed?
- [3]Meeting note · 14 JunMentioned selling the Zurich flat.
The Relationship Manager Brief
Every statement points to its source. Fictional client, fictional data.
Client · 14:00
Alexander Meier
What changed
Portfolio value
CHF 4.8m
8.2%
Revenue YTD
CHF 31k
23%
Structured data · Finnova via CRM · as of last load
Last interactions
- 112 SepEmailDiscussed potential property acquisition in Ticino.
- 203 SepCRM noteClient expressed concerns about mortgage rates.
- 318 AugDocumentUpdated investment profile.
AI brief
Local LLM · generated from the sources cited · verify before use“Revenue has declined primarily alongside lower transaction activity . Recent conversations indicate that the client is considering a property acquisition and has asked about mortgage conditions .”
Structured data
Finnova · CRM attributes
Semantic retrieval
Notes · emails · documents
Local LLM
Synthesis with citations
RM Brief
Traceable to its sources
Not another AI use case. A reusable foundation.
Select an application to see what it reuses. Labels follow your corrections above.
Layer 4
Applications
Layer 3
AI
Layer 2
Retrieval
Layer 1
Sources
Each application on top reuses the same sources, retrieval and governance. The second use case is much cheaper than the first, and the permissions model is defined once, not per project.
The model stays close to the data.
Sources
Finnova · CRM · notes · emails · documents
Retrieval
permissions · citations · evaluation
Model slot
Model family A
The architecture should keep the model interchangeable.
Models improve every few months. The retrieval layer, the permissions and the evaluation set are what you build once and keep. Candidate model families are compared on:
- Quality · on your own questions and documents, measured with an evaluation set
- Languages · German, English and Dutch
- Context length · how much retrieved material fits into one answer
- Hardware performance · latency and throughput on the DGX Spark
- Licensing · commercial use and redistribution terms
- Security requirements · provenance, update policy, offline operation
Retrieval answers questions.
Agents can execute workflows.
- 01Search“What do we know?”
- 02Understand“What matters?”
- 03Recommend“What should I look at?”
- 04Act“Execute the workflow.”
Largely built on the proposed AI foundation. Search, context and signals reuse the same retrieval layer.
Requires additional agentic infrastructure.
The Private Banking Agent
An RM starts their morning. The preparation is already done, and nothing has happened that they did not approve.
Boundaries, by design
- Makes no investment decisions
- Never contacts clients on its own
- Changes no CRM data without approval
- Acts only within the user's permissions
Human approval remains explicit.
- 06:30 · automatedDetects material changesAcross Anna's client book: revenue, portfolio value, maturities, new documents.
- 06:31 · automatedRetrieves contextRelevant CRM notes, emails and documents for every change.
- 06:33 · automatedIdentifies clients needing attentionRanked, each with the reason and its sources.
- 06:35 · automatedPrepares the client briefFor today's meetings and the top three flagged clients.
- 06:36 · automatedProposes a follow-upe.g. a call with A. Meier about property financing.
- 06:36 · automatedDrafts the communicationA draft only. Nothing is sent.
- after approvalCreates a CRM taskOnly after Anna approves. Logged with the reasoning and sources.Human approval
An additional layer beyond retrieval.
Agentic infrastructure
Agent orchestration
- Tool calling
- Workflow / state management
- Planning
- Retry and error handling
Agentic infrastructure
Integrations
- Finnova APIs
- CRM APIs
- Calendar
- Document systems
Agentic infrastructure
Control
- Human-in-the-loop approvals
- Fine-grained permissions
- Audit logs
- Action boundaries
Agentic infrastructure
Observability
- Agent traces
- Cost / performance monitoring
- Evaluation
- Failure analysis
Underneath · already built in phases 1 to 3
Retrieval foundation: the knowledge layer
Sources · structured + semantic retrieval · local LLM · governance
The retrieval foundation is not throw-away work. It becomes the knowledge layer underneath future agents.
Small first step. Every step stands on its own.
- Phase 1Start here
Search
- Full-text
- Metadata filters
- Structured reporting
GoalDeliver immediate value using the existing data landscape.
- Phase 2
Semantic
- Embeddings
- Vector retrieval
- RAG
- Source attribution
GoalFind information by meaning rather than exact wording.
- Phase 3
Copilot
- Client 360
- Meeting preparation
- Natural-language reporting
- Proactive RM signals
GoalTurn retrieved information into usable client context.
- Phase 4
Agentic
- Workflow execution
- Tool calling
- CRM actions
- Human approvals
GoalMove from information retrieval to controlled execution.
Scope, sequence and timing follow the answers to the open questions below. Each phase is decided on its own, based on what the previous one delivered.
Before designing the target architecture, I'd validate five things.
0 / 5 answered
- 01
Where exactly are emails and documents currently stored?
- 02
Which information is replicated from Finnova into the CRM database?
- 03
What is the planned role of PostgreSQL in the future Finnova / data architecture?
- 04
Which models and workloads are intended to run on the DGX Spark?
- 05
Which user groups and data permissions must the AI layer inherit?
Your marks and notes stay in this browser and are included in the email, together with any corrected assumptions.
Start with finding.
Build toward understanding.
Prepare for acting.
ML Analytica
AI × Data × Banking
- Contact
- Dr. sc. ETH Pascal Leuenberger
- pascal.leuenberger@mlanalytica.com
- Phone
- +41 71 575 22 15
Working hypothesis based on our initial discussion. Architecture subject to technical validation.
All client names, figures and messages on this page are fictional. © 2026 Mountain Lion Analytica GmbH · mlanalytica.com