Heterogeneous interactive text anti-spoiler processing method and device based on viewing state perception
Patent Information
- Application Number
- CN202611258012.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-19
- Publication Date
- 2026-10-27
AI Technical Summary
[0006]本公开提供了一种基于观影状态感知的异构互动文本防剧透处理方法、装置,解决了传统方案对剧透内容一刀切删除、掩码隐藏导致社区优质长评论讨论资产损耗,高并发弹幕低延迟需求与长文本深度语义分析算力冲突、卡顿漏报,误拦截以及无效剧透屏蔽与漏识别,无法适配不同观影阶段用户个性化防剧透需求,仅依赖关键词匹配、难以识别隐晦嵌套语义剧透的识别精度的技术问题
[0015]根据本公开的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
Smart Images

Figure CN122994544A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of multimedia data processing, and in particular to a method and apparatus for preventing spoilers in heterogeneous interactive text based on viewing status perception. Background Technology
[0002] Online video streaming platforms generally use bullet comments and bullet screens as the core interactive text carriers, which effectively enhance user activity and viewing stickiness. For suspense, mystery, and plot twist-filled films and television shows, many viewers who have already watched the film will reveal key plot points, characters' identities, plot twists, and character fates in advance through bullet comments and bullet screens; this type of information is collectively referred to as spoiler text. Spoilers severely damage the novelty of the plot for first-time viewers and significantly reduce the immersive viewing experience; therefore, streaming platforms must all implement spoiler prevention measures.
[0003] Current mainstream content security governance methods in the industry mainly rely on static sensitive word matching and lightweight general text classification models to identify text risks. The core purpose is to intercept vulgar, abusive, and illegal sensitive texts. This type of solution is suitable for filtering general illegal content without contextual relevance, but it has an inherent adaptability defect for spoiler scenarios. After identifying spoiler text, a one-size-fits-all approach is adopted, which involves deleting the entire bullet screen / comment and hiding the entire text by masking it. This method is feasible for fragmented short bullet screens, but long comments usually contain a lot of users' subjective feelings after watching, plot detail analysis, and positive discussion content. When only a part of the text contains spoiler information, deleting the entire text will also remove high-quality community content with discussion value, which will damage the platform's content ecosystem in the long run and cause user resentment.
[0004] Existing technologies uniformly use the same set of NLP classification models for processing. If a lightweight model is selected, it cannot identify implicit spoiler semantics in long comments with hidden contexts and multiple nested contexts, resulting in an extremely high false negative rate. If a deep semantic model with a large number of parameters is selected, high-concurrency bullet screen inference will consume a lot of computing power, causing video playback to stutter and bullet screen loading to be interrupted, which cannot meet the requirements of real-time playback.
[0005] Current technology only offers two binary states: complete blocking and complete display, without any intermediate interactive modes. First-time users have no way to independently view spoilers, and even if they don't mind knowing the plot in advance, they cannot unblock the content. Second-time users cannot intuitively distinguish spoiler segments in the comments, and it is difficult to quickly locate key plot discussion sections when reading long reviews. The platform does not provide a differentiated and interactive layered rendering solution, resulting in insufficient user experience flexibility. Summary of the Invention
[0006] This disclosure provides a heterogeneous interactive text anti-spoiler processing method and device based on viewing status awareness. It solves the technical problems of traditional solutions, such as the loss of high-quality long comments and discussions in the community due to the one-size-fits-all deletion and masking of spoiler content, the conflict between the low latency requirements of high-concurrency bullet comments and the computing power of deep semantic analysis of long text, the stuttering and missed reports, false blocking and invalid spoiler blocking and missed identification, the inability to adapt to the personalized anti-spoiler needs of users at different viewing stages, and the difficulty in recognizing the accuracy of recognition based solely on keyword matching and the difficulty in recognizing hidden semantic spoilers.
[0007] According to a first aspect of this disclosure, a method for preventing spoilers in heterogeneous interactive text based on viewing status awareness is provided. The method includes: acquiring plot feature information of a target video corresponding to a target user's video playback request, wherein the plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags; The interactive text of the target video is loaded according to the spatiotemporal activation tag and spoiler detection and annotation are performed; Based on the target user's current viewing status, differentiated rendering is performed on interactive text marked as spoilers and non-spoiler interactive text.
[0008] In addition to the aspects and any possible implementations described above, a further implementation is provided in which, after obtaining the plot feature information of the target video corresponding to the target user's video playback request, the method further includes: Obtain the target user's historical playback record for the target video, and determine whether the target user has watched the target video based on the historical playback record. The historical playback record includes the target user's historical maximum viewing progress. If so, the current playback progress position is obtained according to the video playback request, and it is determined whether the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video. If the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video, Then the current viewing state is determined to be a repeated viewing state; Otherwise, the current viewing state is determined to be the initial viewing state.
[0009] In addition to the aspects and any possible implementations described above, a further implementation is provided, wherein obtaining the plot feature information of the target video corresponding to the target user's video playback request includes: Obtain the structured metadata of the target video corresponding to the video playback request of the target user, and extract the spoiler entity from the structured metadata. The spoiler entity is a semantic unit that represents key plot information in the target video. Extract the content progress position information of each spoiler entity in the target video, and bind the content progress position information to the spatiotemporal activation tag corresponding to each spoiler entity.
[0010] As described above and in any possible implementation, a further implementation is provided, wherein the spoiler detection annotation includes: Obtain the interactive text to be processed, and determine the text type of the interactive text based on the data source path and / or data type identifier of the interactive text; If the interactive text is bullet screen text, then the current playback progress of the target video is matched with the spatiotemporal activation tag, and an interception mark is added to the matched bullet screen text; If the interactive text is a long comment text, then the long comment text is semantically analyzed based on a pre-trained semantic analysis model. If there are spoiler segments, then custom control tags are injected into the spoiler segments.
[0011] In addition to the aspects and any possible implementations described above, a further implementation is provided in which the spatiotemporal activation tag includes the content progress position information of the spoiler entity in the target video; The matching of the current playback progress of the target video with the spatiotemporal activation tag includes: Obtain the current playback progress of the target video; A match is made only if the current playback progress is earlier than the content progress position information of the spoiler entity in the target video.
[0012] In addition to the aspects and any possible implementations described above, a further implementation is provided in which the pre-trained semantic analysis model performs semantic analysis on the long comment text, and if spoiler segments exist, injects custom control tags into the spoiler segments, including: The long comment text is sent to a message queue for asynchronous buffering, and the long comment text is retrieved asynchronously from the message queue; The plot feature information and the long comment text are input into a pre-trained semantic analysis model. Based on structured prompt words, the model identifies whether there are spoiler segments in the long comment text that match the plot feature information. If the spoiler clip exists, inject the custom control tag into the spoiler clip and output structured interactive text with the custom control tag.
[0013] In addition to the aspects and any possible implementations described above, a further implementation is provided, wherein performing differentiated rendering of the interactive text based on the target user's current viewing state includes: If the interactive text is bullet screen text and the current viewing state is the initial viewing state, then the bullet screen text is intercepted; If the interactive text is a long comment and the current viewing state is the first viewing state, then visual occlusion is applied to the spoiler area corresponding to the custom control label; If the interactive text is bullet screen text and the current viewing state is the repeated viewing state, then control the bullet screen text to be displayed normally; If the interactive text is a long comment and the current viewing status is the repeated viewing status, then the visual obscuring of the spoiler area corresponding to the custom control label is removed.
[0014] According to a second aspect of this disclosure, a heterogeneous interactive text anti-spoiler processing device based on viewing status awareness is provided. The device includes: an acquisition module, configured to acquire plot feature information of a target video corresponding to a target user's video playback request, wherein the plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags; The loading module is used to load the interactive text of the target video according to the spatiotemporal activation tag and perform spoiler detection and annotation; The rendering module is used to perform differentiated rendering of interactive text marked as spoilers and non-spoiler interactive text based on the target user's current viewing status.
[0015] According to a third aspect of this disclosure, an electronic device is provided. The electronic device includes a memory and a processor, wherein the memory stores a computer program, and the processor executes the program to implement the method described above.
[0016] According to a fourth aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the methods as described in the first and / or second aspects of this disclosure.
[0017] In this disclosure, the plot feature information of the target video corresponding to the video playback request of the target user is obtained. The plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags. The interactive text of the target video is loaded according to the spatiotemporal activation tags and spoiler detection and annotation are performed. According to the target user's current viewing status, the interactive text marked as spoiler and the non-spoiler interactive text are rendered differently. Under the premise of ensuring that the end-to-end processing of bullet comments is time-efficient and there is no playback stuttering or bullet comment gaps, the accuracy of semantic recognition of long text with subtle spoilers is improved, the probability of false interception and excessive intervention is reduced, the right to view spoilers is returned to the user, and the immersive plot of the first-time viewers and the interactive experience of the God's-eye view of the repeated viewers are taken into account, thereby improving the user viewing experience.
[0018] It should be understood that the description in the Summary of the Invention is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0019] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. The drawings are provided for a better understanding of the invention and are not intended to limit the scope of this disclosure. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein: Figure 1 A flowchart is shown for a heterogeneous interactive text anti-spoiler processing method based on viewing status awareness according to an embodiment of the present disclosure; Figure 2 A block diagram of a heterogeneous interactive text anti-spoiler processing device based on viewing status awareness according to an embodiment of the present disclosure is shown. Figure 3 A block diagram of an exemplary electronic device capable of implementing embodiments of the present disclosure is shown. Detailed Implementation
[0020] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this disclosure, and not all embodiments. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.
[0021] Furthermore, the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0022] In this disclosure, the plot feature information of the target video corresponding to the video playback request of the target user is obtained. The plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags. The interactive text of the target video is loaded according to the spatiotemporal activation tags and spoiler detection and annotation are performed. According to the target user's current viewing status, the interactive text marked as spoiler and the non-spoiler interactive text are rendered differently. Under the premise of ensuring that the end-to-end processing of bullet comments is time-efficient and there is no playback stuttering or bullet comment gaps, the accuracy of semantic recognition of long text with subtle spoilers is improved, the probability of false interception and excessive intervention is reduced, the right to view spoilers is returned to the user, and the immersive plot of the first-time viewers and the interactive experience of the God's-eye view of the repeated viewers are taken into account, thereby improving the user viewing experience.
[0023] Figure 1 A flowchart of a heterogeneous interactive text anti-spoiler processing method 100 based on viewing status awareness according to an embodiment of this disclosure is shown. Figure 1 As shown, method 100 includes: S101, Obtain the plot feature information of the target video corresponding to the target user's video playback request. The plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags. In one possible implementation, the structured metadata of the target video corresponding to the video playback request of the target user is obtained, and the spoiler entity in the structured metadata is extracted. The spoiler entity is a semantic unit that represents key plot information in the target video. The content progress position information of each spoiler entity in the target video is extracted, and the content progress position information is bound to the spatiotemporal activation tag corresponding to each spoiler entity.
[0024] For example, when a target user initiates a request to play any movie or TV series video, the system first retrieves and analyzes the target video's exclusive plot feature knowledge base in real time, and outputs a set of benchmark data that can be used for subsequent spoiler matching and judgment, including a set of spoiler entities and spatiotemporal activation tags that are bound to each spoiler entity.
[0025] For example, the streaming media service gateway receives a video playback request message uploaded by the client. The message carries unique identification parameters: target video ID, episode number Sn, and single episode video resource ID. Based on the unique video identifier in the message, the system performs a distributed search of the pre-built multi-dimensional feature knowledge base of film and television plots and pulls the full-channel structured metadata bound to the video / episode. The metadata is multi-source fusion standardized data, and the sources include: official plot outlines of each episode, original film and television text, official character plot maps, film and television encyclopedia entries, and official plot trailer text. The original text from multiple sources is uniformly cleaned to remove irrelevant advertisements, behind-the-scenes footage, and off-site interview texts, and only standardized structured fields strongly related to the main plot of the main film are retained. The standardized fields include: character name, character identity, plot event, episode affiliation, event timestamp, plot ending, plot twist, and death event.
[0026] For example, a spoiler entity is the smallest independent semantic unit that can represent key plot information of a target video. It serves as the basic retrieval unit for spoiler matching in the system and covers four types of core plot risk units: identity reversal semantic units: mastermind, undercover agent, hidden villain, dual-identity character, etc.; character ending semantic units: character death, character disappearance, character imprisonment, character leaving home, etc.; core plot twist semantic units: key conspiracy truth, ownership of key tokens, major betrayal events, etc.; final ending semantic units: victory or defeat of good and evil, final result of the main mission, final fate of the main characters.
[0027] For example, relying on the entity extraction model, named entity recognition and key event phrase extraction are performed on standardized metadata: For noun-type spoiler units (characters, identities): the complete character name and exclusive identity tag are extracted as independent spoiler entities Ei; For short-sentence event-type spoiler units (plot twists, death): the complete short phrases are extracted as independent spoiler entities Ei; a one-dimensional spoiler entity set {E1, E2, E3…Ei} is output, with each entity carrying a unique index number.
[0028] For example, for each extracted spoiler entity Ei, the progress coordinates of the actual occurrence of the plot event within the main content are retrieved from the structured metadata. The progress position information is recorded in the form of a two-dimensional vector, containing two dimension parameters: episode number Sn: the episode number where the plot event corresponding to the spoiler entity appears, such as Sn=3 for episode 3; and the absolute timestamp Time within a single episode. m The time point in the video of the corresponding episode where the plot event is played, in seconds. For example, 12 minutes and 30 seconds in episode 3 corresponds to Timem=750.
[0029] For example, the episode number Sn and the episode timestamp Time are used. m The resulting two-dimensional progress vector is encapsulated into a dedicated label T. start As the globally unique spatiotemporal activation threshold for this spoiler entity; establish a key-value pair mapping relationship: the key is the spoiler entity Ei, and the value is the spatiotemporal activation label T. start (Sn,Time) m ), stored in a temporary filter dictionary in memory for subsequent real-time matching and retrieval; when the user's current playback progress T current <T start At that time, the spoiler entity Ei was marked as a high-risk, strictly controlled spoiler term and included in the filtering search database; when T current ≥T start When this happens, the entity is automatically removed from the real-time filter dictionary and will no longer be blocked.
[0030] For example, the target user's video playback request is parsed, and the unique identifier of the target video carried in the request is extracted. Based on this unique identifier, multi-source fused structured metadata corresponding to the target video is retrieved from the distributed multi-dimensional plot feature knowledge base. The structured metadata consists of cleaned and standardized episode outlines, original plots, and official plot map texts, containing standardized fields for characters, plot events, episodes, and timestamps. Key semantic extraction is performed on the structured metadata to extract several spoiler entities. Among them, spoiler entities are the smallest independent semantic units representing key plot information such as character identity reversals, character deaths, core plot twists, and the final ending of the series in the target video, including noun entities and short plot phrases. For each spoiler entity, the content progress position information of the plot event corresponding to the spoiler entity in the main video is retrieved. The content progress position information consists of two-dimensional parameters: the episode number where the plot event is located and the absolute playback timestamp of the video within the corresponding episode. The two-dimensional content progress position information corresponding to each spoiler entity is encapsulated into a unique spatiotemporal activation tag T. start This system establishes a one-to-one mapping relationship between spoiler entities and spatiotemporal activation tags, forming plot feature information of the target video and outputting it to the downstream processing module. It completes the standardization of multi-source plot data, constructs a unified and accurate spoiler identification benchmark lexicon, and binds spatiotemporal tags through episodes and timestamps to realize dynamic start and stop filtering of spoiler entities according to the playback progress. It outputs standardized key-value pair data, which is compatible with two heterogeneous processing links: lightweight AC automaton retrieval for bullet comments and AIGC semantic recognition of comments. This provides underlying data support for layered and differentiated anti-spoiler judgment.
[0031] In one possible implementation, the system obtains the target user's historical playback records for the target video, and determines whether the target user has watched the target video based on these records. The historical playback records include the target user's historical maximum viewing progress. If so, the system obtains the current playback progress position based on the video playback request, and determines whether the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video. If the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video, the current viewing state is determined to be a repeat viewing state; otherwise, the current viewing state is determined to be a first-time viewing state.
[0032] For example, when a user requests a specific video stream, the system calls the big data streaming computing engine in real time to retrieve the user's historical full playback logs for the IP address (or the entire series) to which the video belongs, and calculates the viewing coefficient for the entire series. , Extracting the frequency of repeated viewings of a single episode (F) watch This involves extracting the cumulative number of valid historical plays for the currently requested video episode. If α ≥ 0.9 or F... watch≥2. The system state machine marks the current user's viewing identity as STATE_MULTI_WATCH, i.e., repeated viewing / second viewing with full knowledge; otherwise, the system state machine marks the current user as STATE_FIRST_WATCH, i.e., first viewing / first viewing with initial exposure.
[0033] For example, after receiving a user's video playback request, the gateway extracts the unique identifiers in the request: user ID, global ID of the series / film IP, and ID of the currently playing episode; using the user ID and global ID of the film IP as a joint index, it initiates a query to the big data streaming computing engine to retrieve the user's complete historical playback logs for the series, i.e., historical playback records.
[0034] For example, the historical playback record includes at least the following structured fields: Individual playback record for each episode: episode ID, start and end time of each playback, and progress stamp of the end of each playback; Global summary field: maximum historical viewing progress, which is the coordinate of the furthest plot progress recorded by the user in all playback behaviors under this film / TV IP, also using a two-dimensional vector T. max (S max Time max Expression: S max : The highest episode number reached by the user in their viewing history; Time max : Corresponding to S max The furthest playback timestamp within an episode (unit: seconds); auxiliary statistical fields: cumulative number of plays for each episode, number of episodes watched in the entire series, used to assist in confidence verification; logs of ineffective viewing behaviors such as swiping away for less than 30 seconds, background silent playback, skipping the opening and ending credits at double speed, etc., are only retained for the statistical update of "maximum historical viewing progress".
[0035] For example, the user's historical maximum viewing progress T max Compare with the baseline progress of the entire target video series: if the historical playback record is empty, or T max If the corresponding progress is 0, meaning there are no valid viewing records, it is directly determined that the user has never watched the video, and the user enters the initial viewing state branch; if there are valid T... max If a historical viewing progress value greater than 0 exists, it confirms that the user has watched the video before, and proceeds to the next step of cross-progression comparison logic.
[0036] For example, the two-dimensional coordinate T of the current playback progress is parsed from the video playback request message / real-time heartbeat reporting data uploaded by the client. current (S now Time now ), where S now This refers to the ordinal number of the episode currently playing; Time nowThis is the real-time playback timestamp within the currently playing episode; this coordinate represents the plot timeline the user is currently viewing, serving as a real-time baseline for spoiler filtering; for T... max (S max Time max ) and T current (S now Time now ) Execute the hierarchical size determination logic, two-dimensional vector comparison rule: determine the set dimension, if S max >S now If the user's furthest viewed episode is greater than the currently viewed episode, then the user's historical progress is ahead of the current progress; if S max =S now Then proceed to the second level of single-episode timestamp comparison; if S max now, If the furthest viewed episode in history is less than the currently viewed episode, then the historical progress lags behind the current progress; within the same episode, timestamp comparison is performed only if S max =S now Execute at time, if Time max ≥Time now This indicates that the viewing progress within the same episode has exceeded the current playback position; conversely, it indicates that it has not yet reached the current playback position.
[0037] For example, a trigger is established when the historical maximum viewing progress is greater than or equal to the current playback progress position, provided that any of the following conditions is met: S max >S now S max =S now And Time max ≥Time now If the user's current viewing state is determined to be a repeat viewing state (STATE_MULTI_WATCH), that is, the user has already watched all the plot corresponding to the current playback position and has a complete understanding of the plot before and after this node, there is no need to strictly block spoiler text, and the Bypass channel can be opened.
[0038] For example, the event is triggered when the historical maximum viewing progress is less than the current playback progress position if either of the following conditions is met: no valid historical playback records; S max now S max =S now And Time max <Time now If the user's current viewing state is determined to be the first viewing state (STATE_FIRST_WATCH), it means that the user has not seen the plot corresponding to the current playback position before, and is unaware of the subsequent key plot twists and ending information. Strict spoiler blocking and tag folding and blurring control logic must be activated.
[0039] For example, the system obtains the full historical playback records of the target user for the film and television IP to which the target video belongs, and determines whether the target user has watched the target video based on the historical playback records. The historical playback records are filtered for invalid playback logs, store the user's valid viewing behavior for each episode, and are aggregated to generate a global maximum historical viewing progress. The maximum historical viewing progress is represented by a two-dimensional spatiotemporal vector T. max (S max Time max If the historical playback records contain valid viewing data, indicating that the target user has watched the target video, then the real-time playback parameters carried in the video playback request are parsed to extract the current playback progress position T corresponding to this playback. current (S now Time now ), for T max With T current Perform a layered comparison, first comparing the episode numbers S. max With S now If S max >S now , or S max =S now And Time max ≥Time now If S..., then it is determined that the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video, and the current viewing state is marked as repeated viewing state; if S... max now , or S max =S now And Time max <Time now If no valid historical playback record exists, it is determined that the target user's historical maximum viewing progress has not reached the current playback position, and the current viewing status is marked as the first viewing status. This abandons the coarse-grained judgment of whether the entire series has been watched, and adopts a fine comparison of the progress of the series and the timestamp of each episode to accurately distinguish whether the user already knows the subsequent plot at this playback point, reducing the probability of misjudgment, filtering invalid idle and short-term preview logs, ensuring that the historical maximum viewing progress data truly reflects the user's actual knowledge status, outputting a standardized binary viewing status identifier, providing unified decision input to the downstream bullet screen distribution link and comment AIGC tagging link, and supporting differentiated anti-spoiler control logic.
[0040] S102, Load the interactive text of the target video based on the spatiotemporal activation tag and perform spoiler detection and annotation; In a possible implementation, an interactive text to be processed is acquired, and the text type of the interactive text is determined according to the data source path and / or data type identifier of the interactive text; if the interactive text is a bullet comment text, matching is performed based on the current playback progress of the target video and a spatiotemporal activation tag, and an interception tag is added to the bullet comment text that is hit by the matching; if the interactive text is a long comment text, semantic analysis is performed on the long comment text based on a pre-trained semantic analysis model, and if a spoiler segment exists, a custom control tag is injected into the spoiler segment.
[0041] In a possible implementation, the spatiotemporal activation tag includes content progress position information of a spoiler entity in the target video; performing matching based on the current playback progress of the target video and the spatiotemporal activation tag includes: acquiring the current playback progress of the target video; and the matching is hit only when the current playback progress is earlier than the content progress position information of the spoiler entity in the target video.
[0042] In a possible implementation, the long comment text is sent to a message queue for asynchronous buffering, and the long comment text is asynchronously acquired from the message queue; the plot feature information and the long comment text are input into the pre-trained semantic analysis model, and it is identified based on a structured prompt word whether there is a spoiler segment matching the plot feature information in the long comment text; if the spoiler segment exists, the custom control tag is injected into the spoiler segment, and a structured interactive text with the custom control tag is output.
[0043] For example, the interactive text: user interaction content carried by the target video, which is divided into two types of heterogeneous data: bullet comment text (streaming real-time short text) and long comment text (asynchronously submitted long text); spatiotemporal activation tag T start (S n , Time m ), that is, a two-dimensional plot progress coordinate bound to each spoiler entity Ei, representing the episode number and the single-episode timestamp of the first occurrence of the spoiler plot in the feature film; current playback progress T current (S now , Time now ), that is, the spatiotemporal coordinate of the user's current viewing reported in real time by the client, which is used as the dynamic filtering judgment reference; the custom control tag is a pair of rich text tags <spoiler reason="spoiler cause description"> original spoiler text, which only wraps the spoiler segment and does not modify the user's original text.
[0044] For example, based on the plot feature benchmark data, all interactive text generated by users in real time under the target video is obtained. Based on the inherent heterogeneity of the text carrier, it is split into two independent processing pipelines: short text in the bullet screen stream and long text in the asynchronous comment. Dynamic spoiler judgment threshold control is achieved by relying on spatiotemporal activation tags. Lightweight real-time matching and large model semantic atomization tagging are adopted for the two types of text respectively. Two differentiated processing logics are used to finally output standardized interactive text carrying interception tags or custom spoiler control tags.
[0045] For example, the system gateway / message consumption node pulls all pending interactive text uploaded and sent by users in real time. Each text metadata has two built-in distinguishing identifiers: data source path identifier: bullet screen gateway path / comment submission interface path; data type identifier: built-in enumeration fields text_type=bullet (bullet screen) and text_type=comment (long comment). By matching the source path or reading the type enumeration field, the interactive text is diverted to two parallel processing pipelines that do not interfere with each other: a real-time matching and interception link for bullet screen text matching using a lightweight AC automaton; and an asynchronous LLM semantic tagging link for long comment text matching using a message queue.
[0046] For example, read the current playback progress T of the target video reported in real time by the current user client. current (S now Time now ); Traverse all spoiler entities and their corresponding time-space activation tags T start Perform spatiotemporal matching judgment; filter out those that satisfy T current <T start A set of strictly controlled spoiler entities is used to construct a real-time in-memory retrieval dictionary. An improved Aho-Corasick multi-pattern matching automaton is used to perform full-text retrieval of bullet comments. If the bullet comment content matches any strictly controlled spoiler entity, a boolean attribute `is_intercepted:true` is added to the bullet comment object as an interception flag. When the server sends the bullet comment downstream, it filters the bullet comment for all users who refresh the page except the sender and does not push it into the front-end rendering queue. The sender keeps the bullet comment visible locally to prevent users from maliciously testing the filtering rules. If no strictly controlled spoiler entity is matched, the bullet comment does not carry an interception flag and is sent to the client normally.
[0047] For example, long comments are not processed in real time; instead, they are first pushed to a distributed message queue for peak smoothing and buffering. An asynchronous consumption thread retrieves the complete original comment text and inputs the plot feature knowledge base, comment text, and structured constraint prompts into a pre-trained LLM semantic analysis model. The model accurately locates all spoiler segments within the text, strictly adhering to the original meaning preservation rule, without adding, deleting, or modifying the user's original text. It only wraps the spoiler content with paired custom control tags, synchronously filling the corresponding spoiler plot description into the `reasoning` attribute of the tag. The model output carries the complete spoiler information. <spoiler>The structured rich text of the tags is written to a distributed comment database for persistent storage, and then loaded and rendered by the front end.
[0048] For example, the spatiotemporal activation label T start The complete storage of content progress and position information corresponding to spoiler entities is a two-dimensional bound vector, T. start =(S event Time event ); S event The spoiler corresponds to the episode number in which the plot event takes place; Time event This corresponds to the absolute timestamp (in seconds) of the plot points within the series; it also reads the current playback progress of the target video reported by the client in real time. current =(S now Time now ); T for a single spoiler entity start With T current Layered comparison: If S now event If the currently playing episode is earlier than the episode in which the story takes place, a match is made, and this entity is added to the bullet screen filter dictionary; if S now >S event If the currently playing episode number exceeds the total number of episodes in the storyline, meaning the match is not found, the entity is removed from the filter library; if S now =S event If the currently playing episode is the same as the episode containing spoilers, then a timestamp-level judgment is made: if Time now <Time event If the current playback time is earlier than the time the plot appears, then a match has been made; if Time now ≥Time event If the current playback has already exceeded the plot node, then the match is not found. All matching spoiler entities are summarized to generate a real-time bullet screen search term library, which is used for the AC automaton search of this bullet screen. The filter keywords are added or removed in real time as the user drags the progress and switches episodes. The relevant spoiler blocking is automatically removed after the user finishes watching the corresponding plot, solving the problem of excessive intervention caused by the permanent blocking of static keywords.
[0049] Exemplarily, after a user submits a long comment text, the server does not directly invoke the large model interface, but encapsulates the complete comment data (video ID, original comment text, user ID, plot feature index) into a message body, and pushes it to the RabbitMQ distributed message queue for temporary storage; an independent background consumer thread polls the message queue, pulls the long comment message to be processed, and extracts core input parameters: complete plot feature information of the target video, and original comment text; the plot feature knowledge base, the original comment, and the system structured prompt are jointly input into the pre-trained semantic analysis large model, to screen whether the text contains any spoiler entity within the plot features; distinguish whether the entity is an objective plot spoiler or a non-spoiler irrelevant noun mention, so as to avoid misjudgment caused by simple keyword matching; accurately locate the start and end boundaries of the complete spoiler segment, without splitting the user's sentence, without deleting subjective emotion descriptions, and retaining typos and colloquial expressions; for each identified spoiler segment, inject <spoilerreasoning="spoiler reason description"> and in pairs at the start and end< / spoiler> Tags; non-spoiler text is completely preserved outside the tags without any modification; standardized tagged rich text is output and written to the platform's persistent comment database; when the front end loads comments, ordinary text nodes and spoiler tag nodes can be split through lexical analysis to achieve differentiated blur / highlight rendering; bullet comments and comments are processed in two separate pipelines, balancing the 50ms low latency real-time performance of bullet comments with the ability to perform deep semantic analysis of long comments, solving the computing power conflict between high concurrency and high precision in traditional single models; relying on spatiotemporal activation tags to dynamically update the filtering word library based on playback progress, the blocking is automatically lifted when the user finishes watching the corresponding plot, greatly reducing false blocking and excessive intervention; abandoning full deletion / full text masking, bullet comments are only marked for blocking and comments are only partially tagged, fully preserving high-quality user discussion content and protecting community content assets; unified output of blocking marks and standardized spoiler tags, the front end can achieve multi-form interactive rendering such as blur, one-click expansion, and highlighting based on the user's first / second refresh status.
[0050] S103, based on the target user's current viewing status, perform differentiated rendering on interactive text marked as spoilers and non-spoiler interactive text.
[0051] In one possible implementation, if the interactive text is a bullet screen comment and the current viewing state is the first viewing state, then the bullet screen comment is intercepted; if the interactive text is a long comment and the current viewing state is the first viewing state, then visual occlusion is applied to the spoiler area corresponding to the custom control label; if the interactive text is a bullet screen comment and the current viewing state is the repeat viewing state, then the bullet screen comment is displayed normally; if the interactive text is a long comment and the current viewing state is the repeat viewing state, then visual occlusion is removed from the spoiler area corresponding to the custom control label.
[0052] For example, after the front-end client loads the interactive text with spoiler annotations, it first reads the target user's current viewing status identifier from the local cache, and then executes the corresponding rendering logic based on the combination of the interactive text type and the viewing status: For example, the front-end iterates through the entire list of bullet comments to be rendered and reads the is_intercepted flag carried by the bullet comments. For bullet comments marked as is_intercepted:true that contain spoilers, all users except the bullet comment sender are directly removed from the bullet comment rendering queue and not sent to the Canvas / DOM bullet comment rendering layer. The page does not display the bullet comment at all, thus achieving low-level interception. Special compatibility is provided locally for bullet comment senders. The sender's client retains the normal rendering of the bullet comment to prevent the sender from deliberately publishing malicious spoilers after realizing that the content has been blocked. For bullet comments marked as is_intercepted:false that do not contain spoilers, no visual restrictions are imposed, and they are rendered and displayed normally. The bullet comment rendering logic is lightweight, without adding complex filters or parsing calculations, ensuring that the end-to-end rendering latency is maintained within 50ms, and without causing video playback stuttering or bullet comment delays.
[0053] For example, the front-end rich text parsing engine supports... <spoiler>The comments section of the tag undergoes lexical segmentation, generating two independent rendering nodes: regular text nodes and spoiler-specific nodes. All spoiler-specific nodes are enabled with a default visual occlusion effect, providing a two-layer occlusion solution: Gaussian blur occlusion, which adds a CSS blur style `filter:blur(6px);user-select:none;` to the spoiler text, making the text completely blurred and unreadable, preventing mouse selection and copying; simultaneously, the `reasoning` field text within the tag is displayed, indicating the reason for the occlusion; and a collapsed mask occlusion, which uses a semi-transparent mask block to cover the spoiler text, displaying the message "[Contains spoilers (reason: XXX), click to expand]" on the mask surface; a click listener is bound to the occluded area. When a first-time viewer clicks on the occluded area, the front-end state machine switches the node state, smoothly removing the blur / mask to fully display the original spoiler text, giving users the option to choose whether to view spoilers; non-spoiler regular text nodes within the comments are rendered normally without any occlusion.
[0054] For example, when a user is in the repeat viewing state, the front end skips the barrage interception judgment logic and ignores the is_intercepted flag carried by the barrage. Regardless of whether the barrage contains spoilers or has an interception flag, all barrages are pushed into the rendering queue and displayed in their entirety on the playback screen. Without filtering or removal, repeat viewers can see all users' real-time barrages in their entirety, achieving an interactive experience of "watching first-time viewers' real-time discussions from a god's-eye view".
[0055] For example, the front-end parses comments <spoiler>When using tag nodes, Gaussian blur, folded masking, and other occlusion styles are disabled by default, allowing spoiler text to be displayed clearly and natively. A lightweight, subtle hint is added to differentiate spoiler areas by highlighting a low-saturation, semi-transparent background, and a parenthetical hint (Spoiler Hint: XXX) is appended at the end of the paragraph to inform repeat viewers that the paragraph contains plot spoilers. A "Sky Eye View Switch" is set at the top of the comment section. If a repeat viewer manually turns this off, the front-end is forced to switch back to the initial viewing rendering logic, re-occluding the spoiler areas to accommodate users who have forgotten the plot but wish to recapture the freshness of the viewing experience. The rendering rules for regular text nodes remain unchanged, visually distinguishing them from spoiler areas and not interfering with normal reading.
[0056] For example, all non-spoiler-free interactive text, i.e., bullet comments without interception markers, are not included. <spoiler>Comment text within tags is unaffected by the user's viewing status. Whether it's the first or second viewing, it is rendered normally without obstruction, blocking, or special style processing.
[0057] For example, the client loads the interactive text after it has been marked with spoilers, and reads the target user's current viewing status identifier from the local cache. Differential rendering is performed according to the combination of interactive text type and viewing status: if the interactive text is a bullet screen comment and the current viewing status is "first viewing," then bullet screen comments with interception tags are filtered out and not rendered or displayed on the video playback interface; they are only visible to the bullet screen sender locally. Bullet screen comments without interception tags are rendered normally. If the interactive text is a long comment and the current viewing status is "first viewing," then a Gaussian blur or folded mask is applied to the spoiler area wrapped by a custom control tag by default. A click event is bound to the occluded area; when the user clicks, the occlusion is removed, revealing the original text. Non-spoiler text areas are rendered normally. If the interactive text is a bullet screen comment and the current viewing status is "repeat viewing," then the bullet screen interception tags are ignored, and all bullet screen comments are pushed to the rendering layer for normal display without any filtering or interception operations. For long comment texts, and if the current viewing status is a repeat viewing state, the visual obscuring of the spoiler area is removed, the original spoiler text is fully displayed, and a soft, highlighted background color is added to the spoiler area as a subtle cue. Simultaneously, a global "Sky Eye" view switch is configured in the comment section. When the user manually turns off the switch, the front-end switches to the obscuring rendering logic corresponding to the initial viewing state. This is determined by combining text type and user viewing state to differentiate between real-time streaming content (bullet comments) and asynchronous long text comments, adapting to the product formats of both types of content. First-time users automatically block / obscure spoilers to protect the freshness of the plot, while repeat viewers have full access to all interactive content, retaining a "God's-eye view" experience. Spoiler comments are not permanently blocked; they offer clickable expansion interactions and a global "Sky Eye" switch, giving users the choice to view spoilers and increasing interactive freedom. Bullet comments use a lightweight interception logic with underlying queue culling to ensure low latency. Comments rely on front-end rich text components for style rendering, without consuming the main video playback processing power, balancing performance and interactive effects.
[0058] For example, after a suspenseful mystery TV series is released online, when user A clicks to play the third episode for the first time, the system first retrieves the episode outline and plot map of the series to construct a multi-dimensional feature knowledge base of the plot in time and space, extracts spoiler entities such as "the taxi owner is the mastermind behind the scenes" and binds them to the corresponding time and space activation tag T. start (3,750) represents the plot point appearing at 750 seconds into episode 3; subsequently, user A's historical viewing records were retrieved, and their overall series completion coefficient α = 0.28 and the number of times a single episode was repeatedly viewed F were calculated. watch =1, indicating the current viewing state is the initial viewing state. At this time, the client reports the playback progress T in real time. current (3,420), because T current <T start , the system adds this spoiler entity to the bullet screen filtering dictionary, matches real-time bullet screens through the Aho-Corasick automaton, and adds an is_intercepted:true interception mark if a user sends a bullet screen stating "The taxi driver boss is the final murderer", so that the bullet screen is directly filtered on the front end of other audiences and is only visible to the sender; at the same time, another user submits a long comment "This drama is so addictive! All the cast members have great acting skills. I really didn't expect that the taxi driver boss is the final big Boss, who was abducted by that group of people before, and I thought he was just an ordinary passerby. Overall, I strongly recommend everyone to watch it!", this comment enters the RabbitMQ message queue for asynchronous buffering, the large language model relies on structured prompts to accurately identify the spoiler segment and injects the custom control tag <spoilerreasoning="Revealing that the taxi driver boss is the final behind-the-scenes big Boss and that he was abducted by that group of people before and was thought to be a passerby"> for persistent storage; finally, differentiated rendering is performed. For the initial viewing state of User A, the front end completely intercepts and does not display the spoiler bullet screen with the interception mark, and within the comment <spoiler>The enclosed area is blurred by default with a 6px Gaussian blur and displays a "Spoilers ahead, click to expand" mask. User A can click on the blurred area to remove the mask and view the full spoilers; while User B has already watched the entire series, α=1, and the number of times they watched it is F. watch =3 indicates a repeated viewing status. The system activates the Bypass channel, and all spoiler comments are rendered and displayed normally. Spoiler segments in the comments are no longer blurred and are highlighted with a light blue background. User B can also manually turn off the "Sky Eye View Switch" at the top of the comment section, and the front end immediately switches to the obscured rendering mode for the first viewing. This fully realizes the intelligent anti-spoiler process that takes into account low latency of comments, lossless processing of long comments, and differentiation between first-time and second-time viewers.
[0059] In this disclosure, the plot feature information of the target video corresponding to the video playback request of the target user is obtained. The plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags. The interactive text of the target video is loaded according to the spatiotemporal activation tags and spoiler detection and annotation are performed. According to the target user's current viewing status, the interactive text marked as spoiler and the non-spoiler interactive text are rendered differently. Under the premise of ensuring that the end-to-end processing of bullet comments is time-efficient and there is no playback stuttering or bullet comment gaps, the accuracy of semantic recognition of long text with subtle spoilers is improved, the probability of false interception and excessive intervention is reduced, the right to view spoilers is returned to the user, and the immersive plot of the first-time viewers and the interactive experience of the God's-eye view of the repeated viewers are taken into account, thereby improving the user viewing experience.
[0060] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this disclosure is not limited to the described order of actions, because according to this disclosure, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily essential to this disclosure.
[0061] The above is an introduction to the method embodiments. The following describes the solution described in this disclosure further through device embodiments.
[0062] Figure 2 A block diagram of a heterogeneous interactive text spoiler processing device 200 based on viewing status awareness according to an embodiment of the present disclosure is shown. Figure 2 As shown, the device 200 includes: The acquisition module 201 is used to acquire the plot feature information of the target video corresponding to the video playback request of the target user. The plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags. The loading module 202 is used to load the interactive text of the target video according to the spatiotemporal activation tag and perform spoiler detection annotation; The rendering module 203 is used to perform differentiated rendering of interactive text marked as spoilers and non-spoiler interactive text based on the target user's current viewing status.
[0063] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the described module can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0064] The acquisition, storage, and application of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0065] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0066] Figure 3 A schematic block diagram of an electronic device 300 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0067] Electronic device 300 includes a computing unit 301, which can perform various appropriate actions and processes according to a computer program stored in ROM 302 or a computer program loaded into RAM 303 from storage unit 308. RAM 303 can also store various programs and data required for the operation of electronic device 300. The computing unit 301, ROM 302, and RAM 303 are interconnected via bus 304. I / O interface 305 is also connected to bus 304.
[0068] Multiple components in electronic device 300 are connected to I / O interface 305, including: input unit 306, such as keyboard, mouse, etc.; output unit 307, such as various types of displays, speakers, etc.; storage unit 308, such as disk, optical disk, etc.; and communication unit 309, such as network card, modem, wireless transceiver, etc. Communication unit 309 allows electronic device 300 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0069] The computing unit 301 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 301 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 301 performs the various methods and processes described above, such as method 100. For example, in some embodiments, method 100 may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 308. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 300 via ROM 302 and / or communication unit 309. When the computer program is loaded into RAM 303 and executed by the computing unit 301, one or more steps of method 100 described above may be performed. Alternatively, in other embodiments, the computing unit 301 may be configured to perform method 100 by any other suitable means (e.g., by means of firmware).
[0070] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0071] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0072] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0073] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including voice input, speech input, or tactile input).
[0074] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0075] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.
[0076] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0077] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.< / spoiler> < / spoiler> < / spoiler> < / spoiler>
Claims
1. A method for preventing spoilers in heterogeneous interactive text based on viewing status awareness, characterized in that, include: Obtain the plot feature information of the target video corresponding to the video playback request of the target user, wherein the plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags; The interactive text of the target video is loaded according to the spatiotemporal activation tag and spoiler detection and annotation are performed; Based on the target user's current viewing status, differentiated rendering is performed on interactive text marked as spoilers and non-spoiler interactive text.
2. The method according to claim 1, characterized in that, After obtaining the plot feature information of the target video corresponding to the video playback request of the target user, the method further includes: Obtain the target user's historical playback record for the target video, and determine whether the target user has watched the target video based on the historical playback record. The historical playback record includes the target user's historical maximum viewing progress. If so, the current playback progress position is obtained according to the video playback request, and it is determined whether the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video. If the target user's historical maximum viewing progress has reached or exceeded the current playback progress position of the target video, Then the current viewing state is determined to be a repeated viewing state; Otherwise, the current viewing state is determined to be the initial viewing state.
3. The method according to claim 2, characterized in that, The acquisition of the plot feature information of the target video corresponding to the target user's video playback request includes: Obtain the structured metadata of the target video corresponding to the video playback request of the target user, and extract the spoiler entity from the structured metadata. The spoiler entity is a semantic unit that represents key plot information in the target video. Extract the content progress position information of each spoiler entity in the target video, and bind the content progress position information to the spatiotemporal activation tag corresponding to each spoiler entity.
4. The method according to claim 3, characterized in that, The spoiler detection and annotation process includes: Obtain the interactive text to be processed, and determine the text type of the interactive text based on the data source path and / or data type identifier of the interactive text; If the interactive text is bullet screen text, then the current playback progress of the target video is matched with the spatiotemporal activation tag, and an interception mark is added to the matched bullet screen text; If the interactive text is a long comment text, then the long comment text is semantically analyzed based on a pre-trained semantic analysis model. If there are spoiler segments, then custom control tags are injected into the spoiler segments.
5. The method according to claim 4, characterized in that, The spatiotemporal activation tag includes the content progress position information of the spoiler entity in the target video; The matching of the current playback progress of the target video with the spatiotemporal activation tag includes: Obtain the current playback progress of the target video; A match is made only if the current playback progress is earlier than the content progress position information of the spoiler entity in the target video.
6. The method according to claim 5, characterized in that, The pre-trained semantic analysis model performs semantic analysis on the long comment text. If spoiler segments are present, custom control tags are injected into the spoiler segments, including: The long comment text is sent to a message queue for asynchronous buffering, and the long comment text is retrieved asynchronously from the message queue; The plot feature information and the long comment text are input into a pre-trained semantic analysis model. Based on structured prompt words, the model identifies whether there are spoiler segments in the long comment text that match the plot feature information. If the spoiler clip exists, inject the custom control tag into the spoiler clip and output structured interactive text with the custom control tag.
7. The method according to claim 6, characterized in that, The step of performing differentiated rendering of the interactive text based on the target user's current viewing status includes: If the interactive text is bullet screen text and the current viewing state is the initial viewing state, then the bullet screen text is intercepted; If the interactive text is a long comment and the current viewing state is the first viewing state, then visual occlusion is applied to the spoiler area corresponding to the custom control label; If the interactive text is bullet screen text and the current viewing state is the repeated viewing state, then control the bullet screen text to be displayed normally; If the interactive text is a long comment and the current viewing status is the repeated viewing status, then the visual obscuring of the spoiler area corresponding to the custom control label is removed.
8. A heterogeneous interactive text anti-spoiler processing device based on movie viewing status perception, characterized in that, include: The acquisition module is used to acquire the plot feature information of the target video corresponding to the video playback request of the target user. The plot feature information includes spoiler entities and their corresponding spatiotemporal activation tags. The loading module is used to load the interactive text of the target video according to the spatiotemporal activation tag and perform spoiler detection and annotation; The rendering module is used to perform differentiated rendering of interactive text marked as spoilers and non-spoiler interactive text based on the target user's current viewing status.
9. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method described in any one of claims 1-7.
10. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1 to 7.