Llama-3-8B-Omnibus-1-PL-v01-INSTRUCT

Repozytorium zawiera model Meta Llama-3-8B-Omnibus-1-PL-v01-INSTRUCT w wersji polskojęzycznej. Jest to model INSTRUCT (instrukcyjny). Model postał na podstawie finetuningu modelu bazowego Llama-3-8B. Wykorzystano do tego dataset instrukcji Omnibus-1-PL (stworzyłem go na własne potrzeby przeprowadzania eksperymenów finetuningu modeli w języku polskim). Szczegóły parametrów treningu w sekcji Trening. Celem tego eksperymentu było sprawdzenie czy można namówić Llama-3-8B do płynnego rozmawiania w języku polskim (oryginalny model instrukcyjny 8B ma z tym problem - woli zdecydowanie bardziej rozmawiać po angielsku).

Uwaga!

  • Model NIE jest CENZUROWANY. To wersja do zabawy. Nie została ujarzmiona.
  • Model będzie dalej rozwijany ponieważ eksperymentuję z a. kolejnymi wersjami datasetu, b. model jest świetną bazą do testowania różnych technik finetunowania (LoRA, QLoRA; DPO, ORPO itd.)
  • Udostępniłem go spontanicznie by użytkownicy mogli go używać i sprawdzać jakość Llama 3 ale w kontekście języka polskiego.
  • Po informacji, że baza była trenowana na 15T tokenów (tylko 5% nie angielskich) uznałem, że to świetny model do finetuningu. Być może lekkie dotrenowanie modelu za pomocą contingued-pretraining da jeszcze większy uzysk.

Sposób kodowania nazwy modelu

  • Nazwa modelu bazowego: Llama-3-8B
  • Nazwa datasetu: Omnibus-1
  • Wersja językowa: PL (polska)
  • Wersja modelu: v01

Dataset

Omnibus-1 to zbiór polskich instrukcji (100% kontekstu Polskiego - fakty, osoby, miejsca osadzone w Polsce), który został w 100% syntetycznie wygenerowany. Zawiera on instrukcje z kategorii - matematyka, umiejętność pisania, dialogi, tematy medyczne, zagadki logiczne, tłumaczenia itd. Powstał on w ramach moich prac związanych z badaniem jakości modeli w kontekście języka polskiego. Pozwala on na finetuning modelu i sprawdzenie podatności modelu do mówienia w naszym rodzimym języku. Dataset zawiera obecnie 75.000 instrukcji. Nie jest on idealny i wymaga jeszcze dużo nakładu pracy by model pracował w przewidywalnie ale będzie cały czas udoskonalony i być może w przyszłości udostępniony (jak uznam, że już jest wtstarczająco pełen i obejmuje szerokie spektrum tematyki i umiejętności). Dataset jest w 100% generowany za pomocą innych LLM.

Użycie Llama-3-8B-Omnibus-1-PL-v01-INSTRUCT z biblioteką Transformers

Poniższy kod używa bibliotekę Transformers:

import transformers
import torch

model_id = "Remek/Llama-3-8B-Omnibus-1-PL-v01-INSTRUCT"

pipeline = transformers.pipeline(
    "text-generation",
    model=model_id,
    model_kwargs={"torch_dtype": torch.bfloat16},
    device="auto",
)

messages = [
    {"role": "system", "content": "You are a helpful, smart, kind, and efficient AI assistant. You always fulfill the user's requests to the best of your ability."},
    {"role": "user", "content": "Napisz czym jest Warszawa?"},
]

prompt = pipeline.tokenizer.apply_chat_template(
        messages, 
        tokenize=False, 
        add_generation_prompt=True
)

terminators = [
    pipeline.tokenizer.eos_token_id,
    pipeline.tokenizer.convert_tokens_to_ids("<|eot_id|>")
]

outputs = pipeline(
    prompt,
    max_new_tokens=256,
    eos_token_id=terminators,
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
)
print(outputs[0]["generated_text"][len(prompt):])

Przykładowa odpowiedź:

Warszawa to stolica Polski, położona na terenie Mazowsza. Jest to największe miasto w Polsce pod względem liczby mieszkańców oraz powierzchni. Warszawa jest również siedzibą rządu, parlamentu, prezydenta, sądu najwyższego oraz wielu innych instytucji państwowych i międzynarodowych. Miasto jest znane z wielu zabytków, takich jak Stare Miasto, Zamek Królewski, Pałac Kultury i Nauki, a także z nowoczesnych atrakcji, takich jak Centrum Nauki Kopernik czy Centrum Nauki i Sztuki. Warszawa jest również ważnym centrum kulturalnym, gospodarczym i naukowym. Miasto jest również siedzibą wielu firm międzynarodowych i polskich przedsiębiorstw. Warszawa jest miastem, które łączy w sobie przeszłość z nowoczesnością, oferując mieszkańcom i turystom szeroki zakres możliwości. Miasto jest również znane z wielu festiwali i wydarzeń kulturalnych, które przyciągają miliony turystów z całego świata. Warszawa to miasto pełne życia, kultury, historii i nowoczesności, które zdecydowanie zasługuje na uwagę. <|im_end|>

Szablon konwersacji

Szablon konwersacji to oryginalna wersja Llama3

<|start_header_id|>system<|end_header_id|>
You are a helpful, smart, kind, and efficient AI assistant. You always fulfill the user's requests to the best of your ability.
<|eot_id|>
<|start_header_id|>user<|end_header_id|>
{User}
<|eot_id|><|start_header_id|>assistant<|end_header_id|>
{Assistant}

Wersje quantized

Wersje poddane quantyzacji są dostępne w repozytorium:

  • Llama-3-8B-Omnibus-1-PL-v01-instruct-GGUF - przetestowane w LM Studio (wybierz szablon - Llama3) oraz ollama

  • Version Model card
    Instruct 🤗 HuggingFace

Trening

Poniżej szczegóły hiperparametrów treningu:

  • learning_rate: 2e-05
  • train_batch_size: 8
  • eval_batch_size: 8
  • seed: 42
  • distributed_type: single-GPU (Nvidia A6000 Ada)
  • num_devices: 1
  • gradient_accumulation_steps: 4
  • optimizer: adamw_8bit
  • lr_scheduler_type: linear
  • lr_scheduler_warmup_steps: 5
  • num_epochs: 1
  • QLoRa - 4bit: rank 64, alpha 128

Unsloth

Unsloth, narzędzie dzięki któremu powstał ten model.

Licencja

Licencja na zasadzie nie do komercyjnego użycia (ze względu na dataset - generowany syntetycznie za pomocą modeli GPT4, GPT3.5) oraz licencja Llama3 (proszę o zapoznanie się ze szczegółami licencji).

Downloads last month
82
Safetensors
Model size
8.03B params
Tensor type
BF16
·
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.

Model tree for Remek/Llama-3-8B-Omnibus-1-PL-v01-INSTRUCT

Finetunes
7 models
Quantizations
6 models

Spaces using Remek/Llama-3-8B-Omnibus-1-PL-v01-INSTRUCT 6