warmup.sh.j2 1004 B

12345678910111213141516171819202122232425262728
  1. #!/bin/bash
  2. # Ollama model warm-up script
  3. # Sends a 1-token generation to each slot model to pin them in RAM
  4. set -e
  5. OLLAMA_URL="http://localhost:11434"
  6. API_KEY="{{ ollama_api_key }}"
  7. warmup_model() {
  8. local model="$1"
  9. echo "[warmup] Loading model: $model"
  10. curl -sf -X POST "${OLLAMA_URL}/api/generate" \
  11. -H "Authorization: Bearer ${API_KEY}" \
  12. -H "Content-Type: application/json" \
  13. -d "{\"model\":\"${model}\",\"prompt\":\"Hi\",\"stream\":false,\"options\":{\"num_predict\":1}}" \
  14. > /dev/null || echo "[warmup] Warning: failed to warm up ${model}"
  15. echo "[warmup] Done: $model"
  16. }
  17. warmup_model "{{ model_selection.slot1_general }}"
  18. warmup_model "{{ model_selection.slot2_general }}"
  19. {% if model_selection.slot5_general_rotate | default('') | length > 0
  20. and model_selection.slot5_general_rotate | default('none') != 'none' %}
  21. warmup_model "{{ model_selection.slot5_general_rotate }}"
  22. {% endif %}
  23. echo "[warmup] All Node 1 general models warmed up."