تختبر تجارب تحسين مواد العرض مجموعات مختلفة من مواد العرض ضمن "حملات الأداء الأفضل"، ما يتيح لك مقارنة أداء مجموعات مختلفة من مواد العرض بمجموعة أساسية.
يتوفّر سير العمل هذا في
ExperimentType.OPTIMIZE_ASSETS.
الإعداد
لإعداد تجربة تحسين مواد العرض، اتّبِع الخطوات التالية:
- أنشئ مادة عرض جديدة وتجربة تتضمّن مجموعة ضابطة ومجموعة تجريبية.
- اربط مادة العرض الجديدة بمجموعة مواد العرض في مجموعة التجربة ضمن طلب تغيير واحد.
المتطلبات الأساسية
قبل إنشاء تجربة تحسين مواد العرض، يجب أن يكون لديك "حملة أداء أفضل" حالية ومورد أساسي من النوع AssetGroup (customers/{customer_id}/assetGroups/{asset_group_id}) يُستخدَم كمرجع لكلتا مجموعتَي التجربة. بالنسبة إلى ADD_ASSETS_TO_ASSETLESS_RETAIL، تأكَّد من أنّ
AssetGroup الأساسي يحتوي على الأقل على مجموعة final_urls واحدة قبل إنشاء
التجربة (تؤدي تجربة مواد العرض النشطة إلى تجميد التعديلات على AssetGroup
الأساسي، ويتطلب ربط مواد العرض المخصّصة استخدام final_urls).
ترتيب عمليات الطلب
بما أنّ هذه الكيانات تعتمد على بعضها، عليك استخدام أسماء الموارد المؤقتة للإشارة إلى الموارد التي تم إنشاؤها في عمليات سابقة ضمن الطلب نفسه.
يجب أن تكون العمليات في طلبك بالترتيب التالي:
- أنشِئ موردًا واحدًا أو أكثر من موارد
Assetبأسماء موارد مؤقتة (مثلcustomers/CUSTOMER_ID/assets/-1). أدرِج مواد العرض الاختبارية، بالإضافة إلى أيّ مواد عرض جديدة خاصة بالعلامة التجاريةBUSINESS_NAMEوLOGOفي حال تفعيل إرشادات العلامة التجارية في حملة بيع بالتجزئة لا تتضمّن مواد عرض وبدون روابط حالية للعلامة التجارية (في هذه الحالة، اربط مواد العرض الخاصة بالعلامة التجارية هذه بالسمة الأساسيةCampaignباستخدام عملياتCampaignAssetبعد الخطوة 1 مباشرةً). - أنشئ
Experimentباسم مورد مؤقت (على سبيل المثال،customers/CUSTOMER_ID/experiments/-2)، مع ضبطtypeعلىOPTIMIZE_ASSETS، وstatusعلىENABLED، وoptimize_assets_experiment.optimize_assets_experiment_subtypeعلىOptimizeAssetsExperimentSubtypeالمحدّد (على سبيل المثال،COMPARE_ASSETS). أنشئ موردَين من النوع
ExperimentArmمرتبطَين باسم مورد التجربة المؤقتة من الخطوة 2، مع ضبطcampaigns(على اسم مورد "حملة الأداء الأفضل") وtraffic_split(مجموعهما100) وasset_groups(ExperimentArm.AssetGroupInfo) في كل مجموعة:- مجموعة ضابطة (
control = true) حيث يحتويasset_groupsعلىAssetGroupInfoمع ضبطasset_groupعلى اسم المورد الخاص بـAssetGroupالأساسي (customers/CUSTOMER_ID/assetGroups/ASSET_GROUP_ID). عند اختبار مواد العرض المُضافة حديثًا مقابل مجموعة مواد العرض الأساسية (أو عند استخدام النوعَين الفرعيَينADD_ASSETS_TO_ASSETLESS_RETAILأوADD_VIDEO_ASSETS_TO_VIDEOLESS)، اتركasset_group_assetsبدون ضبط في المجموعة الضابطة. وعند مقارنة مجموعتَي مواد عرض مختلفتَين ضمنCOMPARE_ASSETS، أدرِج إدخالاتAssetGroupAssetInfoللمجموعة الضابطة (assetوfield_type). - مجموعة تجربة (
control = false) حيث يحتويasset_groupsعلىAssetGroupInfoمع ضبطasset_groupعلى اسم المورد الأساسي نفسهAssetGroup(customers/CUSTOMER_ID/assetGroups/ASSET_GROUP_ID) وasset_group_assets(repeatedAssetGroupAssetInfo) يسرد مواردAssetوfield_typeلمجموعة التجربة، بما في ذلكAssetالاختبار الذي تم إنشاؤه حديثًا (customers/CUSTOMER_ID/assets/-1) من الخطوة 1. عند استخدامADD_ASSETS_TO_ASSETLESS_RETAIL، يجب أن تستوفيasset_group_assetsفي مجموعة التجربة جميع الحدود الدنيا لمتطلبات مجموعة مواد العرض (يجب عدم إدراج مواد العرض الاختيارية مثلYOUTUBE_VIDEOوحدها)، ويجب أن تكون روابطBUSINESS_NAMEوLOGOCampaignAssetالمطلوبة على مستوى الحملة متوفّرة أو يتم إنشاؤها في الطلب نفسه عند تفعيل إرشادات العلامة التجارية في الحملة الأساسية.
- مجموعة ضابطة (
أنشئ موارد
AssetGroupAssetمتتالية تربط مواد العرض الاختبارية من الخطوة 1 (customers/CUSTOMER_ID/assets/-1) بـAssetGroupالأساسي المستخدَم في مجموعتَي التجربة.
جافا
This example is not yet available in Java; you can take a look at the other languages.
#C
This example is not yet available in C#; you can take a look at the other languages.
PHP
This example is not yet available in PHP; you can take a look at the other languages.
Python
# 1. Create Assets with temporary resource names. # We create a text asset and an image asset to showcase different types. asset_operation_1 = create_text_asset_operation( client, customer_id, ASSET_1_TEMP_ID, "Fly to Mars!", ) asset_operation_2 = create_image_asset_operation( client, customer_id, ASSET_2_TEMP_ID, "https://gaagl.page.link/Eit5", "Mars Landscape View", ) # 2. Create an Experiment with a temporary resource name. experiment_operation = client.get_type("MutateOperation") experiment = experiment_operation.experiment_operation.create experiment.resource_name = googleads_service.experiment_path( customer_id, EXPERIMENT_TEMP_ID ) experiment.name = f"Interstellar Asset Experiment #{uuid4()}" experiment.type_ = client.enums.ExperimentTypeEnum.OPTIMIZE_ASSETS # Set the optimize assets experiment subtype to COMPARE_ASSETS. experiment.optimize_assets_experiment.optimize_assets_experiment_subtype = ( client.enums.OptimizeAssetsExperimentSubtypeEnum.COMPARE_ASSETS ) # 3. Create two ExperimentArm resources. treatment_assets = [ (ASSET_1_TEMP_ID, client.enums.AssetFieldTypeEnum.HEADLINE), (ASSET_2_TEMP_ID, client.enums.AssetFieldTypeEnum.MARKETING_IMAGE), ] arm_operations = create_arms_operations( client, customer_id, EXPERIMENT_TEMP_ID, campaign_resource_name, asset_group_id, treatment_assets, ) # 4. Create AssetGroupAssets linking the assets to the asset group. asset_group_asset_operation_1 = create_asset_group_asset_operation( client, customer_id, asset_group_id, ASSET_1_TEMP_ID, client.enums.AssetFieldTypeEnum.HEADLINE, ) asset_group_asset_operation_2 = create_asset_group_asset_operation( client, customer_id, asset_group_id, ASSET_2_TEMP_ID, client.enums.AssetFieldTypeEnum.MARKETING_IMAGE, ) # Send all operations in a single Mutate request. # The operations must be in this specific order. mutate_operations = [ asset_operation_1, asset_operation_2, experiment_operation, *arm_operations, asset_group_asset_operation_1, asset_group_asset_operation_2, ] response = googleads_service.mutate( customer_id=customer_id, mutate_operations=mutate_operations, )
Ruby
# 1. Create Assets with temporary resource names. # We create a text asset and an image asset to showcase different types. asset_operation_1 = create_text_asset_operation( client, customer_id, asset_1_temp_id, "Fly to Mars!", ) asset_operation_2 = create_image_asset_operation( client, customer_id, asset_2_temp_id, "https://gaagl.page.link/Eit5", "Mars Landscape View", ) # 2. Create an Experiment with a temporary resource name. experiment_operation = client.operation.mutate do |m| m.experiment_operation = client.operation.create_resource.experiment do |e| e.resource_name = client.path.experiment(customer_id, experiment_temp_id) e.name = "Interstellar Asset Experiment #{(Time.new.to_f * 1000).to_i}" e.type = :OPTIMIZE_ASSETS # Set the optimize assets experiment subtype to COMPARE_ASSETS. e.optimize_assets_experiment = client.resource.optimize_assets_experiment_info do |oae| oae.optimize_assets_experiment_subtype = :COMPARE_ASSETS end end end # 3. Create two ExperimentArm resources. treatment_assets = [ [asset_1_temp_id, :HEADLINE], [asset_2_temp_id, :MARKETING_IMAGE], ] arm_operations = create_arms_operations( client, customer_id, experiment_temp_id, campaign_resource_name, asset_group_id, treatment_assets, ) # 4. Create AssetGroupAssets linking the assets to the asset group. asset_group_asset_operation_1 = create_asset_group_asset_operation( client, customer_id, asset_group_id, asset_1_temp_id, :HEADLINE, ) asset_group_asset_operation_2 = create_asset_group_asset_operation( client, customer_id, asset_group_id, asset_2_temp_id, :MARKETING_IMAGE, ) # Send all operations in a single Mutate request. # The operations must be in this specific order. mutate_operations = [ asset_operation_1, asset_operation_2, experiment_operation, *arm_operations, asset_group_asset_operation_1, asset_group_asset_operation_2, ] response = client.service.google_ads.mutate( customer_id: customer_id, mutate_operations: mutate_operations, )
Perl
This example is not yet available in Perl; you can take a look at the other languages.
curl
تقرير عن التجربة
اطّلِع على دليل إعداد التقارير للاستعلام عن مورد experiment ومقارنة المقاييس بين مجموعات مواد العرض الضابطة والتجريبية.
التخرّج أو إنهاء الحساب
بعد تقييم النتائج، يمكنك إنهاء التجربة أو إكمالها
باستخدام ExperimentService.
- إنهاء: إذا لم تكن راضيًا عن نتائج مجموعة التجربة،
استخدِم
EndExperiment. هذه عملية متزامنة. - الترقية: إذا كنت تفضّل أداء مجموعة مواد العرض في مجموعة التجربة، استخدِم
GraduateExperiment. كجزء من هذه العملية، يتم إيقاف الحملة الأساسية الأصلية المرتبطة بالمجموعة الضابطة مؤقتًا، ويتم تحويل مجموعة التجربة إلى حملة جديدة مستقلة. هذه عملية متزامنة.