public sealed class Engine.Types.MediaRecommendationEngineConfig : IMessage<Engine.Types.MediaRecommendationEngineConfig>, IEquatable<Engine.Types.MediaRecommendationEngineConfig>, IDeepCloneable<Engine.Types.MediaRecommendationEngineConfig>, IBufferMessage, IMessage
Reference documentation and code samples for the Discovery Engine v1 API class Engine.Types.MediaRecommendationEngineConfig.
Additional config specs for a Media Recommendation engine.
This field together with
[optimization_objective][google.cloud.discoveryengine.v1.Engine.MediaRecommendationEngineConfig.type]
describe engine metadata to use to control engine training and serving.
Currently supported
values: ctr, cvr.
If not specified, we choose default based on engine type.
Default depends on type of recommendation:
public Engine.Types.MediaRecommendationEngineConfig.Types.OptimizationObjectiveConfig OptimizationObjectiveConfig { get; set; }
Name and value of the custom threshold for cvr optimization_objective.
For target_field watch-time, target_field_value must be an integer
value indicating the media progress time in seconds between (0, 86400]
(excludes 0, includes 86400) (e.g., 90).
For target_field watch-percentage, the target_field_value must be a
valid float value between (0, 1.0] (excludes 0, includes 1.0) (e.g.,
0.5).
public Engine.Types.MediaRecommendationEngineConfig.Types.TrainingState TrainingState { get; set; }
The training state that the engine is in (e.g.
TRAINING or PAUSED).
Since part of the cost of running the service
is frequency of training - this can be used to determine when to train
engine in order to control cost. If not specified: the default value for
CreateEngine method is TRAINING. The default value for
UpdateEngine method is to keep the state the same as before.
Required. The type of engine. e.g., recommended-for-you.
This field together with
[optimization_objective][google.cloud.discoveryengine.v1.Engine.MediaRecommendationEngineConfig.optimization_objective]
describe engine metadata to use to control engine training and serving.
Currently supported values: recommended-for-you, others-you-may-like,
more-like-this, most-popular-items.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[],[],null,["# Discovery Engine v1 API - Class Engine.Types.MediaRecommendationEngineConfig (1.9.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.9.0 (latest)](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.8.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.7.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.6.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.5.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.4.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.3.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.2.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.1.0/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig)\n- [1.0.0-beta06](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.0.0-beta06/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig) \n\n public sealed class Engine.Types.MediaRecommendationEngineConfig : IMessage\u003cEngine.Types.MediaRecommendationEngineConfig\u003e, IEquatable\u003cEngine.Types.MediaRecommendationEngineConfig\u003e, IDeepCloneable\u003cEngine.Types.MediaRecommendationEngineConfig\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Discovery Engine v1 API class Engine.Types.MediaRecommendationEngineConfig.\n\nAdditional config specs for a Media Recommendation engine. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Engine.Types.MediaRecommendationEngineConfig \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Engine](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine)[Types](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types)[MediaRecommendationEngineConfig](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Engine](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine)[Types](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types)[MediaRecommendationEngineConfig](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Engine](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine)[Types](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types)[MediaRecommendationEngineConfig](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.Engine.Types.MediaRecommendationEngineConfig), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.DiscoveryEngine.V1](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.DiscoveryEngine.V1.dll\n\nConstructors\n------------\n\n### MediaRecommendationEngineConfig()\n\n public MediaRecommendationEngineConfig()\n\n### MediaRecommendationEngineConfig(MediaRecommendationEngineConfig)\n\n public MediaRecommendationEngineConfig(Engine.Types.MediaRecommendationEngineConfig other)\n\nProperties\n----------\n\n### EngineFeaturesConfig\n\n public Engine.Types.MediaRecommendationEngineConfig.Types.EngineFeaturesConfig EngineFeaturesConfig { get; set; }\n\nOptional. Additional engine features config.\n\n### OptimizationObjective\n\n public string OptimizationObjective { get; set; }\n\nThe optimization objective. e.g., `cvr`.\n\nThis field together with\n\\[optimization_objective\\]\\[google.cloud.discoveryengine.v1.Engine.MediaRecommendationEngineConfig.type\\]\ndescribe engine metadata to use to control engine training and serving.\n\nCurrently supported\nvalues: `ctr`, `cvr`.\n\nIf not specified, we choose default based on engine type.\nDefault depends on type of recommendation:\n\n`recommended-for-you` =\\\u003e `ctr`\n\n`others-you-may-like` =\\\u003e `ctr`\n\n### OptimizationObjectiveConfig\n\n public Engine.Types.MediaRecommendationEngineConfig.Types.OptimizationObjectiveConfig OptimizationObjectiveConfig { get; set; }\n\nName and value of the custom threshold for cvr optimization_objective.\nFor target_field `watch-time`, target_field_value must be an integer\nvalue indicating the media progress time in seconds between (0, 86400\\]\n(excludes 0, includes 86400) (e.g., 90).\nFor target_field `watch-percentage`, the target_field_value must be a\nvalid float value between (0, 1.0\\] (excludes 0, includes 1.0) (e.g.,\n0.5).\n\n### TrainingState\n\n public Engine.Types.MediaRecommendationEngineConfig.Types.TrainingState TrainingState { get; set; }\n\nThe training state that the engine is in (e.g.\n`TRAINING` or `PAUSED`).\n\nSince part of the cost of running the service\nis frequency of training - this can be used to determine when to train\nengine in order to control cost. If not specified: the default value for\n`CreateEngine` method is `TRAINING`. The default value for\n`UpdateEngine` method is to keep the state the same as before.\n\n### Type\n\n public string Type { get; set; }\n\nRequired. The type of engine. e.g., `recommended-for-you`.\n\nThis field together with\n\\[optimization_objective\\]\\[google.cloud.discoveryengine.v1.Engine.MediaRecommendationEngineConfig.optimization_objective\\]\ndescribe engine metadata to use to control engine training and serving.\n\nCurrently supported values: `recommended-for-you`, `others-you-may-like`,\n`more-like-this`, `most-popular-items`."]]