I'm surprised we're making this mistake again. Isn't it possible to structure the chats as something more than a flat stream of text and insert unrepresentable tokens after the tokenization step?
Yes and no. You can represent chats as structured data but you have to leave the airlock eventually and render it to flat text because the model only knows "complete the next word" and that in-band structure is context for the model itself to understand the flow of messages.
So the model is seeing a series of text and using that to figure out who's talking but if you convince the model to output then when it goes to complete the next token it has no way to tell the difference.
I like how people on Reddit cannot distinguish between ChatGPT itself and its web front end. I thought Reddit is programmer friendly. Has anyone checked if the services using the API have been affected or not?
Last time something like this was posted, someone from OpenAI said those weren't other peoples chat history, they were randomly generated chat titles. (which is what happens when you prompt GPT with a blank line)
How can this happen in 2023? More importantly, how can a well-funded firm like OpenAI allow such lousy database bug to occur in their system? For all the hatred towards Google, I'm sure at least they wouldn't have this kind of problems once they open their (much more powerful) LLM.
Well, if someone wants to help fix it, they're hiring security engineers [0] for $200 - 370k per year, although you'd have to move to San Francisco.
I like how people on Reddit cannot distinguish between ChatGPT itself and its web front end. I thought Reddit is programmer friendly. Has anyone checked if the services using the API have been affected or not?
I'm surprised we're making this mistake again. Isn't it possible to structure the chats as something more than a flat stream of text and insert unrepresentable tokens after the tokenization step?
Yes and no. You can represent chats as structured data but you have to leave the airlock eventually and render it to flat text because the model only knows "complete the next word" and that in-band structure is context for the model itself to understand the flow of messages. So the model is seeing a series of text and using that to figure out who's talking but if you convince the model to output then when it goes to…
From the point of view of the model, there is no text, only a stream of tokens. There is no need for all tokens to map to valid ascii or unicode. You could have an arbitrary number of tokens for control flow that mean something to the software, but don't have a canonical way to encode in text.
I like how people on Reddit cannot distinguish between ChatGPT itself and its web front end. I thought Reddit is programmer friendly. Has anyone checked if the services using the API have been affected or not?
chatGPT definitely refers to the frontend since their API uses the actual model name (gpt-3.5-turbo) chatGPT isn’t referenced. And their API has been spotty/down all morning.
I'm surprised we're making this mistake again. Isn't it possible to structure the chats as something more than a flat stream of text and insert unrepresentable tokens after the tokenization step?
I'm not.
The rule to never trust user input will always be violated. The universe deems it so.