Configuring Parameters for Deploying DeepSeek Prefill/Decode Instances
Prerequisites
- The MindCluster cluster scheduling components (including Ascend Docker Runtime, Volcano, Ascend Device Plugin, Ascend Operator, ClusterD, and NodeD) have been installed, and the status of each component is Running.
- The DeepSeek model weight file has been prepared.
- You have performed the operations in Configuring the Parameter Plane Network.
- Python 3.9 or later has been installed on the master node using Ascend Deployer.
Parameters
Currently, MindCluster Ascend Deployer can start only DeepSeek P/D instances in typical configurations.
Configure parameters. The following is an example. For detailed parameters description, see Table 1 and Table 2.
[master] xx.xxx.xx.x1 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" set_hostname="master-1" # Replace it with the IP address of the target device. [worker] xx.xxx.xx.x1-xx.xxx.xx.x3 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" xx.xxx.xx.x5-xx.xxx.xx.x9 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" [all:vars] # Configure parameters for deploying DeepSeek P/D instances. weight_mount_path="" model_weight_path="" mindie_image_name="" mindie_image_file="" expert_map_file="" model_name="ds_r1" job_id="mindie-service" p_instances_num=2 d_instances_num=1 single_p_instance_pod_num=2 single_d_instance_pod_num=4 max_seq_len=18000 mindie_host_log_path=""
Parameter |
Required or Not |
Description |
|---|---|---|
IP |
Yes |
Server IP address. You can enter multiple IP addresses. The details are described as follows:
|
ansible_ssh_user |
Yes |
Account for logging in to a remote server using SSH. The account must be root. |
ansible_ssh_pass |
No |
Password for logging in to a remote server using SSH. If SSH key-based authentication is configured and the root user is allowed for login, you do not need to set this parameter. |
ansible_ssh_port |
No |
Port for SSH connection. You do not need to set this parameter when the default port number 22 is used. If a non-default port is used, you need to configure this parameter. |
Parameter |
Required or Not |
Description |
|---|---|---|
weight_mount_path |
Yes |
Host directory mounted to a container. Example: /mnt/mindie_data/ |
model_weight_path |
Yes |
Path for accessing the weight file within a container. Example: /mnt/mindie_data/deepseek_diff_level/deepseek_r1_w8a8 |
mindie_image_name |
No |
Image name (name of the loaded MindIE image). Example: mindie:dev-2.0.RC1.B091-800I-A2-py311-ubuntu22.04-aarch64 |
mindie_image_file |
No |
Path to the image file in shared storage (MindIE image not loaded yet). Example: /mnt/weight/image/mindie_image*.tar.gz |
expert_map_file |
No |
Path to the expert deployment table. Ensure that the path can be loaded within a container. Example: /mnt/weight/16node_gsm8k.json |
model_name |
No |
Model name, which needs to be specified during interface requests. |
job_id |
Yes |
Namespace in Kubernetes. |
p_instances_num |
Yes |
Number of P instances. |
d_instances_num |
Yes |
Number of D instances. |
single_p_instance_pod_num |
Yes |
Number of pods used by a single P instance. |
single_d_instance_pod_num |
Yes |
Number of pods used by a single D instance. |
max_seq_len |
Yes |
Maximum sequence length. The value must be greater than 0. Only one of the following values can be selected:
|
mindie_host_log_path |
No |
MindIE log path. If CCAE is required, enter a non-root directory. |
- If a MindIE image exists in the cluster, configure mindie_image_name. If a MindIE image file exists on each node, configure mindie_image_file. Set either of the two parameters. If both are provided, mindie_image_name takes priority. If neither is provided, MindCluster Ascend Deployer will search for the image file in the ascend_deployer/resources/MindIE-image directory.
- Ensure that the MindIE image corresponding to mindie_image_name and the image file corresponding to mindie_image_file exist in the cluster environment.
- When using mindie_image_name, you only need to specify the master node; worker nodes may be omitted. If mindie_image_name is not used, list all worker nodes for deployment.