AI Tools for Your
Practice
Tomas Milo, CPA
tomas@sigmaoptimized.com
Sigma Optimized
2
Agenda
Workshop philosophy: Can we learn 3 practical and useful ways to leverage AI in the
next ~25 minutes?
(very brief) introduction to LLMs what are they? How do they work?...are they smart?
Three levels of AI implementation
Tomas Milo, CPA
2
Level 1:
Low hanging
fruit
Level 2:
Automation
partner
Level 3:
Advanced
3
Tools needed to recreate today’s examples
The three examples covered today are accessible to all, no technical knowledge
required
We will use the following tools:
LLMs: ChatGPT / Gemini / Claude / any LLM of your choice, it doesn’t matter!
Excel with access to Office Scripts (at least version 2019)
Google Colab
Gemini API key get your API key here: https://aistudio.google.com/
Tomas Milo, CPA
3
4
Brief introduction to AI
AI is technology that allows computers to learn patterns from data and apply them to
new situations
Generative AI is a subset of AI that creates new content in response to a “prompt”
What type of content? Text, code, audio, images, video
What is a prompt: A prompt is a plain-language instruction or question
We’ve always had technological progress…what’s different about Gen AI?
For the first time (especially at scale), we have tools that create output
It radically changes the way we interact with tasks (especially monotonous, repetitive tasks)
“AI is the new electricity” – Andrew Ng, Stanford
Tomas Milo, CPA
5
Prompt engineering basics
Foundationally, LLMs are probabilistic
models their outputs are just a
probability game
The outputs are generated from the
information, context, and constraints you
explicitly provide.
Clear, specific prompts produce more
accurate, relevant, and reliable results.
And the opposite applies! If you don’t provide
effective prompts, you won’t get good results
Cannot overstate the ROI on prompt
engineering
Tomas Milo, CPA
6
Common mistakes when using LLMs
1. Not using a structured prompt template (CREATE,CISCO, etc.)
2. Letting it guess too much clearly state the goal
3. Treating it like a search engine: Although some LLMs have access to the internet,
LLMs work by generating content (which means that it may generate inaccurate
responses)
4. Forgetting to validate results: it might create code / suggest Excel functions that
looks right but returns the wrong numbers
* This is the highest risk you need to create controls since the system won’t flag any
errors.
Tomas Milo, CPA
7
Unintended consequences…
Tomas Milo, CPA
8
Is AI intelligent?
Define “intelligent”
There are some disagreements about this:
Some say yes
Some say we’re getting there
Some say we will never get there
However…we’re not concerned with the truth value of this question
What we are concerned with is “Are properly implemented AI tools useful to our
workflows?” 100% YES!
Tomas Milo, CPA
9
Level 1: Low hanging fruit
Don’t underestimate the power of LLMs to simplify day-to-day tasks
Whether it be helping summarize text, drafting emails, writing reports
See a great example from the Journal of Accountancy: Using ChatGPT to build a standard
operating procedure
You can start improving your SOPs for free, today
LLMs are trained on massive amounts (trillions and trillions of words) of structured and
unstructured text
Result: LLMs are great at summarizing text
Very important source document for the LLM to use
Tomas Milo, CPA
10
Level 1: Low hanging fruit (cont.)
Let’s say we want to assess whether, and to what extent, Microsoft discloses climate-
related risks in its 10-K filings: Inline Viewer: MICROSOFT CORPORATION 10-K 2025-06-30
How would we approach this task without LLMs? Manually read the entire document (13
pages)
Doable…but what if we are asked to analyze 10 reports? 100 reports?
Effective prompts allow us to perform this task more efficiently Link to effective prompt
Can you think of ways that an ineffective prompt could lead the LLM to give us incorrect
answers?
Tomas Milo, CPA
11
Level 2: Automation Partner
A great way to use LLMs is to build deterministic tools.
Deterministic tools produce the same output every time given the same inputs
Excel is an example of a deterministic tool
Treating the LLM as the “automation partner” allows us to create very powerful and
useful tools, even if we don’t have the technical expertise (or importantly, the time)
As CPAs, we often need to perform repetitive Excel tasks
Office Scripts, which can be thought of as the ‘new’ VBA, can automate these tasks
How does Office Scripts work? It uses a programming language called TypeScript
Even if you have never programmed or used Office Scripts, you can build an entire
automation pipeline in an afternoon
Let’s see an example
Tomas Milo, CPA
12
Level 2: Automation Partner (cont.)
Data source: Superstore Dataset
Creating a sheet called “High sales” that contains rows where ‘Sales’ is larger than
$1,000
LLM prompt: You are an expert in Office Scripts and Excel. I need you to write an Office Script in TypeScript for Excel
that does the following:
Takes the worksheet called “train” and uses the range of the sheet (assumes header in row 1).
Filters all data rows where the ‘Sales’ column value is greater than 1000.
Creates (or clears) a worksheet named ‘High Sales’.
Writes the header plus filtered rows into ‘High Sales’.
Think step by step, and I want you to explain to me how the code works so I can learn.
Tomas Milo, CPA
13
Level 3: Advanced
While this is an “advanced” topic, you will see that it is quite accessible (and powerful)
We will combine Python and Gemini to analyze PDFs
Python: programming language that is widely used in finance and analytics (learn for free here:
https://www.learnpython.org/)
Gemini API: Gemini is Google’s LLM model. An API is the way software communicate with each
other
Google Colab:
A browser-based workspace for running Python code in the cloud
No software installation or local setup required
Ideal for collaborating!
Tomas Milo, CPA
14
Level 3: Advanced (cont.)
I often hear from CPAs that LLMs hallucinate
As we discussed, to a certain extent “hallucinations” are inherently part of LLMs
LLMs are explicitly trained to answer your questions…even if they don’t know the answer
We focused on prompt engineering before, now we’ll focus on context engineering
Context engineering focuses on what information the model is given before it answers
Essentially, can we provide a source of knowledge to the LLM to arrive at the “truth”?
Let’s see this in action: Link to Google Colab’s Notebook
Tomas Milo, CPA
15
Q&A
Tomas Milo, CPA