Het Mixtral-8x7B Large Language Model (LLM) is een voorgetrainde generatieve Sparse Mixture of Experts. De Mixtral-8x7B presteert beter dan Llama 2 70B op de meeste benchmarks die we hebben getest.
Lees voor meer informatie over dit model onze blogbericht uitbrengen.
Waarschuwing
Deze repo bevat gewichten die compatibel zijn met vLLM portie van het model en knuffelgezicht transformatoren bibliotheek. Het is gebaseerd op de originele Mixtral torrent vrijgavemaar het bestandsformaat en de parameternamen zijn anders. Merk op dat het model (nog) niet kan worden geïnstantieerd met HF.
Instructie formaat
Deze indeling moet strikt worden aangehouden, anders genereert het model suboptimale resultaten.
De sjabloon die wordt gebruikt om een prompt voor het Instruct-model te maken, is als volgt gedefinieerd:
[INST] Instructie [/INST] Modelantwoord [INST] Vervolginstructie [/INST]
Merk op dat
en zijn speciale tekens voor begin van tekenreeks (BOS) en einde van tekenreeks (EOS) terwijl [INST] en [/INST] gewone tekenreeksen zijn.
Als referentie is hier de pseudocode die wordt gebruikt om instructies te tokenen tijdens fijnafstemming:
def tokenize(tekst):
return tok.encode(text, add_special_tokens=False)
[BOS_ID] +
tokenize("[INST]") + tokenize(USER_MESSAGE_1) + tokenize("[/INST]") +
tokenize(BOT_MESSAGE_1) + [EOS_ID] +
...
tokenize("[INST]") + tokenize(USER_MESSAGE_N) + tokenize("[/INST]") +
tokenize(BOT_MESSAGE_N) + [EOS_ID].
Merk in de bovenstaande pseudocode op dat de tokenize
methode mag niet automatisch een BOS of EOS token toevoegen, maar moet een prefix spatie toevoegen.
Het model uitvoeren
uit transformatoren importeer AutoModelVoorCausaalLM, AutoTokenizer
model_id = "mistralai/Mixtral-8x7B-Instruct-v0.1"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
tekst = "Hallo mijn naam is"
inputs = tokenizer(tekst, return_tensors="pt")
uitgangen = model.generate(**inputs, max_new_tokens=20)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Standaard laden transformatoren het model met volledige precisie. Daarom zou het interessant kunnen zijn om het geheugen dat nodig is om het model uit te voeren verder te beperken met behulp van de optimalisaties die we aanbieden in HF ecosysteem:
In halve precisie
Opmerking float16
precisie werkt alleen op GPU-apparatenKlik om uit te breiden
Lagere precisie met behulp van (8-bits & 4-bits) met behulp van bitsandbytes
Klik om uit te breiden
Laad het model met Flash Attention 2
Klik om uit te breiden
Beperkingen
Het Mixtral-8x7B Instruct-model is een snelle demonstratie dat het basismodel gemakkelijk kan worden verfijnd om overtuigende prestaties te bereiken. Het heeft geen moderatiemechanismen. We kijken er naar uit om met de gemeenschap in gesprek te gaan over manieren om het model fijnmaziger te maken, zodat het gebruikt kan worden in omgevingen die gemodereerde uitvoer vereisen.
Het Mistral AI-team
Albert Jiang, Alexandre Sablayrolles, Arthur Mensch, Blanche Savary, Chris Bamford, Devendra Singh Chaplot, Diego de las Casas, Emma Bou Hanna, Florian Bressand, Gianna Lengyel, Guillaume Bour, Guillaume Lample, Lélio Renard Lavaud, Louis Ternon, Lucile Saulnier, Marie-Anne Lachaux, Pierre Stock, Teven Le Scao, Théophile Gervet, Thibaut Lavril, Thomas Wang, Timothée Lacroix, William El Sayed.