BoostControlSpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)
Specification for custom ranking based on customer specified attribute value. It provides more controls for customized ranking than the simple (condition, boost) combination above.
Attributes |
|
---|---|
Name | Description |
field_name |
str
The name of the field whose value will be used to determine the boost amount. |
attribute_type |
google.cloud.discoveryengine_v1beta.types.SearchRequest.BoostSpec.ConditionBoostSpec.BoostControlSpec.AttributeType
The attribute type to be used to determine the boost amount. The attribute value can be derived from the field value of the specified field_name. In the case of numerical it is straightforward i.e. attribute_value = numerical_field_value. In the case of freshness however, attribute_value = (time.now() - datetime_field_value). |
interpolation_type |
google.cloud.discoveryengine_v1beta.types.SearchRequest.BoostSpec.ConditionBoostSpec.BoostControlSpec.InterpolationType
The interpolation type to be applied to connect the control points listed below. |
control_points |
MutableSequence[google.cloud.discoveryengine_v1beta.types.SearchRequest.BoostSpec.ConditionBoostSpec.BoostControlSpec.ControlPoint]
The control points used to define the curve. The monotonic function (defined through the interpolation_type above) passes through the control points listed here. |
Classes
AttributeType
AttributeType(value)
The attribute(or function) for which the custom ranking is to be applied.
Values:
ATTRIBUTE_TYPE_UNSPECIFIED (0):
Unspecified AttributeType.
NUMERICAL (1):
The value of the numerical field will be used to dynamically
update the boost amount. In this case, the attribute_value
(the x value) of the control point will be the actual value
of the numerical field for which the boost_amount is
specified.
FRESHNESS (2):
For the freshness use case the attribute value will be the
duration between the current time and the date in the
datetime field specified. The value must be formatted as an
XSD dayTimeDuration
value (a restricted subset of an ISO
8601 duration value). The pattern for this is:
[nD][T
nH][nM][nS]]
. E.g. 5D
, 3DT12H30M
,
T24H
.
ControlPoint
ControlPoint(mapping=None, *, ignore_unknown_fields=False, **kwargs)
The control points used to define the curve. The curve defined through these control points can only be monotonically increasing or decreasing(constant values are acceptable).
InterpolationType
InterpolationType(value)
The interpolation type to be applied. Default will be linear (Piecewise Linear).
Values: INTERPOLATION_TYPE_UNSPECIFIED (0): Interpolation type is unspecified. In this case, it defaults to Linear. LINEAR (1): Piecewise linear interpolation will be applied.