-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proposed Prebid.js Module Rules #5239
Comments
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
As a result of a recent review, added one more:
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Thank you for putting this up for community comments. We are cutting out wasteful requests to specific bidders and want to integrate this on the adapter level. The classification is using machine learning. For optimal performance, this needs to run client-side where the model can be cached since it is doing a unique prediction for every single request. The model is loaded from a CDN, the entire size is 10-20KB, the code is minified, the model is changing at least once per hour. The predictions happen in nanoseconds. The model only returns true/false and doesn't impose any direct risk. This is directly tied to the adapter and its internal bidding behavior. The proposed rules, would not allow this, yet it is improving efficiency. |
@Slind14 - this was an anticipated usage of the 'real-time-data' module architecture -- the ability to optimize which bidders participate in a given auction given location, refresh count, number of bids, etc.
The idea is that an RTD module could listen to the
Where were you thinking the rules wouldn't allow it? |
Yep, I understand that. From an SSPs side it is difficult to get all publishers to integrate the module. So it would help a lot if it was allowed to be done inside the adapter where it is enabled by default. Ofc. it could be done server-side which would be allowed per the terms but the performance and also cost is a lot worse in this case. |
Please elaborate a little more on what the vision is. As I understand it, the part about "cutting out wasteful requests to specific bidders" is clear and wonderful. We want to support that ability. "difficult to get all publishers to integrate the module" -- also totally agreed, but that's the nature of Prebid.js -- pubs are already wary of the overall PBJS package size. There's little chance we're going to add a feature like this to core. It's clearly an optional module.
It would be fine for each bid adapter to agree to some kind of convention. |
Most SSPs and exchanges we talked with directly jumped to the best way of implementation being within the bid adapter. This ensures that nothing changes for the publisher and that it is automatically live with the next update. By implementing it in the adapter, the prebid package size barely increases. It is just 5 lines of code.
Can you elaborate on what you mean here? |
Let's step back. I don't understand what you're trying to do and how it breaks the proposed module rules. What specific proposed rule are we talking about? |
Number 4 of the bid adapter rules or would you consider this to be part of the auction request? |
Trying to piece all this together, I've reverse engineered that the real request here is that some SSPs want to throttle incoming requests and can't handle this themselves like other SSPs do on the server-side. I think there needs to be a broader discussion about the problem and possible solutions. Maybe the industry can solve this another way without affecting users and publishers. e.g. one of the SSPs could build out an infrastructure and share it with the others, charging them a fee to do so. Or perhaps it's not really so hard to get publishers to include a real-time-data module, especially if the affected SSPs made it a requirement for using their adapter. But if those options don't work out, Rule 4 already has a built-in exception procedure:
So if a group of SSPs wanted to build something like this, they could do so with appropriate disclosure and control options. In order to facilitate the process, I recommend at least one of the parties join Prebid.org and discuss in detail with the Prebid.js team. But at this point I don't see a need to change the module rules because we already recognized that some bid adapters might want to do things we hadn't anticipated. |
We've built Prebid deployment infrastructure around this at PubWise pre-RTD. Would be happy to work with SSPs that seriously want to explore leveraging it. |
Yes, most do it server-side. We do as well. But doing it client side as well is a lot more efficient in terms of traffic and infrastructure. |
The committee approved the module rules this week. Will be posting them on the web site in the near future. Will then add a link here and close this issue. |
@bretg I also propose to add 1 more must to bidder adapter: |
Going to close this issue -- Module Rules are published and the request for bidders to provide test params is at https://docs.prebid.org/dev-docs/bidder-adaptor.html#required-files already. Bidders don't always provide them, and not all reviewers catch them. Will send another reminder to the reviewer team. But even if test params work at the time of initial acceptance, they could stop working anytime. |
The Prebid Code-of-Conduct sub-committee has drafted an enhanced set of rules governing what bid adapters, user ID sub-modules, and other types of modules can and can't do. We're doing this to preserve the trust that publishers have in Prebid as an important part of the independent ad tech stack.
The rules include old favorites like endpoints being HTTPS, but many new rules as well.
Here's the process:
We're looking forward to your comments, and especially your thumbs-up.
The text was updated successfully, but these errors were encountered: