run-converted-model.sh 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #!/usr/bin/env bash
  2. set -e
  3. # Parse command line arguments
  4. CONVERTED_MODEL=""
  5. PROMPTS_FILE=""
  6. EMBD_NORMALIZE="2"
  7. while [[ $# -gt 0 ]]; do
  8. case $1 in
  9. -p|--prompts-file)
  10. PROMPTS_FILE="$2"
  11. shift 2
  12. ;;
  13. --embd-normalize)
  14. EMBD_NORMALIZE="$2"
  15. shift 2
  16. ;;
  17. *)
  18. if [ -z "$CONVERTED_MODEL" ]; then
  19. CONVERTED_MODEL="$1"
  20. fi
  21. shift
  22. ;;
  23. esac
  24. done
  25. # First try command line argument, then environment variable
  26. CONVERTED_MODEL="${CONVERTED_MODEL:-"$CONVERTED_EMBEDDING_MODEL"}"
  27. # Final check if we have a model path
  28. if [ -z "$CONVERTED_MODEL" ]; then
  29. echo "Error: Model path must be provided either as:" >&2
  30. echo " 1. Command line argument" >&2
  31. echo " 2. CONVERTED_EMBEDDING_MODEL environment variable" >&2
  32. exit 1
  33. fi
  34. # Read prompt from file or use default
  35. if [ -n "$PROMPTS_FILE" ]; then
  36. if [ ! -f "$PROMPTS_FILE" ]; then
  37. echo "Error: Prompts file '$PROMPTS_FILE' not found" >&2
  38. exit 1
  39. fi
  40. PROMPT=$(cat "$PROMPTS_FILE")
  41. else
  42. PROMPT="Hello world today"
  43. fi
  44. echo $CONVERTED_MODEL
  45. cmake --build ../../build --target llama-debug -j8
  46. ../../build/bin/llama-debug -m "$CONVERTED_MODEL" --embedding -p "$PROMPT" --save-logits --embd-normalize $EMBD_NORMALIZE