renderers 0.1.8.dev29__tar.gz → 0.1.8.dev30__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/PKG-INFO +1 -1
  2. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/_version.py +2 -2
  3. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/nemotron3.py +2 -1
  4. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_tool_arg_type_preservation.py +2 -1
  5. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/.github/workflows/publish-dev.yml +0 -0
  6. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/.github/workflows/publish.yml +0 -0
  7. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/.github/workflows/style.yml +0 -0
  8. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/.github/workflows/test.yml +0 -0
  9. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/.gitignore +0 -0
  10. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/.pre-commit-config.yaml +0 -0
  11. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/LICENSE +0 -0
  12. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/README.md +0 -0
  13. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/docs/renderer-config.md +0 -0
  14. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/examples/README.md +0 -0
  15. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/examples/sglang/multiturn_generate_sglang.py +0 -0
  16. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/examples/sglang/online_multiturn_sglang.py +0 -0
  17. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/examples/tinker/multiturn_generate_tinker.py +0 -0
  18. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/examples/transformers/multiturn_generate_transformers.py +0 -0
  19. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/examples/vllm/multiturn_generate_vllm.py +0 -0
  20. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/pyproject.toml +0 -0
  21. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/__init__.py +0 -0
  22. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/base.py +0 -0
  23. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/client.py +0 -0
  24. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/configs.py +0 -0
  25. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/deepseek_v3.py +0 -0
  26. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/default.py +0 -0
  27. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/glm45.py +0 -0
  28. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/glm5.py +0 -0
  29. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/gpt_oss.py +0 -0
  30. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/kimi_k2.py +0 -0
  31. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/kimi_k25.py +0 -0
  32. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/laguna_xs2.py +0 -0
  33. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/minimax_m2.py +0 -0
  34. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/parsers.py +0 -0
  35. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/parsing.py +0 -0
  36. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/qwen3.py +0 -0
  37. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/qwen35.py +0 -0
  38. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/qwen36.py +0 -0
  39. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/renderers/qwen3_vl.py +0 -0
  40. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/conftest.py +0 -0
  41. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_bridge.py +0 -0
  42. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_build_helpers.py +0 -0
  43. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_client.py +0 -0
  44. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_gpt_oss_harmony_parity.py +0 -0
  45. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_incremental.py +0 -0
  46. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_is_content.py +0 -0
  47. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_kimi_k25_tool_schema.py +0 -0
  48. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_load_tokenizer.py +0 -0
  49. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_load_tokenizer_fastokens.py +0 -0
  50. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_message_indices.py +0 -0
  51. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_multimodal.py +0 -0
  52. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_parse_response.py +0 -0
  53. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_parse_response_robustness.py +0 -0
  54. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_parsers.py +0 -0
  55. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_preserve_thinking.py +0 -0
  56. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_qwen35_size_coverage.py +0 -0
  57. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_render_ids.py +0 -0
  58. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_renderer_config.py +0 -0
  59. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_renderer_config_parity.py +0 -0
  60. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_roundtrip.py +0 -0
  61. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_sampled_mask.py +0 -0
  62. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/tests/test_tokens_per_message.py +0 -0
  63. {renderers-0.1.8.dev29 → renderers-0.1.8.dev30}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: renderers
3
- Version: 0.1.8.dev29
3
+ Version: 0.1.8.dev30
4
4
  Summary: Chat template renderers — deterministic message-to-token conversion for LLM training
5
5
  License-Expression: Apache-2.0
6
6
  License-File: LICENSE
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '0.1.8.dev29'
22
- __version_tuple__ = version_tuple = (0, 1, 8, 'dev29')
21
+ __version__ = version = '0.1.8.dev30'
22
+ __version_tuple__ = version_tuple = (0, 1, 8, 'dev30')
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -430,7 +430,7 @@ class Nemotron3Renderer:
430
430
  self,
431
431
  token_ids: list[int],
432
432
  *,
433
- tools: list[ToolSpec] | None = None, # noqa: ARG002 — args land in a JSON object, schema not needed
433
+ tools: list[ToolSpec] | None = None,
434
434
  ) -> ParsedResponse:
435
435
  stop_ids = {self._im_end}
436
436
  if self._endoftext is not None:
@@ -443,6 +443,7 @@ class Nemotron3Renderer:
443
443
  think_end_id=self._think_end,
444
444
  tool_call_id=self._tool_call,
445
445
  tool_call_end_id=self._tool_call_end,
446
+ tools=tools,
446
447
  )
447
448
 
448
449
  def get_stop_token_ids(self) -> list[int]:
@@ -26,7 +26,7 @@ import pytest
26
26
 
27
27
 
28
28
  # (HuggingFace model name, renderer name). Two JSON-shaped controls
29
- # (string types already preserved by the wire format) + four XML-style
29
+ # (string types already preserved by the wire format) + five XML-style
30
30
  # parsers that rely on the schema to preserve them.
31
31
  _MODELS = [
32
32
  ("Qwen/Qwen3-8B", "auto"), # hermes JSON — control
@@ -35,6 +35,7 @@ _MODELS = [
35
35
  ("zai-org/GLM-5", "auto"), # XML
36
36
  ("MiniMaxAI/MiniMax-M2.5", "auto"), # XML
37
37
  ("poolside/Laguna-XS.2", "auto"), # XML
38
+ ("nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16", "auto"), # XML
38
39
  ]
39
40
 
40
41
 
File without changes
File without changes