use xai_feature_switches::param; param!(FavoriteWeight, f64, "rust_home_mixer_favorite_weight", 0.5); param!(ReplyWeight, f64, "rust_home_mixer_reply_weight", 5.0); param!(RetweetWeight, f64, "rust_home_mixer_retweet_weight", 1.0); param!( PhotoExpandWeight, f64, "rust_home_mixer_photo_expand_weight", 0.05 ); param!( VideoOpenWeight, f64, "rust_home_mixer_video_open_weight", 0.07 ); param!(ClickWeight, f64, "rust_home_mixer_click_weight", 0.3); param!(OpenLinkWeight, f64, "rust_home_mixer_open_link_weight", 0.2); param!( ProfileClickWeight, f64, "rust_home_mixer_profile_click_weight", 0.0 ); param!(VqvWeight, f64, "rust_home_mixer_vqv_weight", 0.0); param!(ShareWeight, f64, "rust_home_mixer_share_weight", 2.0); param!( ShareViaDmWeight, f64, "rust_home_mixer_share_via_dm_weight", 5.0 ); param!( ShareViaCopyLinkWeight, f64, "rust_home_mixer_share_via_copy_link_weight", 20.0 ); param!(DwellWeight, f64, "rust_home_mixer_dwell_weight", 0.05); param!(QuoteWeight, f64, "rust_home_mixer_quote_weight", 5.0); param!( QuotedClickWeight, f64, "rust_home_mixer_quoted_click_weight", 0.05 ); param!( QuotedVqvWeight, f64, "rust_home_mixer_quoted_vqv_weight", 0.0 ); param!( ContDwellTimeWeight, f64, "rust_home_mixer_cont_dwell_time_weight", 0.004 ); param!( ContClickDwellTimeWeight, f64, "rust_home_mixer_cont_click_dwell_time_weight", 0.4 ); param!( VideoContinuationWeight, f64, "rust_home_mixer_video_continuation_weight", 0.0 ); param!( UserVideoContinuationWeight, f64, "rust_home_mixer_user_video_continuation_weight", 0.0 ); param!( ProfileVisitSecsWeight, f64, "rust_home_mixer_profile_visit_secs_weight", 0.0 ); param!( FollowAuthorWeight, f64, "rust_home_mixer_follow_author_weight", 4.0 ); param!( PostUnexploredWeight, f64, "rust_home_mixer_post_unexplored_weight", 0.02 ); param!( PostUnexploredIncludeOutOfNetwork, bool, "rust_home_mixer_post_unexplored_include_out_of_network", false ); param!( ReactWithVideoWeight, f64, "rust_home_mixer_react_with_video_weight", 0.0 ); param!( NotInterestedWeight, f64, "rust_home_mixer_not_interested_weight", -47.52 ); param!( BlockAuthorWeight, f64, "rust_home_mixer_block_author_weight", -31.2 ); param!( MuteAuthorWeight, f64, "rust_home_mixer_mute_author_weight", -58.8 ); param!(ReportWeight, f64, "rust_home_mixer_report_weight", -234.0); param!( NotDwelledWeight, f64, "rust_home_mixer_not_dwelled_weight", -0.02 ); param!( MinVideoDurationMs, i32, "rust_home_mixer_min_video_duration_ms", 10_000 ); param!( EnableQuotedVqvDurationCheck, bool, "rust_home_mixer_enable_quoted_vqv_duration_check", false ); param!( BidirectionalFollowReplyWeightBoost, f64, "rust_home_mixer_bidirectional_follow_reply_weight_boost", 15.0 ); param!( BidirectionalFollowDwellWeightBoost, f64, "rust_home_mixer_bidirectional_follow_dwell_weight_boost", 0.0 ); param!( WeightPerturbationSigma, f64, "rust_home_mixer_weight_perturbation_sigma", 0.0 ); param!( WeightPerturbationSalt, String, "rust_home_mixer_weight_perturbation_salt", "" ); param!( EnableAuthorDiversity, bool, "rust_home_mixer_enable_author_diversity", true ); param!( AuthorDiversityDecay, f64, "rust_home_mixer_author_diversity_decay", 0.5 ); param!( AuthorDiversityFloor, f64, "rust_home_mixer_author_diversity_floor", 0.25 ); param!( EnableOonRescoreForInNetworkRepliesRetweets, bool, "rust_home_mixer_enable_oon_rescore_for_in_network_replies_retweets", true ); param!( MultiplierPreOffset, bool, "rust_home_mixer_multiplier_pre_offset", false ); param!( AuthorExplorationBonus, f64, "rust_home_mixer_author_exploration_bonus", 0.0 ); param!( TopicOonWeightFactor, f64, "rust_home_mixer_topic_oon_weight_factor", 0.5 ); param!( OonWeightFactor, f64, "rust_home_mixer_oon_weight_factor", 0.75 ); param!( NewUserAgeThresholdSecs, u64, "rust_home_mixer_new_user_age_threshold_secs", 0 ); param!( NewUserOonWeightFactor, f64, "rust_home_mixer_new_user_oon_weight_factor", 0.00001 ); param!( ComputeValueModel, bool, "rust_home_mixer_vm_ranker_compute_value_model", false ); param!( DppEnabled, bool, "rust_home_mixer_vm_ranker_dpp_enabled", true ); param!( TopicDppEnabled, bool, "rust_home_mixer_vm_ranker_topic_dpp_enabled", false ); param!(DppTheta, f64, "rust_home_mixer_vm_ranker_dpp_theta", 0.65); param!( DppMaxSelectedRank, u32, "rust_home_mixer_vm_ranker_dpp_max_selected_rank", 150 );