char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
a14b960bc
char/aliceai-t5-moe
1#!/usr/bin/env bash 2 3set -e 4 5CONVERTED_MODEL =" ${ 1 :- " $ CONVERTED_MODEL " } " 6QUANTIZED_TYPE =" ${ 2 :- " $ QUANTIZED_TYPE " } " 7TOKEN_EMBD_TYPE =" ${ 3 :- " ${ TOKEN_EMBD_TYPE } " } " 8OUTPUT_TYPE =" ${ 4 :- " ${ OUTPUT_TYPE } " } " 9BUILD_DIR =" ${ 5 :- " $ BUILD_DIR " } " 10QUANTIZED_MODEL =$ CONVERTED_MODEL 11 12# Final check if we have a model path 13if [ -z" $ CONVERTED_MODEL " ];then 14echo "Error: Model path must be provided either as:" >&2 15echo " 1. Command line argument" >&2 16echo " 2. CONVERTED_MODEL environment variable" >&2 17exit 1 18fi 19 20if [ -z" $ QUANTIZED_TYPE " ];then 21echo "Error: QUANTIZED_TYPE is required" >&2 22exit 1 23fi 24 25echo $ CONVERTED_MODEL 26 27# Process the quantized model filename 28if [[" $ QUANTIZED_MODEL " == *.gguf ]];then 29# Remove .gguf suffix, add quantized type, then add .gguf back 30BASE_NAME =" ${ QUANTIZED_MODEL %.gguf} " 31QUANTIZED_MODEL =" ${ BASE_NAME } - ${ QUANTIZED_TYPE } .gguf" 32else 33echo "Error: QUANTIZED_MODEL must end with .gguf extension" >&2 34exit 1 35fi 36 37if [ -z" $ BUILD_DIR " ];then 38BUILD_DIR ="../../build" 39fi 40 41cmake --build $ BUILD_DIR --target llama-quantize-j8 42 43echo $ TOKEN_EMBD_TYPE 44echo $ OUTPUT_TYPE 45 46CMD_ARGS =(" ${ BUILD_DIR } /bin/llama-quantize" ) 47[[ -n" $ TOKEN_EMBD_TYPE " ]]&& CMD_ARGS +=("--token-embedding-type" " $ TOKEN_EMBD_TYPE " ) 48[[ -n" $ OUTPUT_TYPE " ]]&& CMD_ARGS +=("--output-tensor-type" " $ OUTPUT_TYPE " ) 49CMD_ARGS +=(" $ CONVERTED_MODEL " " $ QUANTIZED_MODEL " " $ QUANTIZED_TYPE " ) 50 51" ${ CMD_ARGS [@]} " 52 53echo "Quantized model saved to: $ QUANTIZED_MODEL "