36 comments

[ 3.5 ms ] story [ 42.5 ms ] thread
I wonder if text embeddings and semantic similarity would be effective here?
And this is where the strengths of LLMs really lie: making performant ML available to a wider audience, without requiring PHDs in Computer Science or Mathematics to build. It’s consistently where I spend my time tinkering with these, albeit in a local-only environment.

If all the bullshit hype and marketing would evaporate already (“LLMs will replace all jobs!”), stuff like this would float to the top more and companies with large data sets would almost certainly be clamoring for drop-in analysis solutions based on prompt construction. They’d likely be far happier with the results, too, instead of fielding complaints from workers about it (AI) being rammed down their throats at every turn.

Crucially, this is:

    - text classification, not text generation
    - operating on existing unstructured input
    - existing solution was extremely limited (string matching)
    - comparing LLM to similar but older methods of using neural networks to match
    - seemingly no negative consequences to warranty customers themselves of mis-classification (the data is used to improve process, not to make decisions)
> Over multiple years, we built a supervised pipeline that worked. In 6 rounds of prompting, we matched it. That’s the headline, but it’s not the point. The real shift is that classification is no longer gated by data availability, annotation cycles, or pipeline engineering.
This was fun to read

“ Fun fact: Translating French and Spanish claims into German first improved technical accuracy—an unexpected perk of Germany’s automotive dominance.”

It really puzzles me how this is helping and how it was done?

Does it make text more clear? How exactly? Does the German language is more descriptive? Does it somehow expands context?

So many questions in this fun fact.

Did the author exactly define "Nova Lite" somewhere in there?
Hmm, why was their starting point not something like BERT:

  * already known as SotA for text classification and similarity 
     back in 2023
  * natively multi-lingual
I love using encoder models, and they are generally a better technology for this kind of application. But the price of GPU instances is too damn high.

I won’t lie that I’ve been unreasonably annoyed that I have to use a lot more compute than I need, for no other reason than an LLM API exists and it’s good enough in a relatively small throughput application.

Warranty data is a great example of where LLMs have evolved bureaucratic data overhead. What most people do not know is because of US federal TREAD regulation Automotive companies (If they want to land and look at warranty data) need to review all warranty claims, document, and detect any safety related issues and issue recalls all with an strong auditability requirement. This problem generates huge data and operations overhead, Companies need to either hire 10's if not hundreds of individuals to inspect claims or come up with automation to make this process easier.

Over the past couple of years people have made attempts with NLP (lets say standard ML workflows) but NLP and word temperature scores are hard to integrate into a reliable data pipeline much less a operational review workflow.

Enter LLM's, the world is a data gurus oyster for building an detection system on warranty claims. Passing data to Prompted LLM's means capturing and classifying records becomes significantly easier, and these data applications can flow into more normal analytic work streams.

Wish there was a bit more technical details in how the prompt iterations looked like.

> We didn’t just replace a model. We replaced a process.

That line sticks out so much now, and I can't unsee it.

I'll note that they had a large annotated data set already that they were using to train and evaluate their own models. Once they decided to start testing LLMs it was straightforward for them to say "LLM 1 outperforms LLM 2" or "Prompt 3 outperforms Prompt 4".

I'm afraid that people will draw the wrong conclusion from "We didn’t just replace a model. We replaced a process." and see it as an endorsement of the zero-shot-uber-alles "Prompt and Pray" approach that is dominant in the industry right now and the reason why an overwhelming faction of AI projects fail.

If you can get good enough performance out of zero shot then yeah, zero shot is fine. Thing is that to know it is good enough you still have to collect and annotate more data than most people and organizations want to do.

I would offer a stronger more pointed observation, ofen the problem in building a good classifier is having good negative examples. More generally how a classifier identify good negatives is a function of:

1. Data collection technique.

2. Data annotation(labelling).

3. Classfier can learn on your "good" negatives — quantitaively depending on the machine residuals/margin/contrastive/triplet losses — i.e. learn the difference between a negative and positive for a classifier at train time and the optimization minima is higher than at test time.

4. Calibration/Reranking and other Post Processing.

My guess is that they hit a sweet spot with the first 3 techniques.

> an overwhelming faction of AI projects fail.

An overwhelming amount of software projects fail, AI just helps them get there faster.

I get that SQL text searches are miserable to write, but it would have flagged it properly in the example.

The text says, "...no leaks..." The case statement says, "...AND LOWER(claim_text) NOT LIKE '%no leak%...'"

It would've properly been marked as a "0".

I thought the same. Having said that, the parenthesis in the example are really wrong for what they were trying to convey. I suspect that they built this sql sample for the document and made some mistakes in its generation.

Perhaps I could say, it isn't just generated--it is also hallucinated!

Once you start to recognize AI written, rewritten or even edited articles, it’s hard to stop.

It’s not X it’s Y. We didn’t just do A we did B.

There’s definitely a lot of hard work that has gone in here. It’s gotten hard to read because of these sentence patterns popping up everywhere.

It is some kind of new Law (that ought to be named after someone) that people who write about AI are likely using it to do that writing.

(Even ironically sometimes observed in cases when the writing is disparaging of AI and the use of AI).

If the subject matter is AI, you should instantly pay attention and look for the signs it was AI assisted or generated outright.

The old model was capable of running on a CPU. The new one requires a GPU. This might be a consideration for some.
I didn't read this very carefully so maybe I missed it, but I'm surprised they didn't try using a classifier on top of a BERT-style encoder model?
TLDR: "old" ml techniques like XGBoost can beat LLMs and neural networks for some tasks.
Would have been nice to have seen this done with the top models rather than something like Nova.
“hundreds, if not thousands…thousands”
Three points to note:

* "2 years vs 1 month" is a bit misleading because the work that enabled testing the 1 month of prompting was part of the 2 years of ML work.

* xgboost is an ensemble method... add the llm outputs as inputs to xgboost and probably enjoy better results.

* vectorize all the text data points using an embedding model and add those as inputs to xgboost for probably better results.

And yet, the source problem still remains. The company has a shitty way of reporting quality issues in relation to parts and assemblies.

Being an automaker, I can almost smell the silos where data resides, the rigidly defended lines between manufactures, sales and post-sales, the intra-departmental political fights.

Then you have all the legacy of enterprise software.

And the result is this shitty warranty claims data.

intuitively it has seemed that these kinds of "fuzzy text search" applications are an area where llms really shine. it's cool to see evidence of it working.

i'm curious about some kind of notion of "prompt overfitting." it's good to see the plots of improvement as the prompts change (although error bars probably would make sense here), but there's not much mention of hold out sets or other approaches to mitigate those concerns.

It could have been done via topic analysis without an LLM.

In fact there are companies such as Medallia which specialize in CX and have really strong classification solutions for specifically these use cases (plus all the generative AI stuff for closing the loop).

The topic modeling of every major vendor, mostly awful LDA implementations, is horrendous. On the order of +/-20% absolute percentage points per topic. It would make my life easier if it weren’t so shit. As is, in every customer we have to go in and do legitimate topic modeling and taxonimization.

Their AI implementations are also awful. Just sample 100 contacts with someone who actually understands the business and see their reaction.

the blog doesnt actually say the word "honda" anywhere on here. would probably advise that
Or you can have a single checkbox “Problem with the vehicle”.