demodel
June 25, 2025 ยท View on GitHub
Easily boost the speed of pulling your models and datasets from various of inference runtimes. (e.g. ๐ค HuggingFace, ๐ซ Ollama, vLLM, and more!)
- Out of the mind when dealing with the slow speed from the internet when pulling models and datasets?
- Already downloaded the model or dataset in another cluster or node, maybe Homelab server, but cannot share them easily?
- You got poor connection to HuggingFace or Ollama but got friends locally with models already?
- You want to serve your models and datasets to your friends locally?
demodel here to rescue!
Features
Out of the box support for:
- ๐ค
huggingface-cli - ๐ค
transformers - Ollama
- ๐ค
transformers.js(both Browser and Node.js) - vLLM
- SGLang
Getting Started
For pixi.sh users, unable to get local issuer certificate error may appear when proxying using demodel:
requests.exceptions.SSLError: (MaxRetryError("HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: /api/whoami-v2 (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1028)')))"), '(Request ID: <deducted>)')
To check which SSL path is used by huggingface-cli or other Python packages, do this:
$ python -c "import ssl; print(ssl.get_default_verify_paths())"
DefaultVerifyPaths(cafile='/home/neko/.pixi/envs/python/ssl/cert.pem', capath='/home/neko/.pixi/envs/python/ssl/certs', openssl_cafile_env='SSL_CERT_FILE', openssl_cafile='/home/neko/.pixi/envs/python/ssl/cert.pem', openssl_capath_env='SSL_CERT_DIR', openssl_capath='/home/neko/.pixi/envs/python/ssl/certs')
$ python -c "import certifi; print(certifi.where())"
/home/neko/.pixi/envs/python/lib/python3.13/site-packages/certifi/cacert.pem
$ demodel export-ca --for python-ssl --for python-certifi
If you are experiencing the same issue with openssl too...
# check the OpenSSL version with directory
$ openssl version -d
OPENSSLDIR: "/home/neko/.pixi/envs/python/ssl"
# if .pixi appeared, you can use the same command as above
$ demodel export-ca --for openssl