finetune.sh 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. #!/bin/bash
  2. cd `dirname $0`
  3. cd ../..
  4. EXE="./llama-finetune"
  5. if [[ ! $LLAMA_MODEL_DIR ]]; then LLAMA_MODEL_DIR="./models"; fi
  6. if [[ ! $LLAMA_TRAINING_DIR ]]; then LLAMA_TRAINING_DIR="."; fi
  7. # MODEL="$LLAMA_MODEL_DIR/openllama-3b-v2-q8_0.gguf" # This is the model the readme uses.
  8. MODEL="$LLAMA_MODEL_DIR/openllama-3b-v2.gguf" # An f16 model. Note in this case with "-g", you get an f32-format .BIN file that isn't yet supported if you use it with "llama-cli --lora" with GPU inferencing.
  9. while getopts "dg" opt; do
  10. case $opt in
  11. d)
  12. DEBUGGER="gdb --args"
  13. ;;
  14. g)
  15. EXE="./build/bin/Release/finetune"
  16. GPUARG="--gpu-layers 25"
  17. ;;
  18. esac
  19. done
  20. $DEBUGGER $EXE \
  21. --model-base $MODEL \
  22. $GPUARG \
  23. --checkpoint-in chk-ol3b-shakespeare-LATEST.gguf \
  24. --checkpoint-out chk-ol3b-shakespeare-ITERATION.gguf \
  25. --lora-out lora-ol3b-shakespeare-ITERATION.bin \
  26. --train-data "$LLAMA_TRAINING_DIR\shakespeare.txt" \
  27. --save-every 10 \
  28. --threads 10 --adam-iter 30 --batch 4 --ctx 64 \
  29. --use-checkpointing