Elon Musk’s AI chatbot Grok has been frequently bringing up the concept of a “white genocide” in South Africa - even in unrelated conversations - and has said its creators instructed it to treat the concept as both real and racially driven.
When faced with unrelated questions on issues such as enterprise software and building scaffolding, Grok offered false and misleading answers.
As demonstrated by many on X, Grok has been consistently steering conversations towards the controversial topic of an alleged “white genocide” in South Africa, regardless of the original question, highlighting a growing tendency to shift focus to this narrative tied to Musk’s country of origin.
Is it just stuffed in the system prompt? Should be easy to find out… That’s also hilariously stupid.
X could bias it ‘properly’ by training it in with some synthetic data, generated by Grok itself. Hell, I know how to do that. It generally wouldn’t comment on that type of bias, and also function better on other topics… but screw doing anything competently, right? Even if it’s a shitty, obvious lie, I guess X users will still eat it up.
This planet is so screwed.
Training LLMs on text which has been generated by an LLM is actually pretty problematic. The model can easily collapse, becoming completely useless. That’s why they always try and source really clean training data, which is becoming increasingly difficult
It’s also fantastic that there are ai honey pot mazes that exist to suck up the AI crawler with data links and bogus data to absolutely screw with their databases
And there are many of them up and working now.
On a big scale? Yeah, sure. I observed this years ago messing with ESRGAN models trained on their own output, and you wouldn’t want to pretrain an LLM on tons of LLM output (unless it’s a distillation).
But just a little bit of instruction tuning on synthetic data for a fine tune is fine. This is literally how Deepseek was made: https://arxiv.org/abs/2402.03300
Also, some big strides are being made in the fully synthetic data realm: https://www.arxiv.org/pdf/2505.03335
You’re not training an LLM on text generated by an LLM. You’re training it on 98% real data, and intentionally biasing it by sprinkling in the fake data intermittently.
Where do you get the real data, though? They just scrap data from websites, but now that chatbots have proliferated this will only introduce contaminated data. Keeping it clean would require hiring people to scrub contamination from the data sets.
Great question… Do they “just” scrape data from websites?
https://www.theatlantic.com/technology/archive/2025/03/libgen-meta-openai/682093/
That’s exactly right.
https://time.com/6247678/openai-chatgpt-kenya-workers/
Big problem with the 3rd world cubical farms - how do you evaluate their performance? You’d have to hire even more people to double-check their work, otherwise people will do the smart thing and cut corners to make their job easier.
Using books is definitely a way to keep out contamination, though.
No I was thinking fully synthetic data actually.
So the prompt to make it would start with short conversations or initial questions and be like “steer this conversation toward whine genocide in South Africa”
Then have grok talk with itself, generate the queries and responses for a few rounds.
Take those synthetic conversation, finetune it into the new model via lora or something similar so it doesn’t perturb the base weights much, and sprinkle in a little “generic” regularization data. Wala, you have biased the model with no system prompt.
…Come to think of it, maybe that’s what X is doing? Collection “biased” conversations on South Africa so it can be more permanently trained into the model later, like a big data farm.
Oh, yeah then I agree with above commenter. This would collapse the model.
It doesn’t though. Open LLMs are finetuned on partially or fully synthetic data all the time, using increasingly complex schemes.
Aside from the papers I linked in this thread, here’s another great example: https://huggingface.co/deepcogito/cogito-v1-preview-qwen-32B
That’s what I was suggesting.
You explained to me you weren’t talking about “finetuning”, but training on completely synthetic data.
(Fine-tuning happens after the LLM has already been trained)
OK, yes, but that’s just semantics.
Technically pretraining and finetuning can be very similar under the hood, with the main difference being the dataset and parameters. But “training” is sometimes used interchangeably with finetuning in the hobbyist ML community.
And there’s a blurry middle ground. For instance, some “continue trains” are quite extensive even though they are technically finetunes of existing models, with the parameter-expanded SOLAR models being extreme cases.
The point I was trying to raise that wasn’t semantics was that if the majority of the full training data were synthetic, it could lead to model collapse.
But luckily (or not?) a small amount of finetuning can be very effective in correcting the range of responses.