Live data from Hacker News

Representation Engineering: Mistral-7B on Acid

vgel.me

11–20 of 69 posts

Re: Representation Engineering: Mistral-7B on Acid

#12
post #11

I'd never seen an LLM summarized like this before, and I really like it: hidden_state = self.embeddings(input_tokens) for layer in self.layers: hidden_state = layer(hidden_state) return transform_into_logits(hidden_state)

I don't follow. Isn't this the flow for practically every neutral network i.e you index the sampled inputs from the embedding Matrix, forward this through every hidden layer and then finally transform to the dimensions of your tokens so that it can be interpreted as log-counts?

Re: Representation Engineering: Mistral-7B on Acid

#13
post #11

I'd never seen an LLM summarized like this before, and I really like it: hidden_state = self.embeddings(input_tokens) for layer in self.layers: hidden_state = layer(hidden_state) return transform_into_logits(hidden_state)

Isn't this the typical representation we used back then when working with LSTMs?

Re: Representation Engineering: Mistral-7B on Acid

#14
post #11

I'd never seen an LLM summarized like this before, and I really like it: hidden_state = self.embeddings(input_tokens) for layer in self.layers: hidden_state = layer(hidden_state) return transform_into_logits(hidden_state)

I don't follow. Isn't this the flow for practically every neutral network i.e you index the sampled inputs from the embedding Matrix, forward this through every hidden layer and then finally transform to the dimensions of your tokens so that it can be interpreted as log-counts?

Yes, but I've never seen it expressed so clearly as pseudocode before.

Re: Representation Engineering: Mistral-7B on Acid

#15
post #4
post #2

Interesting, seems like control vectors could reduce the need to fine-tune a model.

Not only that, you can change the behavior of the model as needed. With 5 finetunes you need to host 5 copies or load and unload them. With control vectors you can modify the model as needed

> With 5 finetunes you need to host 5 copies or load and unload them.

If you use LoRA, which many do when fine-tuning nowadays, you don't need five full copies. You only need to store adapters, which can be in the tens of MBs range for a given finetune.

Re: Representation Engineering: Mistral-7B on Acid

#16
post #4

Earlier quoted context omitted.

Not only that, you can change the behavior of the model as needed. With 5 finetunes you need to host 5 copies or load and unload them. With control vectors you can modify the model as needed

> With 5 finetunes you need to host 5 copies or load and unload them. If you use LoRA, which many do when fine-tuning nowadays, you don't need five full copies. You only need to store adapters, which can be in the tens of MBs range for a given finetune.

You can also batch requests using different LoRAs. See "S-LoRA: Serving Thousands of Concurrent LoRA Adapters". https://arxiv.org/abs/2311.03285

Re: Representation Engineering: Mistral-7B on Acid

#17
post #10

Very interesting! Can you see those helping for RAG scenarios? Specifically: - decreasing models tendency to answer with ungrounded answers - increase models ability to respond with the correct syntax for citations- the open models like llama2 dont seem to obey my prompt’s syntax instructions.

You can use outlines https://github.com/outlines-dev/outlines to let models generate with correct syntax.

Thanks! I havent had to use a syntax-enforcing framework with gpt-35, I’ll try outlines and guidance out to see if they help enforce syntax for the locally runnable models.

Re: Representation Engineering: Mistral-7B on Acid

#18
This article was very fun, and felt like a good counterpoint to the "You Sound Like a Bot" post recently that was talking about how AI is getting bland.

On a less serious note. This sentence should be something a fiction writer knows will only end in trouble for humanity:

> I especially challenge someone to find a "self-awareness" vector that isn't contaminated by ... human emotion!

Re: Representation Engineering: Mistral-7B on Acid

#19
What a fantastic article, well done!

> When used with the prompt below, the honesty vector doesn't change the model's behavior—instead, it changes the model's judgment of someone else's behavior! This is the same honesty vector as before—generated by asking the model to act honest or untruthful! [...] How do you explain this?

Isn't the control vector just pushing text generation towards the concept of honesty/dishonesty? An LLM is 'just' a text generator, so you get added honesty/dishonesty irrespective of where in the bot/human conversation text generation is occuring?

Post reply on HN