Modellkort för Mixtral-8x7B En Sparse Mixture-of-Experts av hög kvalitet.

Mixtral-8x7B Large Language Model (LLM) är en förtränad generativ Sparse Mixture av experter. Mixtral-8x7B överträffar Llama 2 70B i de flesta riktmärken som vi testade.

För fullständig information om denna modell vänligen läs vår publicera blogginlägg.

bild 15

Denna repo innehåller vikter som är kompatibla med vLLM servering av modellen samt Hugging Face transformatorer bibliotek. Den är baserad på den ursprungliga Mixtral frisläppande av torrent, men filformatet och parameternamnen är olika. Observera att modellen (ännu) inte kan instansieras med HF.

bild 14

Detta format måste respekteras strikt, annars kommer modellen att generera suboptimala resultat.

Den mall som används för att skapa en prompt för Instruct-modellen definieras enligt följande:

 [INST] Instruktion [/INST] Modellsvar [INST] Uppföljningsinstruktion [/INST]

Notera att  och  är speciella symboler för början av strängen (BOS) och slutet av strängen (EOS) medan [INST] och [/INST] är vanliga strängar.

Som referens visas här den pseudokod som används för att symbolisera instruktioner under finjusteringen:

def tokenize(text):
    returnera tok.encode(text, add_special_tokens=False)

[BOS_ID] +
tokenize("[INST]") + tokenize(USER_MESSAGE_1) + tokenize("[/INST]") +
tokenize(BOT_MESSAGE_1) + [EOS_ID] + [EOS_ID
...
tokenize("[INST]") + tokenize(USER_MESSAGE_N) + tokenize("[/INST]") + tokenize(BOT_MESSAGE_1) + tokenize("[/INST]") + tokenize(BOT_MESSAGE_1)
tokenize(BOT_MESSAGE_N) + [EOS_ID]

I pseudokoden ovan kan du notera att symbolisera metoden ska inte lägga till en BOS- eller EOS-token automatiskt, utan ska lägga till ett prefixutrymme.

från transformers importera AutoModelForCausalLM, AutoTokenizer

modell_id = "mistralai/Mixtral-8x7B-Instruct-v0.1"
tokenizer = AutoTokenizer.from_pretrained(modell_id)

modell = AutoModelForCausalLM.from_pretrained(modell_id)

text = "Hej mitt namn är"
ingångar = tokenizer(text, return_tensors="pt")

utdata = modell.generera (**inmatningar, max_new_tokens=20)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Som standard laddar transformatorerna modellen med full precision. Därför kan det vara intressant att ytterligare minska minnesbehovet för att köra modellen med hjälp av de optimeringar vi erbjuder i HF:s ekosystem:

I halvprecision

Anmärkning float16 precision fungerar endast på GPU-enheterKlicka för att expandera

Lägre precision med hjälp av (8-bit & 4-bit) med hjälp av bitarochbytes

Klicka för att expandera

Ladda modellen med Flash Attention 2

Klicka för att expandera

Instruktionsmodellen Mixtral-8x7B är en snabb demonstration av att basmodellen enkelt kan finjusteras för att uppnå övertygande prestanda. Den har inga modereringsmekanismer. Vi ser fram emot att samarbeta med communityn om sätt att få modellen att fint respektera skyddsräcken, så att den kan användas i miljöer som kräver modererade utdata.

Mistrals 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.

sv_SESwedish