Files
wehub-resource-sync 770d92cb1f
Lint / lint (push) Waiting to run
Windows CI / Windows (push) Waiting to run
Build Docs / Deploy Docs (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 13:23:58 +08:00

91 lines
3.8 KiB
ReStructuredText

.. _deploy-cli:
CLI
===============
MLC Chat CLI is the command line tool to run MLC-compiled LLMs out of the box interactively.
.. contents:: Table of Contents
:local:
:depth: 2
Install MLC-LLM Package
------------------------
Chat CLI is a part of the MLC-LLM package.
To use the chat CLI, first install MLC LLM by following the instructions :ref:`here <install-mlc-packages>`.
Once you have install the MLC-LLM package, you can run the following command to check if the installation was successful:
.. code:: bash
mlc_llm chat --help
You should see serve help message if the installation was successful.
Quick Start
------------
This section provides a quick start guide to work with MLC-LLM chat CLI.
To launch the CLI session, run the following command:
.. code:: bash
mlc_llm chat MODEL [--model-lib PATH-TO-MODEL-LIB]
where ``MODEL`` is the model folder after compiling with :ref:`MLC-LLM build process <compile-model-libraries>`. Information about other arguments can be found in the next section.
Once the chat CLI is ready, you can enter the prompt to interact with the model.
.. code::
You can use the following special commands:
/help print the special commands
/exit quit the cli
/stats print out stats of last request (token/sec)
/metrics print out full engine metrics
/reset restart a fresh chat
/set [overrides] override settings in the generation config. For example,
`/set temperature=0.5;top_p=0.8;seed=23;max_tokens=100;stop=str1,str2`
Note: Separate stop words in the `stop` option with commas (,).
Multi-line input: Use escape+enter to start a new line.
>>> What's the meaning of life?
The meaning of life is a philosophical and metaphysical question related to the purpose or significance of life or existence in general...
Run CLI with Multi-GPU
----------------------
If you want to enable tensor parallelism to run LLMs on multiple GPUs, please specify argument ``--overrides "tensor_parallel_shards=$NGPU"``. For example,
.. code:: shell
mlc_llm chat HF://mlc-ai/Llama-3-8B-Instruct-q4f16_1-MLC --overrides "tensor_parallel_shards=2"
The ``mlc_llm chat`` Command
----------------------------
We provide the list of chat CLI interface for reference.
.. code:: bash
mlc_llm chat MODEL [--model-lib PATH-TO-MODEL-LIB] [--device DEVICE] [--overrides OVERRIDES]
MODEL The model folder after compiling with MLC-LLM build process. The parameter
can either be the model name with its quantization scheme
(e.g. ``Llama-2-7b-chat-hf-q4f16_1``), or a full path to the model
folder. In the former case, we will use the provided name to search
for the model folder over possible paths.
--model-lib A field to specify the full path to the model library file to use (e.g. a ``.so`` file).
--device The description of the device to run on. User should provide a string in the
form of ``device_name:device_id`` or ``device_name``, where ``device_name`` is one of
``cuda``, ``metal``, ``vulkan``, ``rocm``, ``opencl``, ``auto`` (automatically detect the
local device), and ``device_id`` is the device id to run on. The default value is ``auto``,
with the device id set to 0 for default.
--overrides Model configuration override. Supports overriding
``context_window_size``, ``prefill_chunk_size``, ``sliding_window_size``, ``attention_sink_size``,
and ``tensor_parallel_shards``. The overrides could be explicitly
specified via details knobs, e.g. --overrides ``context_window_size=1024;prefill_chunk_size=128``.