deepspeedai / deepspeedai/DeepSpeed

Question: recommended method for inference from a pipelined model checkpoint?

Open
#1,379 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
43.1k
Forks
5k
Avg merge
4d 15h
Merged PRs (30d)
112

Description

Is it possible to load a checkpoint that was saved by a pipelined model back into DeepSpeed for inference, i.e., with deepspeed.init_inference?

In particular, I have trained a model using 2-way tensor and 4-way pipeline parallelism so that I have a set of layer checkpoint files like:

global_step26000/layer_01-model_00-model_states.pt
global_step26000/layer_01-model_01-model_states.pt
<snip>
global_step26000/layer_44-model_00-model_states.pt
global_step26000/layer_44-model_01-model_states.pt

I would now like to load this checkpoint to do inference, ideally with deepspeed.init_inference for optimized performance. I've tried a number of different approaches, but I haven't quite cracked it.

Is there a way to do that, or can it only be loaded back with deepspeed.initialize?

Thanks.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the checkpoint layout under global_step26000 and the deepspeed.init_inference and deepspeed.initialize entry points mentioned in the question. Determine whether the pipelined checkpoint can be loaded for inference, and document or implement a clear supported loading path if one exists.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, pytorch
Domain
distributed-systems, machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.