Instructions to use vidfom/Ltx-3 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- llama-cpp-python
How to use vidfom/Ltx-3 with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="vidfom/Ltx-3", filename="ComfyUI/models/text_encoders/gemma-3-12b-it-qat-UD-Q4_K_XL.gguf", )
llm.create_chat_completion( messages = "No input example has been defined for this model task." )
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use vidfom/Ltx-3 with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf vidfom/Ltx-3:UD-Q4_K_XL # Run inference directly in the terminal: llama-cli -hf vidfom/Ltx-3:UD-Q4_K_XL
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf vidfom/Ltx-3:UD-Q4_K_XL # Run inference directly in the terminal: llama-cli -hf vidfom/Ltx-3:UD-Q4_K_XL
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 vidfom/Ltx-3:UD-Q4_K_XL # Run inference directly in the terminal: ./llama-cli -hf vidfom/Ltx-3:UD-Q4_K_XL
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 vidfom/Ltx-3:UD-Q4_K_XL # Run inference directly in the terminal: ./build/bin/llama-cli -hf vidfom/Ltx-3:UD-Q4_K_XL
Use Docker
docker model run hf.co/vidfom/Ltx-3:UD-Q4_K_XL
- LM Studio
- Jan
- Ollama
How to use vidfom/Ltx-3 with Ollama:
ollama run hf.co/vidfom/Ltx-3:UD-Q4_K_XL
- Unsloth Studio new
How to use vidfom/Ltx-3 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 vidfom/Ltx-3 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 vidfom/Ltx-3 to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for vidfom/Ltx-3 to start chatting
- Docker Model Runner
How to use vidfom/Ltx-3 with Docker Model Runner:
docker model run hf.co/vidfom/Ltx-3:UD-Q4_K_XL
- Lemonade
How to use vidfom/Ltx-3 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull vidfom/Ltx-3:UD-Q4_K_XL
Run and chat with the model
lemonade run user.Ltx-3-UD-Q4_K_XL
List all available models
lemonade list
| def MakeSmartType(t): | |
| if isinstance(t, str): | |
| return SmartType(t) | |
| return t | |
| class SmartType(str): | |
| def __ne__(self, other): | |
| if self == "*" or other == "*": | |
| return False | |
| selfset = set(self.split(',')) | |
| otherset = set(other.split(',')) | |
| return not selfset.issubset(otherset) | |
| def VariantSupport(): | |
| def decorator(cls): | |
| if hasattr(cls, "INPUT_TYPES"): | |
| old_input_types = getattr(cls, "INPUT_TYPES") | |
| def new_input_types(*args, **kwargs): | |
| types = old_input_types(*args, **kwargs) | |
| for category in ["required", "optional"]: | |
| if category not in types: | |
| continue | |
| for key, value in types[category].items(): | |
| if isinstance(value, tuple): | |
| types[category][key] = (MakeSmartType(value[0]),) + value[1:] | |
| return types | |
| setattr(cls, "INPUT_TYPES", new_input_types) | |
| if hasattr(cls, "RETURN_TYPES"): | |
| old_return_types = cls.RETURN_TYPES | |
| setattr(cls, "RETURN_TYPES", tuple(MakeSmartType(x) for x in old_return_types)) | |
| if hasattr(cls, "VALIDATE_INPUTS"): | |
| # Reflection is used to determine what the function signature is, so we can't just change the function signature | |
| raise NotImplementedError("VariantSupport does not support VALIDATE_INPUTS yet") | |
| else: | |
| def validate_inputs(input_types): | |
| inputs = cls.INPUT_TYPES() | |
| for key, value in input_types.items(): | |
| if isinstance(value, SmartType): | |
| continue | |
| if "required" in inputs and key in inputs["required"]: | |
| expected_type = inputs["required"][key][0] | |
| elif "optional" in inputs and key in inputs["optional"]: | |
| expected_type = inputs["optional"][key][0] | |
| else: | |
| expected_type = None | |
| if expected_type is not None and MakeSmartType(value) != expected_type: | |
| return f"Invalid type of {key}: {value} (expected {expected_type})" | |
| return True | |
| setattr(cls, "VALIDATE_INPUTS", validate_inputs) | |
| return cls | |
| return decorator | |