Model reference · open weights
Llama-3.3 is an open-weight language model from Meta. Llama-3.3-70B-Instruct (BF16) weighs 141 GB; the smallest configuration that runs it is 4× L40S 48 GB.
Summary of the meta-llama/Llama-3.3-70B-Instruct model card, 2026-10-01
What it is
| Released by | Meta |
|---|---|
| Released | 2024-11-26 |
| Parameters | 70.6B |
| VRAM | 141 GB for the weights |
What it runs on
| Card | Requests at once | Context max | Memory | |
|---|---|---|---|---|
| 8K each | 32K each | |||
| RTX 3060 12 GB … H200 141 GB 11 smaller cards | — | — | — | |
| B200 180 GB | 10 | 2 | 83K | 176 GB |
| 4× L40S 48 GB tensor parallel | 11 | 2 | 92K | 44.0 GB a card |
| 2× RTX PRO 6000 Blackwell 96 GB tensor parallel | 13 | 3 | 105K | 93.8 GB a card |
| 2× H200 141 GB tensor parallel | 46 | 11 | all 128K | 138 GB a card |
| 4× H100 80 GB tensor parallel | 55 | 13 | all 128K | 78.1 GB a card |
| 4× A100 80 GB tensor parallel | 62 | 15 | all 128K | 78.2 GB a card |
| Requests at once | 8K tokens each | 32K tokens each |
|---|---|---|
| 1 | 145 GB | 153 GB |
| 5 | 155 GB | 196 GB |
| 8 | 164 GB | 228 GB |
| 16 | 185 GB | 314 GB |
| 32 | 228 GB | 486 GB |
| 64 | 314 GB | 829 GB |
One card, with vLLM's small-card settings.
Builds
| Build | Params | Precision | Weights | Smallest setup |
|---|---|---|---|---|
| Llama-3.3-70B-Instruct (above) ↗ | 70.6B | BF16 | 141 GB | 4× L40S 48 GB |
| Llama-3.3-70B-Instruct-FP8-dynamic ↗ packaged by RedHatAI |
70.6B | FP8 | 72.7 GB | A100 80 GB |
From the model card
Llama-3.3-70B-Instruct-FP8-dynamic
This model was obtained by quantizing activation and weights of Llama-3.3-70B-Instruct to FP8 data type. This optimization reduces the number of bits used to represent weights and activations from 16 to 8, reducing GPU memory requirements (by approximately 50%) and increasing matrix-multiply compute throughput (by approximately 2x). Weight quantization also reduces disk size requirements by approximately 50%.
Only weights and activations of the linear operators within transformers blocks are quantized. Weights are quantized with a symmetric static per-channel scheme, whereas activations are quantized with a symmetric dynamic per-token scheme. The llm-compressor library is used for quantization.
This model can be deployed efficiently using the vLLM backend, as shown in the example below.
from vllm import LLM, SamplingParams
from transformers import AutoTokenizer
model_id = "RedHatAI/Llama-3.3-70B-Instruct-FP8-dynamic"
number_gpus = 1
sampling_params = SamplingParams(temperature=0.7, top_p=0.8, max_tokens=256)
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
prompts = tokenizer.apply_chat_template(messages, tokenize=False)
llm = LLM(model=model_id, tensor_parallel_size=number_gpus)
outputs = llm.generate(prompts, sampling_params)
generated_text = outputs[0].outputs[0].text
print(generated_text)
vLLM aslo supports OpenAI-compatible serving. See the documentation for more details.
podman run --rm -it --device nvidia.com/gpu=all -p 8000:8000 \
--ipc=host \
--env "HUGGING_FACE_HUB_TOKEN=$HF_TOKEN" \
--env "HF_HUB_OFFLINE=0" -v ~/.cache/vllm:/home/vllm/.cache \
--name=vllm \
registry.access.redhat.com/rhaiis/rh-vllm-cuda \
vllm serve \
--tensor-parallel-size 8 \
--max-model-len 32768 \
--enforce-eager --model RedHatAI/Llama-3.3-70B-Instruct-FP8-dynamic
See Red Hat AI Inference Server documentation for more details.
# Download model from Red Hat Registry via docker
# Note: This downloads the model to ~/.cache/instructlab/models unless --model-dir is specified.
ilab model download --repository docker://registry.redhat.io/rhelai1/llama-3-3-70b-instruct-fp8-dynamic:1.5
# Serve model via ilab
ilab model serve --model-path ~/.cache/instructlab/models/llama-3-3-70b-instruct-fp8-dynamic
# Chat with model
ilab model chat --model ~/.cache/instructlab/models/llama-3-3-70b-instruct-fp8-dynamic
See Red Hat Enterprise Linux AI documentation for more details.
# Setting up vllm server with ServingRuntime
# Save as: vllm-servingruntime.yaml
apiVersion: serving.kserve.io/v1alpha1
kind: ServingRuntime
metadata:
name: vllm-cuda-runtime # OPTIONAL CHANGE: set a unique name
annotations:
openshift.io/display-name: vLLM NVIDIA GPU ServingRuntime for KServe
opendatahub.io/recommended-accelerators: '["nvidia.com/gpu"]'
labels:
opendatahub.io/dashboard: 'true'
spec:
annotations:
prometheus.io/port: '8080'
prometheus.io/path: '/metrics'
multiModel: false
supportedModelFormats:
- autoSelect: true
name: vLLM
containers:
- name: kserve-container
image: quay.io/modh/vllm:rhoai-2.20-cuda # CHANGE if needed. If AMD: quay.io/modh/vllm:rhoai-2.20-rocm
command:
- python
- -m
- vllm.entrypoints.openai.api_server
args:
- "--port=8080"
- "--model=/mnt/models"
- "--served-model-name={{.Name}}"
env:
- name: HF_HOME
value: /tmp/hf_home
ports:
- containerPort: 8080
protocol: TCP
# Attach model to vllm server. This is an NVIDIA template
# Save as: inferenceservice.yaml
apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
annotations:
openshift.io/display-name: llama-3-3-70b-instruct-fp8-dynamic # OPTIONAL CHANGE
serving.kserve.io/deploymentMode: RawDeployment
name: llama-3-3-70b-instruct-fp8-dynamic # specify model name. This value will be used to invoke the model in the payload
labels:
opendatahub.io/dashboard: 'true'
spec:
predictor:
maxReplicas: 1
minReplicas: 1
model:
modelFormat:
name: vLLM
name: ''
resources:
limits:
cpu: '2' # this is model specific
memory: 8Gi # this is model specific
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.