public static interface ByteplusSaasRetail.ProductOrBuilder
extends com.google.protobuf.MessageOrBuilder
String getProductId()
Required. The unique identifier for the product. [link to best practices on deciding product ids](./ways-to-improve-recommendation-performance)
string product_id = 1;com.google.protobuf.ByteString getProductIdBytes()
Required. The unique identifier for the product. [link to best practices on deciding product ids](./ways-to-improve-recommendation-performance)
string product_id = 1;List<ByteplusSaasRetail.Product.Category> getCategoriesList()
Required.
The categorical information of the product.
Missing this will significantly hurt the performance.
For example, if a product has "Shoes -> Men's Shoes -> Basketball Shoes"
This should be:
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's Shoes"}] },
{"category_depth":3,
"category_nodes": [{"id_or_name":"Basketball Shoes"}] },
]
If a product belongs to 2 different categories,
"Shoes -> Men's shoes" and "Sports -> Basketball"
then
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"},
{"id_or_name":"Sports"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's shoes"},
{"id_or_name":"Basketball"}] },
]
repeated .bytedance.byteplus.rec.retail.Product.Category categories = 2;ByteplusSaasRetail.Product.Category getCategories(int index)
Required.
The categorical information of the product.
Missing this will significantly hurt the performance.
For example, if a product has "Shoes -> Men's Shoes -> Basketball Shoes"
This should be:
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's Shoes"}] },
{"category_depth":3,
"category_nodes": [{"id_or_name":"Basketball Shoes"}] },
]
If a product belongs to 2 different categories,
"Shoes -> Men's shoes" and "Sports -> Basketball"
then
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"},
{"id_or_name":"Sports"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's shoes"},
{"id_or_name":"Basketball"}] },
]
repeated .bytedance.byteplus.rec.retail.Product.Category categories = 2;int getCategoriesCount()
Required.
The categorical information of the product.
Missing this will significantly hurt the performance.
For example, if a product has "Shoes -> Men's Shoes -> Basketball Shoes"
This should be:
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's Shoes"}] },
{"category_depth":3,
"category_nodes": [{"id_or_name":"Basketball Shoes"}] },
]
If a product belongs to 2 different categories,
"Shoes -> Men's shoes" and "Sports -> Basketball"
then
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"},
{"id_or_name":"Sports"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's shoes"},
{"id_or_name":"Basketball"}] },
]
repeated .bytedance.byteplus.rec.retail.Product.Category categories = 2;List<? extends ByteplusSaasRetail.Product.CategoryOrBuilder> getCategoriesOrBuilderList()
Required.
The categorical information of the product.
Missing this will significantly hurt the performance.
For example, if a product has "Shoes -> Men's Shoes -> Basketball Shoes"
This should be:
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's Shoes"}] },
{"category_depth":3,
"category_nodes": [{"id_or_name":"Basketball Shoes"}] },
]
If a product belongs to 2 different categories,
"Shoes -> Men's shoes" and "Sports -> Basketball"
then
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"},
{"id_or_name":"Sports"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's shoes"},
{"id_or_name":"Basketball"}] },
]
repeated .bytedance.byteplus.rec.retail.Product.Category categories = 2;ByteplusSaasRetail.Product.CategoryOrBuilder getCategoriesOrBuilder(int index)
Required.
The categorical information of the product.
Missing this will significantly hurt the performance.
For example, if a product has "Shoes -> Men's Shoes -> Basketball Shoes"
This should be:
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's Shoes"}] },
{"category_depth":3,
"category_nodes": [{"id_or_name":"Basketball Shoes"}] },
]
If a product belongs to 2 different categories,
"Shoes -> Men's shoes" and "Sports -> Basketball"
then
[
{"category_depth":1,
"category_nodes": [{"id_or_name":"Shoes"},
{"id_or_name":"Sports"}] },
{"category_depth":2,
"category_nodes": [{"id_or_name":"Men's shoes"},
{"id_or_name":"Basketball"}] },
]
repeated .bytedance.byteplus.rec.retail.Product.Category categories = 2;List<ByteplusSaasRetail.Product.Brand> getBrandsList()
Required.
Missing this will significantly hurt the performance.
The order should be asending on depth.
For example, if a product belongs to "Adidas -> Yeezy",
this field should be:
[
{"brand_depth": 1, "id_or_name":"Adidas"},
{"brand_depth": 2, "id_or_name":"Yeezy"},
]
repeated .bytedance.byteplus.rec.retail.Product.Brand brands = 3;ByteplusSaasRetail.Product.Brand getBrands(int index)
Required.
Missing this will significantly hurt the performance.
The order should be asending on depth.
For example, if a product belongs to "Adidas -> Yeezy",
this field should be:
[
{"brand_depth": 1, "id_or_name":"Adidas"},
{"brand_depth": 2, "id_or_name":"Yeezy"},
]
repeated .bytedance.byteplus.rec.retail.Product.Brand brands = 3;int getBrandsCount()
Required.
Missing this will significantly hurt the performance.
The order should be asending on depth.
For example, if a product belongs to "Adidas -> Yeezy",
this field should be:
[
{"brand_depth": 1, "id_or_name":"Adidas"},
{"brand_depth": 2, "id_or_name":"Yeezy"},
]
repeated .bytedance.byteplus.rec.retail.Product.Brand brands = 3;List<? extends ByteplusSaasRetail.Product.BrandOrBuilder> getBrandsOrBuilderList()
Required.
Missing this will significantly hurt the performance.
The order should be asending on depth.
For example, if a product belongs to "Adidas -> Yeezy",
this field should be:
[
{"brand_depth": 1, "id_or_name":"Adidas"},
{"brand_depth": 2, "id_or_name":"Yeezy"},
]
repeated .bytedance.byteplus.rec.retail.Product.Brand brands = 3;ByteplusSaasRetail.Product.BrandOrBuilder getBrandsOrBuilder(int index)
Required.
Missing this will significantly hurt the performance.
The order should be asending on depth.
For example, if a product belongs to "Adidas -> Yeezy",
this field should be:
[
{"brand_depth": 1, "id_or_name":"Adidas"},
{"brand_depth": 2, "id_or_name":"Yeezy"},
]
repeated .bytedance.byteplus.rec.retail.Product.Brand brands = 3;boolean hasPrice()
Required. The product price info. Please make sure the accuracy and recency.
.bytedance.byteplus.rec.retail.Product.Price price = 4;ByteplusSaasRetail.Product.Price getPrice()
Required. The product price info. Please make sure the accuracy and recency.
.bytedance.byteplus.rec.retail.Product.Price price = 4;ByteplusSaasRetail.Product.PriceOrBuilder getPriceOrBuilder()
Required. The product price info. Please make sure the accuracy and recency.
.bytedance.byteplus.rec.retail.Product.Price price = 4;int getIsRecommendable()
Required. 1 if the product is recommendable (result in `Predict` call). 0 if the product isn't recommendable. Note: Any change of this takes up to 1 hour to take effect. Note: Even if a product isn't recommendable, please still send this to us. This is because that users might interact with such products historically, therefore it provides reasonably strong signals.
int32 is_recommendable = 5;String getTitle()
Required. The product title.
string title = 6;com.google.protobuf.ByteString getTitleBytes()
Required. The product title.
string title = 6;double getQualityScore()
Optional. The product quality score. Note: this is different than user ratings. It is normally computed as a composite score considering many factors, including sales, customer feedback, information completeness, etc. This score should be normalized to [1.0, 5.0]
double quality_score = 7;List<String> getTagsList()
Optional. The tags given by the seller for this product. This is used to lift the performance. Sample values are: "New", "Summer", "Clearance", etc.
repeated string tags = 8;int getTagsCount()
Optional. The tags given by the seller for this product. This is used to lift the performance. Sample values are: "New", "Summer", "Clearance", etc.
repeated string tags = 8;String getTags(int index)
Optional. The tags given by the seller for this product. This is used to lift the performance. Sample values are: "New", "Summer", "Clearance", etc.
repeated string tags = 8;index - The index of the element to return.com.google.protobuf.ByteString getTagsBytes(int index)
Optional. The tags given by the seller for this product. This is used to lift the performance. Sample values are: "New", "Summer", "Clearance", etc.
repeated string tags = 8;index - The index of the value to return.boolean hasDisplay()
Optional. The display information of the product.
.bytedance.byteplus.rec.retail.Product.Display display = 9;ByteplusSaasRetail.Product.Display getDisplay()
Optional. The display information of the product.
.bytedance.byteplus.rec.retail.Product.Display display = 9;ByteplusSaasRetail.Product.DisplayOrBuilder getDisplayOrBuilder()
Optional. The display information of the product.
.bytedance.byteplus.rec.retail.Product.Display display = 9;boolean hasProductSpec()
Optional. The product specs.
.bytedance.byteplus.rec.retail.Product.ProductSpec product_spec = 10;ByteplusSaasRetail.Product.ProductSpec getProductSpec()
Optional. The product specs.
.bytedance.byteplus.rec.retail.Product.ProductSpec product_spec = 10;ByteplusSaasRetail.Product.ProductSpecOrBuilder getProductSpecOrBuilder()
Optional. The product specs.
.bytedance.byteplus.rec.retail.Product.ProductSpec product_spec = 10;boolean hasSeller()
Optional. The seller proto.
.bytedance.byteplus.rec.retail.Product.Seller seller = 11;ByteplusSaasRetail.Product.Seller getSeller()
Optional. The seller proto.
.bytedance.byteplus.rec.retail.Product.Seller seller = 11;ByteplusSaasRetail.Product.SellerOrBuilder getSellerOrBuilder()
Optional. The seller proto.
.bytedance.byteplus.rec.retail.Product.Seller seller = 11;int getExtraCount()
Optional. This is a catch-all field to pass all the additional information. Please provide as much information as possible.
map<string, string> extra = 100;boolean containsExtra(String key)
Optional. This is a catch-all field to pass all the additional information. Please provide as much information as possible.
map<string, string> extra = 100;@Deprecated Map<String,String> getExtra()
getExtraMap() instead.Map<String,String> getExtraMap()
Optional. This is a catch-all field to pass all the additional information. Please provide as much information as possible.
map<string, string> extra = 100;String getExtraOrDefault(String key, String defaultValue)
Optional. This is a catch-all field to pass all the additional information. Please provide as much information as possible.
map<string, string> extra = 100;Copyright © 2022. All rights reserved.