Somebody managed to coax the Gab AI chatbot to reveal its prompt

ugjka@lemmy.world to Technology@lemmy.world – 990 points –
VessOnSecurity (@bontchev@infosec.exchange)
infosec.exchange
290

You are viewing a single comment

i am not familiar with gab, but is this prompt the entirety of what differentiates it from other GPT-4 LLMs? you can really have a product that's just someone else's extremely complicated product but you staple some shit to the front of every prompt?

Gab is an alt-right pro-fascist anti-american hate platform.

They did exactly that, just slapped their shitbrained lipstick on someone else's creation.

I can't remember why, but when it came out I signed up.

It's been kind of interesting watching it slowly understand it's userbase and shift that way.

While I don't think you are wrong, per se, I think you are missing the most important thing that ties it all together:

They are Christian nationalists.

The emails I get from them started out as just the "we are pro free speech!" and slowly morphed over time in just slowly morphed into being just pure Christian nationalism. But now that we've said that, I can't remember the last time I received one. Wonder what happened?

I'm not the only one that noticed that then.

It seemed mildly interesting at first, the idea of a true free speech platform, but as you say, it's slowly morphed into a Christian conservative platform that that banned porn and some other stuff.

If anyone truly believed it was ever a “true free speech” platform, they must be incredibly, incredibly naive or stupid.

Free speech as in "free (from) speech (we don't like)"

Yeah, basically you have three options:

  1. Create and train your own LLM. This is hard and needs a huge amount of training data, hardware,...
  2. Use one of the available models, e.g. GPT-4. Give it a special prompt with instructions and a pile of data to get fine tuned with. That's way easier, but you need good training data and it's still a medium to hard task.
  3. Do variant 2, but don't fine-tune the model and just provide a system prompt.

Yeah. LLMs learn in one of three ways:

  • Pretraining - millions of dollars to learn how to predict a massive training set as accurately as possible
  • Fine-tuning - thousands of dollars to take a pretrained model and bias the style and formatting of how it responds each time without needing in context alignments
  • In context - adding things to the prompt that gets processed, which is even more effective than fine tuning but requires sending those tokens each time there's a request, so on high volume fine tuning can sometimes be cheaper

I haven’t tried them yet but do LORAs (and all their variants) add a layer of learning concepts into LLMs like they do in image generators?

People definitely do LoRA with LLMs. This was a great writeup on the topic from a while back.

But I have a broader issue with a lot of discussion on LLMs currently, which is that community testing and evaluation of methods and approaches is typically done on smaller models due to cost, and I'm generally very skeptical as to the generalization of results in those cases to large models.

Especially on top of the increased issues around Goodhart's Law and how the industry is measuring LLM performance right now.

Personally I prefer avoiding fine tuned models wherever possible and just working more on crafting longer constrained contexts for pretrained models with a pre- or post-processing layer to format requests and results in acceptable ways if needed (latency permitting, but things like Groq are fast enough this isn't much of an issue).

There's a quality and variety that's lost with a lot of the RLHF models these days (though getting better with the most recent batch like Claude 3 Opus).

Thanks for the link! I actually use SD a lot practically so it’s been taking up like 95% of my attention in the AI space. I have LM Studio on my Mac and it blazes through responses with the 7b model and tends to meet most of my non-coding needs.

Can you explain what you mean here?

Personally I prefer avoiding fine tuned models wherever possible and just working more on crafting longer constrained contexts for pretrained models with a pre- or post-processing layer to format requests and results in acceptable ways if needed (latency permitting, but things like Groq are fast enough this isn't much of an issue).

Are you saying better initial prompting on a raw pre-trained model?

Yeah. So with the pretrained models they aren't instruct tuned so instead of "write an ad for a Coca Cola Twitter post emphasizing the brand focus of 'enjoy life'" you need to do things that will work for autocompletion like:

As an example of our top shelf social media copywriting services, consider the following Cleo winning tweet for the client Coca-Cola which emphasized their brand focus of "enjoy life":

In terms of the pre- and post-processing, you can use cheaper and faster models to just convert a query or response from formatting for the pretrained model into one that is more chat/instruct formatted. You can also check for and filter out jailbreaking or inappropriate content at those layers too.

Basically the pretrained models are just much better at being more 'human' and unless what you are getting them to do is to complete word problems or the exact things models are optimized around currently (which I think poorly map to real world use cases), for a like to like model I prefer the pretrained.

Though ultimately the biggest advantage is the overall model sophistication - a pretrained simpler and older model isn't better than a chat/instruct tuned more modern larger model.

but is this prompt the entirety of what differentiates it from other GPT-4 LLMs?

Yes. Probably 90% of AI implementations based on GPT use this technique.

you can really have a product that's just someone else's extremely complicated product but you staple some shit to the front of every prompt?

Oh yeah. In fact that is what OpenAI wants, it's their whole business model: they get paid by gab for every conversation people have with this thing.

Not only that but the API cost is per token, so every message exchange in every conversation costs more because of the length of the system prompt.

I don't know about Gab specifically, but yes, in general you can do that. OpenAI makes their base model available to developers via API. All of these chatbots, including the official ChatGPT instance you can use on OpenAI's web site, have what's called a "system prompt". This includes directives and information that are not part of the foundational model. In most cases, the companies try to hide the system prompts from users, viewing it as a kind of "secret sauce". In most cases, the chatbots can be made to reveal the system prompt anyway.

Anyone can plug into OpenAI's API and make their own chatbot. I'm not sure what kind of guardrails OpenAI puts on the API, but so far I don't think there are any techniques that are very effective in preventing misuse.

I can't tell you if that's the ONLY thing that differentiates ChatGPT from this. ChatGPT is closed-source so they could be doing using an entirely different model behind the scenes. But it's similar, at least.

Based on the system prompt, I am 100% sure they are running GPT3.5 or GPT4 behind this. Anyone can go to Azure OpenAI services and create API on top of GPT (with money of course, Microsoft likes your $$$)