Money Talks: Chatting With Your Favorite 10-K
Adam Hurwitz recently shared a popular blog post about using Semantic Kernel to chat with the Microsoft 10-K, which can be extended to any other 10-K document that you like. As a seasoned pro in the space of Financial Services applications, Adam’s hands-on experience with LLM AI is indicative of how each industry vertical is on the brink of extraordinary digital transformations.
Financial jargon footnote: A 10-K refers to “Form 10-K” — an annual report that provides “a comprehensive overview of a company’s business and financial condition” according to the US SEC.
Interview With Adam Hurwitz
How you pick the scenario of course relies on your domain experience, the pain-versus-value associated with it, and then the creative vision/urgency. In Financial Services of course there are strict security and compliance requirements, but with AI there is also a need to be responsible in its development and use. —Adam Hurwitz
John Maeda: Tell us a bit about yourself and your professional background.
Adam Hurwitz: My background has mainly been in creating software and products across a number of industries. I’ve been a developer, dev manager, data analyst, CTO, and Program Manager. I’ve spent time working in ecommerce, real estate, and retail. I worked in the legal industry focusing on e-discovery where I created a distributed data processing system and I was a CISSP and helped with forensics. I was on an early Azure product team. I spent a little time in healthcare startups. And then I shifted into customer facing roles back at Microsoft in Financial Services focused on cloud where I’ve architected and strategized for some of the largest names in the industry.
JM: How did you first become interested in AI/ML as applied to Financial Services?
Adam: I was first interested in ML over 10 years ago with the problem of classifying documents in the legal industry. This led to an interest in horse racing which my wife eventually put a stop to. I found my way onto the original Azure Machine Learning team for a bit. But later on after I filed and achieved a patent in ML related to data quality, I put the area fully aside to focus on cloud. The recent advancements in AI have obviously grabbed my attention and interest, like everyone else.
JM: As an app designer, what does the word “design” mean to you and your own career’s evolution?
Adam: I think of design generally in terms of the creative process, not just for apps. Earlier in my career I found that trying to write fiction helped my technical work. Design happens when a certain simplification and unity occurs in what you’re working on which translates into a variety of qualities we notice like usability. The most interesting result I find of design is when it can strike people as obvious and easy.
JM: What inspired you to recently develop with Semantic Kernel?
Adam: First of all as an app developer I just wanted to make something. With the use case in mind, choosing Semantic Kernel was relatively straightforward. I’ve worked with a number of languages but generally prefer C# so that was an initial draw, though I will also make use of Python now that it’s available. Working at Microsoft, I wanted to know how we are viewing the AI app dev space and definitely liked that it is open source. It is an exciting time and Semantic Kernel is the kind of package that lets me get involved. I think most of the work now around LLMs is about how we are going to integrate them and make use of them which is of course what developers do when building applications.
JM: What are some of the unique features of the Semantic Kernel SDK that worked for you? What didn’t work?
Adam: I definitely liked the concepts of Skills and Memories and the ease of using them. The syntax examples in the repo were also really helpful. It was amazing how much I was able to get done in such a short program working directly from the samples. I liked having built-in connectors to use for Memory storage. I started out using Volatile and it was a simple replacement after I had a vector database running. I am looking forward to making use of other stores, like Cosmos DB, as I look to have this running in Azure. I would like to see an Agent concept and I think it needs to have a repl to open up other scenarios and for design simplicity.
Chatting With A 10-K?
JM: You created an app with source code available on GitHub to query a company’s 10K — in this case Microsoft’s. What drove you to do that?
Adam: First of all, chatting with a document has become a canonical use case for Generative AI and so I was excited to implement and understand it. And a company’s 10K is an important financial document with lots of information in it and I have always had trouble finding things I wanted to learn. If you open a document and do a keyword search on something like ‘revenue’ you could get hundreds of hits and not now which has the info you want, and then you’re scrolling through pages and pages. Can’t I just ask a specific question and not have to search or scroll?
JM: How would you have done this with conventional AI/ML just a few years ago?
I don’t know how I would have done it. I’m not sure I would have been able to, really.
JM: You and me both, brother! <laughter> So, for aspiring innovators out there who can go deep in a vertical, like Financial Services in your case, and who also understand this new emerging AI technology at the code level, what’s your advice for their careers?
Adam: Overall Generative AI is a revolutionary technology that reminds me of shifts like putting everyone’s info in a database or connecting everyone on a network. And so right now I believe it is best to pick a specific scenario and really dig into it, even if it is not fruitful it should open up the range of issues and concerns for the area in general. How you pick the scenario of course relies on your domain experience, the pain-versus-value associated with it, and then the creative vision/urgency. In Financial Services of course there are strict security and compliance requirements, but with AI there is also a need to be responsible in its development and use.
Adam Hurwitz is an Azure App Innovation Specialist at Microsoft in the Financial Services organization. He is a technologist with broad experience creating software products and services in various industries.