google-cloud-modelarmor 0.3.0__tar.gz → 0.5.0__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.
- {google_cloud_modelarmor-0.3.0/google_cloud_modelarmor.egg-info → google_cloud_modelarmor-0.5.0}/PKG-INFO +6 -8
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/README.rst +2 -2
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor/gapic_version.py +1 -1
- google_cloud_modelarmor-0.5.0/google/cloud/modelarmor_v1/__init__.py +223 -0
- {google_cloud_modelarmor-0.3.0/google/cloud/modelarmor_v1beta → google_cloud_modelarmor-0.5.0/google/cloud/modelarmor_v1}/gapic_version.py +1 -1
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/async_client.py +31 -17
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/client.py +69 -42
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/pagers.py +2 -2
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/transports/base.py +16 -7
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/transports/grpc.py +12 -8
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/transports/grpc_asyncio.py +11 -7
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/transports/rest.py +11 -7
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/transports/rest_base.py +1 -1
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/types/service.py +23 -8
- google_cloud_modelarmor-0.5.0/google/cloud/modelarmor_v1beta/__init__.py +223 -0
- {google_cloud_modelarmor-0.3.0/google/cloud/modelarmor_v1 → google_cloud_modelarmor-0.5.0/google/cloud/modelarmor_v1beta}/gapic_version.py +1 -1
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/async_client.py +31 -17
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/client.py +69 -42
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/pagers.py +2 -2
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/transports/base.py +16 -7
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/transports/grpc.py +12 -8
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/transports/grpc_asyncio.py +11 -7
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/transports/rest.py +11 -7
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/transports/rest_base.py +1 -1
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/types/service.py +23 -8
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0/google_cloud_modelarmor.egg-info}/PKG-INFO +6 -8
- google_cloud_modelarmor-0.5.0/google_cloud_modelarmor.egg-info/requires.txt +11 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/setup.py +3 -5
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/unit/gapic/modelarmor_v1/test_model_armor.py +504 -197
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/unit/gapic/modelarmor_v1beta/test_model_armor.py +504 -197
- google_cloud_modelarmor-0.3.0/google/cloud/modelarmor_v1/__init__.py +0 -118
- google_cloud_modelarmor-0.3.0/google/cloud/modelarmor_v1beta/__init__.py +0 -118
- google_cloud_modelarmor-0.3.0/google_cloud_modelarmor.egg-info/requires.txt +0 -11
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/LICENSE +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/MANIFEST.in +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor/py.typed +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/gapic_metadata.json +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/py.typed +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/services/model_armor/transports/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1/types/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/gapic_metadata.json +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/py.typed +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/services/model_armor/transports/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google/cloud/modelarmor_v1beta/types/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google_cloud_modelarmor.egg-info/SOURCES.txt +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google_cloud_modelarmor.egg-info/dependency_links.txt +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google_cloud_modelarmor.egg-info/not-zip-safe +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/google_cloud_modelarmor.egg-info/top_level.txt +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/setup.cfg +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/unit/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/unit/gapic/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/unit/gapic/modelarmor_v1/__init__.py +0 -0
- {google_cloud_modelarmor-0.3.0 → google_cloud_modelarmor-0.5.0}/tests/unit/gapic/modelarmor_v1beta/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: google-cloud-modelarmor
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.5.0
|
|
4
4
|
Summary: Google Cloud Modelarmor API client library
|
|
5
5
|
Home-page: https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-modelarmor
|
|
6
6
|
Author: Google LLC
|
|
@@ -12,8 +12,6 @@ Classifier: Intended Audience :: Developers
|
|
|
12
12
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
13
|
Classifier: Programming Language :: Python
|
|
14
14
|
Classifier: Programming Language :: Python :: 3
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
17
15
|
Classifier: Programming Language :: Python :: 3.9
|
|
18
16
|
Classifier: Programming Language :: Python :: 3.10
|
|
19
17
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -22,15 +20,15 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
22
20
|
Classifier: Programming Language :: Python :: 3.14
|
|
23
21
|
Classifier: Operating System :: OS Independent
|
|
24
22
|
Classifier: Topic :: Internet
|
|
25
|
-
Requires-Python: >=3.
|
|
23
|
+
Requires-Python: >=3.9
|
|
26
24
|
License-File: LICENSE
|
|
27
|
-
Requires-Dist: google-api-core[grpc]
|
|
25
|
+
Requires-Dist: google-api-core[grpc]<3.0.0,>=2.11.0
|
|
28
26
|
Requires-Dist: google-auth!=2.24.0,!=2.25.0,<3.0.0,>=2.14.1
|
|
29
27
|
Requires-Dist: grpcio<2.0.0,>=1.33.2
|
|
30
28
|
Requires-Dist: grpcio<2.0.0,>=1.75.1; python_version >= "3.14"
|
|
31
29
|
Requires-Dist: proto-plus<2.0.0,>=1.22.3
|
|
32
30
|
Requires-Dist: proto-plus<2.0.0,>=1.25.0; python_version >= "3.13"
|
|
33
|
-
Requires-Dist: protobuf
|
|
31
|
+
Requires-Dist: protobuf<8.0.0,>=4.25.8
|
|
34
32
|
Dynamic: author
|
|
35
33
|
Dynamic: author-email
|
|
36
34
|
Dynamic: classifier
|
|
@@ -106,14 +104,14 @@ Supported Python Versions
|
|
|
106
104
|
Our client libraries are compatible with all current `active`_ and `maintenance`_ versions of
|
|
107
105
|
Python.
|
|
108
106
|
|
|
109
|
-
Python >= 3.
|
|
107
|
+
Python >= 3.9, including 3.14
|
|
110
108
|
|
|
111
109
|
.. _active: https://devguide.python.org/devcycle/#in-development-main-branch
|
|
112
110
|
.. _maintenance: https://devguide.python.org/devcycle/#maintenance-branches
|
|
113
111
|
|
|
114
112
|
Unsupported Python Versions
|
|
115
113
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
116
|
-
Python <= 3.
|
|
114
|
+
Python <= 3.8
|
|
117
115
|
|
|
118
116
|
If you are using an `end-of-life`_
|
|
119
117
|
version of Python, we recommend that you update as soon as possible to an actively supported version.
|
|
@@ -61,14 +61,14 @@ Supported Python Versions
|
|
|
61
61
|
Our client libraries are compatible with all current `active`_ and `maintenance`_ versions of
|
|
62
62
|
Python.
|
|
63
63
|
|
|
64
|
-
Python >= 3.
|
|
64
|
+
Python >= 3.9, including 3.14
|
|
65
65
|
|
|
66
66
|
.. _active: https://devguide.python.org/devcycle/#in-development-main-branch
|
|
67
67
|
.. _maintenance: https://devguide.python.org/devcycle/#maintenance-branches
|
|
68
68
|
|
|
69
69
|
Unsupported Python Versions
|
|
70
70
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
71
|
-
Python <= 3.
|
|
71
|
+
Python <= 3.8
|
|
72
72
|
|
|
73
73
|
If you are using an `end-of-life`_
|
|
74
74
|
version of Python, we recommend that you update as soon as possible to an actively supported version.
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2025 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
import sys
|
|
17
|
+
|
|
18
|
+
import google.api_core as api_core
|
|
19
|
+
|
|
20
|
+
from google.cloud.modelarmor_v1 import gapic_version as package_version
|
|
21
|
+
|
|
22
|
+
__version__ = package_version.__version__
|
|
23
|
+
|
|
24
|
+
if sys.version_info >= (3, 8): # pragma: NO COVER
|
|
25
|
+
from importlib import metadata
|
|
26
|
+
else: # pragma: NO COVER
|
|
27
|
+
# TODO(https://github.com/googleapis/python-api-core/issues/835): Remove
|
|
28
|
+
# this code path once we drop support for Python 3.7
|
|
29
|
+
import importlib_metadata as metadata
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
from .services.model_armor import ModelArmorAsyncClient, ModelArmorClient
|
|
33
|
+
from .types.service import (
|
|
34
|
+
AiPlatformFloorSetting,
|
|
35
|
+
ByteDataItem,
|
|
36
|
+
CreateTemplateRequest,
|
|
37
|
+
CsamFilterResult,
|
|
38
|
+
DataItem,
|
|
39
|
+
DeleteTemplateRequest,
|
|
40
|
+
DetectionConfidenceLevel,
|
|
41
|
+
FilterConfig,
|
|
42
|
+
FilterExecutionState,
|
|
43
|
+
FilterMatchState,
|
|
44
|
+
FilterResult,
|
|
45
|
+
FloorSetting,
|
|
46
|
+
GetFloorSettingRequest,
|
|
47
|
+
GetTemplateRequest,
|
|
48
|
+
InvocationResult,
|
|
49
|
+
ListTemplatesRequest,
|
|
50
|
+
ListTemplatesResponse,
|
|
51
|
+
MaliciousUriFilterResult,
|
|
52
|
+
MaliciousUriFilterSettings,
|
|
53
|
+
MessageItem,
|
|
54
|
+
MultiLanguageDetectionMetadata,
|
|
55
|
+
PiAndJailbreakFilterResult,
|
|
56
|
+
PiAndJailbreakFilterSettings,
|
|
57
|
+
RaiFilterResult,
|
|
58
|
+
RaiFilterSettings,
|
|
59
|
+
RaiFilterType,
|
|
60
|
+
RangeInfo,
|
|
61
|
+
SanitizationResult,
|
|
62
|
+
SanitizeModelResponseRequest,
|
|
63
|
+
SanitizeModelResponseResponse,
|
|
64
|
+
SanitizeUserPromptRequest,
|
|
65
|
+
SanitizeUserPromptResponse,
|
|
66
|
+
SdpAdvancedConfig,
|
|
67
|
+
SdpBasicConfig,
|
|
68
|
+
SdpDeidentifyResult,
|
|
69
|
+
SdpFilterResult,
|
|
70
|
+
SdpFilterSettings,
|
|
71
|
+
SdpFinding,
|
|
72
|
+
SdpFindingLikelihood,
|
|
73
|
+
SdpInspectResult,
|
|
74
|
+
Template,
|
|
75
|
+
UpdateFloorSettingRequest,
|
|
76
|
+
UpdateTemplateRequest,
|
|
77
|
+
VirusDetail,
|
|
78
|
+
VirusScanFilterResult,
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
if hasattr(api_core, "check_python_version") and hasattr(
|
|
82
|
+
api_core, "check_dependency_versions"
|
|
83
|
+
): # pragma: NO COVER
|
|
84
|
+
api_core.check_python_version("google.cloud.modelarmor_v1") # type: ignore
|
|
85
|
+
api_core.check_dependency_versions("google.cloud.modelarmor_v1") # type: ignore
|
|
86
|
+
else: # pragma: NO COVER
|
|
87
|
+
# An older version of api_core is installed which does not define the
|
|
88
|
+
# functions above. We do equivalent checks manually.
|
|
89
|
+
try:
|
|
90
|
+
import sys
|
|
91
|
+
import warnings
|
|
92
|
+
|
|
93
|
+
_py_version_str = sys.version.split()[0]
|
|
94
|
+
_package_label = "google.cloud.modelarmor_v1"
|
|
95
|
+
if sys.version_info < (3, 9):
|
|
96
|
+
warnings.warn(
|
|
97
|
+
"You are using a non-supported Python version "
|
|
98
|
+
+ f"({_py_version_str}). Google will not post any further "
|
|
99
|
+
+ f"updates to {_package_label} supporting this Python version. "
|
|
100
|
+
+ "Please upgrade to the latest Python version, or at "
|
|
101
|
+
+ f"least to Python 3.9, and then update {_package_label}.",
|
|
102
|
+
FutureWarning,
|
|
103
|
+
)
|
|
104
|
+
if sys.version_info[:2] == (3, 9):
|
|
105
|
+
warnings.warn(
|
|
106
|
+
f"You are using a Python version ({_py_version_str}) "
|
|
107
|
+
+ f"which Google will stop supporting in {_package_label} in "
|
|
108
|
+
+ "January 2026. Please "
|
|
109
|
+
+ "upgrade to the latest Python version, or at "
|
|
110
|
+
+ "least to Python 3.10, before then, and "
|
|
111
|
+
+ f"then update {_package_label}.",
|
|
112
|
+
FutureWarning,
|
|
113
|
+
)
|
|
114
|
+
|
|
115
|
+
def parse_version_to_tuple(version_string: str):
|
|
116
|
+
"""Safely converts a semantic version string to a comparable tuple of integers.
|
|
117
|
+
Example: "4.25.8" -> (4, 25, 8)
|
|
118
|
+
Ignores non-numeric parts and handles common version formats.
|
|
119
|
+
Args:
|
|
120
|
+
version_string: Version string in the format "x.y.z" or "x.y.z<suffix>"
|
|
121
|
+
Returns:
|
|
122
|
+
Tuple of integers for the parsed version string.
|
|
123
|
+
"""
|
|
124
|
+
parts = []
|
|
125
|
+
for part in version_string.split("."):
|
|
126
|
+
try:
|
|
127
|
+
parts.append(int(part))
|
|
128
|
+
except ValueError:
|
|
129
|
+
# If it's a non-numeric part (e.g., '1.0.0b1' -> 'b1'), stop here.
|
|
130
|
+
# This is a simplification compared to 'packaging.parse_version', but sufficient
|
|
131
|
+
# for comparing strictly numeric semantic versions.
|
|
132
|
+
break
|
|
133
|
+
return tuple(parts)
|
|
134
|
+
|
|
135
|
+
def _get_version(dependency_name):
|
|
136
|
+
try:
|
|
137
|
+
version_string: str = metadata.version(dependency_name)
|
|
138
|
+
parsed_version = parse_version_to_tuple(version_string)
|
|
139
|
+
return (parsed_version, version_string)
|
|
140
|
+
except Exception:
|
|
141
|
+
# Catch exceptions from metadata.version() (e.g., PackageNotFoundError)
|
|
142
|
+
# or errors during parse_version_to_tuple
|
|
143
|
+
return (None, "--")
|
|
144
|
+
|
|
145
|
+
_dependency_package = "google.protobuf"
|
|
146
|
+
_next_supported_version = "4.25.8"
|
|
147
|
+
_next_supported_version_tuple = (4, 25, 8)
|
|
148
|
+
_recommendation = " (we recommend 6.x)"
|
|
149
|
+
(_version_used, _version_used_string) = _get_version(_dependency_package)
|
|
150
|
+
if _version_used and _version_used < _next_supported_version_tuple:
|
|
151
|
+
warnings.warn(
|
|
152
|
+
f"Package {_package_label} depends on "
|
|
153
|
+
+ f"{_dependency_package}, currently installed at version "
|
|
154
|
+
+ f"{_version_used_string}. Future updates to "
|
|
155
|
+
+ f"{_package_label} will require {_dependency_package} at "
|
|
156
|
+
+ f"version {_next_supported_version} or higher{_recommendation}."
|
|
157
|
+
+ " Please ensure "
|
|
158
|
+
+ "that either (a) your Python environment doesn't pin the "
|
|
159
|
+
+ f"version of {_dependency_package}, so that updates to "
|
|
160
|
+
+ f"{_package_label} can require the higher version, or "
|
|
161
|
+
+ "(b) you manually update your Python environment to use at "
|
|
162
|
+
+ f"least version {_next_supported_version} of "
|
|
163
|
+
+ f"{_dependency_package}.",
|
|
164
|
+
FutureWarning,
|
|
165
|
+
)
|
|
166
|
+
except Exception:
|
|
167
|
+
warnings.warn(
|
|
168
|
+
"Could not determine the version of Python "
|
|
169
|
+
+ "currently being used. To continue receiving "
|
|
170
|
+
+ "updates for {_package_label}, ensure you are "
|
|
171
|
+
+ "using a supported version of Python; see "
|
|
172
|
+
+ "https://devguide.python.org/versions/"
|
|
173
|
+
)
|
|
174
|
+
|
|
175
|
+
__all__ = (
|
|
176
|
+
"ModelArmorAsyncClient",
|
|
177
|
+
"AiPlatformFloorSetting",
|
|
178
|
+
"ByteDataItem",
|
|
179
|
+
"CreateTemplateRequest",
|
|
180
|
+
"CsamFilterResult",
|
|
181
|
+
"DataItem",
|
|
182
|
+
"DeleteTemplateRequest",
|
|
183
|
+
"DetectionConfidenceLevel",
|
|
184
|
+
"FilterConfig",
|
|
185
|
+
"FilterExecutionState",
|
|
186
|
+
"FilterMatchState",
|
|
187
|
+
"FilterResult",
|
|
188
|
+
"FloorSetting",
|
|
189
|
+
"GetFloorSettingRequest",
|
|
190
|
+
"GetTemplateRequest",
|
|
191
|
+
"InvocationResult",
|
|
192
|
+
"ListTemplatesRequest",
|
|
193
|
+
"ListTemplatesResponse",
|
|
194
|
+
"MaliciousUriFilterResult",
|
|
195
|
+
"MaliciousUriFilterSettings",
|
|
196
|
+
"MessageItem",
|
|
197
|
+
"ModelArmorClient",
|
|
198
|
+
"MultiLanguageDetectionMetadata",
|
|
199
|
+
"PiAndJailbreakFilterResult",
|
|
200
|
+
"PiAndJailbreakFilterSettings",
|
|
201
|
+
"RaiFilterResult",
|
|
202
|
+
"RaiFilterSettings",
|
|
203
|
+
"RaiFilterType",
|
|
204
|
+
"RangeInfo",
|
|
205
|
+
"SanitizationResult",
|
|
206
|
+
"SanitizeModelResponseRequest",
|
|
207
|
+
"SanitizeModelResponseResponse",
|
|
208
|
+
"SanitizeUserPromptRequest",
|
|
209
|
+
"SanitizeUserPromptResponse",
|
|
210
|
+
"SdpAdvancedConfig",
|
|
211
|
+
"SdpBasicConfig",
|
|
212
|
+
"SdpDeidentifyResult",
|
|
213
|
+
"SdpFilterResult",
|
|
214
|
+
"SdpFilterSettings",
|
|
215
|
+
"SdpFinding",
|
|
216
|
+
"SdpFindingLikelihood",
|
|
217
|
+
"SdpInspectResult",
|
|
218
|
+
"Template",
|
|
219
|
+
"UpdateFloorSettingRequest",
|
|
220
|
+
"UpdateTemplateRequest",
|
|
221
|
+
"VirusDetail",
|
|
222
|
+
"VirusScanFilterResult",
|
|
223
|
+
)
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
# See the License for the specific language governing permissions and
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
#
|
|
16
|
-
from collections import OrderedDict
|
|
17
16
|
import logging as std_logging
|
|
18
17
|
import re
|
|
18
|
+
from collections import OrderedDict
|
|
19
19
|
from typing import (
|
|
20
20
|
Callable,
|
|
21
21
|
Dict,
|
|
@@ -29,13 +29,13 @@ from typing import (
|
|
|
29
29
|
Union,
|
|
30
30
|
)
|
|
31
31
|
|
|
32
|
+
import google.protobuf
|
|
32
33
|
from google.api_core import exceptions as core_exceptions
|
|
33
34
|
from google.api_core import gapic_v1
|
|
34
35
|
from google.api_core import retry_async as retries
|
|
35
36
|
from google.api_core.client_options import ClientOptions
|
|
36
37
|
from google.auth import credentials as ga_credentials # type: ignore
|
|
37
38
|
from google.oauth2 import service_account # type: ignore
|
|
38
|
-
import google.protobuf
|
|
39
39
|
|
|
40
40
|
from google.cloud.modelarmor_v1 import gapic_version as package_version
|
|
41
41
|
|
|
@@ -44,9 +44,9 @@ try:
|
|
|
44
44
|
except AttributeError: # pragma: NO COVER
|
|
45
45
|
OptionalRetry = Union[retries.AsyncRetry, object, None] # type: ignore
|
|
46
46
|
|
|
47
|
+
import google.protobuf.field_mask_pb2 as field_mask_pb2 # type: ignore
|
|
48
|
+
import google.protobuf.timestamp_pb2 as timestamp_pb2 # type: ignore
|
|
47
49
|
from google.cloud.location import locations_pb2 # type: ignore
|
|
48
|
-
from google.protobuf import field_mask_pb2 # type: ignore
|
|
49
|
-
from google.protobuf import timestamp_pb2 # type: ignore
|
|
50
50
|
|
|
51
51
|
from google.cloud.modelarmor_v1.services.model_armor import pagers
|
|
52
52
|
from google.cloud.modelarmor_v1.types import service
|
|
@@ -113,7 +113,10 @@ class ModelArmorAsyncClient:
|
|
|
113
113
|
Returns:
|
|
114
114
|
ModelArmorAsyncClient: The constructed client.
|
|
115
115
|
"""
|
|
116
|
-
|
|
116
|
+
sa_info_func = (
|
|
117
|
+
ModelArmorClient.from_service_account_info.__func__ # type: ignore
|
|
118
|
+
)
|
|
119
|
+
return sa_info_func(ModelArmorAsyncClient, info, *args, **kwargs)
|
|
117
120
|
|
|
118
121
|
@classmethod
|
|
119
122
|
def from_service_account_file(cls, filename: str, *args, **kwargs):
|
|
@@ -129,7 +132,10 @@ class ModelArmorAsyncClient:
|
|
|
129
132
|
Returns:
|
|
130
133
|
ModelArmorAsyncClient: The constructed client.
|
|
131
134
|
"""
|
|
132
|
-
|
|
135
|
+
sa_file_func = (
|
|
136
|
+
ModelArmorClient.from_service_account_file.__func__ # type: ignore
|
|
137
|
+
)
|
|
138
|
+
return sa_file_func(ModelArmorAsyncClient, filename, *args, **kwargs)
|
|
133
139
|
|
|
134
140
|
from_service_account_json = from_service_account_file
|
|
135
141
|
|
|
@@ -179,7 +185,7 @@ class ModelArmorAsyncClient:
|
|
|
179
185
|
return self._client.transport
|
|
180
186
|
|
|
181
187
|
@property
|
|
182
|
-
def api_endpoint(self):
|
|
188
|
+
def api_endpoint(self) -> str:
|
|
183
189
|
"""Return the API endpoint used by the client instance.
|
|
184
190
|
|
|
185
191
|
Returns:
|
|
@@ -1276,7 +1282,7 @@ class ModelArmorAsyncClient:
|
|
|
1276
1282
|
|
|
1277
1283
|
async def get_location(
|
|
1278
1284
|
self,
|
|
1279
|
-
request: Optional[locations_pb2.GetLocationRequest] = None,
|
|
1285
|
+
request: Optional[Union[locations_pb2.GetLocationRequest, dict]] = None,
|
|
1280
1286
|
*,
|
|
1281
1287
|
retry: OptionalRetry = gapic_v1.method.DEFAULT,
|
|
1282
1288
|
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
|
|
@@ -1302,8 +1308,12 @@ class ModelArmorAsyncClient:
|
|
|
1302
1308
|
# Create or coerce a protobuf request object.
|
|
1303
1309
|
# The request isn't a proto-plus wrapped type,
|
|
1304
1310
|
# so it must be constructed via keyword expansion.
|
|
1305
|
-
if
|
|
1306
|
-
|
|
1311
|
+
if request is None:
|
|
1312
|
+
request_pb = locations_pb2.GetLocationRequest()
|
|
1313
|
+
elif isinstance(request, dict):
|
|
1314
|
+
request_pb = locations_pb2.GetLocationRequest(**request)
|
|
1315
|
+
else:
|
|
1316
|
+
request_pb = request
|
|
1307
1317
|
|
|
1308
1318
|
# Wrap the RPC method; this adds retry and timeout information,
|
|
1309
1319
|
# and friendly error handling.
|
|
@@ -1312,7 +1322,7 @@ class ModelArmorAsyncClient:
|
|
|
1312
1322
|
# Certain fields should be provided within the metadata header;
|
|
1313
1323
|
# add these here.
|
|
1314
1324
|
metadata = tuple(metadata) + (
|
|
1315
|
-
gapic_v1.routing_header.to_grpc_metadata((("name",
|
|
1325
|
+
gapic_v1.routing_header.to_grpc_metadata((("name", request_pb.name),)),
|
|
1316
1326
|
)
|
|
1317
1327
|
|
|
1318
1328
|
# Validate the universe domain.
|
|
@@ -1320,7 +1330,7 @@ class ModelArmorAsyncClient:
|
|
|
1320
1330
|
|
|
1321
1331
|
# Send the request.
|
|
1322
1332
|
response = await rpc(
|
|
1323
|
-
|
|
1333
|
+
request_pb,
|
|
1324
1334
|
retry=retry,
|
|
1325
1335
|
timeout=timeout,
|
|
1326
1336
|
metadata=metadata,
|
|
@@ -1331,7 +1341,7 @@ class ModelArmorAsyncClient:
|
|
|
1331
1341
|
|
|
1332
1342
|
async def list_locations(
|
|
1333
1343
|
self,
|
|
1334
|
-
request: Optional[locations_pb2.ListLocationsRequest] = None,
|
|
1344
|
+
request: Optional[Union[locations_pb2.ListLocationsRequest, dict]] = None,
|
|
1335
1345
|
*,
|
|
1336
1346
|
retry: OptionalRetry = gapic_v1.method.DEFAULT,
|
|
1337
1347
|
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
|
|
@@ -1357,8 +1367,12 @@ class ModelArmorAsyncClient:
|
|
|
1357
1367
|
# Create or coerce a protobuf request object.
|
|
1358
1368
|
# The request isn't a proto-plus wrapped type,
|
|
1359
1369
|
# so it must be constructed via keyword expansion.
|
|
1360
|
-
if
|
|
1361
|
-
|
|
1370
|
+
if request is None:
|
|
1371
|
+
request_pb = locations_pb2.ListLocationsRequest()
|
|
1372
|
+
elif isinstance(request, dict):
|
|
1373
|
+
request_pb = locations_pb2.ListLocationsRequest(**request)
|
|
1374
|
+
else:
|
|
1375
|
+
request_pb = request
|
|
1362
1376
|
|
|
1363
1377
|
# Wrap the RPC method; this adds retry and timeout information,
|
|
1364
1378
|
# and friendly error handling.
|
|
@@ -1367,7 +1381,7 @@ class ModelArmorAsyncClient:
|
|
|
1367
1381
|
# Certain fields should be provided within the metadata header;
|
|
1368
1382
|
# add these here.
|
|
1369
1383
|
metadata = tuple(metadata) + (
|
|
1370
|
-
gapic_v1.routing_header.to_grpc_metadata((("name",
|
|
1384
|
+
gapic_v1.routing_header.to_grpc_metadata((("name", request_pb.name),)),
|
|
1371
1385
|
)
|
|
1372
1386
|
|
|
1373
1387
|
# Validate the universe domain.
|
|
@@ -1375,7 +1389,7 @@ class ModelArmorAsyncClient:
|
|
|
1375
1389
|
|
|
1376
1390
|
# Send the request.
|
|
1377
1391
|
response = await rpc(
|
|
1378
|
-
|
|
1392
|
+
request_pb,
|
|
1379
1393
|
retry=retry,
|
|
1380
1394
|
timeout=timeout,
|
|
1381
1395
|
metadata=metadata,
|