diff --git a/.github/checksum_checker.sh b/.github/checksum_checker.sh index a77ef407..8fdf5294 100644 --- a/.github/checksum_checker.sh +++ b/.github/checksum_checker.sh @@ -16,7 +16,7 @@ function check_and_update_checksum() { # Download the file and calculate new checksum using Python new_checksum=$(python3 -c " import hashlib -from huggingface_hub import hf_hub_download +from huggingface_hub import hf_hub_download, get_paths_info import requests import sys import os @@ -46,14 +46,26 @@ def calculate_sha256(file_path): download_type, repo_id_or_url = parse_uri(uri) +new_checksum = None + # Decide download method based on URI type if download_type == 'huggingface': - try: - file_path = hf_hub_download(repo_id=repo_id_or_url, filename=file_name) - except Exception as e: - print(f'Error from Hugging Face Hub: {str(e)}', file=sys.stderr) - sys.exit(2) + # Use HF API to pull sha + for file in get_paths_info(repo_id_or_url, [file_name], repo_type='model'): + try: + new_checksum = file.lfs.sha256 + break + except Exception as e: + print(f'Error from Hugging Face Hub: {str(e)}', file=sys.stderr) + sys.exit(2) + if new_checksum is None: + try: + file_path = hf_hub_download(repo_id=repo_id_or_url, filename=file_name) + except Exception as e: + print(f'Error from Hugging Face Hub: {str(e)}', file=sys.stderr) + sys.exit(2) else: + print(f'Downloading file from {repo_id_or_url}') response = requests.get(repo_id_or_url) if response.status_code == 200: with open(file_name, 'wb') as f: @@ -66,9 +78,13 @@ else: print(f'Error downloading file: {response.status_code}', file=sys.stderr) sys.exit(1) -print(calculate_sha256(file_path)) -# Clean up the downloaded file -os.remove(file_path) +if new_checksum is None: + new_checksum = calculate_sha256(file_path) + print(new_checksum) + os.remove(file_path) +else: + print(new_checksum) + ") if [[ "$new_checksum" == "" ]]; then diff --git a/gallery/index.yaml b/gallery/index.yaml index 4a258eef..700229b9 100644 --- a/gallery/index.yaml +++ b/gallery/index.yaml @@ -1062,10 +1062,10 @@ files: - filename: Bunny-Llama-3-8B-Q4_K_M-mmproj.gguf sha256: 96d033387a91e56cf97fa5d60e02c0128ce07c8fa83aaaefb74ec40541615ea5 - uri: huggingace://BAAI/Bunny-Llama-3-8B-V-gguf/mmproj-model-f16.gguf + uri: huggingface://BAAI/Bunny-Llama-3-8B-V-gguf/mmproj-model-f16.gguf - filename: Bunny-Llama-3-8B-Q4_K_M.gguf sha256: 88f0a61f947dbf129943328be7262ae82e3a582a0c75e53544b07f70355a7c30 - uri: huggingace://BAAI/Bunny-Llama-3-8B-V-gguf/ggml-model-Q4_K_M.gguf + uri: huggingface://BAAI/Bunny-Llama-3-8B-V-gguf/ggml-model-Q4_K_M.gguf - !!merge <<: *llama3 name: "llava-llama-3-8b-v1_1" description: |