Test multi-checkpoint inference with ServerlessBackend.
()
| 173 | reason="WANDB_API_KEY not set - skipping ServerlessBackend test", |
| 174 | ) |
| 175 | async def test_serverless_backend(): |
| 176 | """Test multi-checkpoint inference with ServerlessBackend.""" |
| 177 | model_name = f"test-multi-ckpt-serverless-{uuid.uuid4().hex[:8]}" |
| 178 | backend = art.ServerlessBackend() |
| 179 | model = art.TrainableModel( |
| 180 | name=model_name, |
| 181 | project="integration-tests", |
| 182 | base_model="meta-llama/Llama-3.1-8B-Instruct", |
| 183 | ) |
| 184 | try: |
| 185 | await model.register(backend) |
| 186 | results = await run_training_loop( |
| 187 | model, backend, num_steps=1, rollouts_per_step=2 |
| 188 | ) |
| 189 | # Verify TrainResult structure |
| 190 | assert len(results) == 1 |
| 191 | assert isinstance(results[0], ServerlessTrainResult) |
| 192 | assert results[0].step > 0 |
| 193 | assert results[0].artifact_name is not None |
| 194 | await _run_inference_on_step(model, step=results[-1].step) |
| 195 | await _run_inference_on_step(model, step=0) |
| 196 | finally: |
| 197 | try: |
| 198 | await backend.delete(model) |
| 199 | except Exception: |
| 200 | pass |
| 201 | await backend.close() |
nothing calls this directly
no test coverage detected