Small rant : Basically, the title. Instead of answering every question, if it instead said it doesn’t know the answer, it would have been trustworthy.
Small rant : Basically, the title. Instead of answering every question, if it instead said it doesn’t know the answer, it would have been trustworthy.
Part of the problem is fine tuning is very shallow, and that a contributing issue for claiming to be right when it isn’t is the pretraining on a bunch of training data of people online claiming to be right when they aren’t.
Yeah. It is fairly weird to me that it’s such a common thing to do to take the raw output of the LLM and send that to the user, and to try use fine-tuning to get that raw output to look some way that you want.
To me it is obvious that something like having the LLM emit a little JSON block which includes some field which covers “how sure are you that this is actually true” or something, is more flexible and simpler and cheaper and works better.
But what do I know
Good look getting it to reply consistently with a json object
Edit: maybe i’m shit at prompting but for me it’s almost impossible to even get it to just shut up and consistently reply yes or no to my questions
I haven’t really had a problem with it… maybe like 5% of the time it will want to do something a little bit weird like wrapping it in ``` but in general it seems like it works well enough to be able to parse with a program and just retry if it does something weird.
You do have to set it up a little carefully, I guess - like usually I’ll give it an example of what I want it to emit, and that’ll be good enough that that’s the form it will follow when it’s emitting stuff back to me. But yeah if you give it prompting and a specific machine readable thing to give back that seems like it usually works better than sticking with English and hoping it goes “yes” or “no” or etc like that.