Instructions to use TheBloke/CodeLlama-7B-Python-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use TheBloke/CodeLlama-7B-Python-GGUF with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="TheBloke/CodeLlama-7B-Python-GGUF")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("TheBloke/CodeLlama-7B-Python-GGUF", dtype="auto") - llama-cpp-python
How to use TheBloke/CodeLlama-7B-Python-GGUF with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="TheBloke/CodeLlama-7B-Python-GGUF", filename="codellama-7b-python.Q2_K.gguf", )
output = llm( "Once upon a time,", max_tokens=512, echo=True ) print(output)
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use TheBloke/CodeLlama-7B-Python-GGUF with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M # Run inference directly in the terminal: llama-cli -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M # Run inference directly in the terminal: llama-cli -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
Use Docker
docker model run hf.co/TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use TheBloke/CodeLlama-7B-Python-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "TheBloke/CodeLlama-7B-Python-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "TheBloke/CodeLlama-7B-Python-GGUF", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
- SGLang
How to use TheBloke/CodeLlama-7B-Python-GGUF with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "TheBloke/CodeLlama-7B-Python-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "TheBloke/CodeLlama-7B-Python-GGUF", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "TheBloke/CodeLlama-7B-Python-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "TheBloke/CodeLlama-7B-Python-GGUF", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Ollama
How to use TheBloke/CodeLlama-7B-Python-GGUF with Ollama:
ollama run hf.co/TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
- Unsloth Studio new
How to use TheBloke/CodeLlama-7B-Python-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for TheBloke/CodeLlama-7B-Python-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for TheBloke/CodeLlama-7B-Python-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for TheBloke/CodeLlama-7B-Python-GGUF to start chatting
- Docker Model Runner
How to use TheBloke/CodeLlama-7B-Python-GGUF with Docker Model Runner:
docker model run hf.co/TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
- Lemonade
How to use TheBloke/CodeLlama-7B-Python-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull TheBloke/CodeLlama-7B-Python-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.CodeLlama-7B-Python-GGUF-Q4_K_M
List all available models
lemonade list
The Q8_0 have mixed tensor types e.g. 'output.norm' is of type Q6_K.
The regular and instruct models are fine, it only happens with this one (the python one).
F32 is fine, but not all consumers of the model support the more esoteric k-quants types.
OK, If you think that's a bug you'd need to report it to llama.cpp. I just told it to make Q8_0.
However I'm not sure what you mean by 'not all consumers' supporting this? This is GGUF, the new format. Currently most third party libraries do not support GGUF at all. But when they do, they will support everything, the same as llama.cpp. Maybe consumers of GGML don't support mixed tensors in q8_0 (I don't know), but this is not GGML any more.
From this PR: https://github.com/ggerganov/llama.cpp/pull/1684
It is stated in the description:
"Not mentioned explicitly above is the fact that with this PR, all quantization variants use 6-bit quantization for the output.weight tensor. This lowers the perplexity of, e.g., Q4_0 by about 0.03 at 7B."
This is a possible explanation why the conversion mix tensor types.
OK thanks, good to know. I do agree that it's a bit odd that q8_0 would not be 100% q8_0 in all tensors.
I just re-read your first message - are you saying that the Q8_0 models for the 7B and 7B-Instruct models are different? They don't have q6_k in their q8_0? Because they should all be the same, they were all created in exactly the same way.
The issue is fixed with the latest update, all tensors are either Q8_0 or F32.