Assegna l'algoritmo a una risorsa quando è pronto.
Controllare se l'algoritmo è pronto
Un modello di algoritmo deve essere addestrato su una quantità minima di dati prima di essere pronto.
Gli algoritmi addestrano un modello per ogni inserzionista che può utilizzarli. I modelli vengono addestrati sulla base dei dati sulle impressioni esistenti. L'addestramento di un modello può richiedere da 1 a 3 giorni dopo che l'inserzionista ha soddisfatto i requisiti dei dati.
Recupera l'idoneità di ciascun modello dall'algoritmo. Il
ReadinessState determina i passaggi successivi:
ReadinessState | |
|---|---|
READINESS_STATE_NO_VALID_SCRIPT |
Non esiste uno script valido. Carica un nuovo script o un nuovo file delle regole. |
READINESS_STATE_EVALUATION_FAILURE |
Non è presente alcuno script che possa essere valutato nel tempo assegnato. Carica un nuovo script o un nuovo file delle regole. |
READINESS_STATE_INSUFFICIENT_DATA |
Non sono disponibili dati sufficienti nell'account inserzionista per addestrare il modello. Continua a pubblicare campagne per l'inserzionista per soddisfare i requisiti minimi dei dati. |
READINESS_STATE_TRAINING |
Il modello è in fase di addestramento sui dati esistenti e non è pronto per la distribuzione. Attendi 12-24 ore prima di verificare se il modello è pronto per la distribuzione. |
READINESS_STATE_ACTIVE |
Il modello è completamente addestrato e pronto per essere assegnato alle campagne dell'inserzionista. |
Assegnare l'algoritmo all'elemento pubblicitario
Per misurare e aggiustare il rendimento delle offerte viene utilizzato un algoritmo. Può essere utilizzato
con strategie di offerta che ottimizzano la spesa dell'intero
budget o il raggiungimento di un obiettivo. In questi casi, il
tipo di obiettivo di rendimento della strategia sarebbe
BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO.
Ecco come aggiornare un elemento pubblicitario per utilizzare un algoritmo con una strategia di offerta che ottimizza la spesa dell'intero budget:
Java
// Provide the ID of the advertiser that owns the parent algorithm. long advertiserId = advertiser-id; // Provide the ID of the parent algorithm. long algorithmId = algorithm-id; // Provide the ID of the line item to assign the algorithm to. long lineItemId = line-item-id; // Create the line item structure. LineItem lineItem = new LineItem() .setBidStrategy( new BiddingStrategy() .setMaximizeSpendAutoBid( new MaximizeSpendBidStrategy() .setPerformanceGoalType( "BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO") .setCustomBiddingAlgorithmId(algorithmId))); // Configure the patch request and set update mask to only update the bid // strategy. LineItems.Patch request = service .advertisers() .lineItems() .patch(advertiserId, lineItemId, lineItem) .setUpdateMask("bidStrategy"); // Update the line item. LineItem response = request.execute(); // Display the new algorithm ID used by the line item. System.out.printf( "Line item %s now uses algorithm ID %s in its bidding strategy.", response.getName(), response.getBidStrategy().getMaximizeSpendAutoBid().getCustomBiddingAlgorithmId());
Python
# Provide the parent advertiser ID of the line item and creative. advertiser_id = advertiser-id # Provide the ID of the creative to assign. algorithm_id = algorithm-id # Provide the ID of the line item to assign the creative to. line_item_id = line-item-id # Build bidding strategy object. bidding_strategy_obj = { "maximizeSpendAutoBid": { "performanceGoalType": ( "BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO" ), "customBiddingAlgorithmId": algorithm_id, } } # Build line item object. line_item_obj = {"bidStrategy": bidding_strategy_obj} # Build and execute request. line_item_resp = ( service.advertisers() .lineItems() .patch( advertiserId=advertiser_id, lineItemId=line_item_id, updateMask="bidStrategy", body=line_item_obj, ) .execute() ) # Print the algorithm ID now assigned to the line item. print( f'Line Item {line_item_resp["name"]} now uses algorithm ID' f' {line_item_resp["bidStrategy"]["maximizeSpendAutoBid"]["customBiddingAlgorithmId"]}' " in its bidding strategy." )
PHP
// Provide the ID of the advertiser that owns the parent algorithm. $advertiserId = advertiser-id; // Provide the ID of the parent algorithm. $algorithmId = algorithm-id; // Provide the ID of the line item to assign the algorithm to. $lineItemId = line-item-id; // Create the bidding strategy structure. $maxSpendBidStrategy = new Google_ServiceDisplayVideo_MaximizeSpendBidStrategy(); $maxSpendBidStrategy->setPerformanceGoalType('BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO'); $maxSpendBidStrategy->setCustomBiddingAlgorithmId($algorithmId); $biddingStrategy = new Google_ServiceDisplayVideo_BiddingStrategy(); $biddingStrategy->setMaximizeSpendAutoBid($maxSpendBidStrategy); // Create the line item structure. $lineItem = new Google_Service_DisplayVideo_LineItem(); $lineItem->setBidStrategy($biddingStrategy); $optParams = array('updateMask' => 'bidStrategy'); // Call the API, updating the bid strategy for the identified line // item. try { $result = $this->service->advertisers_lineItems->patch( $advertiserId, $lineItemId, $lineItem, $optParams ); } catch (\Exception $e) { $this->renderError($e); return; } printf( '<p>Line Item %s now uses algorithm ID %s in its bid strategy.</p>', $result['name'], $result['bidStrategy']['maximizeSpendAutoBid']['customBiddingAlgorithmId'] );