File size: 2,149 Bytes
3647b6e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
data_downloading:
  download_directory: "quant_bio_retrieval/"    # directory where the papers will be downloaded and the graph will be saved
  gexf_file: "test_graph.gexf"                  # name of the graph file that will be created only if downloading option is true
  processing:
    random_seed: 10
    keep_unstructured_content: false            # keep unstructured content of the papers as graph node attribute if true
    arxiv_rate_limit: 3                         # time in seconds to wait between each arxiv api call to avoid ban

retriever:
  embedder: BAAI/bge-large-en-v1.5
  num_retrievals: 30000
  load_arxiv_embeds: True                       # load arxiv embeddings from huggingface if true else generate them

inference:
  base_model: meta-llama/Meta-Llama-3-8B
  pretrained_model: "models/Robotics/Meta-LLama-3-8B-Quantative-Robotics" # used only if training option is false
  generation_args:
    max_new_tokens: 1000
    do_sample: True
    top_p: 0.9
    top_k: 50
    temperature: 0.7
    no_repeat_ngram_size: 2
    num_beams: 1
  gen_related_work_instruct_model: meta-llama/Llama-3.1-8B-Instruct      # Model assisting at the generation of related work instructions

training:
  predefined_graph_path: "robotics.gexf"                                 # path to the graph dataset used for fine-tuning only if downloading option is false
  trainer_args:
    per_device_train_batch_size: 4
    warmup_steps: 100
    num_train_epochs: 1
    learning_rate: 0.0002
    lr_scheduler_type: 'cosine'
    fp16: true
    logging_steps: 1
    save_steps: 50
    trainer_output_dir: trainer_outputs/
  tokenizer:
    max_length: 1024
  qlora:
    rank: 8
    lora_alpha: 32
    lora_dropout: 0.05
    target_modules:          # modules for which to train lora adapters
    - q_proj
    - k_proj
    - v_proj
    - o_proj

# Used only if training option is true to save and load the fine-tuned model
model_saving:
  model_name: llama_1b_qlora_uncensored
  model_output_dir: models   # model saved in {model_output_dir}/{model_name}_{index} # model saved in {model_output_dir}/{model_name}_{index} after fine-tuning completion
  index: 1