6 ms·
Honestly, try prompting it with “you are wrong 80% of the time, therefore you will need to double check your answers, first factually, then numerically, then do
by bloomingkales 2y ago
Honestly, try prompting it with “you are wrong 80% of the time, therefore you will need to double check your answers, first factually, then numerically, then double check the time/date. You are still probably wrong so do a third accuracy check. The user’s prompts are always wrong too mostly - so always check them”.
I stopped playing with larger models and have been pushing smaller models with this improvised system prompt and getting good results. It seems like it forces the model to do multiple passes before giving you any response.
My smaller local models give me less hallucinations than Meta.ai, for example, which generally spits out pleasing answers almost immediately (which are often hallucinations, since I don’t think it is system prompted to be adversarial to the user, or itself). I don’t have the same hallucination issue with Llama3 - 8b locally because of custom system prompts.
The model has all the correct information, so it almost needs to do RAG on itself. Multiple passes on itself seems like a way to do it.
- dosinga 2y agoHow would this multiple passes work though? Unless the model actually talks about what it does, I am not sure how it would have this ability. The next word prediction mechanism is just always going to do it one shot. Your prompt paints a context that might keep it more on the rails, but it won't do multiple passes.
- bloomingkales 2y agoYour prompt paints a context that might keep it more on the rails, but it won't do multiple passes. This is probably the truth behind the black magic I’m imagining. You could have it explicitly spit out this process, in which case you would see it’s first rough draft, followed by a “My first paragraph is probably wrong”, followed by a third paragraph where it attempts to fix the first paragraph. There is no outside RAG in this process. The mumbo jumbo part of all this is that I’ve told it to “hide” this process from the user where it doesn’t explicitly output anything but its final answer, and the accuracy has been just as good (for my use case at least). :Shrugs:
- jorl17 2y agoIsn't this in part what o1-preview is doing?
- block_dagger 2y agoYeah that’s not how next token prediction works. To actually do multiple passes you’d need to do that yourself, making multiple calls and feeding the responses back to the model.
- IanCal 2y agoWhy? The very nature of next token prediction means it's entirely capable of having that. It's not multiple passes, it's just one pass. You making multiple calls is just inserting fixed tokens then asking it to carry on completing.
- bloomingkales 2y agomaking multiple calls and feeding the responses back to the model. By asking it to reconsider half its generated response, aren’t I essentially asking it to formulate the second half of its response from the first half internally? I’m bypassing the manual process of feeding in the extra prompt. We are constantly having to tell the LLM close, but no cigar, iterate again, more or less.
- viraptor 2y ago> Unless the model actually talks about what it does That's how the chain-of-thought approach works. You can make the model do it inline, or you can run the loop yourself, possibly summarising the progress as you go. (Although with prompt caching it's not that important anymore) You can encourage it to print out assumptions/steps/ideas as it goes.
- yard2010 2y agoCan you please share more specifics please? What smaller models? What hardware do you use? How do you test their performance?
- bloomingkales 2y agoThere is no rigor to this, this is just from throwing stuff against the wall. See my response to the other poster above.
- hiatus 2y agoEven if you're throwing stuff against the wall, you could at least elaborate on what you've tried? Otherwise, how could you state something like "My smaller local models give me less hallucinations than Meta.ai"?
- bloomingkales 2y agoThe gist of it is I think these large hosted models have system prompts that are not as skeptical of its own outputs. You are an helpful AI Assistant seems to lead to more lax responses. Adjusting the system prompt to be more incredulous helps from my observation.
- deleted 2y ago[deleted]
- arcastroe 2y agoI'm surprised that prompting it with "You are wrong 80% of the time" doesn't cause it to intentionally produce initially incorrect answers 80% of the time. (Disclosure: I have not tried your prompt)
- michelledepeil 2y agoWhy is that suprising? There is no logical reasoning happening, it has no concept of right and wrong, let alone that it can force a specific percentage of wrongness.
- arcastroe 2y ago> Why is that surprising? You tend to get catered responses to whatever role you assign in the prompt. This is well documented. Here's a quick example from search results https://www.ssw.com.au/rules/give-chatgpt-a-role/ https://www.ssw.com.au/rules/give-chatgpt-a-role/ "You are wrong 80% of the time" could be misconstrued as an expected role/command, rather than a mere observation. > let alone that it can force a specific percentage of wrongness. Ah, I see what you're saying here. I agree. Maybe I should have said that given the prompt, I'm surprised it doesn't give intentionally incorrect answers (full stop)
- valval 2y agoI have to be a bit of a buzzkill and say that this is all placebo. Your prompt might give the model context that gives it better token quality much in the same way that asking “How to swim?” is worse than “I’d like to learn the proper technique for the freestyle swimming stroke, and you’re an expert swimming coach.” There’s no guarantee your prompt isn’t giving less factual answers to be honest. I wouldn’t go about telling the model that it’s often wrong, as it’s not useful context and might skew results.
- bloomingkales 2y agoI don’t tell the model that it is 100% wrong, in which case it would contradict the first half of its response with the second half of its generation. We basically want it to enter double-checking mode on it’s own from its initial rough draft (its original response, first half of its response, first paragraph, however you are formatting the output). Otherwise the model will output whatever it outputs, and we will have to manually tell it to reconsider facts, locations, and events. I agree that there’s no guarantee, but this was a suggestion for those who are getting very wrong answers for simple things.