Content pushing method and apparatus, computer device, readable storage medium, and program product

WO2026166396A1PCT designated stage Publication Date: 2026-08-13XIAOHONGSHU TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2026-01-29
Publication Date
2026-08-13

Smart Images

  • Figure CN2026075790_13082026_PF_FP_ABST
    Figure CN2026075790_13082026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to a content pushing method and apparatus, a computer device, a computer-readable storage medium, and a computer program product. The method comprises: in response to a pushing request, determining a candidate content set related to the pushing request (S202); determining the total number of contents to be pushed that matches the pushing request (S204); and executing a plurality of sub-tasks on the basis of the candidate content set, and pushing a target sub-list obtained by executing each sub-task, until a stop condition is satisfied, wherein the number of contents in the target sub-list is less than the total number of contents to be pushed, and the execution step of any sub-task comprises: finding a plurality of candidate sub-lists on the basis of unpushed contents in the candidate content set, and selecting the target sub-list from among the plurality of candidate sub-lists (S206).
Need to check novelty before this filing date? Find Prior Art

Description

Content delivery methods, devices, computer equipment, readable storage media, and program products

[0001] Related applications

[0002] This application claims priority to Chinese patent application filed on February 10, 2025, with application number 2025101464868, entitled "Content Delivery Method, Apparatus, Computer Equipment, Readable Storage Medium and Program Product", the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of computer technology, and in particular to a content delivery method, apparatus, computer device, computer-readable storage medium, and computer program product. Background Technology

[0004] With the development of computer and internet technologies, more and more content is being pushed through the network. As users’ needs for content become increasingly diverse and personalized, personalized content pushes are usually required for users.

[0005] In related technologies, based on user push requests, a large amount of refined content is obtained by sequentially going through the recall, coarse ranking, and fine ranking stages. Based on this large amount of refined content, multiple candidate lists are freely combined to form a search space. Finally, a list that meets the push requirements is searched from the search space and exposed.

[0006] However, in related technologies, if the list length required for a push request is long, the number of candidate lists generated increases dramatically, which greatly increases the search space. Consequently, it becomes difficult to find an optimal combination for exposure within the vast search space, resulting in poor content push performance. Summary of the Invention

[0007] According to various embodiments of this application, a content push method, apparatus, computer device, computer-readable storage medium, and computer program product are provided.

[0008] Firstly, this application provides a content push method, including:

[0009] In response to a push request, determine a set of candidate content related to the push request;

[0010] Determine the total number of push notifications that match the push request;

[0011] Execute multiple subtasks based on the candidate content set, and push the target sublist obtained from each execution of the subtask until the stopping condition is met; the number of contents in the target sublist is less than the total number of pushes;

[0012] The execution steps of any subtask include: searching for multiple candidate sublists based on the unpushed content in the candidate content set, and selecting the target sublist from the multiple candidate sublists.

[0013] In some embodiments, the stopping condition includes at least one of the following:

[0014] The first future revenue value has not reached the preset revenue threshold, and the first future revenue value is determined by the content that has not been pushed in the candidate content set; and the total number of content in the target sublist that has been pushed has reached the total number of pushes.

[0015] In some embodiments, the step of determining the first future revenue value includes:

[0016] Based on the characteristics of the unpushed content in the candidate content set, the updated first future revenue prediction model is invoked to obtain the first future revenue value.

[0017] In some embodiments, the step of invoking an updated first future revenue prediction model based on the characteristics of unpushed content in the candidate content set to obtain a first future revenue value includes:

[0018] The features of the pushed content are used as the context features of the current state, where the current state refers to the state in which the latest pushed target sublist is viewed;

[0019] Using the features of the unpushed content in the candidate content set as the context features of the current state, the object features of the content recipient in the current state are obtained; and

[0020] Based on the preceding context features, the following context features, and the object features, a feature combination for the current state is constructed. The feature combination is then input into the updated first future revenue prediction model to obtain the first future revenue value.

[0021] In some embodiments, the step of searching for multiple candidate sub-lists based on unpushed content in the candidate content set includes:

[0022] Based on the interaction data generated from the unpushed content in the candidate content set and the target sublist that has been pushed, a search tree is generated, and based on the search tree, multiple candidate sublists are determined.

[0023] In some embodiments, the step of filtering the target sublist from the plurality of candidate sublists includes:

[0024] For each candidate sublist, predict the immediate revenue value generated after pushing the candidate sublist;

[0025] For each candidate sublist, predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed;

[0026] By combining the immediate return value and the second future return value, the total return value corresponding to the candidate sublist is obtained; and the candidate sublist with the largest total return value is selected as the target sublist.

[0027] In some embodiments, the prediction of the immediate revenue value generated after pushing the candidate sublist includes:

[0028] The list information of the candidate sublist is used as the strategy information of the next push strategy selected in the current state. Based on the feature set of the current state and the strategy information, the updated real-time revenue prediction model is called to predict the real-time revenue value generated after pushing the candidate sublist.

[0029] In some embodiments, the real-time revenue prediction model update step includes:

[0030] Obtain an instant benefit sample, wherein the instant benefit sample includes: a set of sample features in the first current sample state and sample strategy information of the next push strategy selected in the first current sample state;

[0031] Obtain the first tag corresponding to the instant benefit sample, where the first tag is the actual instant benefit value after the first sublist of samples to be pushed by the next push strategy is launched; and

[0032] Based on the instant profit sample and the first label, the first instant profit prediction model to be updated is updated to obtain the updated instant profit prediction model.

[0033] In some embodiments, the prediction of a second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed includes:

[0034] The features of the pushed content and the features of the content in the candidate sublist are both used as the context features in the next state, where the next state refers to the state in which the candidate sublist is viewed.

[0035] The features of the remaining content in the candidate content set are used as the context features in the next state, and the object features of the content receiver in the next state are obtained.

[0036] Based on the aforementioned contextual features, the aforementioned contextual features, and the object features, determine the feature set for the next state; and

[0037] Based on the feature set in the next state, the updated second future revenue prediction model is invoked to predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed.

[0038] In some embodiments, the second future revenue prediction model update step includes:

[0039] Obtain future revenue samples, wherein the future revenue samples include: a set of sample features in the second current sample state;

[0040] Obtain the real-time revenue value after the second sample sublist to be pushed to the next push strategy is launched, and obtain the sample feature set in the next sample state, wherein the next sample state is the state in which the second sample sublist to be pushed is viewed.

[0041] Based on the sample feature set under the second current sample state, the second future return prediction model to be updated is invoked to predict the current predicted future return value under the second current sample state.

[0042] Based on the sample feature set in the next sample state, the second future return prediction model to be updated is invoked to predict the next predicted future return value in the next sample state. Based on the actual real-time return value, the current predicted future return value, and the next predicted future return value, the current actual future return value in the second current sample state is determined, and the current actual future return value is used as the second label corresponding to the future return sample; and

[0043] Based on the future revenue sample and the second label, the second future revenue prediction model is updated to obtain an updated second future revenue prediction model.

[0044] Secondly, this application also provides a content push device, including:

[0045] The set determination module is used to determine a set of candidate content related to the push request in response to the push request;

[0046] The quantity determination module is used to determine the total number of pushes matching the push request; and

[0047] The list push module is used to execute multiple sub-tasks based on the candidate content set, and push the target sub-list obtained from each execution of the sub-task until the stopping condition is met; the number of contents in the target sub-list is less than the total number of pushes; wherein, the execution steps of any sub-task include: searching for multiple candidate sub-lists based on the unpushed contents in the candidate content set, and filtering the target sub-list from the multiple candidate sub-lists.

[0048] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the above-mentioned content push method.

[0049] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the above-described content push method.

[0050] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the above-described content push method.

[0051] Details of one or more embodiments of this application are set forth in the following drawings and description. Other features, objects, and advantages of this application will become apparent from the specification, drawings, and claims. Attached Figure Description

[0052] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0053] Figure 1 is an application environment diagram of a content push method in one embodiment;

[0054] Figure 2 is a flowchart illustrating a content push method in one embodiment;

[0055] Figure 3 is a flowchart illustrating the first future revenue value determination step in one embodiment;

[0056] Figure 4 is a schematic diagram of the steps for determining the candidate sublist in one embodiment;

[0057] Figure 5 is a schematic diagram of the content push process in one embodiment;

[0058] Figure 6 is a flowchart illustrating the second future revenue prediction model update step in one embodiment;

[0059] Figure 7 is a structural block diagram of a content push device in one embodiment;

[0060] Figure 8 is an internal structure diagram of a computer device in one embodiment. Detailed Implementation

[0061] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0062] Before introducing this application, the process of generating the target sub-list corresponding to the sub-tasks involved in this application will be explained. In this embodiment, the generation of one target sub-list is treated as a Markov decision process. Wherein:

[0063] S: A set of states, where a specific state s∈S represents the state of selecting a target sublist for exposure and being viewed. The user characteristics of the viewer in this state, the characteristics of the unpushed content in the candidate content set (which can be regarded as the following text features in this state), and the characteristics of the already pushed content located before the target sublist (which can be regarded as the preceding text features in this state) can be statistically analyzed. Based on the user characteristics, the corresponding preceding text features and following text features, the feature combination in this state is determined.

[0064] A: Action set, in this embodiment, can be understood as a set of multiple candidate sublists composed of content that has not been pushed, where a specific action a∈A, in this embodiment, a represents a certain candidate sublist in A.

[0065] R: Immediate benefit, R(s,a) represents the immediate benefit after taking action a in state s. In the embodiments of this application, it can be understood as the immediate benefit brought by a candidate sublist after selecting a candidate sublist for exposure in state s.

[0066] T: State transition function, T(s′|s,a) represents the probability that the state transitions to s′ after taking action a in state s.

[0067] π:S→A can be understood as the push strategy for generating the target sublist, that is, the strategy for selecting the target sublist from multiple candidate sublists.

[0068] V π (s0), also referred to as V later, represents the total revenue under the push strategy π and the initial state s0. This total revenue is obtained by combining immediate revenue and future revenue. Future revenue refers to the revenue that the unpushed content in the candidate content set can bring in a certain state. The specific formula is as follows:

[0069] Where s′ is the new state. γ is a coefficient. π(s0) refers to the push strategy selected in the initial state s0. V π(s′) refers to the total revenue under the push strategy π and the initial state s′.

[0070] During the personalized content push process, the push system will sequentially perform recall, coarse ranking, fine ranking, and re-ranking. The main purpose of re-ranking is to refine the sorting of the content obtained from fine ranking in order to generate a more accurate push list, thereby improving the quality of push results and user satisfaction.

[0071] For push notifications displayed in a two-column format, reordering can be completed at the point level. This involves combining the candidate set with the context perception to perform point-level re-prediction. For example, when predicting the (x+1)th push notification content, it is necessary to make a prediction based on the previous x generated push notification content by calling the model once. In other words, generating a push notification list with a growth length (number of contents) of M requires calling the model multiple times, which leads to a large latency. Furthermore, the entire process does not consider maximizing the target benefit.

[0072] Therefore, related technologies typically employ a list-level approach to reordering. This process involves first generating multiple candidate lists based on the content in the candidate set, and then estimating the final push list to be used for exposure from these candidate lists. However, if the push list required for a push request has a long growth length, such as M, and the candidate set contains N candidate contents, where N is much larger than M, then selecting M from N first presents a problem. There are M combinations, where each combination contains M elements (contents). For each combination, there are M! ways to arrange the M elements (i.e., M factorial); therefore, there are a total of Given a permutation choice, the search space is... That is, it exists A candidate list.

[0073] Because the number of candidate contents obtained from fine-ranking is large (the value of N is very large), it is understandable that there is a combinatorial explosion problem, resulting in a large search space. It is difficult to quickly find a suitable push list in the huge search space, and the content push effect is not good.

[0074] In this embodiment, in response to a push request, a set of candidate content related to the push request is determined; the total number of pushes matching the push request is determined; multiple sub-tasks are executed based on the candidate content set, and the target sub-lists obtained from each sub-task are pushed until a stopping condition is met; the number of contents in the target sub-list is less than the total number of pushes. In other words, the total task of generating the total number of pushes is broken down into multiple sequential sub-tasks, and the growth length of the target sub-list generated by each sub-task is less than the growth length of the list corresponding to the total task. The execution steps of any sub-task include: searching for multiple candidate sub-lists based on the unpushable content in the candidate content set, and selecting the target sub-list from these candidate sub-lists. That is, for each sub-task, multiple candidate sub-lists with shorter growth lengths are selected from a selection range less than or equal to the candidate content set, eliminating the need to select a list with a longer growth length from the total number of pushes. This greatly reduces the search space and makes it easier to select a more suitable target sub-list from this search space, thereby improving the content push effect.

[0075] To illustrate the search space of subtasks in this application embodiment, for the (i+1)th subtask, the number of contents in the target sublist is K, where K is less than M, and the number of unpushed contents in the candidate content set is Ni×K. In this case, K is first selected from Ni×K, and... Since there are K combinations, and each combination contains K items, there are K! ways to arrange the items in each combination. Therefore, there exists... There are candidate sublists, and at this point, the search space is... Compared to the search space in the related technologies mentioned above, Clearly, the search space in this embodiment is smaller, making it easier to filter out a more suitable target sublist, thus significantly improving the content push effect.

[0076] The content push method provided in this application embodiment can be applied to the application environment shown in Figure 1. The terminal 102 communicates with the server 104 via a network. The data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104, or it can be located in the cloud or on another network server.

[0077] Terminal 102 initiates a push request to server 104. In response to the push request, server 104 determines a set of candidate content related to the push request. Server 104 determines the total number of pushes that match the push request. Server 104 executes multiple sub-tasks based on the candidate content set and pushes the target sub-list obtained from each execution of the sub-task to terminal 102 so that terminal 102 exposes the target sub-list until a stopping condition is met. The number of contents in the target sub-list is less than the total number of pushes. The execution steps of any sub-task include: server 104 searching for multiple candidate sub-lists based on the unpushable contents in the candidate content set and filtering the target sub-list from the multiple candidate sub-lists.

[0078] Terminal 102 is a content receiving terminal. The account logged into terminal 102 can be understood as the content recipient's account. Terminal 102 is used to receive the target sublist. Terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, and projection devices. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted displays. Head-mounted displays can be virtual reality (VR) devices, augmented reality (AR) devices, and smart glasses. Server 104 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services.

[0079] In an exemplary embodiment, as shown in FIG2, a content push method is provided. Taking the application of this method to server 104 in FIG1 as an example, the method includes the following steps S202 to S206. Wherein:

[0080] Step S202: In response to the push request, determine the set of candidate content related to the push request.

[0081] Here, a push request refers to a request to push content, which includes, but is not limited to, videos, notes, and items. For example, the terminal generates a push request in response to a swipe operation on the content display interface and sends it to the server. For example, the terminal obtains search terms in response to input in the search box on the content display interface, generates a push request based on the search terms, and sends it to the server. For example, the terminal automatically generates a trigger request upon detecting an opening operation of a target application; for example, the terminal automatically triggers the generation of push requests and sends them to the server after a preset time interval.

[0082] The candidate content set is a collection selected from the content pool based on push requests. The candidate content set contains a preset number of candidate content items, for example, N candidate content items.

[0083] Optionally, in response to a push request, the server, based on the content provided in the content pool, sequentially performs recall, coarse ranking, and fine ranking to obtain a candidate content set containing multiple candidate contents. This candidate content set can be considered as the set of finely ranked content obtained from the fine ranking.

[0084] Optionally, in response to a push request, the server retrieves the search terms from the push request, filters out candidate content with a high degree of relevance to the search terms from the content pool, and compiles the set of filtered candidate content into a candidate content set.

[0085] Step S204: Determine the total number of push notifications that match the push request.

[0086] The total number of pushes that match a push request refers to the total number of contents M that theoretically need to be pushed for each push request.

[0087] It should be noted that the total number of contents N in the candidate content set is greater than the total number of pushes M.

[0088] Step S206: Execute multiple subtasks based on the candidate content set, and push the target sublist obtained from each execution of the subtask until the stopping condition is met; the number of contents in the target sublist is less than the total number of pushes; wherein, the execution steps of any subtask include: searching for multiple candidate sublists based on the unpushed contents in the candidate content set, and filtering the target sublist from the multiple candidate sublists.

[0089] Each subtask generates a target sublist, with each sublist containing the same number of items. However, the number of items in each target sublist can differ. For example, based on feedback from the current target sublist, the number of items in the next target sublist can be adjusted. For instance, if the number of times content recipients have saved, clicked, or commented on the content in the current target sublist exceeds the upper limit, the number of items in the next target sublist increases. If the number exceeds the lower limit but is below the upper limit, the number of items in the current and next target sublists remains the same; if the number is below the lower limit, the number of items in the next target sublist decreases.

[0090] The number of items in each target sublist must be less than the total number of push notifications.

[0091] Stop conditions refer to the conditions under which the execution of a subtask is stopped. For example, a stop condition could be that the number of times a subtask is executed meets a preset number; a stop condition could also be that the current number of push requests reaches the total number of pushes; or a stop condition could be that the unpushable content in the candidate content set cannot meet the efficiency requirements.

[0092] The candidate sublist is a sublist to be filtered, and the number of contents in the candidate sublist is equal to the number of contents in the target sublist.

[0093] Optionally, the server determines the number of contents in the target sublist and, based on this number and the total number of pushes, determines a preset number of times to execute the subtask. The server executes the subtask multiple times based on the candidate content set, pushing the target sublist obtained from each subtask execution, until the number of executed subtasks meets the preset number. For example, if the number of contents is K and the total number of pushes is M, the quotient is calculated by dividing M by K, and the preset number of pushes is determined based on the quotient.

[0094] Optionally, after completing the current subtask, check whether the current number of push requests has reached the total number of pushes. If yes, stop. If not, execute the next subtask.

[0095] Optionally, before executing the current subtask, it is determined whether the unpushed content in the candidate content set can meet the benefit requirements. If it does, the current subtask is executed; otherwise, it is stopped.

[0096] In any of the three optional instances above, the execution steps of any subtask include: searching for multiple candidate sublists based on the unpushed content in the candidate content set, and selecting the target sublist from the multiple candidate sublists.

[0097] It should be noted that in related technologies, a single push request generates a target list containing a total of M pushes. However, while content recipients can quickly scroll through a two-column layout, they cannot view all M items in a short time. Furthermore, statistical analysis shows that most content recipients' maximum scroll depth is less than M. Therefore, the simultaneous generation of M items in related technologies easily leads to a waste of computing power. In this application, pushes are made in multiple sessions, with each push's target sublist growing to a length less than M. This not only facilitates browsing but also avoids wasting computing power.

[0098] In the aforementioned content push method, in response to a push request, a set of candidate content related to the push request is determined; the total number of pushes matching the push request is determined; multiple subtasks are executed based on the candidate content set, and the target sublists obtained from each subtask are pushed until a stopping condition is met; the number of contents in the target sublist is less than the total number of pushes. In other words, the overall task of generating the total number of pushes is broken down into multiple sequential subtasks, and the growth length of the target sublist generated by each subtask is less than the growth length of the list corresponding to the overall task. The execution steps of any subtask include: searching for multiple candidate sublists based on the unpushable content in the candidate content set, and then selecting the target sublist from these candidate sublists. That is, for each subtask, multiple candidate sublists with shorter growth lengths are selected from a range of candidate content sets that are less than or equal to the total number of pushes, eliminating the need to select a list with a longer growth length from the total number of pushes. This significantly reduces the search space and makes it much easier to select a more suitable target sublist from this search space, thereby improving the content push effect.

[0099] In some embodiments, the stopping condition includes at least one of the following: a first future revenue value determined by the unpushed content in the candidate content set does not reach a preset revenue threshold; or the total number of content in the pushed target sublist reaches the total number of pushes.

[0100] The first future revenue value refers to the future revenue that the unpromoted content in the candidate content set can generate. If the first future revenue value determined by the unpromoted content in the candidate content set does not reach the preset revenue threshold, it can be understood that the unpromoted content in the candidate content set mentioned above cannot meet the revenue requirements.

[0101] The pushed target sublist refers to the target sublist that has already been pushed. For example, in response to a push request, the xth subtask has been completed, and the pushed target sublists are target sublist 1 generated by the 1st subtask, ..., target sublist x generated by the xth subtask.

[0102] The total number of items in the target sublists that have been pushed has reached the total number of pushes. This can also be understood as the current number of pushes related to the push request reaching the total number of pushes, as mentioned earlier. For example, in response to a push request, the xth subtask has been completed, and x target sublists have been pushed. If the growth length of each target sublist is K, then the current number of pushes related to the push request is the product of K and x.

[0103] The above text mentioned how to push content based on individual stop conditions. The following describes the content push process in this embodiment of the application, combining both stop conditions:

[0104] Step 1: For each subtask, before the subtask is executed, the server determines whether the first future revenue value determined by the unpushed content in the candidate content set reaches the preset revenue threshold.

[0105] Step 2: If the push request is not met, the push process for that content request is stopped. If the push request is met, the subtask is executed. During the execution of the subtask, the server searches for multiple candidate sublists based on the unpushable content in the candidate content set, selects the target sublist from these candidate sublists, and returns the target sublist to the terminal for push.

[0106] Step 3: The server determines whether the total number of contents in the target sublist that has been pushed has reached the total number of pushes. If it has, the server stops pushing content for that request. If it has not, the server treats each item in the target sublist as pushed content, updates the unpushed content in the candidate content set based on the target sublist, returns the unpushed content in the candidate content set, and continues execution until the total number of contents in the target sublist that has been pushed reaches the total number of pushes.

[0107] For example, determining whether to start a subtask can also involve the server determining the estimated resource consumption incurred in generating the subtask. If the first future revenue value reaches a preset revenue threshold and the resource consumption is less than the consumption threshold, then the server returns to the step of starting to execute the subtask and continues execution.

[0108] If the first future revenue value does not reach the preset revenue threshold and the resource consumption is greater than or equal to the consumption threshold, then the push request for content will be stopped.

[0109] In some scenarios, this subtask can be executed when the first future revenue value reaches a preset revenue threshold and the resource loss is greater than or equal to the loss threshold. Of course, it can also be skipped, depending on the actual needs.

[0110] Resource consumption can include the time spent generating subtasks or the CPU (Central Processing Unit) used.

[0111] For example, taking the i-th subtask as an example, before executing the i-th subtask, it is determined that there are y unpushed content items in the candidate content set (y = N - (i-1) × k), and it is estimated whether the first future revenue value brought by the y unpushed content items reaches the preset revenue threshold. If it does not reach the threshold, the i-th subtask is stopped from starting, and the push request is stopped from being responded to.

[0112] If the target is reached, the i-th subtask is initiated. Specifically, the server searches for C candidate sublists from y unpushable content, with each candidate sublist having a growth length of k. The server then selects the target sublist from the multiple candidate sublists and returns the target sublist to the terminal for push.

[0113] The server counts the total number of contents in the target sublist that have been pushed, i×k, and determines whether the total number i×k is greater than or equal to the total number of pushes N. If it is, the push process stops. If it is not, the server updates the unpushable contents, obtaining z unpushable contents (z = Ni×k), and returns the unpushable contents from the candidate content set. The server then checks whether the stopping condition has been met and continues execution until the total number of contents in the target sublist that have been pushed reaches the total number of pushes.

[0114] For example, after determining that the browsing depth of the previous target sublist has reached a preset depth, the server returns to the step of determining whether the first future revenue value has reached a preset revenue threshold and continues to execute.

[0115] The previous target sublist is generated from the previous subtask.

[0116] For example, the preset depth could be the growth length of the target sublist. In this case, after the content recipient has browsed the previous target sublist, the process returns to the step of determining whether the first future revenue value has reached the preset revenue threshold. Alternatively, the preset depth could be less than the growth length of the target sublist. For instance, after the content recipient has browsed 80% of the content in the previous target sublist, the process returns to the step of determining whether the first future revenue value has reached the preset revenue threshold.

[0117] In this embodiment, by setting the stopping condition to a first future revenue value determined by the unpushable content in the candidate content set, if the preset revenue threshold is not reached, it can effectively predict whether the unpushable content can generate a high-revenue target sublist, effectively avoiding the generation of low-revenue subtasks, preventing wasted computing power, and saving computing power. By setting the stopping condition to the total number of contents in the already pushed target sublist reaching the total number of pushes, it ensures that the push request requirements can be met, improving the user experience.

[0118] In some embodiments, the step of determining the first future revenue value includes: based on the characteristics of the unpushed content in the candidate content set, calling the updated first future revenue prediction model to obtain the first future revenue value.

[0119] The updated first future return prediction model is used to predict future returns. This updated first future return prediction model is a neural network model.

[0120] Optionally, the server determines the content that has not been pushed in the candidate content set, inputs the features of the unpushable content into the updated first future revenue prediction model, and outputs the first future revenue value.

[0121] For example, when it is necessary to combine resource consumption to determine whether to start a subtask, the updated first future revenue prediction model can also determine resource consumption. That is, the characteristics of the unpushed content are input into the updated first future revenue prediction model, and the first future revenue value and resource consumption are output.

[0122] In this embodiment, based on the characteristics of the unpushable content in the candidate content set, the updated first future revenue prediction model can more quickly and timely predict the first future revenue value that the unpushable content can bring.

[0123] In some embodiments, as shown in Figure 3, a flowchart illustrating the step of determining the first future revenue value is presented. Based on the characteristics of unpushed content in the candidate content set, an updated first future revenue prediction model is invoked to obtain the first future revenue value, including:

[0124] Step S302: Use the features of the pushed content as the context features of the current state. The current state refers to the state in which the latest pushed target sublist is viewed.

[0125] The latest push target sublist can be pushed in response to a push request or in response to a previous push request.

[0126] For example, before the first subtask (the first subtask required to be executed in response to a push request) is started, the latest push target sublist is the sublist that was last pushed in response to the previous push request.

[0127] Before enabling non-first-time subtasks (non-first-time subtasks required to be executed in response to push requests), the latest push target sublist is the target sublist obtained in response to the previous subtask of this push request.

[0128] The pushed content includes at least the content of the latest pushed target sublist, for example, only the content of the latest pushed target sublist, or the content of the list preceding the latest pushed target sublist and the content of the latest pushed target sublist.

[0129] Among them, the first future revenue value is the future revenue assessed based on the content that has not been pushed. Future revenue is long-term revenue, which can also be understood as long-term, potential effects or returns. It can reflect users' satisfaction with the push application platform. The higher the future revenue value, the better the satisfaction, and the better it can improve users' dependence and stickiness to the push application platform.

[0130] Optionally, for each subtask, the server determines the latest target sublist and uses the latest target sublist as the pushed content, and uses the features of the pushed content as the context features of the current state.

[0131] For example, for the i-th subtask, if i equals 1, the server will use the features of each item in the sublist last pushed in response to the previous push request as the context features in the current state.

[0132] If i is greater than 1, the server will use the features of each item in the target sublist of the (i-1)th push in response to the push request as the context features of the current state.

[0133] Step S304: Use the features of the unpushed content in the candidate content set as the context features in the current state to obtain the object features of the content recipient in the current state.

[0134] Optionally, the server determines the unpushable content from the candidate content based on the contents of the target sublist obtained from the completed subtasks. The server uses the unpushable content as the context feature of the current state. The server obtains the object features of the content recipient.

[0135] For example, for the i-th subtask, determine ((i-1)×k) contents obtained from the first i-1 subtasks and remove them from the candidate content set. The features of each content in the removed set are used as the context features in the current state.

[0136] Step S306: Based on the preceding context features, following context features, and object features, construct a feature combination for the current state, input the feature combination into the updated first future revenue prediction model, and obtain the first future revenue value.

[0137] In this embodiment, by using the features of the pushed content and the features of the unpushable content in the candidate content set as the features of the context in the current state, and based on the object features of the content recipient in the current state and the features of the context, the updated first future revenue prediction model can comprehensively and accurately predict the future revenue of the current state by integrating the detailed information of the preceding and following texts and the object, thus ensuring the accuracy of the future revenue prediction.

[0138] In some embodiments, multiple candidate sublists are searched based on the content that has not been pushed in the candidate content set, including: generating a search tree based on the interaction data generated by the content that has not been pushed in the candidate content set and the target sublist that has been pushed, and determining multiple candidate sublists based on the search tree.

[0139] Interaction data refers to the data fed back by the content recipient, including but not limited to the number of likes, shares, comments, and browsing time.

[0140] A search tree is a tree-like data structure built during the execution of a bundle search algorithm to represent and search the space of possible solutions.

[0141] Optionally, for the first layer, the content in the already pushed target sublist is used as the preceding content of the first layer. Based on the content information of the preceding content and the content information of the unpushed content, a scoring model is invoked to score the unpushed content, and a predetermined number of unpushed content with the highest scores are used as the first-layer leaf nodes. Each first-layer leaf node corresponds to a candidate sublist, and each first-layer leaf node is the content in the first push position of the corresponding candidate sublist.

[0142] For the current layer that is not the first layer, obtain each leaf node of the previous layer. For each leaf node of the previous layer, determine the first leaf node from which each leaf node of the previous layer originates, and use each intermediate leaf node between the first leaf node, the previous leaf node, and the first leaf node pointing to the previous leaf node as the corresponding candidate sublist of the preceding content of the current layer.

[0143] Take all other content in the candidate content set except for the content mentioned above, and use it as the content to be filtered in the current layer corresponding to this candidate sublist. Based on the content information of the content mentioned above and the content to be filtered, call the scoring model to score each content to be filtered. The content to be filtered with the highest score is taken as the current layer leaf node pointed to by the previous layer leaf node.

[0144] Once the leaf nodes of the last level are determined, stop generating the search tree.

[0145] The content information of the preceding text should at least include the characteristics of the content and the order in which each piece of content is arranged. The content information of other content should at least include the characteristics of the other content, and the content information of content not pushed should at least include the characteristics of the content not pushed.

[0146] Optionally, after determining the search tree, the server traverses the search tree layer by layer to determine the path from each first-level leaf node to the corresponding last-level leaf node. For each path, the order of each leaf node is determined sequentially according to the direction from the first-level leaf node to the corresponding last-level leaf node in the path. The leaf nodes in the path are arranged sequentially according to the order corresponding to the path to generate the candidate sublist corresponding to the path.

[0147] For example, as shown in Figure 4, this is a schematic diagram of the candidate sublist determination steps in one embodiment. The specific steps for the candidate sublist generation stage in Figure 4 are as follows:

[0148] Step 4.1: The server determines the beam width and the number of beam search layers. The beam width is used to determine the number of candidate sublists, i.e., to determine the preset number in the first layer. As shown in Figure 4, if the beam width is 2, then 2 candidate sublists are ultimately determined.

[0149] Step 4.2: If the content not pushed includes Content1, Content2, Content3, and Content4.

[0150] Starting from the first layer, the content of the already pushed target sublists is used as the preceding content of the first layer. Based on the content information of the preceding content and the content information of the unpushed content, a scoring model is invoked to score the unpushed content, and the two content items with the highest scores are selected as Content2 and Content4. These two content items are used as leaf nodes of the first layer, and each leaf node of the first layer is used as the content of the first push position in the corresponding candidate sublist. For example, the content of the first push position in candidate sublist 1 is Content2, and the content of the first push position in candidate sublist 2 is Content4.

[0151] For the second level, Content2 is the preceding content of candidate sublist 1 in the second level, and Content1, Content3 and Content4 are the content to be filtered corresponding to candidate sublist 1 in the second level. Thus, Content1 is selected from the content to be filtered as the leaf node of the second level.

[0152] Similarly, Content4 is the preceding content of candidate sublist 2 at the second level, and Content1, Content2 and Content3 are the content to be filtered corresponding to candidate sublist 2 at the second level. Thus, Content1 is selected from the content to be filtered as the leaf node of the second level.

[0153] At this point, if path 1: Content2 points to Content1, then the candidate sublist 1 of path 1 is [Content2, Content1]. Content2 is pushed first, and Content1 is pushed later.

[0154] Path 2: If Content4 points to Content1, then the candidate sublist 2 of Path 2 is [Content4, Content2]. Content4 is pushed first, and Content2 is pushed later.

[0155] In this embodiment, based on the unpushable content in the candidate content set and the interaction data generated from the target sublist that has already been pushed, a search tree is generated using a beam search algorithm with a breadth-first strategy. This search tree allows for the faster generation of multiple ordered sequences, i.e., multiple candidate sublists, ensuring the efficiency of the candidate sublists.

[0156] In some embodiments, selecting a target sublist from multiple candidate sublists includes: for each candidate sublist, predicting the immediate revenue value generated after pushing the candidate sublist; for each candidate sublist, predicting the second future revenue value determined by the remaining content in the candidate content set after pushing the candidate sublist; fusing the immediate revenue value and the second future revenue value to obtain the total revenue value corresponding to the candidate sublist; and selecting the candidate sublist with the largest total revenue value as the target sublist.

[0157] The immediate benefit value refers to the value of immediate benefits, which reflects the direct and short-term effects of the push list or content after it is sent. For example, the higher the immediate benefit value, the more interactive the user (including but not limited to clicking, forwarding, saving, and purchasing) is after the push list or content is sent.

[0158] The second future revenue value is the future revenue determined based on the remaining content. For example, the unpushable content includes Content1 to Content100. After determining multiple candidate sublists, for candidate sublist 1 (containing Content1 to Content10), the remaining content refers to Content11 to Content100, that is, the future revenue that these 90 pieces of content can generate.

[0159] Optionally, for each candidate sublist, the server invokes an updated real-time revenue prediction model to determine the real-time revenue value based on the characteristics of the content in the candidate sublist. After pushing the candidate sublist, the server determines the remaining content in the candidate content set. Based on the characteristics of the remaining content and the characteristics of the content in the pushed candidate sublist, the server invokes an updated second future revenue prediction model to predict the second future revenue value determined by the remaining content in the candidate content set after pushing the candidate sublist.

[0160] The server obtains the weights of the immediate return value and the second future return value, and then performs a weighted sum of the immediate return value and the second future return value to obtain the total return value of the candidate sublist.

[0161] The server selects the candidate sublist with the largest total revenue as the target sublist.

[0162] For example, continuing with Figure 4, after determining candidate sublist 1 and candidate sublist 2, the candidate sublists are evaluated. Specifically, based on the updated immediate revenue prediction model, immediate revenue is evaluated to obtain the immediate revenue value. Based on the updated second future revenue prediction model, future revenue is evaluated to obtain the second future revenue value. In this way, the total revenue value of each of candidate sublist 1 and candidate sublist 2 can be determined, and candidate sublist 1 with the highest total revenue value: [Content2, Content1], is selected as the target sublist for the subtask.

[0163] In this embodiment, for each candidate sublist, the total revenue of the candidate sublist is obtained by comprehensively considering the immediate revenue value and the second future revenue value corresponding to the candidate sublist. This effectively avoids getting trapped in local optima, thereby ensuring that the push notifications for the target sublist can maximize the overall revenue. While providing accurate push notifications to users, it also takes into account the efficiency of the push service.

[0164] In some embodiments, predicting the immediate benefit value generated after pushing the candidate sublist includes: using the list information of the candidate sublist as the strategy information of the next push strategy selected in the current state, and calling the updated immediate benefit prediction model based on the feature set and strategy information in the current state to predict the immediate benefit value generated after pushing the candidate sublist.

[0165] The push strategy refers to the strategy for selecting the target sublist for push. The strategy information includes the list information of the candidate sublist selected by the push strategy. The list information includes, but is not limited to, the content identifier of each item in the selected candidate sublist, the order of each item (i.e., the order in which they are placed in the candidate sublist), and the characteristics of each item.

[0166] Optionally, after determining the feature set of the current state, the server uses each candidate sublist in the multiple candidate sublists as the next push strategy selected in the current state, and uses the list information of the candidate sublists as the strategy information of the next push strategy.

[0167] The server combines the policy information with the feature set of the current state to obtain the combined information. The combined information is then input into the updated real-time revenue prediction model to predict the real-time revenue that can be generated after the candidate sublist is pushed, so as to obtain the real-time revenue value corresponding to the candidate sublist.

[0168] For example, when executing the third subtask, the target sublist 2 determined by the second subtask (the latest target sublist) is being pushed, and the current state s refers to the state in which target sublist 2 has been viewed.

[0169] The server uses the feature set determination process described above. After determining the feature set in the current state, the server obtains P candidate sublists, i.e., P push strategies, resulting in a strategy set {π}. For push strategy π in the strategy set {π}... j (j takes values ​​from 1 to P), which means pushing the candidate sublist j, and at this time, the push strategy π under the current state s is applied. j , denoted as π j (s), which includes the feature set under the current state s and π. j The strategy information of (s) is used as input combination and fed into the updated real-time return prediction model, outputting the corresponding real-time return value R(s,π). j (s)).

[0170] Understandably, the other P-1 candidate sublists are obtained in a similar manner to yield their corresponding immediate reward values. Therefore, subsequently, based on P immediate reward values ​​and P second future reward values, a candidate sublist with the highest total reward can be selected from the P candidate sublists, such as candidate sublist 1. This candidate sublist is then used as the target sublist for the third subtask.

[0171] In this embodiment, the list information of the candidate sublist is used as the strategy information of the next push strategy selected in the current state. In this way, based on the feature set and strategy information in the current state, the updated real-time benefit prediction model is called to accurately predict the real-time benefit value generated after pushing the candidate sublist, and to express the short-term benefit that the candidate sublist can bring in an intuitive and accurate form.

[0172] In some embodiments, predicting the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed includes: using the features of the pushed content and the features of the content in the candidate sublist as the context features in the next state, where the next state refers to the state in which the candidate sublist is viewed; using the features of the remaining content in the candidate content set as the context features in the next state, and obtaining the object features of the content recipient in the next state; determining the feature set in the next state based on the context features, context features, and object features; and calling the updated second future revenue prediction model based on the feature set in the next state to predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed.

[0173] As mentioned earlier, the remaining content is obtained by removing the contents of the candidate sublist from the unpushable content, in order to estimate the future revenue generated by the remaining content after pushing the candidate sublist. The second future revenue value and the first future revenue value mentioned earlier are estimated differently, therefore they are not equivalent.

[0174] The second future revenue prediction model is used to predict future revenue and is a model built based on a neural network. The first future revenue prediction model can be the same as or different from the second future revenue prediction model. For example, when the first future revenue prediction model is not used to output resource depletion, it is the same as the second future revenue prediction model; when the first future revenue prediction model is also used to output resource depletion, it is different from the second future revenue prediction model.

[0175] Optionally, for each candidate sublist, the server uses the features of the already pushed content and the content in that candidate sublist as the context features in the next state. The server retrieves the unpushed content for the subtask, removes the content in the candidate sublist from the unpushed content to obtain the remaining content, uses the features of the remaining content as the context features in the next state, and uses the object features in the current state as the object features in the next state.

[0176] Based on the preceding context features, following context features, and object features, the server constructs a feature set for the next state; it inputs the feature set for the next state into the updated second future revenue prediction model, predicts the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed, and outputs the prediction.

[0177] For example, if the current state is s and the next state is s′, then after calling the updated second future revenue prediction model, the second future revenue value V2(s′) will be output.

[0178] For example, Figure 5 illustrates a content push process in one embodiment. Referring to Figure 5, the user, as the content recipient, logs into the target application with a target account. The target application is an application with content push functionality. The terminal logged into by the target account is the content receiving terminal. The entire process involves interaction between two ends: the server and the content receiving terminal.

[0179] The following will combine the preceding text to understand the overall technical concept of the push notification content:

[0180] Step 5.1: The content terminal sends a push request to the server. The server responds to the push request and, based on the content pool, performs recall, coarse ranking, and fine ranking in sequence to filter the content and obtain a set of candidate content that includes the content that has not been pushed. Multiple sub-tasks are then executed based on the content candidate set.

[0181] Step 5.2: For each subtask, before executing the subtask, the server performs an intelligent computing power assessment phase, which determines whether the future revenue assessment passes based on the characteristics of the unpushed content. If it passes, proceed to step 5.3 below; if it fails, proceed to step 5.5 below.

[0182] Specifically, the server uses the features of already pushed content as the context features of the current state, where the latest pushed target sublist is being viewed. It then uses the features of unpushed content from the candidate content set as the context features of the current state, obtaining the object features of the content recipient in the current state. Based on the context features, context features, and object features, a feature combination for the current state is constructed. This feature combination is then input into the updated first future revenue prediction model to obtain the first future revenue value.

[0183] The server determines whether the first future revenue value has reached the preset revenue threshold. If it has, the future revenue assessment is deemed successful; otherwise, the future revenue assessment is deemed unsuccessful.

[0184] Step 5.3: The server performs the subtask execution phase, which means starting the subtask to generate the target subtask corresponding to the subtask. In other words, based on the unpushed content, multiple candidate sublists are searched, and the candidate sublist with the highest total revenue is selected from the multiple candidate sublists and determined as the target subtask.

[0185] Specifically, the server obtains the interaction data (real-time feedback information) sent by the content receiving terminal regarding the target sub-list that has been pushed. Based on the unpushed content and the interaction information, it uses beam search to generate a search tree, and determines multiple candidate sub-lists corresponding to the subtask based on the search tree. The steps for determining the search beam are detailed above.

[0186] For each candidate sublist, the server uses the list information of the candidate sublist as the strategy information of the next push strategy selected in the current state, and calls the updated real-time revenue prediction model based on the feature set and strategy information in the current state to predict the real-time revenue value generated after pushing the candidate sublist.

[0187] The server uses the features of the already pushed content and the features of the content in the candidate sublist as the context features in the next state, where the candidate sublist is viewed. It also uses the features of the remaining content in the candidate content set as the context features in the next state, and obtains the object features of the content recipient in the next state. Based on the context features, context features, and object features, the server determines the feature set for the next state. Based on the feature set in the next state, it calls the updated second future revenue prediction model to predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed.

[0188] The server performs a weighted summation based on the weights of the immediate and second future revenue values ​​to obtain the total revenue value corresponding to the candidate sublist. It then determines the maximum total revenue value from among the total revenue values ​​of multiple candidate sublists and uses the candidate sublist corresponding to the maximum total revenue value as the target sublist for the subtask. The target sublist is then pushed to the user's content receiving terminal.

[0189] Step 5.4: The server determines whether the total number of contents in the target sublist that has been pushed has reached the total number of pushes. If it has, the server stops pushing content for that push request. If it has not, the server treats each content in the target sublist as pushed content, updates the unpushed content in the candidate content set based on the target sublist, returns the unpushed content in the candidate content set, and continues execution until the total number of contents in the target sublist that has been pushed reaches the total number of pushes.

[0190] Step 5.5: End the response to the push request.

[0191] In this embodiment, to predict the future revenue after the candidate sublist is pushed, it is assumed that the candidate sublist is the latest pushed sublist, and its corresponding state is the next state. Based on the contextual features, background features, and object features of the next state, an updated second future revenue prediction model is invoked. This model comprehensively considers detailed information from the three dimensions of context and object to make a reasonable and effective prediction of the future revenue of the next state. This allows for the prediction of the total revenue generated by each candidate sublist after its separate push, enabling the selection of the target sublist that can bring considerable revenue and maximizing overall revenue. This approach achieves accurate push notifications to users while also considering the efficiency of the push service.

[0192] In some embodiments, the real-time revenue prediction model update step includes: obtaining real-time revenue samples, which include a set of sample features in a first current sample state and sample strategy information of the next push strategy selected in the first current sample state; obtaining a first tag corresponding to the real-time revenue sample, which is the actual real-time revenue value after the first push sample sublist targeted by the next push strategy is pushed online; and updating the first real-time revenue prediction model to be updated based on the real-time revenue samples and the first tag to obtain the updated real-time revenue prediction model.

[0193] For example, every preset time period, or based on actual business needs, the currently used real-time revenue prediction model is selected as the real-time revenue prediction model to be updated, and the process of updating the real-time revenue prediction model to be updated is initiated.

[0194] The server acquires real-time benefit samples, which include a set of sample features in the first current sample state and sample strategy information for the next push strategy selected in the first current sample state. The first current sample state refers to the state in which the latest pushed first sample sublist is being viewed. The next push strategy refers to the strategy of pushing any selected first sample sublist to be pushed, and the strategy information refers to the list information of this first sample sublist to be pushed.

[0195] The server calculates the real-time revenue generated by the first sublist of samples to be pushed after it goes live, and obtains the actual real-time revenue value.

[0196] The server inputs the real-time return sample into the real-time return prediction model to be updated, outputs the predicted real-time return value, and updates the real-time return prediction model based on the difference between the predicted real-time return value and the actual real-time return value, thus obtaining the updated real-time return prediction model.

[0197] In this embodiment, by randomly selecting a push strategy and returning it to online permission, the real-time benefits brought by the push strategy after it goes online are statistically analyzed to obtain the real-time benefit value. Thus, the real-time benefit value can be used as the first label to update the real-time benefit prediction model in a timely and accurate manner.

[0198] In some embodiments, as shown in Figure 6, a flowchart illustrating the second future revenue prediction model update step in one embodiment is presented. The second future revenue prediction model update step includes:

[0199] Step S602: Obtain future revenue samples, which include the sample feature set of the second current sample state.

[0200] The second current sample status refers to the status of the latest pushed second sample sublist being viewed.

[0201] Step S604: Obtain the real-time benefit value after the second push sample sublist is launched and pushed to the next push strategy, and obtain the sample feature set in the next sample state. The next sample state is the state in which the second push sample sublist is viewed.

[0202] Step S606: Based on the sample feature set under the second current sample state, call the second future return prediction model to be updated to predict the current predicted future return value under the second current sample state.

[0203] Step S608: Based on the sample feature set in the next sample state, call the second future return prediction model to be updated, predict the next predicted future return value in the next sample state, and determine the current real future return value in the second current sample state based on the real real return value, the current predicted future return value, and the next predicted future return value. The current real future return value is used as the second label corresponding to the future return sample.

[0204] For example, let the second current sample state be s. s The current predicted future return value V2(s) under the second current sample state s );

[0205] The second sublist of samples to be pushed is L. s The L s The actual real-time revenue obtained after going live is R. s The next sample state is s′ s The next predicted future return value 2(s′) under the next sample state s ).

[0206] Get R s With V2(s′) s Each has its own weight, and R is calculated according to its weight. s With V2(s′) s Perform a weighted summation to obtain the sum value, and then calculate the sum value and V2(s) s The difference between the two values ​​is used to obtain the error value.

[0207] Obtain the error coefficient, and multiply the error coefficient by the error value and sum to V2(s). s The values ​​are then superimposed to obtain the current true future return value.

[0208] It should be noted that the future benefits in the current state can be obtained by combining the immediate benefits corresponding to the push strategy with the future benefits in the next state (the state obtained by executing the push strategy).

[0209] Therefore, the sum mentioned above reflects the future returns of the second current sample state, and the difference obtained therefrom yields the theoretical error value. Thus, based on the product of this error value and a predetermined error coefficient, the actual error value after going live is determined. Therefore, based on this actual error value and the current predicted future returns of the second current sample state predicted by the second future return prediction model to be updated, the actual future returns of the second current sample state can be determined.

[0210] Step S610: Based on the future revenue sample and the second label, update the second future revenue prediction model to obtain the updated second future revenue prediction model.

[0211] For example, the difference between the current predicted future return value and the current actual future return value under the second current sample state is used to update the second future return prediction model, resulting in an updated second future return prediction model. For example, this difference can be the product of the error coefficient and the error value mentioned above.

[0212] It should be noted that if the first future revenue prediction model and the second future revenue prediction model are equal, then the updated second future revenue prediction model can be directly used as the updated second future revenue prediction model.

[0213] If they are not equal, the update steps for the first future revenue prediction model are as follows:

[0214] Obtain another future revenue sample, which includes the sample feature set of the third current sample state; obtain the real instant revenue value after the third push sample sublist is pushed online for the next push strategy, and obtain the sample feature set of the next sample state, which is the state in which the third push sample sublist is viewed; based on the sample feature set of the third current sample state, call the first future revenue prediction model to be updated, and output the current predicted future revenue value and the corresponding predicted resource consumption of the third current state; based on the sample feature set of the next sample state, call the first future revenue prediction model to be updated, and output the next predicted future revenue value and the corresponding predicted resource consumption of the next sample state; based on the real instant revenue value, the current predicted future revenue value, and the next predicted future revenue value, determine the current real future revenue value of the third current sample state, and use the current real future revenue value as the third label corresponding to the future revenue sample; calculate the real resource consumption when generating the third push sample sublist, and use the real resource consumption as the fourth label; based on the future revenue sample, the third label, and the fourth label, update the first future revenue prediction model to obtain the updated first future revenue prediction model.

[0215] In this embodiment, the actual real-time revenue value determined after the second sample sublist to be pushed is launched is used, combined with the predicted future revenue values ​​corresponding to the second current sample state and the next sample state, to accurately obtain the actual future revenue value under the second current sample state, which is used as the corresponding second label. Thus, the second future revenue prediction model is updated in a timely and accurate manner based on the second label.

[0216] This application also provides an application scenario in which the above-described content push method is applied. The content push method is applied in this scenario as follows: In a note (notes are diverse content carriers created and published by creators, which can integrate at least one form of expression such as text, images, and videos) push scenario, in response to a push request, a set of candidate notes related to the push request is determined; the total number of pushes matching the push request is determined; multiple sub-tasks are executed based on the candidate note set, and the target sub-list obtained from each execution of the sub-task is pushed until a stopping condition is met; the number of notes in the target sub-list is less than the total number of pushes; wherein, the execution steps of any sub-task include: searching for multiple candidate sub-lists based on the unpushed notes in the candidate note set, and filtering the target sub-list from the multiple candidate sub-lists.

[0217] Of course, this is not the only application; the content push method provided in this application can also be applied to other scenarios. For example, in audio and video push scenarios, the corresponding content is audio and video; in product interaction scenarios, the corresponding content is products; and in advertising push scenarios, the corresponding content is advertisements.

[0218] In a specific embodiment, the following code example is used for illustration:

[0219] Specifically: Step 1: Before executing the target sublist of the i-th subtask, input the feature set corresponding to the current state s into the first future revenue prediction model V1 to obtain the corresponding future revenue V1(s). If V1(s) is less than the preset future threshold, stop pushing the current push request. If the future revenue V1(s) is greater than or equal to the preset future threshold, start generating the target sublist of the i-th subtask. (The corresponding code is lines 1 to 6. Refer to the previous text for the specific implementation process.)

[0220] Step 2: When starting the i-th subtask, initialize the optimal push strategy and optimal benefit, and initialize the optimal push strategy π respectively. * If null, the optimal profit value V * Set to -inf; then, using the beam search method mentioned earlier, obtain the set {π} containing multiple candidate sublists.

[0221] Step 3: Calculate the total reward for each candidate sublist in {π} sequentially. Taking the j-th candidate sublist as an example, let π... j As the next push strategy, the state of browsing the j-th candidate sublist is taken as the next state (new state), and based on the feature set of the next state, the second future revenue prediction model V2 is called to determine the second future revenue value V2(s′) of the next state.

[0222] The feature set of the current state, and the next push strategy π selected under the current state s. j The strategy information of (s) is input into the updated real-time return prediction model to obtain the real-time return value R(s, π). j (s)). Let the weights of the immediate return value and the second future return value be 1 and γ respectively, and obtain the total return value V by weighted summation.

[0223] The total return V is greater than the current best return V. * Then update the total profit value V to the current optimal profit value V. * , the corresponding π j As the best push strategy.

[0224] Continue estimating the total revenue for the (j+1)th candidate sublist until the total revenue of the last candidate sublist is estimated. The candidate sublist corresponding to the best push strategy obtained after completing all candidate sublists is taken as the target sublist for the i-th subtask.

[0225] Steps 2-3 above correspond to lines 7 to 17 of the code above, which is the process of determining the target sublist mentioned earlier.

[0226] Step 4: Update the aforementioned models at preset time intervals. The following explains the process of jointly updating the aforementioned immediate return prediction model and the second future return prediction model:

[0227] Randomly select a π with probability ∈, and select a π with probability 1-∈. * The update sample is constructed by randomly selecting a candidate sublist Lw corresponding to push strategy w from the push strategy set π. The update sample includes the current sample state s. s The sample feature set and the sample strategy information of the push strategy w selected in the current sample state. Wherein, the current sample state is... s This indicates the status of the pushed target sublist being viewed.

[0228] Then, after the push strategy w is launched, the online real-time revenue R is obtained as the first label for updating the real-time revenue prediction model, and the next sample state s′ is obtained. s The sample feature set is given below, and the next sample state is the state in which the candidate sublist Lw is browsed.

[0229] Update the current sample state s in the sample. s The sample feature set and the current sample state s s The sample strategy information of the selected push strategy w is input into the instant revenue update model to obtain the predicted instant revenue value.

[0230] Based on the current sample state s s Given the sample feature set, call the second future return prediction model to be updated, and predict the current predicted future return value V2(s) in the current state. s ).

[0231] Based on the next sample state s s Given the sample feature set, call the second future return prediction model to be updated, and predict the next predicted future return value V2(s′) in the next sample state. s Based on the actual real-time return value R and the current predicted future return value V2(s), s ), the next predicted future return value V2(s′) s Determine the current sample state s. s The current true future return value is used as the second label for updating the second future return prediction model.

[0232] Based on the difference between the first label and the predicted immediate return value, the immediate return prediction model is updated to obtain a better immediate return prediction model.

[0233] Based on the difference between the second label and the current predicted future earnings value, the second future earnings prediction model is updated to obtain an updated second future earnings prediction model.

[0234] The update regarding the first future earnings forecasting model is mentioned above.

[0235] Step 4 corresponds to lines 18 to 22 of the code above.

[0236] In this implementation, the total task of generating the total number of push notifications is broken down into multiple subtasks, and a target sublist is determined for each subtask. Thus, for each subtask, multiple candidate sublists with shorter growth lengths are selected from a range of candidate content sets that are less than or equal to the total number of push notifications. This eliminates the need to select a list with a longer growth length from the total number of push notifications, significantly reducing the search space and making it much easier to filter out a more suitable target sublist from this search space, thereby improving the content push performance. Furthermore, when selecting a target sublist from multiple search spaces, the total benefit of each candidate sublist is combined to maximize the total benefit of the target sublist, rather than maximizing immediate benefits, effectively avoiding getting stuck in local optima during reordering. In addition, by predicting in advance whether the future benefits of unpushed content will reach a preset benefit threshold before executing each subtask, inefficient reordering is reduced, effectively saving push computing power.

[0237] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0238] Based on the same inventive concept, this application also provides a content push device for implementing the content push method described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in one or more content push device embodiments provided below can be found in the limitations of the content push method described above, and will not be repeated here.

[0239] In an exemplary embodiment, as shown in FIG7, a content push device 700 is provided, including: a set determination module 702, a quantity determination module 704, and a list push module 706, wherein:

[0240] The set determination module 702 is used to determine the set of candidate content related to the push request in response to the push request;

[0241] The quantity determination module 704 is used to determine the total number of pushes that match the push request;

[0242] The list push module 706 is used to execute multiple sub-tasks based on the candidate content set and push the target sub-list obtained from each execution of the sub-task until the stopping condition is met; the number of contents in the target sub-list is less than the total number of pushes; wherein, the execution steps of any sub-task include: searching for multiple candidate sub-lists based on the unpushed contents in the candidate content set, and filtering the target sub-list from the multiple candidate sub-lists.

[0243] In some embodiments, the stopping condition includes at least one of the following: a first future revenue value determined by the unpushed content in the candidate content set does not reach a preset revenue threshold; or the total number of content in the pushed target sublist reaches the total number of pushes.

[0244] In some embodiments, the apparatus further includes a revenue determination module, which is used to call an updated first future revenue prediction model based on the characteristics of the unpushed content in the candidate content set to obtain a first future revenue value.

[0245] In some embodiments, the revenue determination module is used to take the features of the pushed content as the context features of the current state, where the current state refers to the state in which the latest pushed target sublist is viewed; take the features of the unpushable content in the candidate content set as the context features of the current state; obtain the object features of the content recipient in the current state; construct a feature combination of the current state based on the context features, context features, and object features; input the feature combination into the updated first future revenue prediction model to obtain the first future revenue value.

[0246] In some embodiments, the list push module 706 is further configured to generate a search tree based on the interaction data generated by the unpushable content in the candidate content set and the target sublist that has been pushed, and to determine multiple candidate sublists based on the search tree.

[0247] In some embodiments, the list push module 706 is further configured to: predict the immediate revenue value generated after pushing the candidate sublist for each candidate sublist; predict the second future revenue value determined by the remaining content in the candidate content set after pushing the candidate sublist for each candidate sublist; merge the immediate revenue value and the second future revenue value to obtain the total revenue value corresponding to the candidate sublist; and select the candidate sublist with the largest total revenue value as the target sublist.

[0248] In some embodiments, the list push module 706 is further configured to use the list information of the candidate sublist as the strategy information of the next push strategy selected in the current state, and based on the feature set and strategy information in the current state, call the updated real-time revenue prediction model to predict the real-time revenue value generated after pushing the candidate sublist.

[0249] In some embodiments, the apparatus further includes a model update module, which is configured to: acquire an immediate benefit sample, the immediate benefit sample including a set of sample features in a first current sample state and sample strategy information of the next push strategy selected in the first current sample state; acquire a first tag corresponding to the immediate benefit sample, the first tag being the actual immediate benefit value after the first push sample sublist targeted by the next push strategy is pushed online; and update the first immediate benefit prediction model to be updated based on the immediate benefit sample and the first tag to obtain an updated immediate benefit prediction model.

[0250] In some embodiments, the list push module 706 is further configured to use the features of the pushed content and the features of the content in the candidate sublist as the context features in the next state, where the next state refers to the state in which the candidate sublist is viewed; use the features of the remaining content in the candidate content set as the context features in the next state, and obtain the object features of the content recipient in the next state; determine the feature set in the next state based on the context features, context features, and object features; and, based on the feature set in the next state, call the updated second future revenue prediction model to predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed.

[0251] In some embodiments, the model update module is configured to: obtain future revenue samples, which include a set of sample features in the second current sample state; obtain the real, immediate revenue value after the second push sample sublist targeted by the next push strategy is launched, and obtain the set of sample features in the next sample state, where the next sample state is the state in which the second push sample sublist is viewed; based on the set of sample features in the second current sample state, call the second future revenue prediction model to be updated to predict the current predicted future revenue value in the second current sample state; based on the set of sample features in the next sample state, call the second future revenue prediction model to be updated to predict the next predicted future revenue value in the next sample state; determine the current real future revenue value in the second current sample state based on the real, immediate revenue value, the current predicted future revenue value, and the next predicted future revenue value, whereby the current real future revenue value serves as the second label corresponding to the future revenue sample; and update the second future revenue prediction model based on the future revenue sample and the second label to obtain the updated second future revenue prediction model.

[0252] Each module in the aforementioned content delivery device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0253] In an exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram is shown in Figure 8. The computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is connected to the system bus via the I / O interfaces. The processor of the computer device provides computing and control capabilities. The memory of the computer device includes non-volatile storage media and internal memory. The non-volatile storage media stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The I / O interfaces of the computer device are used for exchanging information between the processor and external devices. The communication interface of the computer device is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a content push method.

[0254] Those skilled in the art will understand that the structure shown in Figure 8 is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or may combine certain components, or may have different component arrangements.

[0255] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.

[0256] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0257] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0258] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0259] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0260] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0261] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A content push method, characterized in that, The method includes: In response to a push request, determine a set of candidate content related to the push request; Determine the total number of push notifications matching the push request; and Execute multiple subtasks based on the candidate content set, and push the target sublist obtained from each execution of the subtask until the stopping condition is met; the number of contents in the target sublist is less than the total number of pushes; The execution steps of any subtask include: searching for multiple candidate sublists based on the unpushed content in the candidate content set, and selecting the target sublist from the multiple candidate sublists.

2. The method according to claim 1, characterized in that, The stopping condition includes at least one of the following: The first future revenue value has not reached the preset revenue threshold, and the first future revenue value is determined by the content that has not been pushed in the candidate content set; and the total number of content in the target sublist that has been pushed has reached the total number of pushes.

3. The method according to claim 2, characterized in that, The steps for determining the first future earnings value include: Based on the characteristics of the unpushed content in the candidate content set, the updated first future revenue prediction model is invoked to obtain the first future revenue value.

4. The method according to claim 3, characterized in that, The step of calling the updated first future revenue prediction model based on the features of the unpushed content in the candidate content set to obtain the first future revenue value includes: The features of the pushed content are used as the context features of the current state, where the current state refers to the state in which the latest pushed target sublist is viewed; Using the features of the unpushed content in the candidate content set as the context features of the current state, the object features of the content recipient in the current state are obtained; and Based on the preceding context features, the following context features, and the object features, a feature combination for the current state is constructed. The feature combination is then input into the updated first future revenue prediction model to obtain the first future revenue value.

5. The method according to claim 1, characterized in that, The process involves searching for multiple candidate sub-lists based on the unpushed content in the candidate content set, including: Based on the interaction data generated from the unpushed content in the candidate content set and the target sublist that has been pushed, a search tree is generated, and based on the search tree, multiple candidate sublists are determined.

6. The method according to claim 1, characterized in that, The step of filtering the target sublist from the plurality of candidate sublists includes: For each candidate sublist, predict the immediate revenue value generated after pushing the candidate sublist; For each candidate sublist, predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed; By combining the immediate return value and the second future return value, the total return value corresponding to the candidate sublist is obtained; and the candidate sublist with the largest total return value is selected as the target sublist.

7. The method according to claim 6, characterized in that, The predicted immediate revenue value generated after pushing the candidate sublist includes: The list information of the candidate sublist is used as the strategy information of the next push strategy selected in the current state. Based on the feature set of the current state and the strategy information, the updated real-time revenue prediction model is called to predict the real-time revenue value generated after pushing the candidate sublist.

8. The method according to claim 7, characterized in that, The steps for updating the real-time revenue prediction model include: Obtain an instant benefit sample, wherein the instant benefit sample includes: a set of sample features in the first current sample state and sample strategy information of the next push strategy selected in the first current sample state; Obtain the first tag corresponding to the instant benefit sample, where the first tag is the actual instant benefit value after the first sublist of samples to be pushed by the next push strategy is launched; and Based on the instant profit sample and the first label, the first instant profit prediction model to be updated is updated to obtain the updated instant profit prediction model.

9. The method according to claim 6, characterized in that, The prediction, after pushing the candidate sublist, determines the second future revenue value based on the remaining content in the candidate content set, including: The features of the pushed content and the features of the content in the candidate sublist are both used as the context features in the next state, where the next state refers to the state in which the candidate sublist is viewed. The features of the remaining content in the candidate content set are used as the context features in the next state, and the object features of the content receiver in the next state are obtained. Based on the aforementioned contextual features, the aforementioned contextual features, and the object features, determine the feature set for the next state; and Based on the feature set in the next state, the updated second future revenue prediction model is invoked to predict the second future revenue value determined by the remaining content in the candidate content set after the candidate sublist is pushed.

10. The method according to claim 9, characterized in that, The second future revenue forecasting model update steps include: Obtain future revenue samples, wherein the future revenue samples include: a set of sample features in the second current sample state; Obtain the real-time revenue value after the second sample sublist to be pushed to the next push strategy is launched, and obtain the sample feature set in the next sample state, wherein the next sample state is the state in which the second sample sublist to be pushed is viewed. Based on the sample feature set under the second current sample state, the second future return prediction model to be updated is invoked to predict the current predicted future return value under the second current sample state. Based on the sample feature set in the next sample state, the second future return prediction model to be updated is invoked to predict the next predicted future return value in the next sample state. Based on the actual real-time return value, the current predicted future return value, and the next predicted future return value, the current actual future return value in the second current sample state is determined, and the current actual future return value is used as the second label corresponding to the future return sample; and Based on the future revenue sample and the second label, the second future revenue prediction model is updated to obtain an updated second future revenue prediction model.

11. A content push device, characterized in that, The device includes: The set determination module is used to determine a set of candidate content related to the push request in response to the push request; The quantity determination module is used to determine the total number of pushes matching the push request; and The list push module is used to execute multiple sub-tasks based on the candidate content set, and push the target sub-list obtained from each execution of the sub-task until the stopping condition is met; the number of contents in the target sub-list is less than the total number of pushes; wherein, the execution steps of any sub-task include: searching for multiple candidate sub-lists based on the unpushed contents in the candidate content set, and filtering the target sub-list from the multiple candidate sub-lists.

12. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 10.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.

14. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.