--- license: apache-2.0 datasets: - pankajmathur/WizardLM_Orca language: - en pipeline_tag: text-generation --- ## Mistral 7b Reverse Instruct This model is LoRA fine tuned to reverse engineer the original prompt of a given LLM output/response. Use Case: The generation of synthetic instruct datasets for developing chatbots and domain specific fine tuning (e.g. "Summarization" & "Roleplay"). - base_model: mistralai/Mistral-7B-v0.1 (=checkpoint-v1) - base_model: mistralai/Mistral-7B-v0.2 (>=checkpoint-v2) For convinience the latest model export is provided under [/latest_model_export](https://huggingface.co/Philipp-Sc/mistral-7b-reverse-instruct/tree/main/latest_model_export) as well as gguf quantized versions under [/latest_ggml_models](https://huggingface.co/Philipp-Sc/mistral-7b-reverse-instruct/tree/main/latest_ggml_models) ## Response Format "[INST]\n### System:\n{system}\n### Instruction:\n{instruction}\n[/INST]\n" - Grammar File: [inst_format.gbnf](https://huggingface.co/Philipp-Sc/mistral-7b-reverse-instruct/blob/main/inst_format.gbnf) ## Prompt Template "\n### System:\nYou craft instructions for generating the given output through reverse engineering.\n### Instruction:\nDecipher the steps used to produce the given output and articulate a refined set of instructions (System & Instruction).\n### OUTPUT:\n {output}" (use the template without the " ") ## Training Dataset About 21k items of the following datasets were used. (mostly coding-like tasks were removed) ```bash wget https://raw.githubusercontent.com/Instruction-Tuning-with-GPT-4/GPT-4-LLM/main/data/alpaca_gpt4_data.json wget https://raw.githubusercontent.com/teknium1/GPTeacher/main/Roleplay%20Supplemental/roleplay-instruct-v2.1.json wget https://huggingface.co/datasets/pankajmathur/WizardLM_Orca/resolve/main/wizardlm_orca.json ``` ## Training Procedure ```bash CUDA_VISIBLE_DEVICES=0 WANDB_DISABLED=True python LLaMA-Factory/src/train_bash.py \ --stage sft \ --model_name_or_path model_name_or_path \ --checkpoint_dir checkpoint_dir \ --flash_attn \ --shift_attn \ --neftune_noise_alpha 5 \ --do_train \ --dataset default \ --template vanilla \ --finetuning_type lora \ --lora_target q_proj,v_proj \ --output_dir path_to_sft_checkpoint \ --overwrite_cache \ --per_device_train_batch_size 1 \ --gradient_accumulation_steps 1 \ --lr_scheduler_type cosine \ --logging_steps 10 \ --save_steps 100 \ --learning_rate 5e-5 \ --num_train_epochs 3.0 \ --plot_loss \ --fp16 \ --overwrite_output_dir \ --cutoff_len 2048 \ --quantization_bit 4 ``` ## Training Time - v1: ~12h on Kaggle's P100 GPU - v2: >30h on Kaggle's T4 x2 ### Framework versions - LLaMA-Factory