Instructions to use XYZAILab/XYZ-Aquila-mini with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use XYZAILab/XYZ-Aquila-mini with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="XYZAILab/XYZ-Aquila-mini") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("XYZAILab/XYZ-Aquila-mini") model = AutoModelForMultimodalLM.from_pretrained("XYZAILab/XYZ-Aquila-mini", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use XYZAILab/XYZ-Aquila-mini with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "XYZAILab/XYZ-Aquila-mini" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "XYZAILab/XYZ-Aquila-mini", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/XYZAILab/XYZ-Aquila-mini
- SGLang
How to use XYZAILab/XYZ-Aquila-mini 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 "XYZAILab/XYZ-Aquila-mini" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "XYZAILab/XYZ-Aquila-mini", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'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 "XYZAILab/XYZ-Aquila-mini" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "XYZAILab/XYZ-Aquila-mini", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use XYZAILab/XYZ-Aquila-mini with Docker Model Runner:
docker model run hf.co/XYZAILab/XYZ-Aquila-mini
Tool calling broken
Tool calling did not work when started using vllm as follows:
vllm serve XYZAILab/XYZ-Aquila-mini -tp 2 --max-num-seqs 12 --reasoning-parser qwen3 --enable-auto-tool-choice --tool-call-parser qwen3_coder --enable-chunked-prefill --enable-prefix-caching --trust-remote-code --max-cudagraph-capture-size 32
Same questions there, if we use sglang (the website setting), models only return "!!!!!" (we have seen this problem in model converging in slime, but this is not the case):
finish_reason: length
tool_calls: None
content: ''
reasoning: '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!...'
Thanks for the feedback. We take this issue seriously and have updated the README with the recommended serving commands and a tool-use example.
We tested the latest Hugging Face checkpoint through the OpenAI-compatible /v1/chat/completions API and verified that tool calls are returned as structured message.tool_calls output. The environments we checked were:
- SGLang 0.5.14
- SGLang 0.5.17.dev302+g7c248dd
- vLLM 0.26.0
In these environments, we could not reproduce the garbled response or missing tool calls.
Recommended SGLang serving command:
python -m sglang.launch_server \
--model-path XYZAILab/XYZ-Aquila-mini \
--served-model-name XYZ-Aquila-mini \
--host 0.0.0.0 \
--port 8000 \
--tp-size 4 \
--mem-fraction-static 0.8 \
--context-length 262144 \
--reasoning-parser qwen3 \
--tool-call-parser qwen3_coder
Recommended vLLM serving command:
vllm serve XYZAILab/XYZ-Aquila-mini \
-tp 4 \
--max-num-seqs 12 \
--reasoning-parser qwen3 \
--enable-auto-tool-choice \
--tool-call-parser qwen3_coder \
--enable-chunked-prefill \
--enable-prefix-caching \
--trust-remote-code \
--max-cudagraph-capture-size 32
Please try again with the latest README example. Make sure the request is sent to the OpenAI-compatible chat completion endpoint and includes the tools field in the payload.
If the issue still persists, could you share the exact engine version, full serving command, request payload, and complete raw response? That should let us reproduce it and narrow down whether the issue is coming from the serving engine, launch arguments, or request format.