Is Data Labeling the Unsung Hero or Dastardly Villian of AI?
Before I dive into the nitty-gritty of our solution, let me give a shout-out to the incredible team that made it all possible. Each person on my 2025 Acumatica Hackathon team had a special skillset they brought to the table, and everyone knocked it out of the park!
Kulvir, the Architect: This dude wasn’t just a team organizer; he was the maestro of our operation. He herded us together for six (count ’em, six) prep calls and provided the technical expertise to make sure our API calls and .NET framework bits fit together like a perfect puzzle. High-level architecture? Check. Technical wizardry? Double check.
Vidya and Josh, the C# Wizards: These two were the heart and soul of our Acumatica integration. They dove headfirst into C# and the .NET framework, building the customization project, and ensuring our database, and front-end screens all played nicely together.

Lakshmi, the Data Whisperer: Our email guru, business intelligence expert. He provided the problem (business use case) and he provided the solution. Lakshmi created the initial data – Customer info, Inventory management, emails, and more. And, he gave the marketing team structure to discuss ideas.
Valerie, the PowerPoint Picasso: He crafted a visual masterpiece that highlighted our value proposition, the problems we tackled, and the ROI of our solution. If PowerPoint were an art form, he would be a master. It is an art form though isn’t it?
Brian, the Presenting Powerhouse: Brian was the energy drink of our team – high-octane, always ready to go, and absolutely nailed the presentation with his infectious enthusiasm and persuasive delivery. This guy could sell ice to an Eskimo.
And me, the LLM Wrangler: I was the one who tamed the AI beast, trained the LLM, and wrote the API calls that moved data from an email to a sales order. You might say I was the glue holding this all together… or maybe just the caffeine-fueled coder. I’ll let you decide.
Data Labeling: The Tedious but Crucial Step No One Talks About
Saturday morning at 11 am. We had 25 hours until presentations (minus the essentials: 8 hours sleep, shower, and you know, the important things)
We gathered at the venue, reviewed the architecture, and jumped right into prepping our training data. This is one of the least romantic things one can experience in building out a machine learning product… but it’s completely essential to success. This is when we took a hard look at the emails we were using to train the model. While Lakshmi inputted the actual training data, Kulvir and I wrangled a very difficult shape that would actually work within Acumatica for creation of Sales Orders. It was truly a joint operation of painstaking, precise work.
Six long, mind-numbing hours later, I was done with my JSON structuring! By the time dinner rolled around, we had our dataset, and a renewed enthusiasm! (Mostly).
Deeper Knowledge: What is JSON?
JSON, or JavaScript Object Notation, is a lightweight format that is often used to communicate data over the internet. Think of it as a universal language for APIs.
When we would pull emails via API we would receive a JSON object of the raw HTML text of the email (see example below). We trained our model to output a JSON object that would be put in the payload of a PUT API call that created a sales order.
Input
{ “Body”: { “value”: “Hi Order Desk,rnWe want to order two pallets of beef dripping for pick up. Can you help to proceed?rnrnJohn DoernrnManagement rnrnrnC: 555-555-5555rnrnE: johndoe@example.com <mailto:johndoe@example.com>” }, “From”: { “value”: “johndoe@example.com” }, “Subject”: { “value”: “Beef Dripping Order” } }</mailto:johndoe@example.com>
Output
{ “OrderType”: { “value”: “SO” }, “CustomerID”: { “value”: “JOHNDOECOMPANY” }, “Details”: [ { “Branch”: { “value”: “PRODWHOLE” }, “InventoryID”: { “value”: “FAKEPRODID123” }, “OrderQty”: { “value”: 2 }, “UOM”: { “value”: “BOX” } } ] }