From 6dec2aabf869a4a2e7083b4a2f757555d447354b Mon Sep 17 00:00:00 2001 From: Kyle Corbitt Date: Fri, 3 Oct 2025 00:06:40 +0000 Subject: [PATCH 1/2] fix: Handle ValueError when parsing token IDs from logprobs Some tokens (like newlines) may have invalid integer representations in the token_id:N format. Catch ValueError in addition to IndexError to fall back to using the tokenizer's convert_tokens_to_ids method. --- src/art/preprocessing/tokenize.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/art/preprocessing/tokenize.py b/src/art/preprocessing/tokenize.py index a5aa54146..9a0bff38f 100644 --- a/src/art/preprocessing/tokenize.py +++ b/src/art/preprocessing/tokenize.py @@ -212,7 +212,7 @@ def tokenize_trajectory( int(token_logprob.token.split(":")[1]) for token_logprob in token_logprobs ) - except IndexError: + except (IndexError, ValueError): token_ids[start:end] = [ token_id if token_id is not None else tokenizer.eos_token_id for token_id in tokenizer.convert_tokens_to_ids( From 65015d6e91488acf9998a5f87ef7e4aa641e4611 Mon Sep 17 00:00:00 2001 From: Kyle Corbitt Date: Fri, 3 Oct 2025 22:58:28 +0000 Subject: [PATCH 2/2] Add wandb-artifact:/// prefix to inference model names MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update ServerlessBackend._model_inference_name to return fully-qualified model IDs with the wandb-artifact:/// prefix. This ensures compatibility with the FastAPI inference endpoint which requires this format. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- src/art/serverless/backend.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/art/serverless/backend.py b/src/art/serverless/backend.py index 560d16593..4d6a5d3be 100644 --- a/src/art/serverless/backend.py +++ b/src/art/serverless/backend.py @@ -57,7 +57,7 @@ async def register( def _model_inference_name(self, model: "TrainableModel") -> str: assert model.entity is not None, "Model entity is required" - return f"{model.entity}/{model.project}/{model.name}" + return f"wandb-artifact:///{model.entity}/{model.project}/{model.name}" async def _get_step(self, model: "Model") -> int: if model.trainable: