Song list generation method and apparatus, and device and storage medium
By generating explicit and implicit tags based on user input prompts, and combining song features and user emotional characteristics, target songs are matched from the music library. This solves the problem of inaccurate playlist generation in existing technologies and achieves higher accuracy and relevance in playlist generation.
Patent Information
- Application Number
- PCT/CN2025/099405
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-06-05
- Filing Date
- 2025-06-05
- Publication Date
- 2025-12-11
AI Technical Summary
In existing technologies, playlist generation methods only generate playlists based on explicit features input by the user, which can easily lead to playlists that do not match the user's listening context and are not accurate enough.
By obtaining prompts from user input, explicit and implicit tags are generated. Explicit tags are directly associated with song information, while implicit tags are indirectly associated with song information. Combining song features and user emotional features, target songs are matched from the music library to generate a target playlist.
It improves the accuracy and relevance of playlist generation, meeting users' playlist generation needs, and the generated playlists better satisfy users' listening needs.
Smart Images

Figure CN2025099405_11122025_PF_FP_ABST
Abstract
Description
Playlist generation method, device, equipment and storage medium
[0001] The present application claims priority from the Chinese patent application No. 202410724739.0 filed on June 5, 2024 and entitled "Playlist generation method, device, equipment and storage medium", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] The present application relates to the technical field of computer, in particular to a playlist generation method, device, equipment and storage medium. BACKGROUND
[0003] In a music application, a user can generate a desired intelligent playlist by inputting a prompt to meet the user's listening needs.
[0004] In the related art, a large language model (LLM) generates a playlist according to a prompt input by a user, and continuously adjusts the generated playlist through multiple rounds of dialog (prompt). For example, if a user likes the prelude of a song XXX and wants similar prelude songs in a new playlist, a similar prompt can be used to generate a new playlist, such as the prompt: "melody style similar to the prelude of XXX".
[0005] However, the above method only generates a playlist according to the explicit features of the prompt, which can easily result in a playlist that does not meet the user's listening scenario, and the playlist generation is not accurate enough. SUMMARY
[0006] The present application provides a playlist generation method, device, equipment and storage medium. The technical scheme provided by the present application is as follows:
[0007] According to an aspect of the present application, a playlist generation method is provided, which is executed by a computer device, and the method comprises:
[0008] Obtaining prompt information, the prompt information being used to indicate a playlist generation requirement;
[0009] According to the prompt information, obtaining a song tag corresponding to the prompt information, the song tag comprising at least one explicit tag and at least one implicit tag, the explicit tag being a tag directly associated with song information contained in the prompt information, and the implicit tag being a tag indirectly associated with the song information;
[0010] Obtaining a song matching the song tag from a song library to obtain at least one target song;
[0011] generate a target playlist according to the at least one target song.
[0012] According to an aspect of the embodiments of the present application, a playlist generation device is provided, the device comprising:
[0013] an information obtaining module, configured to obtain prompt information, the prompt information being used to indicate a playlist generation requirement;
[0014] a tag generating module, configured to obtain a song tag corresponding to the prompt information according to the prompt information, the song tag comprising at least one explicit tag and at least one implicit tag, the explicit tag being a tag directly associated with song information contained in the prompt information, and the implicit tag being a tag indirectly associated with the song information;
[0015] a playlist generating module, configured to obtain at least one target song by obtaining songs matching the song tag from a song library, and generate a target playlist according to the at least one target song.
[0016] According to an aspect of the embodiments of the present application, a computer device is provided, the computer device comprising a processor and a memory, the memory storing a computer program, the computer program being loaded and executed by the processor to implement the above playlist generation method.
[0017] According to an aspect of the embodiments of the present application, a computer readable storage medium is provided, the computer readable storage medium storing a computer program, the computer program being loaded and executed by a processor to implement the above playlist generation method.
[0018] According to an aspect of the embodiments of the present application, a computer program product is provided, the computer program product comprising a computer program, the computer program being loaded and executed by a processor to implement the above playlist generation method.
[0019] The technical solutions provided by the embodiments of the present application can bring the following beneficial effects:
[0020] According to the prompt information input by the user, the song label corresponding to the prompt information is obtained, and the song label includes an explicit label and an implicit label. Compared with the related art in which only the explicit label of the prompt information is used to generate a playlist, the technical solution provided in the present application obtains, on the basis of obtaining the label directly associated with the song information contained in the prompt information, the label indirectly associated with the song information contained in the prompt information, deeply mines the emotional characteristics of the user and the melody characteristics of the song in addition to the song characteristics, so that the obtained song label can fully represent the meaning of the prompt information, so that the target song most matching the prompt information can be obtained from the song library, and each song in the generated target playlist fully meets the playlist generation requirement of the user, the coincidence degree of the playlist and the prompt information is improved, and the accuracy of the playlist generation is improved. BRIEF DESCRIPTION OF DRAWINGS
[0021] FIG. 1 is a schematic diagram of a computer system provided in an embodiment of the present application;
[0022] FIG. 2 is a flowchart of a playlist generation method provided in an embodiment of the present application;
[0023] FIG. 3 is a flowchart of playlist generation provided in an embodiment of the present application;
[0024] FIG. 4 is a block diagram of a playlist generation apparatus provided in an embodiment of the present application;
[0025] FIG. 5 is a structural block diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0026] To make the purpose, technical solution and advantages of the present application clearer, the following will further describe the embodiments of the present application in combination with the drawings.
[0027] Please refer to FIG. 1, which shows a schematic diagram of a computer system provided in an embodiment of the present application. The computer system can include a terminal device 10 and a server 20.
[0028] The number of terminal devices 10 can be one or more. The terminal device 10 can be an electronic device such as a mobile phone, a tablet computer, a notebook computer, a desktop computer, a game console, an e-book reader, a multimedia playback device, a wearable device, a smart television, a vehicle-mounted terminal, etc. The terminal device 10 can be installed with a client of a music application program, and the music application program has a function of playing a song. In the embodiments of the present application, the music application program has a function of playing a song according to a playlist. Optionally, the above-mentioned music application program can be an application program that needs to be downloaded and installed, or an application program that can be used immediately after being clicked, and the present application does not limit this.
[0029] The server 20 is configured to provide background service for the client of the music application installed and running in the terminal device 10. For example, the server 20 can be a background server of the music application. The server 20 can be a single server, a server cluster composed of multiple servers, or a cloud computing service center. Optionally, the server 20 provides background service for the clients of the music application in multiple terminal devices 10. The terminal device 10 and the server 20 can communicate with each other through a network.
[0030] The server 20 stores a song library containing multiple songs.
[0031] In the embodiments of the present application, the user inputs prompt information on the client of the music application in the terminal device 10 to indicate the user's playlist generation requirement. The computer device generates a song tag corresponding to the prompt information according to the user input prompt information, and acquires at least one target song matching the song tag from the song library to generate a target playlist. Thus, the user can play the songs contained in the target playlist.
[0032] Please refer to FIG. 2, which shows a flow chart of the playlist generation method provided by an embodiment of the present application. The execution subject of each step of the method can be a computer device, which can be the terminal device 10 or the server 20. The method can include at least one of the following steps 210-240:
[0033] Step 210: Acquire the user input prompt information, which is used to indicate the playlist generation requirement.
[0034] The prompt information contains song information, which is used to indicate the user's direct requirement for each song in the target playlist, and other information in the prompt information, which is used to indicate the user's indirect requirement for each song in the target playlist.
[0035] In some embodiments, the song information in the prompt information includes, but is not limited to, song name, singer name, album name, lyrics information, composer name, lyricist name, and the like. The song name can be used to represent the user's demand for the specific song name of each song in the target playlist, or can be used to represent the user's demand for the melody of each song in the target playlist, or can be used to represent the user's demand for the style of each song in the target playlist. The singer name can be used to represent the user's demand for the corresponding singer of each song in the target playlist, or can be used to represent the user's demand for the style of each song in the target playlist. The album name can be used to represent the user's demand for the specific song name of each song in the target playlist, or can be used to represent the user's demand for the corresponding singer of each song in the target playlist, or can be used to represent the user's demand for the style of each song in the target playlist. The lyrics information can be used to represent the user's demand for the lyrics of each song in the target playlist, or can be used to represent the user's demand for the style of each song in the target playlist. The composer name can be used to represent the user's demand for the corresponding composer of each song in the target playlist, or can be used to represent the user's demand for the style of each song in the target playlist. The lyricist name can be used to represent the user's demand for the corresponding lyricist of each song in the target playlist, or can be used to represent the user's demand for the style of each song in the target playlist.
[0036] In some embodiments, the information other than the song information in the prompt information includes at least one of the following: text information, picture information, and emoticon package information.
[0037] The text information includes at least one of the following: scene information corresponding to the target playlist, time information corresponding to the target playlist, and season information corresponding to the target playlist. The scene information corresponding to the target playlist can be used to represent the user's requirement for the listening scene of each song in the target playlist. The scene information can refer to a listening location suitable for the target playlist, such as a library, a playground, a classroom, an office, a home, and the like. For example, the scene information corresponding to the target playlist can be “songs suitable for listening in a library”. The scene information can also refer to a listening behavior suitable for the target playlist, such as running, walking, shopping, swimming, and the like. For example, the scene information corresponding to the target playlist can be “songs suitable for listening while running”. The time information corresponding to the target playlist can be used to represent the user's requirement for the listening time period of each song in the target playlist. Usually, the time information corresponding to the target playlist refers to the indication information of any time period in a day, such as morning, evening, and night. For example, the time information corresponding to the target playlist can be “songs suitable for listening in the morning”. The season information corresponding to the target playlist can be used to represent the user's requirement for the listening season of each song in the target playlist. The season information can refer to a season in the four seasons, such as spring, summer, autumn, and winter, or specific season information such as early spring, late spring, early summer, hot summer, late autumn, and severe winter. For example, the season information corresponding to the target playlist can be “songs suitable for listening in late autumn”. The season information can also refer to a certain solar term in the 24 solar terms, such as the solar term of “insects emerge”, “spring equinox”, “Ching Ming”, and “Grain Rain”. For example, the season information corresponding to the target playlist can be “songs suitable for listening in the solar term of “insects emerge””.
[0038] The text information can also include listening mood information corresponding to the target playlist, which can be used to represent the user's requirement for the listening mood of each song in the target playlist. The listening mood includes but is not limited to sad, happy, sad, lively, and the like. For example, the listening mood information corresponding to the target playlist can be “songs suitable for listening when sad”.
[0039] The picture information includes at least one of the following: a picture indicating a scene corresponding to the target playlist, a picture indicating a time corresponding to the target playlist, a picture indicating a season corresponding to the target playlist, and a picture indicating a song style of the target playlist. The picture indicating the scene corresponding to the target playlist is a picture indicating a listening location corresponding to the target playlist, including but not limited to a picture of a library, a picture of a playground, a picture of a gym, a picture of an office workstation, a picture of a sofa, etc. The picture indicating the time corresponding to the target playlist includes but is not limited to a picture of a rising sun, a picture of a high sun, a picture of the moon, etc. The picture indicating the season corresponding to the target playlist includes but is not limited to a picture of a seasonal fruit (such as a picture of a peach, a picture of a watermelon, etc.), a picture of a seasonal plant (such as a picture of peach blossoms, a picture of maple leaves, a picture of wax flowers, etc.), a picture of autumn harvest, a picture of heavy snow, etc. The picture indicating the song style of the target playlist is a picture containing emotions, such as a picture of the sea containing a calm and inclusive emotion, a picture of a garbage dump containing a desolate and melancholy emotion, a picture of a morning market containing a lively and happy emotion, etc.
[0040] The emoji information is used to indicate the song style of the target playlist. The emoji information can be used to represent the listening mood of the user, thereby indicating the song style of each song in the target playlist. For example, a laughing emoji is used to represent the happy emotion of the user, thereby indicating that each song in the target playlist is of a happy and lively song style, and a crying emoji is used to represent the sad emotion of the user, thereby indicating that each song in the target playlist is of a sad and heavy song style. The emoji information can also be used to represent the user's demand for the singers corresponding to each song in the target playlist, for example, a singer A emoji can be used to represent that the user tends to include songs of singer A in the target playlist, or can be used to represent that the user tends to include songs of the song style of singer A in the target playlist.
[0041] In some embodiments, the information other than the song information in the prompt information can also include emoji information, and the emoji information is used to indicate the song style of the target playlist.
[0042] For example, the prompt information input by the user can be "a melody style similar to the prelude of XXX, a song suitable for quiet homework", wherein the melody style similar to the prelude of XXX is the song information in the prompt information, and XXX is the song name in the song information. "Quiet" and "homework" are information other than the song information in the prompt information, wherein "quiet" is used to indicate the listening mood corresponding to the target playlist in the text information, and "homework" is used to indicate the scene information corresponding to the target playlist in the text information.
[0043] It should be noted that the song information in the prompt information is text information, and other information in the prompt information in addition to the song information can include text information, picture information, emoticon information, and the like.
[0044] By inputting various forms of information in the prompt information, the user's playlist generation demand can be more richly represented, so that the generated target playlist fully meets the user's playlist generation demand, and the compliance and accuracy of playlist generation are improved.
[0045] Step 220, according to the prompt information, obtaining the song label corresponding to the prompt information, the song label including at least one explicit label and at least one implicit label, the explicit label being a label directly associated with the song information contained in the prompt information, and the implicit label being a label indirectly associated with the song information.
[0046] The explicit label is a label obtained based on the song information in the prompt information, is a label directly associated with the song information contained in the prompt information, and is used to directly indicate the user's generation demand for each song in the target playlist. The explicit label includes at least one label obtained based on the song information in the prompt information.
[0047] The implicit label is a label obtained based on other information in the prompt information in addition to the song information, is a label indirectly associated with the song information contained in the prompt information, and is a label directly associated with other information in the prompt information in addition to the song information. It is used to indirectly indicate the user's generation demand for each song in the target playlist. The implicit label includes at least one label obtained based on other information in the prompt information in addition to the song information, and a melody label obtained based on the melody of the song corresponding to the song information.
[0048] The explicit label is the main basis for generating the target playlist, and the implicit label is the indirect basis for generating the target playlist. The implicit label is used to assist the explicit label to generate the target playlist. The explicit label is mainly used to represent the song features contained in the prompt information. The implicit label is used to represent the melody features of the song contained in the prompt information and the emotional features of the user contained in the prompt information.
[0049] In some embodiments, the large language model obtains the explicit label and the implicit label corresponding to the prompt information according to the prompt information.
[0050] In some embodiments, step 220 includes at least one of sub-steps 221-224 (not shown in the figure).
[0051] Sub-step 221, according to the prompt information, obtaining the song information contained in the prompt information and other information in the prompt information in addition to the song information.
[0052] The song information contained in the prompt information and other information in the prompt information are obtained by the large language model according to the prompt information. The interpretation of the song information and the other information can refer to the foregoing embodiments, which will not be described herein again.
[0053] In substep 222, at least one explicit label is generated according to the song information.
[0054] The explicit label includes a basic label corresponding to the song information and a style label corresponding to the song information, which can refer to the following embodiments.
[0055] In substep 223, a song melody corresponding to the song information is obtained.
[0056] According to the song name, the singer name, the album name, the lyric information, the composer name, the lyricist name and other information in the song information, the song corresponding to the song information is determined, and the song melody corresponding to the song information is obtained according to the song corresponding to the song information.
[0057] The song melody corresponding to the song information can be a song melody of a song, or a song melody of multiple songs. The song melody corresponding to the song information can be a melody of a whole song, or a melody of a section of a song.
[0058] For example, if the song information is used to indicate a song, the song melody corresponding to the song information is the melody of the song. For example, if the song information is “similar to the melody style of XXX”, the song melody corresponding to the song information is the melody of the whole song of XXX. If the song information is used to indicate a melody of a song, the song melody corresponding to the song information is a melody of the song. For example, if the song information is “the prelude is similar to the melody style of XXX”, the song melody corresponding to the song information is the melody corresponding to the prelude of XXX.
[0059] For example, if the song information is used to indicate multiple songs, the song melody corresponding to the song information is the melody of the multiple songs. For example, if the song information is “similar to the melody style of the album XXX”, the song melody corresponding to the song information is the melody of the multiple songs in the album XXX. If the song information is used to indicate a melody of multiple songs, the song melody corresponding to the song information is a melody of the multiple songs. For example, if the song information is “the prelude is similar to the melody style of the album XXX”, the song melody corresponding to the song information is the melody corresponding to the prelude of the multiple songs in the album XXX.
[0060] In substep 224, at least one implicit label is generated according to the song melody.
[0061] By decomposing the prompt information into song information and other information than the song information, the corresponding tags can be generated from both the song information and the song melody, so that the song tags can fully represent the meaning of the prompt information, and thus the target song most matching the prompt information can be obtained from the song library, so that the songs in the generated target playlist fully meet the playlist generation requirements of the user, and the conformity of the playlist generation is ensured.
[0062] Step 230: obtaining a song matching the song tag from the song library to obtain at least one target song.
[0063] The song library comprises at least one song, and each song is configured with at least one song tag, and the target song is selected according to the matching degree between the song corresponding to the prompt information and the song tag of the at least one song in the song library.
[0064] The target song refers to the selected song in the song library.
[0065] Step 240: generating a target playlist according to the at least one target song.
[0066] For the arrangement order of each target song in the target playlist, each target song can be sorted in a random arrangement manner, or can be sorted in a descending or ascending manner according to the matching degree between the song tag of each target song and the song tag corresponding to the prompt information, and the application does not limit this.
[0067] After the computer device generates the target playlist, the user can play the songs based on the target playlist.
[0068] The technical scheme provided by the embodiments of the application obtains the song tag corresponding to the prompt information according to the prompt information input by the user, and the song tag comprises an explicit tag and an implicit tag. Compared with the related art in which only the explicit tag in the prompt information is used to generate a playlist, the technical scheme provided by the application obtains the tag indirectly related to the song information contained in the prompt information on the basis of obtaining the tag directly related to the song information contained in the prompt information, deeply mines the emotional characteristics of the user and the melody characteristics of the song in addition to the song characteristics, so that the obtained song tag can fully represent the meaning of the prompt information, and thus the target song most matching the prompt information can be obtained from the song library, so that each song in the generated target playlist fully meets the playlist generation requirements of the user, improves the conformity of the playlist and the prompt information, and improves the accuracy of the playlist generation.
[0069] In some embodiments, the above-mentioned sub-step 222 comprises at least one of sub-steps 2221-2223 (not shown in the figure).
[0070] In substep 2221, a basic tag corresponding to the song information is generated according to the song information.
[0071] The basic tag corresponding to the song information refers to a tag that can be directly obtained based on the song information. The song information can include at least one of a song name, a singer name, an album name, lyrics information, a composer name, and a lyricist name. The generated basic tag can include all tags corresponding to the song name, the singer name, the album name, the lyrics information, the composer name, and the lyricist name.
[0072] For example, if the song information only includes the song name, the generated basic tag includes, but is not limited to, a tag corresponding to the song name, a tag corresponding to the singer name of the song, a tag of the album where the song is located, a tag corresponding to the lyrics information of the song, a tag corresponding to the composer name of the song, and a tag corresponding to the lyricist name of the song.
[0073] For example, if the song information only includes the album name, the generated basic tag includes, but is not limited to, a tag of each song included in the album, a tag corresponding to the singer name of the album, a tag of the album name, a tag of the lyrics information of each song included in the album, a tag of the composer of each song included in the album, and a tag of the lyricist of each song included in the album.
[0074] In substep 2222, a style tag corresponding to the song information is generated according to the song information. The style tag is used to indicate the style of the song corresponding to the song information.
[0075] The style tag corresponding to the song information is a tag obtained by expanding the basic tag corresponding to the song information. Based on the basic tag corresponding to the song information, a style tag corresponding to each basic tag is generated. The style tag is used to represent the style corresponding to the basic tag.
[0076] Exemplarily, the style label of the song is generated according to the label corresponding to the song name, for example, the style label of the song can be a lively, happy, cheerful, sad, solemn, energetic, and energetic style label. The style label of the singer is generated according to the label corresponding to the singer name, for example, if the singer has more ballad songs, the style label of the singer can be a ballad, sentimental style label, and if the singer has more rock songs, the style label of the singer can be a rock, passion style label. The style label of the album is generated according to the label corresponding to the album name, for example, the style label of the album can be determined according to the style of each song included in the album. The style label of the lyrics is generated according to the label corresponding to the lyrics information, for example, if the lyrics describe the mood at graduation, the style label of the lyrics can be a sigh, hope, and sad style label. The style label of the lyricist is generated according to the label corresponding to the lyricist name, for example, the style label of the lyricist can be determined according to the song style of the historical works of the lyricist and the word style in the historical works. The style label of the composer is generated according to the label corresponding to the composer name, for example, the style label of the composer can be determined according to the song style of the historical works of the composer and the melody style in the historical works.
[0077] In substep 2223, at least one explicit label is obtained according to the basic label corresponding to the song information and the style label corresponding to the song information.
[0078] The at least one explicit label includes the basic label corresponding to the song information and the style label corresponding to the song information.
[0079] By obtaining the basic label and the style label corresponding to the song information, the information meaning contained in the song information is fully mined, so that the obtained song label can fully represent the meaning of the song information, thereby meeting the main generation requirements of the user for the song list and ensuring the compliance of the song list and the prompt information.
[0080] In some embodiments, substep 224 includes at least one of substeps 2241-2243.
[0081] In substep 2241, a melody label is generated according to the song melody, and the melody label is used to indicate the melody characteristics of the song melody.
[0082] According to the song melody, the note information, the pitch information, the duration, and the interval time corresponding to at least one lyric character in the song melody are extracted, and the melody label is generated according to the note information, the pitch information, the duration, and the interval time corresponding to at least one lyric character in the song melody. For details, refer to the following embodiments, which are not introduced here.
[0083] Optionally, the melody label is in a matrix form, and each row in the matrix represents, in sequence, note information, pitch information, duration, and interval time corresponding to at least one lyric character in the melody of the song.
[0084] If the song information is used to indicate one song, one melody label can be generated according to the whole song melody or a section of the song melody of the song. If the song information is used to indicate multiple songs, multiple melody labels corresponding to the multiple songs can be generated according to the whole song melody or a section of the song melody of the multiple songs.
[0085] In substep 2242, at least one information label is generated according to the information other than the song information in the prompt information.
[0086] The information other than the song information in the prompt information is subjected to information extraction by the information extraction model to obtain at least one information label. The information label obtained here is in a text form.
[0087] If the information other than the song information in the prompt information includes text information, the text information can be subjected to information extraction by the information extraction model to obtain at least one information label corresponding to the text information.
[0088] If the information other than the song information in the prompt information includes picture information, the picture information can be subjected to information extraction by the information extraction model to obtain at least one information label corresponding to the picture information.
[0089] If the information other than the song information in the prompt information includes sticker information, the sticker information can be subjected to information extraction by the information extraction model to obtain at least one information label corresponding to the sticker information.
[0090] If the information other than the song information in the prompt information includes color text information, the color text information can be subjected to information extraction by the information extraction model to obtain at least one information label corresponding to the color text information.
[0091] In substep 2243, at least one implicit label is obtained according to the melody label and the at least one information label.
[0092] The at least one implicit label includes at least one of the following: the melody label, the at least one information label corresponding to the text information, the at least one information label corresponding to the picture information, the at least one information label corresponding to the sticker information, and the at least one information label corresponding to the color text information.
[0093] By acquiring the melody tag corresponding to the song melody in the case that the information tag can be directly extracted from other information in the acquired prompt information, the type of the implicit tag is expanded and enriched, and the matching degree of the song tag and the playlist generation demand is further improved, so that the songs in the generated target playlist can fully meet the playlist generation demand of the user, and the compliance of the playlist generation is ensured.
[0094] In some embodiments, the above-mentioned sub-step 2241 comprises at least one of sub-steps A1-A3 (not shown in the figure).
[0095] Sub-step A1, according to the song melody, obtaining the lyrics information corresponding to the song melody, the lyrics information containing at least one lyrics character.
[0096] According to the song melody, the lyrics information corresponding to the song melody is obtained by the large language model. If the song melody is the melody of the whole song, the corresponding lyrics information is the lyrics character contained in the whole song, and if the song melody is a section of melody in the whole song, the corresponding lyrics information is the lyrics character contained in the section of melody.
[0097] Sub-step A2, according to the song melody, extracting at least one lyrics character respectively corresponding to the note information, the pitch information, the duration and the interval time, wherein the duration refers to the time length of the lyrics character singing in the song melody, and the interval time refers to the interval time length between the starting singing time point of the lyrics character in the song melody and the ending singing time point of the previous lyrics character in the song melody.
[0098] Exemplarily, according to a section of song melody, at least one corresponding lyrics character is obtained, which is "Shallow acquaintance, like years". The note information, the pitch information, the duration and the interval time corresponding to the at least one lyrics character can be referred to the following table 1.
[0099] Table 1
[0100] Among them, the time unit of duration and interval time is second (s).
[0101] The duration refers to the time length of the lyrics character singing in the song melody, for example, the duration corresponding to "Xiang" is 0.17 seconds, which means that the time length of "Xiang" singing in the song melody is 0.17 seconds. The interval time refers to the interval time length between the starting singing time point of the lyrics character in the song melody and the ending singing time point of the previous lyrics character in the song melody, for example, the interval time corresponding to "Shi" is 0.319 seconds, which means that the interval time length between the starting singing time point of "Shi" in the song melody and the ending singing time point of "Si" in the song melody is 0.319 seconds.
[0102] In sub-step A3, the melody label is generated according to the note information, the pitch information, the duration and the interval time corresponding to each lyric character.
[0103] According to the note information, the pitch information, the duration and the interval time corresponding to each lyric character, the melody label in the form of a matrix can be generated.
[0104] By extracting the features of the melody of the song information, the melody label corresponding to the song information is obtained, so that the target song is matched not only according to the text features of the prompt information, but also in combination with the melody features in the prompt information, so that the song label is more comprehensive and can fully represent the meaning of the prompt information, thereby generating a target playlist that satisfies the user and improving user satisfaction.
[0105] In some embodiments, if the song melody corresponding to the song information does not contain lyric information, the note information and the pitch information corresponding to the song melody are extracted according to the song melody. The melody label is generated according to the note information and the pitch information corresponding to the song melody.
[0106] In some embodiments, if the prompt information is in the form of audio, it is determined that the song label only includes at least one implicit label, and the at least one implicit label only includes a melody label. Step 220 includes sub-steps 223 and 224. The song melody corresponding to the prompt information is obtained, and at least one implicit label is generated according to the song melody.
[0107] By generating an implicit label when the prompt information is in the form of audio, a label indirectly associated with the song information can be obtained, and a target playlist can be generated, which widens the format of the prompt information allowed to be input and expands the application range of the present application.
[0108] In some embodiments, if the prompt information is in the form of text, it is determined that the song label includes at least one explicit label and at least one implicit label.
[0109] If the prompt information does not contain song information but contains other information except song information, it is determined that the song label does not contain an explicit label but contains at least one implicit label, and the at least one implicit label only includes at least one information label. Step 220 includes sub-step 2242. For example, if the prompt information is "a song suitable for quiet homework", at least one information label is generated according to the prompt information, and the at least one information label is determined as the song label.
[0110] If the prompt information only contains the song information and does not contain other information except the song information, it is determined that the song tags contain at least one explicit tag and at least one implicit tag, and the at least one implicit tag only includes a melody tag. Step 220 includes sub-steps 222, 223 and 2241. For example, if the prompt information is "a song with a melody style similar to that of XXX", at least one explicit tag is generated according to the song information; the song melody corresponding to the song information is obtained, and a melody tag is generated according to the song melody, and the at least one explicit tag and the melody tag are determined as the song tags.
[0111] If the prompt information contains the song information and other information except the song information, it is determined that the song tags contain at least one explicit tag and at least one implicit tag, and the at least one implicit tag includes at least one information tag and a melody tag. Step 220 includes sub-steps 221-224. If the other information except the song information in the prompt information includes text information, at least one information tag in the implicit tag includes at least one information tag corresponding to the text information. If the other information except the song information in the prompt information includes picture information, at least one information tag in the implicit tag includes at least one information tag corresponding to the picture information. If the other information except the song information in the prompt information includes an emoticon package information, at least one information tag in the implicit tag includes at least one information tag corresponding to the emoticon package information.
[0112] In some embodiments, step 230 includes at least one of sub-steps 231-235 (not shown in the figure).
[0113] Sub-step 231, obtaining the song tags of at least one song in the song library.
[0114] According to the dimensions of the song tags corresponding to the prompt information, the song tags of at least one song in the song library are obtained. For example, if the song tags corresponding to the prompt information contain the singer's style tag, the tags of the singer corresponding to at least one song in the song library are obtained. If the song tags corresponding to the prompt information contain the listening scene tag, the listening scene tag corresponding to at least one song in the song library is obtained.
[0115] Therefore, the number of song tags of at least one song in the obtained song library is the same as the number of song tags corresponding to the prompt information, and the dimensions of each song tag of at least one song in the song library are also the same as the dimensions of each song tag corresponding to the prompt information.
[0116] Sub-step 232, respectively calculating the similarity between the song tags of at least one song and the song tags corresponding to the prompt information, to obtain the similarity scores corresponding to at least one song respectively.
[0117] Optionally, the similarity between the song tags of at least one song in the song library and the song tags corresponding to the prompt information can be calculated by cosine similarity, to obtain the similarity between each song tag of at least one song in the song library and each song tag corresponding to the prompt information. According to the weight value of each song tag, the similarity between each song tag of at least one song in the song library and each song tag corresponding to the prompt information is added, to obtain the similarity scores corresponding to at least one song in the song library, respectively.
[0118] It should be noted that the weight value of each song tag is not limited in the present application.
[0119] Optionally, the weight value of each song tag can be a weight value set by the user in advance, and the user can set the weight value of each song tag in advance according to the playlist generation demand. For example, if the user's playlist generation demand is high in terms of song style demand and song listening scene demand corresponding to the song, the user can increase the weight value of the song style tag and the song listening scene tag of the song.
[0120] Optionally, the weight value of each song tag can also be a weight value calculated according to the correlation between each song tag and the prompt information. For example, if the song information contained in the prompt information is the song name, the weight value of the tag corresponding to the song name and the weight value of the song style tag can be increased, and the weight value of the tag corresponding to the singer name, the tag corresponding to the album name, etc. can be reduced.
[0121] Sub-step 233: obtaining the heat value scores corresponding to at least one song, respectively, according to the current heat values of at least one song.
[0122] The current heat value of the song can be measured by at least one of the following: the current number of song listeners, the total number of song listeners, the number of song shares, the number of song comments, the number of song collections, the number of song likes, etc.
[0123] According to the above at least one song data, the current heat value of each song is obtained, and the heat value scores corresponding to at least one song in the song library are obtained according to the current heat values of at least one song in the song library.
[0124] Sub-step 234: obtaining the total scores corresponding to at least one song, respectively, according to the similarity scores corresponding to at least one song, respectively, and the heat value scores corresponding to at least one song, respectively.
[0125] Optionally, the similarity scores corresponding to at least one song, respectively, and the heat value scores corresponding to at least one song, respectively, can be directly added to obtain the total scores corresponding to at least one song, respectively.
[0126] Optionally, the total score corresponding to each of the at least one song can also be calculated according to the weight corresponding to the similarity score and the weight corresponding to the hotness value score. Here, the weight corresponding to the similarity score and the weight corresponding to the hotness value score can be set by the technician as a default weight, or can be set by the user according to the playlist generation requirement.
[0127] In sub-step 235, the at least one song is sorted according to the total score corresponding to each of the at least one song, and the first number of songs in the front of the sorting is determined as the at least one target song.
[0128] In sub-step 235, the at least one song is sorted according to the total score corresponding to each of the at least one song, and the first number of songs in the front of the sorting is determined as the at least one target song.
[0129] By considering the similarity between the song tag of the at least one song in the song library and the song tag corresponding to the prompt information, and the current hotness value of the at least one song in the song library, the generated target playlist not only meets the user's playlist generation requirement, but also adds the song with high current hotness to the playlist, which can further improve the user's interest in listening to the song and improve the listening rate of the target playlist.
[0130] In some embodiments, the above method further includes step 250 for generating an adjusted target playlist according to the adjustment information input by the user. Step 250 includes at least one of sub-steps 251-255 (not shown in the figure).
[0131] In sub-step 251, the adjustment information is obtained, and the adjustment information is used to adjust the playlist generation requirement.
[0132] The adjustment information is the prompt information input by the user again after inputting the prompt information, and is used to adjust the playlist generation requirement in the prompt information.
[0133] The adjustment information can add a playlist generation requirement to the prompt information, or can modify the playlist generation requirement in the prompt information, which is not limited by the present application.
[0134] In sub-step 252, the prompt information and the adjustment information are integrated to obtain the adjusted prompt information.
[0135] For example, if the prompt information is "melody style similar to the prelude of XXX, song suitable for quiet homework", and the adjustment information is "song with slow style", then the adjusted prompt information is "melody style similar to the prelude of XXX, song suitable for quiet homework, song with slow style".
[0136] For example, if the prompt information is "a song with a melody similar to XXX and suitable for quiet homework", the adjustment information can be "a melody similar to XXXX (another song)", and the adjusted prompt information is "a song with a melody similar to XXXX (another song) and suitable for quiet homework".
[0137] In sub-step 253, an adjusted song tag is obtained according to the adjusted prompt information.
[0138] The adjusted song tag can be obtained by referring to the above-mentioned sub-steps 221-224, and the specific process will not be described again.
[0139] In sub-step 254, a song matching the adjusted song tag is obtained from the song library to obtain at least one adjusted target song.
[0140] In sub-step 255, an adjusted target playlist is generated according to the at least one adjusted target song.
[0141] The generation process of the adjusted target playlist can refer to the above-mentioned sub-steps 231-235, which will not be described again.
[0142] In some embodiments, if the user still needs to adjust the playlist generation requirement, the adjustment information can be continuously inputted to generate a further adjusted target playlist.
[0143] Through multiple rounds of prompt information inputted by the user, the playlist generation requirement is updated, and the adjusted target playlist is generated according to the adjusted prompt information, so that the playlist meeting the user's requirement can be continuously obtained, and the user's satisfaction with the playlist generation is improved.
[0144] FIG. 3 shows a flowchart of the playlist generation. The computer device obtains the prompt information input by the user, and obtains at least one explicit label and at least one implicit label according to the prompt information by using a large language model. For the explicit label, a basic label corresponding to the song information is generated according to the song information, and the basic label corresponding to the song information is expanded to obtain a style label corresponding to the song information. The basic label corresponding to the song information and the style label corresponding to the song information are included in the at least one explicit label. For the implicit label, at least one information label is generated according to other information in the prompt information in addition to the song information, including at least one information label corresponding to the text information, at least one information label corresponding to the picture information, and at least one information label corresponding to the sticker information. In addition, a melody label is generated according to the song melody corresponding to the song information. The melody label, the at least one information label corresponding to the text information, the at least one information label corresponding to the picture information, and the at least one information label corresponding to the sticker information are included in the at least one implicit label. The above-mentioned explicit label and implicit label are integrated to obtain a song label.
[0145] At least one target song matching the song label is obtained from a song library to generate a target playlist. If the user is satisfied with the generated playlist, the playlist generation process is ended. If the user is not satisfied with the generated playlist, the user can input adjustment information again to adjust the playlist generation requirement. The prompt information and the adjustment information are integrated to obtain adjusted prompt information, and the above-mentioned playlist generation process is experienced again according to the adjusted prompt information to generate an adjusted target playlist.
[0146] The following is an apparatus embodiment of the present application, which can be used to execute the method embodiments of the present application. For details not disclosed in the apparatus embodiments of the present application, please refer to the method embodiments of the present application.
[0147] Please refer to FIG. 4, which shows a block diagram of a playlist generation apparatus according to an embodiment of the present application. The apparatus has the functions of implementing the above-mentioned playlist generation method, which can be realized by hardware or by executing corresponding software by hardware. The apparatus can be the computer device introduced above, or can be arranged in the computer device. As shown in FIG. 4, the apparatus 400 can include an information obtaining module 410, a label generating module 420, and a playlist generating module 430.
[0148] The information obtaining module 410 is configured to obtain prompt information, wherein the prompt information is used to indicate a playlist generation requirement.
[0149] The tag generation module 420 is configured to obtain a song tag corresponding to the prompt information according to the prompt information, the song tag including at least one explicit tag and at least one implicit tag, the explicit tag being a tag directly associated with song information contained in the prompt information, and the implicit tag being a tag indirectly associated with the song information.
[0150] The playlist generation module 430 is configured to obtain at least one target song matching the song tag from a song library, and generate a target playlist according to the at least one target song.
[0151] In some embodiments, the tag generation module 420 is configured to:
[0152] obtain the song information contained in the prompt information and other information in the prompt information except the song information according to the prompt information;
[0153] generate the at least one explicit tag according to the song information;
[0154] obtain a song melody corresponding to the song information;
[0155] generate the at least one implicit tag according to the song melody.
[0156] In some embodiments, the tag generation module 420 is configured to:
[0157] generate a melody tag according to the song melody, the melody tag being used to indicate a melody feature of the song melody;
[0158] generate at least one information tag according to the other information in the prompt information except the song information;
[0159] obtain the at least one implicit tag according to the melody tag and the at least one information tag.
[0160] In some embodiments, the tag generation module 420 is configured to:
[0161] obtain lyric information corresponding to the song melody according to the song melody, the lyric information containing at least one lyric character;
[0162] extract note information, pitch information, duration and interval time corresponding to the at least one lyric character respectively according to the song melody, the duration being a time length for which the lyric character is sung in the song melody, and the interval time being an interval time length between a time point at which the lyric character starts singing in the song melody and a time point at which a previous lyric character ends singing in the song melody;
[0163] generate the melody label according to the note information, the pitch information, the duration information and the interval time corresponding to the at least one lyric character respectively.
[0164] In some embodiments, the information in the prompt information other than the song information includes at least one of the following:
[0165] text information, the text information including at least one of the following: scene information corresponding to the target playlist, time information corresponding to the target playlist, season information corresponding to the target playlist;
[0166] picture information, the picture information including at least one of the following: a picture indicating a scene corresponding to the target playlist, a picture indicating a time corresponding to the target playlist, a picture indicating a season corresponding to the target playlist, a picture indicating a song style of the target playlist;
[0167] meme information, the meme information being used to indicate a song style of the target playlist.
[0168] In some embodiments, the label generation module 420 is configured to:
[0169] generate a basic label corresponding to the song information according to the song information;
[0170] generate a style label corresponding to the song information according to the song information, the style label being used to indicate a song style corresponding to the song information;
[0171] obtain the at least one explicit label according to the basic label corresponding to the song information and the style label corresponding to the song information.
[0172] In some embodiments, the playlist generation module 430 is configured to:
[0173] obtain song labels of at least one song in the song library;
[0174] calculate a similarity between the song labels of the at least one song and the song label corresponding to the prompt information respectively, to obtain a similarity score corresponding to the at least one song respectively;
[0175] obtain a heat value score corresponding to the at least one song respectively according to a current heat value of the at least one song;
[0176] obtain a total score corresponding to the at least one song respectively according to the similarity score corresponding to the at least one song respectively and the heat value score corresponding to the at least one song respectively;
[0177] The at least one target song is determined according to the first quantity of songs in the front of the ranking.
[0178] In some embodiments, the tag generation module 420 is configured to:
[0179] If the prompt information is in the form of audio, it is determined that the song tags only include the at least one implicit tag.
[0180] In some embodiments, the apparatus 400 further includes a playlist adjustment module (not shown in the figure), which is configured to:
[0181] Obtain adjustment information, the adjustment information being used to adjust the playlist generation requirement;
[0182] Integrate the prompt information and the adjustment information to obtain adjusted prompt information;
[0183] Obtain adjusted song tags according to the adjusted prompt information;
[0184] Obtain at least one adjusted target song from the song library according to the adjusted song tags;
[0185] Generate an adjusted target playlist according to the at least one adjusted target song.
[0186] It should be noted that the apparatus provided in the above embodiments, when realizing its functions, only takes the above-mentioned division of each functional module as an example for illustration. In actual application, the above-mentioned functions can be completed by different functional modules according to needs, that is, the content structure of the device is divided into different functional modules to complete all or part of the above-described functions. In addition, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process is described in detail in the method embodiments, which will not be repeated here.
[0187] Please refer to FIG. 5, which shows a structural block diagram of a computer device 500 provided in an embodiment of the present application. The computer device 500 can be any electronic device with data computing, processing and storage functions. The computer device 500 can be used to implement the playlist generation method provided in the above embodiments.
[0188] Generally, the computer device 500 includes a processor 501 and a memory 502.
[0189] The processor 501 can include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 501 can be implemented in at least one of a hardware form of a DSP (Digital Signal Processing), an FPGA (Field Programmable Gate Array), a PLA (Programmable Logic Array). The processor 501 can also include a main processor and a co-processor, the main processor being a processor for processing data in an awake state, also referred to as a CPU (Central Processing Unit), and the co-processor being a low-power processor for processing data in a standby state. In some embodiments, the processor 501 can be integrated with a GPU (Graphics Processing Unit) for rendering and drawing content required to be displayed by the display screen. In some embodiments, the processor 501 can further include an AI processor for processing computing operations related to machine learning.
[0190] The memory 502 can include one or more computer-readable storage media, which can be non-transitory. The memory 502 can also include a high-speed random access memory, and a nonvolatile memory such as one or more disk storage devices, flash storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 502 is configured to store a computer program configured to be executed by one or more processors to implement the above-mentioned playlist generation method.
[0191] Those skilled in the art can understand that the structure shown in FIG. 5 does not constitute a limitation on the computer device 500, and can include more or fewer components than illustrated, or combine certain components, or adopt different component arrangements.
[0192] In an illustrative embodiment, a computer-readable storage medium is also provided, the storage medium storing a computer program, the computer program implementing the above-mentioned playlist generation method when executed by a processor of a computer device. Optionally, the above-mentioned computer-readable storage medium can be a ROM (Read-Only Memory), a RAM (Random Access Memory), a CD-ROM (Compact Disc Read-Only Memory), a magnetic tape, a floppy disk, and an optical data storage device, etc.
[0193] In the example embodiment, a computer program product is also provided, which includes a computer program stored in a computer readable storage medium. A processor of a computer device reads the computer program from the computer readable storage medium, and the processor executes the computer program, so that the computer device performs the playlist generation method described above.
[0194] It should be understood that "multiple" mentioned herein refers to two or more. The "and / or" describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can represent the three cases of A existing alone, A and B existing together, and B existing alone. The character " / " generally represents that the associated objects before and after it are in an "or" relationship. In addition, the step numbers described herein only exemplarily show a possible execution order between steps. In some other embodiments, the above steps can also be executed in a non-numbered order, such as two steps with different numbers being executed at the same time, or two steps with different numbers being executed in an order opposite to that shown in the figure. The embodiments of the present application are not limited in this regard.
[0195] The above only describes example embodiments of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A playlist generation method, the method being performed by a computer device, the method comprising: obtaining prompt information, the prompt information being used to indicate a playlist generation requirement; obtaining, according to the prompt information, a song tag corresponding to the prompt information, the song tag comprising at least one explicit tag and at least one implicit tag, the explicit tag being a tag directly associated with song information contained in the prompt information, and the implicit tag being a tag indirectly associated with the song information; obtaining, from a song library, a song matching the song tag to obtain at least one target song; generating a target playlist according to the at least one target song.
2. The method of claim 1, wherein, The obtaining, according to the prompt information, of the song tag corresponding to the prompt information comprises: obtaining, according to the prompt information, the song information contained in the prompt information and other information in the prompt information except the song information; generating the at least one explicit tag according to the song information; obtaining a song melody corresponding to the song information; generating the at least one implicit tag according to the song melody.
3. The method of claim 2, wherein, The generating, according to the song melody, of the at least one implicit tag comprises: generating a melody tag according to the song melody, the melody tag being used to indicate a melody feature of the song melody; generating at least one information tag according to the other information in the prompt information except the song information; obtaining the at least one implicit tag according to the melody tag and the at least one information tag.
4. The method of claim 3, wherein, The generating, according to the song melody, of the melody tag comprises: obtaining, according to the song melody, lyric information corresponding to the song melody, the lyric information containing at least one lyric character; extracting, according to the song melody, note information, pitch information, duration and interval time corresponding to the at least one lyric character respectively, wherein the duration is a time length for which the lyric character is sung in the song melody, and the interval time is an interval time length between a time point at which the lyric character starts to sing in the song melody and a time point at which a previous lyric character ends to sing in the song melody; generating the melody tag according to the note information, the pitch information, the duration and the interval time corresponding to the at least one lyric character respectively.
5. The method according to any one of claims 2 to 4, wherein, The other information in the prompt information except the song information comprises at least one of the following: text information, the text information comprising at least one of the following: scene information corresponding to the target playlist, time information corresponding to the target playlist, and season information corresponding to the target playlist; picture information, the picture information comprising at least one of the following: a picture used to indicate a scene corresponding to the target playlist, a picture used to indicate a time corresponding to the target playlist, a picture used to indicate a season corresponding to the target playlist, and a picture used to indicate a song style of the target playlist; expression package information, the expression package information being used to indicate a song style of the target playlist.
6. The method according to any one of claims 2 to 5, wherein, The generating, according to the song information, of the at least one explicit tag comprises: generating a basic tag corresponding to the song information according to the song information; generating a style tag corresponding to the song information according to the song information, the style tag being used to indicate a song style corresponding to the song information; obtaining the at least one explicit tag according to the basic tag corresponding to the song information and the style tag corresponding to the song information.
7. The method according to any one of claims 1 to 6, wherein, The obtaining of the at least one target song from the song library according to the song tag comprises: obtaining a song tag of at least one song in the song library; calculating a similarity between the song tag of each of the at least one song and the song tag corresponding to the prompt information respectively to obtain a similarity score corresponding to each of the at least one song respectively; obtaining a heat value score corresponding to each of the at least one song respectively according to a current heat value of each of the at least one song; obtaining a total score corresponding to each of the at least one song respectively according to the similarity score corresponding to each of the at least one song respectively and the heat value score corresponding to each of the at least one song respectively; sorting the at least one song according to the total score corresponding to each of the at least one song respectively, and determining a first number of songs with a high ranking as the at least one target song.
8. The method according to any one of claims 1 to 7, wherein, The method further comprises: if the prompt information is in an audio form, determining that the song tag comprises only the at least one implicit tag.
9. The method according to any one of claims 1 to 8, wherein, The method further comprises: obtaining adjustment information, the adjustment information being used to adjust the playlist generation requirement; integrating the prompt information and the adjustment information to obtain adjusted prompt information; obtaining an adjusted song tag according to the adjusted prompt information; obtaining at least one adjusted target song from the song library according to the adjusted song tag; generating an adjusted target playlist according to the at least one adjusted target song. 10.A playlist generation device, comprising: an information obtaining module, configured to obtain prompt information, the prompt information being used to indicate a playlist generation requirement; a tag generating module, configured to obtain a song tag corresponding to the prompt information according to the prompt information, the song tag comprising at least one explicit tag and at least one implicit tag, the explicit tag being a tag directly associated with song information contained in the prompt information, and the implicit tag being a tag indirectly associated with the song information; a playlist generating module, configured to obtain at least one target song from a song library according to the song tag; generate a target playlist according to the at least one target song. 11.A computer device, comprising a processor and a memory, the memory storing a computer program, the computer program being loaded and executed by the processor to implement the playlist generation method according to any one of claims 1 to 9. 12.A computer readable storage medium, storing a computer program, the computer program being loaded and executed by a processor to implement the playlist generation method according to any one of claims 1 to 9.
13. A computer program product comprising a computer program which is loadable into a working memory of a processor and is executable by the processor to implement a playlist generation method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Song recommendation method and device
CN110362711A
Supervised metric learning for music structural features
CN117396954A
Song list generation method and device, equipment and storage medium
CN118708754A
Apparatus and method of generating playlist in client-server structure
KR1020100133179A