Skip to content

Conversation

@jmartin-tech
Copy link
Collaborator

In some cases models will respond with None or null response a prompt hits and edge case.

Since atkgen is looking for edges, extra care is needed to ensure this is accounted for.

In one particular case it has been determined that reasoning models may consume their entire token budget and return None for message content for various inputs this probe can generate.

Verification

List the steps needed to make sure this thing works

  • start a vLLM based instance of openai/gpt-oss-120b
  • garak -t nim -n openai/gpt-oss-120b --generator_options '{"nim":{"uri":"https://example.com/v1/"}}' -p atkgen.Tox
  • Verify the probe completes all 25 default iterations

Signed-off-by: Jeffrey Martin <jemartin@nvidia.com>
@jmartin-tech jmartin-tech added bug Something isn't working quality-accuracy This affects result quality/reliability bug-verified Bug that has been verified / reproduced labels Jan 26, 2026
Copy link
Collaborator

@leondz leondz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

defensive option

@jmartin-tech jmartin-tech force-pushed the fix/atkgen-guard-none-response branch from 1c09cc0 to 540a5da Compare January 27, 2026 20:25
validate all response access as a generator can `None` during attack iteration in various ways

Signed-off-by: Jeffrey Martin <jemartin@nvidia.com>
@jmartin-tech jmartin-tech force-pushed the fix/atkgen-guard-none-response branch from 540a5da to 9016aaf Compare January 27, 2026 21:30
Comment on lines +236 to +239
# if response_to_store is None it will be coerced to "" on iteration hence the extra check
if (response_to_store == last_response) or (
len(last_response) == 0 and not response_to_store
):
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This revision was pointed out by tests, current expectation is to giveup when the first response results in an empty result from the target.

…plicit bool flag; stop conversation if generator throws Nones / other unprocessable emerges
@leondz
Copy link
Collaborator

leondz commented Jan 28, 2026

see jmartin-tech#1

Copy link
Collaborator

@erickgalinkin erickgalinkin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

el gtm

@leondz
Copy link
Collaborator

leondz commented Jan 28, 2026

"the go-to-market" from me too

@jmartin-tech jmartin-tech merged commit eb2e113 into NVIDIA:main Jan 28, 2026
15 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Jan 28, 2026
@jmartin-tech jmartin-tech deleted the fix/atkgen-guard-none-response branch January 29, 2026 16:08
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

bug Something isn't working bug-verified Bug that has been verified / reproduced quality-accuracy This affects result quality/reliability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants