tencentcloud-sdk-python-waf 3.1.93__tar.gz → 3.1.94__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 (17) hide show
  1. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/PKG-INFO +2 -2
  2. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/setup.py +1 -1
  3. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/__init__.py +1 -1
  4. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/waf/v20180125/models.py +316 -0
  5. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/waf/v20180125/waf_client.py +23 -0
  6. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/waf/v20180125/waf_client_async.py +18 -0
  7. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud_sdk_python_waf.egg-info/PKG-INFO +2 -2
  8. tencentcloud_sdk_python_waf-3.1.94/tencentcloud_sdk_python_waf.egg-info/requires.txt +1 -0
  9. tencentcloud_sdk_python_waf-3.1.93/tencentcloud_sdk_python_waf.egg-info/requires.txt +0 -1
  10. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/README.rst +0 -0
  11. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/setup.cfg +0 -0
  12. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/waf/__init__.py +0 -0
  13. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/waf/v20180125/__init__.py +0 -0
  14. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud/waf/v20180125/errorcodes.py +0 -0
  15. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud_sdk_python_waf.egg-info/SOURCES.txt +0 -0
  16. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud_sdk_python_waf.egg-info/dependency_links.txt +0 -0
  17. {tencentcloud_sdk_python_waf-3.1.93 → tencentcloud_sdk_python_waf-3.1.94}/tencentcloud_sdk_python_waf.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tencentcloud-sdk-python-waf
3
- Version: 3.1.93
3
+ Version: 3.1.94
4
4
  Summary: Tencent Cloud Waf SDK for Python
5
5
  Home-page: https://github.com/TencentCloud/tencentcloud-sdk-python
6
6
  Author: Tencent Cloud
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 2.7
15
15
  Classifier: Programming Language :: Python :: 3
16
16
  Classifier: Programming Language :: Python :: 3.6
17
17
  Classifier: Programming Language :: Python :: 3.7
18
- Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.93
18
+ Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.94
19
19
 
20
20
  ============================
21
21
  Tencent Cloud SDK for Python
@@ -8,7 +8,7 @@ ROOT = os.path.dirname(__file__)
8
8
 
9
9
  setup(
10
10
  name='tencentcloud-sdk-python-waf',
11
- install_requires=["tencentcloud-sdk-python-common>=3.1.93,<4.0.0"],
11
+ install_requires=["tencentcloud-sdk-python-common>=3.1.94,<4.0.0"],
12
12
 
13
13
  version=tencentcloud.__version__,
14
14
  description='Tencent Cloud Waf SDK for Python',
@@ -14,4 +14,4 @@
14
14
  # limitations under the License.
15
15
 
16
16
 
17
- __version__ = '3.1.93'
17
+ __version__ = '3.1.94'
@@ -4013,6 +4013,42 @@ class ApiDetailSampleHistory(AbstractModel):
4013
4013
 
4014
4014
 
4015
4015
 
4016
+ class ApiGuardContent(AbstractModel):
4017
+ r"""guard content
4018
+
4019
+ """
4020
+
4021
+ def __init__(self):
4022
+ r"""
4023
+ :param _Prompt: <p>prompt</p>
4024
+ :type Prompt: str
4025
+ """
4026
+ self._Prompt = None
4027
+
4028
+ @property
4029
+ def Prompt(self):
4030
+ r"""<p>prompt</p>
4031
+ :rtype: str
4032
+ """
4033
+ return self._Prompt
4034
+
4035
+ @Prompt.setter
4036
+ def Prompt(self, Prompt):
4037
+ self._Prompt = Prompt
4038
+
4039
+
4040
+ def _deserialize(self, params):
4041
+ self._Prompt = params.get("Prompt")
4042
+ memeber_set = set(params.keys())
4043
+ for name, value in vars(self).items():
4044
+ property_name = name[1:]
4045
+ if property_name in memeber_set:
4046
+ memeber_set.remove(property_name)
4047
+ if len(memeber_set) > 0:
4048
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
4049
+
4050
+
4051
+
4016
4052
  class ApiNameMethod(AbstractModel):
4017
4053
  r"""带有请求方式的apiname结构体
4018
4054
 
@@ -10765,6 +10801,87 @@ class CdcRegion(AbstractModel):
10765
10801
 
10766
10802
 
10767
10803
 
10804
+ class ClawRiskItem(AbstractModel):
10805
+ r"""ClawRiskItem
10806
+
10807
+ """
10808
+
10809
+ def __init__(self):
10810
+ r"""
10811
+ :param _RiskType: 风险类别
10812
+ :type RiskType: str
10813
+ :param _RuleId: 规则id
10814
+ :type RuleId: str
10815
+ :param _RuleName: 规则名称
10816
+ :type RuleName: str
10817
+ :param _Score: 分数
10818
+ :type Score: float
10819
+ """
10820
+ self._RiskType = None
10821
+ self._RuleId = None
10822
+ self._RuleName = None
10823
+ self._Score = None
10824
+
10825
+ @property
10826
+ def RiskType(self):
10827
+ r"""风险类别
10828
+ :rtype: str
10829
+ """
10830
+ return self._RiskType
10831
+
10832
+ @RiskType.setter
10833
+ def RiskType(self, RiskType):
10834
+ self._RiskType = RiskType
10835
+
10836
+ @property
10837
+ def RuleId(self):
10838
+ r"""规则id
10839
+ :rtype: str
10840
+ """
10841
+ return self._RuleId
10842
+
10843
+ @RuleId.setter
10844
+ def RuleId(self, RuleId):
10845
+ self._RuleId = RuleId
10846
+
10847
+ @property
10848
+ def RuleName(self):
10849
+ r"""规则名称
10850
+ :rtype: str
10851
+ """
10852
+ return self._RuleName
10853
+
10854
+ @RuleName.setter
10855
+ def RuleName(self, RuleName):
10856
+ self._RuleName = RuleName
10857
+
10858
+ @property
10859
+ def Score(self):
10860
+ r"""分数
10861
+ :rtype: float
10862
+ """
10863
+ return self._Score
10864
+
10865
+ @Score.setter
10866
+ def Score(self, Score):
10867
+ self._Score = Score
10868
+
10869
+
10870
+ def _deserialize(self, params):
10871
+ self._RiskType = params.get("RiskType")
10872
+ self._RuleId = params.get("RuleId")
10873
+ self._RuleName = params.get("RuleName")
10874
+ self._Score = params.get("Score")
10875
+ memeber_set = set(params.keys())
10876
+ for name, value in vars(self).items():
10877
+ property_name = name[1:]
10878
+ if property_name in memeber_set:
10879
+ memeber_set.remove(property_name)
10880
+ if len(memeber_set) > 0:
10881
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
10882
+
10883
+
10884
+
10768
10885
  class ClbDomainsInfo(AbstractModel):
10769
10886
  r"""负载均衡型WAF域名详情
10770
10887
 
@@ -28056,6 +28173,164 @@ class DescribeProtectionModesResponse(AbstractModel):
28056
28173
  self._RequestId = params.get("RequestId")
28057
28174
 
28058
28175
 
28176
+ class DescribeQClawContentSecCheckRequest(AbstractModel):
28177
+ r"""DescribeQClawContentSecCheck请求参数结构体
28178
+
28179
+ """
28180
+
28181
+ def __init__(self):
28182
+ r"""
28183
+ :param _ServiceId: <p>服务id,使用哪一套防护策略,就需要传哪一套服务id,模型会检测该服务id下的所有规则</p>
28184
+ :type ServiceId: str
28185
+ :param _Content: <p>要审核的内容</p>
28186
+ :type Content: :class:`tencentcloud.waf.v20180125.models.ApiGuardContent`
28187
+ :param _UserId: <p>标识用户的id,限速使用,不填,则限速会不生效</p>
28188
+ :type UserId: str
28189
+ :param _SessionId: <p>会话id</p>
28190
+ :type SessionId: str
28191
+ :param _ToolName: <p>toolcall工具名称</p>
28192
+ :type ToolName: str
28193
+ :param _ToolArgs: <p>toolcall工具执行的参数</p>
28194
+ :type ToolArgs: str
28195
+ """
28196
+ self._ServiceId = None
28197
+ self._Content = None
28198
+ self._UserId = None
28199
+ self._SessionId = None
28200
+ self._ToolName = None
28201
+ self._ToolArgs = None
28202
+
28203
+ @property
28204
+ def ServiceId(self):
28205
+ r"""<p>服务id,使用哪一套防护策略,就需要传哪一套服务id,模型会检测该服务id下的所有规则</p>
28206
+ :rtype: str
28207
+ """
28208
+ return self._ServiceId
28209
+
28210
+ @ServiceId.setter
28211
+ def ServiceId(self, ServiceId):
28212
+ self._ServiceId = ServiceId
28213
+
28214
+ @property
28215
+ def Content(self):
28216
+ r"""<p>要审核的内容</p>
28217
+ :rtype: :class:`tencentcloud.waf.v20180125.models.ApiGuardContent`
28218
+ """
28219
+ return self._Content
28220
+
28221
+ @Content.setter
28222
+ def Content(self, Content):
28223
+ self._Content = Content
28224
+
28225
+ @property
28226
+ def UserId(self):
28227
+ r"""<p>标识用户的id,限速使用,不填,则限速会不生效</p>
28228
+ :rtype: str
28229
+ """
28230
+ return self._UserId
28231
+
28232
+ @UserId.setter
28233
+ def UserId(self, UserId):
28234
+ self._UserId = UserId
28235
+
28236
+ @property
28237
+ def SessionId(self):
28238
+ r"""<p>会话id</p>
28239
+ :rtype: str
28240
+ """
28241
+ return self._SessionId
28242
+
28243
+ @SessionId.setter
28244
+ def SessionId(self, SessionId):
28245
+ self._SessionId = SessionId
28246
+
28247
+ @property
28248
+ def ToolName(self):
28249
+ r"""<p>toolcall工具名称</p>
28250
+ :rtype: str
28251
+ """
28252
+ return self._ToolName
28253
+
28254
+ @ToolName.setter
28255
+ def ToolName(self, ToolName):
28256
+ self._ToolName = ToolName
28257
+
28258
+ @property
28259
+ def ToolArgs(self):
28260
+ r"""<p>toolcall工具执行的参数</p>
28261
+ :rtype: str
28262
+ """
28263
+ return self._ToolArgs
28264
+
28265
+ @ToolArgs.setter
28266
+ def ToolArgs(self, ToolArgs):
28267
+ self._ToolArgs = ToolArgs
28268
+
28269
+
28270
+ def _deserialize(self, params):
28271
+ self._ServiceId = params.get("ServiceId")
28272
+ if params.get("Content") is not None:
28273
+ self._Content = ApiGuardContent()
28274
+ self._Content._deserialize(params.get("Content"))
28275
+ self._UserId = params.get("UserId")
28276
+ self._SessionId = params.get("SessionId")
28277
+ self._ToolName = params.get("ToolName")
28278
+ self._ToolArgs = params.get("ToolArgs")
28279
+ memeber_set = set(params.keys())
28280
+ for name, value in vars(self).items():
28281
+ property_name = name[1:]
28282
+ if property_name in memeber_set:
28283
+ memeber_set.remove(property_name)
28284
+ if len(memeber_set) > 0:
28285
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
28286
+
28287
+
28288
+
28289
+ class DescribeQClawContentSecCheckResponse(AbstractModel):
28290
+ r"""DescribeQClawContentSecCheck返回参数结构体
28291
+
28292
+ """
28293
+
28294
+ def __init__(self):
28295
+ r"""
28296
+ :param _Data: <p>检测结果</p>
28297
+ :type Data: :class:`tencentcloud.waf.v20180125.models.LLMRisks`
28298
+ :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
28299
+ :type RequestId: str
28300
+ """
28301
+ self._Data = None
28302
+ self._RequestId = None
28303
+
28304
+ @property
28305
+ def Data(self):
28306
+ r"""<p>检测结果</p>
28307
+ :rtype: :class:`tencentcloud.waf.v20180125.models.LLMRisks`
28308
+ """
28309
+ return self._Data
28310
+
28311
+ @Data.setter
28312
+ def Data(self, Data):
28313
+ self._Data = Data
28314
+
28315
+ @property
28316
+ def RequestId(self):
28317
+ r"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
28318
+ :rtype: str
28319
+ """
28320
+ return self._RequestId
28321
+
28322
+ @RequestId.setter
28323
+ def RequestId(self, RequestId):
28324
+ self._RequestId = RequestId
28325
+
28326
+
28327
+ def _deserialize(self, params):
28328
+ if params.get("Data") is not None:
28329
+ self._Data = LLMRisks()
28330
+ self._Data._deserialize(params.get("Data"))
28331
+ self._RequestId = params.get("RequestId")
28332
+
28333
+
28059
28334
  class DescribeRateLimitsV2Request(AbstractModel):
28060
28335
  r"""DescribeRateLimitsV2请求参数结构体
28061
28336
 
@@ -39747,6 +40022,47 @@ class LLMPkg(AbstractModel):
39747
40022
 
39748
40023
 
39749
40024
 
40025
+ class LLMRisks(AbstractModel):
40026
+ r"""LLMRisks
40027
+
40028
+ """
40029
+
40030
+ def __init__(self):
40031
+ r"""
40032
+ :param _Risks: 分数
40033
+ :type Risks: list of ClawRiskItem
40034
+ """
40035
+ self._Risks = None
40036
+
40037
+ @property
40038
+ def Risks(self):
40039
+ r"""分数
40040
+ :rtype: list of ClawRiskItem
40041
+ """
40042
+ return self._Risks
40043
+
40044
+ @Risks.setter
40045
+ def Risks(self, Risks):
40046
+ self._Risks = Risks
40047
+
40048
+
40049
+ def _deserialize(self, params):
40050
+ if params.get("Risks") is not None:
40051
+ self._Risks = []
40052
+ for item in params.get("Risks"):
40053
+ obj = ClawRiskItem()
40054
+ obj._deserialize(item)
40055
+ self._Risks.append(obj)
40056
+ memeber_set = set(params.keys())
40057
+ for name, value in vars(self).items():
40058
+ property_name = name[1:]
40059
+ if property_name in memeber_set:
40060
+ memeber_set.remove(property_name)
40061
+ if len(memeber_set) > 0:
40062
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
40063
+
40064
+
40065
+
39750
40066
  class LLMSensitiveValueLevel(AbstractModel):
39751
40067
  r"""涉敏信息结果结构体
39752
40068
 
@@ -2579,6 +2579,29 @@ class WafClient(AbstractClient):
2579
2579
  raise TencentCloudSDKException(type(e).__name__, str(e))
2580
2580
 
2581
2581
 
2582
+ def DescribeQClawContentSecCheck(self, request):
2583
+ r"""大模型请求内容和响应内容审核接口
2584
+
2585
+ :param request: Request instance for DescribeQClawContentSecCheck.
2586
+ :type request: :class:`tencentcloud.waf.v20180125.models.DescribeQClawContentSecCheckRequest`
2587
+ :rtype: :class:`tencentcloud.waf.v20180125.models.DescribeQClawContentSecCheckResponse`
2588
+
2589
+ """
2590
+ try:
2591
+ params = request._serialize()
2592
+ headers = request.headers
2593
+ body = self.call("DescribeQClawContentSecCheck", params, headers=headers)
2594
+ response = json.loads(body)
2595
+ model = models.DescribeQClawContentSecCheckResponse()
2596
+ model._deserialize(response["Response"])
2597
+ return model
2598
+ except Exception as e:
2599
+ if isinstance(e, TencentCloudSDKException):
2600
+ raise
2601
+ else:
2602
+ raise TencentCloudSDKException(type(e).__name__, str(e))
2603
+
2604
+
2582
2605
  def DescribeRateLimitsV2(self, request):
2583
2606
  r"""查询限流规则列表接口
2584
2607
 
@@ -2023,6 +2023,24 @@ class WafClient(AbstractClient):
2023
2023
 
2024
2024
  return await self.call_and_deserialize(**kwargs)
2025
2025
 
2026
+ async def DescribeQClawContentSecCheck(
2027
+ self,
2028
+ request: models.DescribeQClawContentSecCheckRequest,
2029
+ opts: Dict = None,
2030
+ ) -> models.DescribeQClawContentSecCheckResponse:
2031
+ """
2032
+ 大模型请求内容和响应内容审核接口
2033
+ """
2034
+
2035
+ kwargs = {}
2036
+ kwargs["action"] = "DescribeQClawContentSecCheck"
2037
+ kwargs["params"] = request._serialize()
2038
+ kwargs["resp_cls"] = models.DescribeQClawContentSecCheckResponse
2039
+ kwargs["headers"] = request.headers
2040
+ kwargs["opts"] = opts or {}
2041
+
2042
+ return await self.call_and_deserialize(**kwargs)
2043
+
2026
2044
  async def DescribeRateLimitsV2(
2027
2045
  self,
2028
2046
  request: models.DescribeRateLimitsV2Request,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tencentcloud-sdk-python-waf
3
- Version: 3.1.93
3
+ Version: 3.1.94
4
4
  Summary: Tencent Cloud Waf SDK for Python
5
5
  Home-page: https://github.com/TencentCloud/tencentcloud-sdk-python
6
6
  Author: Tencent Cloud
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 2.7
15
15
  Classifier: Programming Language :: Python :: 3
16
16
  Classifier: Programming Language :: Python :: 3.6
17
17
  Classifier: Programming Language :: Python :: 3.7
18
- Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.93
18
+ Requires-Dist: tencentcloud-sdk-python-common<4.0.0,>=3.1.94
19
19
 
20
20
  ============================
21
21
  Tencent Cloud SDK for Python
@@ -0,0 +1 @@
1
+ tencentcloud-sdk-python-common<4.0.0,>=3.1.94
@@ -1 +0,0 @@
1
- tencentcloud-sdk-python-common<4.0.0,>=3.1.93