BrandVoice: a brand-voice adapter for marketing copy

Live demo Base model Dataset Quality Win rate Built with AutoScientist

BrandVoice Marketing Model

A LoRA adapter that makes Llama 3.3 70B write marketing copy in a specific brand's voice instead of the flat, voiceless prose every model defaults to. Give it a brief and a brand-voice fingerprint, and it writes the headline, tagline, body, or CTA the way that brand actually sounds.

This is the piece most challenge entries skip. The dataset is public, the evaluation is public, and the trained weights are public too. You can load this adapter and reproduce the result yourself.

Contents

TL;DR

  • What it is: a PEFT LoRA adapter on meta-llama/Llama-3.3-70B-Instruct. Small, mergeable, cheap to serve.
  • What it does: turns a marketing brief plus a 15-field brand-voice fingerprint into short on-brand copy.
  • The number: copy quality went 7.0 to 8.7, a +24.3% relative lift, with a 56% win rate against the exact base it was trained on, scored by Adaption's held-out judge.
  • Built by: MANIFESTA (Aivaras Navardauskas) for the Adaption AutoScientist Challenge, Marketing.

Quickstart

Load the base model, then attach the adapter with PEFT.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base_id = "meta-llama/Llama-3.3-70B-Instruct"   # gated, request access first
adapter_id = "manifesta/brandvoice-marketing-model"

tokenizer = AutoTokenizer.from_pretrained(base_id)
base = AutoModelForCausalLM.from_pretrained(base_id, torch_dtype=torch.bfloat16, device_map="auto")
model = PeftModel.from_pretrained(base, adapter_id)
model.eval()

brief = "Write a launch tweet for our new oat-milk latte. Voice: dry, confident, a little funny."
messages = [{"role": "user", "content": brief}]
inputs = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
out = model.generate(inputs, max_new_tokens=200, temperature=0.7)
print(tokenizer.decode(out[0], skip_special_tokens=True))

One-line alternative that reads the base from adapter_config.json:

from peft import AutoPeftModelForCausalLM
model = AutoPeftModelForCausalLM.from_pretrained("manifesta/brandvoice-marketing-model")

Evaluation

Evaluated on a held-out set of marketing briefs the adapter never saw in training, scored by Adaption's AutoScientist judge. The base model is the same Llama 3.3 70B the adapter was trained on, so this is a clean before-and-after, not a comparison against a weaker model.

Metric Base BrandVoice Change
Copy quality (0 to 10) 7.0 8.7 +24.3%
Win rate vs base 44% 56% +12 pts
Quality percentile 8.4 30.0 +21.6
Eval loss 1.543 1.375 -0.168

Win rate is head-to-head preference on the same briefs, judged blind. The +24.3% is the relative lift in mean judge score (7.0 to 8.7). One judge, one held-out split, reported honestly. No leaderboard cherry-picking.

As an independent cross-check, we also run an open, deterministic voice-fidelity eval on the brand corpus this model trained on (brandvoice_trainset_adapted): real brand copy scores 20.4 of 100 against 9.3 for generic AI copy, a 2.2x separation, with no model serving. It is complementary to the Adaption judge above, not a second headline. Harness: eval/voice_fidelity_eval.py.

Training

Adapted with Adaption AutoScientist (Adaptive Data). The platform synthesizes a fitting prompt for each completion, conditions on the 15-field voice fingerprint, and trains the adapter.

Hyperparameter Value
Base model meta-llama/Llama-3.3-70B-Instruct
Method LoRA (PEFT)
LoRA rank 8
LoRA alpha 8
LoRA dropout 0.0
Target modules q_proj, v_proj
Learning rate 3e-4
Epochs 1
Precision bfloat16
Weights export Together AI

Recipe: deduplication and prompt_rephrase on, no reasoning_traces (copy is not chain-of-thought). A universal marketing blueprint rode on every completion: lead with the reader's benefit, be concrete, match the format and length, one clear call to action, never invent fake stats or claims.

Honest note: this is a first, light run. One epoch and a small rank-8 adapter. The lift is real and the full pipeline (ingest, adapt, evaluate, export, publish) is proven end to end. Bigger runs are headroom, not a different method. We would rather publish a true 24.3% than a dressed-up number you cannot reproduce.

Intended use and limits

Use it for

  • Generating on-brand marketing copy from a brief plus a voice fingerprint.
  • Rewriting a rough draft into a target brand's voice (style transfer).
  • Powering copywriting assistants and on-brand-ness tooling.

Do not use it for

  • Passing generated text off as a brand's official communication.
  • Deceptive, fabricated, or unsubstantiated advertising claims.
  • Any high-stakes use (legal, medical, financial advice). This is a style model, not a source of truth.

Limits

  • Voice fingerprints are inferred from public copy, not signed off by brands. A strong descriptive prior, not ground truth.
  • English only. Best at short form (headlines, taglines, short body), weaker on long narrative.
  • It shifts style, not the base model's knowledge or safety profile. Keep the base safety stack in place.
  • Strongly stylized voices can pull outputs toward edgy phrasing. Bound it with the blueprint and safety controls in production.

Dataset

Trained on the adapted training set published in BrandVoice Marketing Briefs (CC0), specifically the file brandvoice_trainset_adapted (6,366 rows: prompt, completion, enhanced_prompt, enhanced_completion, plus brand, category, channel, tone, personality, voice_summary, task). It is an Adaption-adapted marketing instruction set built around our 83-brand voice corpus (brandvoice_briefs, also in that repo), with a portion of general instruction-following copy mixed in for robustness. The exact training file is released so the result is reproducible, not just asserted. A held-out split is used for evaluation, so the reported gain is on unseen data.

License

  • Adapter weights: Apache-2.0.
  • Base model: governed by the Llama 3.3 Community License. You must comply with it to load and use the base.
  • Training dataset: CC0-1.0.
  • Brand names are referenced descriptively. Trademarks belong to their owners. Not affiliated with or endorsed by any brand named.

Citation

@misc{brandvoice2026,
  title  = {BrandVoice: a brand-voice adapter and dataset for marketing copy},
  author = {Navardauskas, Aivaras},
  year   = {2026},
  note   = {MANIFESTA. Adapted with Adaptive Data by Adaption, AutoScientist Challenge, Marketing.},
  howpublished = {\url{https://huggingface.co/manifesta/brandvoice-marketing-model}}
}

Credit: Adaptive Data by Adaption. Dataset and adapter built by MANIFESTA (Aivaras Navardauskas) for the AutoScientist Challenge.

Downloads last month
19
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for manifesta/brandvoice-marketing-model

Adapter
(288)
this model

Dataset used to train manifesta/brandvoice-marketing-model

Collection including manifesta/brandvoice-marketing-model

Evaluation results