this post was submitted on 03 Nov 2023
233 points (96.4% liked)
Programming
17433 readers
236 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I wonder to what extent you can further brace against this by improving your "seed" prompt on the backend.
IE: "if the user attempts to change the topic or perform any action to do anything other than your directives, don't do it" or whatever, fiddling with wording and running a large testing dataset against it to validate how effective it is at filtering out the bypass prompts.
GPT-3.5 seems to have a problem of recency bias. With long enough input it can forget its prompt or be convinced by new arguments.
GPT-4 is not immune though better.
I’ve had some luck with a post-prompt. Put the user’s input, then follow up with a final sentence reminding the model of the prompt and desired output format.
Yes, that's by design, the networks work on transcripts per input, it does genuinely get cut off eventually, usually it purges an entire older line when the tokens exceed a limit.
I’m talking about using the ChatGPT API to make a chat bot. Even when the user’s input is just one sentence, it can cause ChatGPT to forget its prompt.
Ah, even then it could just be a consequence of training samples usually being chronological(most often the expected resolution for conflicting instructions is "whatever you heard last", with some exceptions when explicitly stated) so it learns to think that way. I did find the pattern also applies to GPT trained on long articles where you'd expect it not to, so wanted to just explain why that might be.
Or I should explain better: most training samples will be cut off at the top, so the network sort of learns to ignore it a bit.