-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add trust_remote_code to load_context #12282
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Marc Romeyn <[email protected]>
Signed-off-by: marcromeyn <[email protected]>
Signed-off-by: Marc Romeyn <[email protected]>
config = SafeDeserialization( | ||
json_config, | ||
trust_remote_code=trust_remote_code, | ||
max_depth=max_depth, | ||
max_string_length=max_string_length, | ||
max_collection_size=max_collection_size, | ||
).result |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error
SafeDeserialization.__init__
|
||
def test_trusted_modules(self): | ||
"""Test that only trusted modules are allowed when trust_remote_code=False.""" | ||
policy = SafePyrefPolicy(trust_remote_code=False) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
SafePyrefPolicy.__init__
|
||
def test_blocked_modules(self): | ||
"""Test that blocked modules are always blocked, even in unsafe mode.""" | ||
policy = SafePyrefPolicy(trust_remote_code=True) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
SafePyrefPolicy.__init__
|
||
def test_dangerous_builtins(self): | ||
"""Test that dangerous builtins are always blocked.""" | ||
policy = SafePyrefPolicy(trust_remote_code=True) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
SafePyrefPolicy.__init__
return "Dangerous" | ||
|
||
dangerous_obj = DangerousClass() | ||
policy = SafePyrefPolicy(trust_remote_code=False) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
SafePyrefPolicy.__init__
def dangerous_function(): | ||
return "Dangerous" | ||
|
||
policy = SafePyrefPolicy(trust_remote_code=False) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
SafePyrefPolicy.__init__
self.__module__ = "os" | ||
|
||
obj = ModuleReferenceClass() | ||
policy = SafePyrefPolicy(trust_remote_code=False) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
SafePyrefPolicy.__init__
|
||
def test_security_violation_error(self): | ||
"""Test security violation error handling.""" | ||
policy = SafePyrefPolicy(trust_remote_code=False) |
Check failure
Code scanning / CodeQL
Wrong name for an argument in a class instantiation Error test
Important
The
Update branch
button must only be pressed in very rare occassions.An outdated branch is never blocking the merge of a PR.
Please reach out to the automation team before pressing that button.
What does this PR do ?
Add a one line overview of what this PR aims to accomplish.
Collection: [Note which collection this PR will affect]
Changelog
Usage
# Add a code snippet demonstrating how to use this
GitHub Actions CI
The Jenkins CI system has been replaced by GitHub Actions self-hosted runners.
The GitHub Actions CI will run automatically when the "Run CICD" label is added to the PR.
To re-run CI remove and add the label again.
To run CI on an untrusted fork, a NeMo user with write access must first click "Approve and run".
Before your PR is "Ready for review"
Pre checks:
PR Type:
If you haven't finished some of the above items you can still open "Draft" PR.
Who can review?
Anyone in the community is free to review the PR once the checks have passed.
Contributor guidelines contains specific people who can review PRs to various areas.
Additional Information