Triển khai chiến lược Đặt giá thầu tuỳ chỉnh

Bạn có thể sử dụng Display & Video 360 API để quản lý các chế độ triển khai chiến lược đặt giá thầu tuỳ chỉnh. Bạn có thể tạo thuật toán đặt giá thầu tuỳ chỉnh, tải lên và xác minh từng tập lệnh, đồng thời chỉ định một thuật toán cụ thể cho một tài nguyên làm chiến lược đặt giá thầu.

Trang này mô tả cách tạo, cập nhật và chỉ định thuật toán đặt giá thầu tuỳ chỉnh bằng Display & Video 360 API. Mỗi phần cung cấp một mã mẫu.

Tạo thuật toán đặt giá thầu tuỳ chỉnh

Đối tượng CustomBiddingAlgorithm biểu thị một thuật toán riêng lẻ mà bạn có thể chỉ định cho một mục hàng để sử dụng trong chiến lược giá thầu của mục hàng đó. Đối tượng này có thông tin chi tiết về thuật toán, chẳng hạn như customBiddingAlgorithmType, entityStatuscustomBiddingAlgorithmState. Bạn có thể tạo các đối tượng CustomBiddingScript làm tài nguyên con để thuật toán sử dụng.

Sau đây là ví dụ về cách tạo một thuật toán đặt giá thầu tuỳ chỉnh dựa trên tập lệnh:

Python

# Create a custom bidding algorithm object.
custom_bidding_algorithm_obj = {
    'advertiserId': advertiser-id,
    'displayName': display-name,
    'entityStatus': 'ENTITY_STATUS_ACTIVE',
    'customBiddingAlgorithmType': 'SCRIPT_BASED'
}

# Create the custom bidding algorithm.
response = service.customBiddingAlgorithms().create(
    body=algorithm_obj
).execute()

# Display the new custom bidding algorithm.
print(f'The following Custom Bidding Algorithm was created: {response}')

Quản lý quyền truy cập vào thuật toán

Thuật toán đặt giá thầu tuỳ chỉnh có thể thuộc sở hữu của đối tác hoặc nhà quảng cáo. Đối tác và mọi nhà quảng cáo con có trong trường sharedAdvertiserIds đều có thể truy cập và sửa đổi các thuật toán thuộc sở hữu của đối tác. Nhà quảng cáo và đối tác gốc của nhà quảng cáo đó có thể truy cập và sửa đổi các thuật toán thuộc sở hữu của nhà quảng cáo, nhưng không thể chia sẻ các thuật toán này với những nhà quảng cáo khác.

Nếu bạn chỉ sử dụng thuật toán cho một nhà quảng cáo duy nhất, hãy chỉ định nhà quảng cáo làm chủ sở hữu bằng trường advertiserId. Nếu không, hãy chỉ định đối tác mẹ của nhà quảng cáo làm chủ sở hữu bằng trường partnerId và cấp cho nhà quảng cáo quyền truy cập bằng trường sharedAdvertiserIds.

Tải tập lệnh lên

Sau khi tạo thuật toán đặt giá thầu tuỳ chỉnh, hãy tạo một tập lệnh để thuật toán đó sử dụng. Thuật toán đặt giá thầu tuỳ chỉnh dựa trên tập lệnh sử dụng tập lệnh do người dùng cung cấp để đánh giá giá trị của một lượt hiển thị. Bạn có thể xem các ví dụ về tập lệnh đơn giản và danh sách các trường nâng cao thông qua Trung tâm trợ giúp của Display & Video 360.

Các phần sau đây hướng dẫn bạn cách thêm một tập lệnh mới hoặc đã cập nhật vào một thuật toán đặt giá thầu tuỳ chỉnh.

Truy xuất vị trí tài nguyên tập lệnh

Trước tiên, hãy truy xuất một vị trí tài nguyên có sẵn trong tài nguyên thuật toán đặt giá thầu tuỳ chỉnh bằng phương thức customBiddingAlgorithms.uploadScript. Yêu cầu này trả về một đối tượng CustomBiddingScriptReftên tài nguyên. Bạn có thể tải tệp kịch bản lên vị trí do tên tài nguyên chỉ định. Sau đó, hãy sử dụng đối tượng tham chiếu tập lệnh đặt giá thầu tuỳ chỉnh để tạo tài nguyên tập lệnh.

Sau đây là ví dụ về cách truy xuất vị trí tài nguyên có sẵn:

Python

# Retrieve a usable custom bidding script reference
# object.
custom_bidding_script_ref = service.customBiddingAlgorithms().uploadScript(
    customBiddingAlgorithmId=custom-bidding-algorithm-id,
    advertiserId=advertiser-id
).execute()

# Display the new custom bidding script reference object.
print('The following custom bidding script reference object was retrieved:'
      f'{custom_bidding_script_ref}')

Tải tệp kịch bản lên

Sau khi truy xuất một vị trí tài nguyên có sẵn, hãy tải tệp tập lệnh lên vị trí đó trong hệ thống Display & Video 360 bằng phương thức media.upload. Phương thức này hỗ trợ phương thức tải lên đơn giản, yêu cầu tham số truy vấn uploadType=media.

Sau đây là ví dụ về cách tải một tệp tập lệnh lên khi có một đối tượng tham chiếu tập lệnh đặt giá thầu tuỳ chỉnh đã truy xuất:

Python

# Create a media upload object.
media = MediaFileUpload(script-path)

# Create upload request.
upload_request = service.media().upload(
    resourceName=resource-name, media_body=media)

# Override response handler to expect null response.
upload_request.postproc = HttpRequest.null_postproc

# Upload script to resource location given in retrieved custom bidding
# script reference object.
upload_request.execute()

Tạo đối tượng tập lệnh

Sau khi tải tệp kịch bản lên, hãy tạo một tài nguyên kịch bản đặt giá thầu tuỳ chỉnh bằng phương thức customBiddingAlgorithms.scripts.create. Đối tượng CustomBiddingScript được truyền trong yêu cầu chỉ được bao gồm đối tượng CustomBiddingScriptRef làm giá trị được chỉ định của trường script. Thao tác này sẽ liên kết tệp kịch bản đã tải lên với tài nguyên kịch bản mới.

Sau đây là ví dụ về cách tạo tệp kịch bản:

Python

# Create a custom bidding script object.
script_obj = {
    'script': custom-bidding-script-ref
}

# Create the custom bidding script.
response = service.customBiddingAlgorithms().scripts().create(
    customBiddingAlgorithmId=custom-bidding-algorithm-id,
    advertiserId=advertiser-id,
    body=script_obj).execute()

# Display the new custom bidding script object.
print(f'The following custom bidding script was created: {response}')

Sau khi bạn tạo một tài nguyên tập lệnh đặt giá thầu tuỳ chỉnh, Display & Video 360 sẽ xử lý tập lệnh đó để đảm bảo rằng bạn có thể sử dụng tập lệnh này thành công để tính điểm cho lượt hiển thị. Truy xuất trạng thái của quá trình xử lý này thông qua trường state của đối tượng tập lệnh. Sau khi bạn chấp nhận tập lệnh mới, thuật toán đặt giá thầu tuỳ chỉnh sẽ bắt đầu sử dụng tập lệnh này để tính điểm giá trị lượt hiển thị. Thao tác này sẽ diễn ra ngay lập tức, vì vậy, hãy đảm bảo rằng bạn muốn cập nhật thuật toán trước khi tạo một tài nguyên tập lệnh mới.

Chỉ định Thuật toán đặt giá thầu tuỳ chỉnh

Sau khi tạo một thuật toán đặt giá thầu tuỳ chỉnh, tải một tập lệnh được chấp nhận lên và đáp ứng các yêu cầu cần thiết, bạn có thể chỉ định thuật toán đặt giá thầu tuỳ chỉnh cho chiến lược đặt giá thầu của một mục hàng hoặc đơn đặt hàng quảng cáo.

Bạn có thể sử dụng các thuật toán đặt giá thầu tuỳ chỉnh trong chiến lược giá thầu tối đa hoá mức chi tiêumục tiêu hiệu suất bằng cách chỉ định BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGOmã nhận dạng thuật toán đặt giá thầu tuỳ chỉnh cho các trường performanceGoalTypecustomBiddingAlgorithmId, tương ứng. Tuỳ thuộc vào chiến lược giá thầu, các thông số giá thầu khác có thể được cung cấp hoặc bắt buộc.

Dưới đây là ví dụ về cách cập nhật một mục hàng để sử dụng chiến lược giá thầu tối đa hoá mức chi tiêu bằng một thuật toán đặt giá thầu tuỳ chỉnh nhất định:

Python

# Create the new bid strategy object.
bidding_strategy = {
    'maximizeSpendAutoBid': {
        'performanceGoalType':
            'BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO',
        'customBiddingAlgorithmId': custom-bidding-algorithm-id
    }
}

# Create a line item object assigning the new bid strategy.
line_item_obj = {'bidStrategy': bidding_strategy}

# Update the line item with a new bid strategy.
response = service.advertisers().lineItems().patch(
    advertiserId=advertiser-id,
    lineItemId=line-item-id,
    updateMask='bidStrategy',
    body=line_item_obj).execute()

# Display the line item's new bid strategy
print(f'Line Item {response["name"]} is now using the following bid'
     f' strategy: {response["bidStrategy"]}.')