[RL] Expose top-p-only sampling masks (#33593)

This commit is contained in:
Nan Jiang
2026-08-14 16:40:27 -07:00
committed by GitHub
parent 90b3db6dd8
commit be804c1b83
6 changed files with 68 additions and 16 deletions
@@ -124,6 +124,7 @@ class TestChatCompletionRequest(unittest.TestCase):
self.assertEqual(request.messages[0].content, "Hello")
self.assertEqual(request.temperature, None) # default
self.assertFalse(request.stream) # default
self.assertFalse(request.return_sampling_mask)
self.assertEqual(request.tool_choice, "none") # default when no tools
def test_image_content_hash_validation(self):
@@ -278,9 +278,12 @@ class ServingChatTestCase(unittest.TestCase):
None,
)
self.basic_req.return_sampling_mask = True
self.basic_req.return_meta_info = True
adapted, processed = self.chat._convert_to_internal_request(self.basic_req)
self.assertIsInstance(adapted, GenerateReqInput)
self.assertFalse(adapted.stream)
self.assertTrue(adapted.return_sampling_mask)
self.assertEqual(adapted.session_id, "session-1")
self.assertEqual(processed, self.basic_req)
@@ -295,6 +298,18 @@ class ServingChatTestCase(unittest.TestCase):
with self.subTest(field=field), self.assertRaisesRegex(ValueError, field):
self.chat._convert_to_internal_request(req, self.fastapi_request)
def test_validate_request_rejects_sampling_mask_without_meta_info(self):
req = ChatCompletionRequest(
model="x",
messages=[{"role": "user", "content": "Hi?"}],
return_sampling_mask=True,
)
self.assertEqual(
self.chat._validate_request(req),
"return_sampling_mask requires return_meta_info=true.",
)
def test_convert_to_internal_request_rejects_stream_return_meta_info(self):
req = ChatCompletionRequest(
model="x",