Apparatus and method for providing chat service
The display device with on-device AI abbreviates chat messages to reduce server usage and costs by using language models and emoticon compression, addressing inefficiencies in chat services on smart TVs.
Patent Information
- Application Number
- PCT/KR2025/001014
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-29
- Filing Date
- 2025-01-17
- Publication Date
- 2025-08-07
AI Technical Summary
Existing chat services on display devices, such as smart TVs, face inefficiencies in server usage and cost due to inactive user interactions, leading to reduced service utilization and increased expenses when few users are engaged in chat activities.
A display device equipped with on-device AI capabilities to abbreviate user chat messages by reducing token count through language models, translation, or emoticon compression, thereby minimizing the need for extensive server interactions and costs.
Reduces server usage and costs by efficiently processing chat messages with fewer tokens, maintaining meaningful communication while optimizing server interactions.
Smart Images

Figure KR2025001014_07082025_PF_FP_ABST
Abstract
Description
Device and method for providing chat service
[0001] The present disclosure relates to a device and method for providing a chat service.
[0002] Display devices, such as smart TVs, can provide chat services. For example, a display device can provide a chat service that allows users to chat in real time while content is being displayed. Based on the chat service, users of the display device can share emotions or information with other users watching the same content while watching it.
[0003] Chat rooms created by chat services can include chatbots. Chatbots can interact with users within the chat room based on artificial intelligence (AI) technology. For example, chatbots can provide response messages based on messages from users or conversations between users within the chat room.
[0004] Typically, chatbots can be deployed on cloud technology. Response messages provided by chatbots in chat rooms can be generated by a cloud server, and costs may be based on the display device's server usage. For example, costs may be determined based on the amount of input (e.g., user messages or conversation volume) transmitted by the display device to the server to obtain a response message. Therefore, a method for efficiently operating chatbots without the burden of server usage is needed.
[0005] If there are few users using the chat service on a display device, chatting between users may not be active, leading to decreased service utilization. Considering this, it is recommended that the chat service be enabled regardless of the number of users.
[0006] One embodiment of the present disclosure may provide a device and method for providing a chat service.
[0007] One embodiment of the present disclosure may provide a device and method that can reduce server usage costs associated with a chatbot.
[0008] One embodiment of the present disclosure can provide a device and method for efficiently operating a chatbot.
[0009] One embodiment of the present disclosure may provide a device and method capable of activating a chat service.
[0010] A device according to one embodiment of the present disclosure comprises: a display device, comprising: a display; a transceiver; a memory storing at least one program; and at least one processor electrically connectable to the memory and including a processing circuit that executes at least one command of the at least one program while connected to the memory, wherein the at least one processor individually or commonly controls the transceiver to: control the display to display content; identify a chat message input by a user while the content is displayed; change the identified chat message into an abbreviated message having the same or similar meaning as the identified chat message based on context information associated with the displayed content; and transmit the abbreviated message to a server capable of providing a chatbot response.
[0011] In one embodiment, the abbreviated message may contain fewer tokens than the number of tokens in the identified chat message.
[0012] According to one embodiment, at least one processor may individually or commonly: change a first text included in the identified chat message into a second text including a smaller number of tokens than the number of tokens of the first text, based on a language model, and use a message including the second text as the abbreviated message.
[0013] According to one embodiment, at least one processor may individually or commonly: detect a language of the identified chat message based on a language model, count a first number of tokens, which is a number of tokens of the identified chat message, translate the identified chat message into a language different from the detected language, count a second number of tokens, which is a number of tokens of the translated chat message, and in response to the second number of tokens being less than the first number of tokens, use the translated chat message as the abbreviated message.
[0014] According to one embodiment, at least one processor may individually or commonly: detect a language of the identified chat message based on a language model, count a first number of tokens, which is the number of tokens of the identified chat message, determine a second number of tokens less than the first number of tokens, and translate the identified chat message into a language different from the detected language, and use the translated chat message as the abbreviated message.
[0015] According to one embodiment, at least one processor may individually or commonly: identify an emoticon included in the identified chat message, obtain a name of the emoticon based on a language model stored in the memory, identify a meaning of the emoticon based on the obtained name, generate a first text representing the identified meaning, abbreviate the first text based on the context information to generate a second text having a smaller number of tokens compared to the number of tokens of the first text, and use a message including the second text as the abbreviated message.
[0016] According to one embodiment, the context information is generated based on meta information, and the meta information may include at least one of broadcast time information, broadcast channel information, broadcast program title, broadcast program description, broadcast program genre, broadcast program performer information, broadcast program production team information, or broadcast program screen information obtained based on an electronic program guide (EPG).
[0017] According to one embodiment, the context information is generated based on meta information, and the meta information may include at least one of information on a person or object appearing in the content obtained by screen analysis of the display device, or background information of the content, voice or sound information obtained by audio analysis of the display device, text information obtained from the screen of the content by a text detection operation, or information on one or more chat participants including the user, or conversation history information of the one or more chat participants.
[0018] According to one embodiment, at least one processor controls the transceiver to individually or commonly: change the meta information into abbreviated information having a similar meaning to the meta information, and transmit the abbreviated information to the server, wherein the abbreviated information may include a smaller number of tokens than the number of tokens of the meta information.
[0019] According to one embodiment, at least one processor may individually or commonly: receive a response message for the abbreviated message from the server through the transceiver, and control the display to display the received response message as the chatbot response.
[0020] A method according to one embodiment of the present disclosure may include: a method for a display device to provide a chat service, the method including: displaying content; identifying a chat message input by a user while the content is displayed; changing the identified chat message into an abbreviated message having the same or similar meaning as the identified chat message based on context information associated with the displayed content; and transmitting the abbreviated message to a server capable of providing a chatbot response.
[0021] In one embodiment, the abbreviated message may contain fewer tokens than the number of tokens in the identified chat message.
[0022] In one embodiment, the action of changing to the abbreviated message may include an action of changing, based on a language model, a first text included in the identified chat message into a second text including a smaller number of tokens than the number of tokens of the first text, and using a message including the second text as the abbreviated message.
[0023] In one embodiment, the operation of changing to the abbreviated message may include: detecting a language of the identified chat message based on a language model; counting a first token number, which is a number of tokens of the identified chat message; translating the identified chat message into a language different from the detected language; counting a second token number, which is a number of tokens of the translated chat message; and using the translated chat message as the abbreviated message in response to the second token number being less than the first token number.
[0024] According to one embodiment, the operation of changing to the abbreviated message may include: detecting a language of the identified chat message based on a language model; counting a first token number, which is the number of tokens of the identified chat message; determining a second token number that is less than the first token number; translating the identified chat message into a language different from the detected language based on the determined second token number; and using the translated chat message as the abbreviated message.
[0025] According to one embodiment, the operation of changing to the abbreviated message may include: identifying an emoticon included in the identified chat message; obtaining a name of the emoticon based on a language model; identifying a meaning of the emoticon based on the obtained name and generating a first text representing the identified meaning; abbreviating the first text based on the context information to generate a second text having a smaller number of tokens than the number of tokens of the first text; and using a message including the second text as the abbreviated message.
[0026] According to one embodiment, the context information is generated based on meta information, and the meta information may include at least one of broadcast time information, broadcast channel information, broadcast program title, broadcast program description, broadcast program genre, broadcast program performer information, broadcast program production team information, or broadcast program screen information obtained based on an electronic program guide (EPG).
[0027] According to one embodiment, the context information is generated based on meta information, and the meta information may include at least one of information on a person or object appearing in the content obtained by screen analysis of the display device, or background information of the content, voice or sound information obtained by audio analysis of the display device, text information obtained from the screen of the content by a text detection operation, or information on one or more chat participants including the user, or conversation history information of the one or more chat participants.
[0028] According to one embodiment, the method further includes changing the meta information into abbreviated information having a similar meaning to the meta information and transmitting the abbreviated information to the server, wherein the abbreviated information may include a smaller number of tokens than the number of tokens of the meta information.
[0029] According to one embodiment, the method may further include: receiving a response message for the abbreviated message from the server; and displaying the received response message as the chatbot response.
[0030] FIG. 1 is a drawing illustrating an output screen of a chat service provided on a display device according to one embodiment.
[0031] FIG. 2 is a diagram illustrating a system providing a chat service according to one embodiment.
[0032] FIG. 3 is a diagram schematically illustrating the configuration and operation of a display device and a chat server according to one embodiment.
[0033] Figure 4 is a flowchart illustrating the operation of a display device according to one embodiment.
[0034] FIG. 5 is a flowchart illustrating an operation of a display device according to one embodiment to abbreviate a chat message based on a text replacement method.
[0035] FIG. 6A is a flowchart illustrating an operation of a display device according to one embodiment to abbreviate a chat message through translation.
[0036] FIG. 6b is a flowchart illustrating another operation of a display device according to one embodiment to abbreviate a chat message through translation.
[0037] FIG. 7 is a flowchart illustrating an operation of a display device according to one embodiment to abbreviate a chat message through compression of the meaning of an emoticon.
[0038] FIG. 8 is a drawing showing an example in which the meaning of an emoticon is compressed by a display device according to one embodiment.
[0039] FIG. 9 is a flowchart illustrating an operation of a display device according to one embodiment to generate context information based on EPG.
[0040] FIG. 10 is a flowchart illustrating an operation of a display device according to one embodiment to generate context information based on a screen analysis operation or a text detection operation.
[0041] Figure 11 is a flowchart illustrating the operation of a server according to one embodiment.
[0042] Fig. 12 is a block diagram of a display device according to one embodiment.
[0043] Figure 13 is a block diagram of a server according to one embodiment.
[0044] The following description refers to the attached drawings, and specific examples of implementations are illustrated within the drawings. Furthermore, other examples may be utilized and structural changes may be made without departing from the scope of the various examples.
[0045] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. In connection with the description of the drawings, the same or similar reference numerals may be used for identical or similar components. Furthermore, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.
[0046] FIG. 1 is a drawing illustrating an output screen of a chat service provided on a display device according to one embodiment.
[0047] Referring to FIG. 1, a display device may provide a chat service that allows users to chat in real time while watching content (102), such as streaming video or broadcast video. The chat service may refer to a service that allows users to open a chat room (or conversation room) to share emotions or information related to the content (102) they are watching, or to enter an existing chat room to communicate with other users. For example, the chat service may be referred to by various terms, such as a "live chat service," a "real-time chat service," a "chat together service," or a "watch together service."
[0048] According to one example, the display device may display content (102) selected by the user, while outputting a chat window (or chat screen) (104) for chatting on the display. The chat window (104) may be displayed at a preset location. The preset location may include a location set by the user or the display device, and may be inside or outside the screen on which the content (102) is displayed. For example, if the chat window (104) is displayed within the screen on which the content (102) is displayed, the chat window (104) may be displayed at a location that does not interfere with the user's viewing of the content (e.g., an edge portion within the screen). For example, if the chat window (104) is displayed outside the screen on which the content (102) is displayed, the chat window (104) may be displayed at a location corresponding to any one of the upper, lower, left, or right sides of the screen.
[0049] In one example, the display device can display or output chat or conversation messages between users viewing content (102) in a chat window (104). In one example, the chat window (104) may be a chat window of a chat room opened by a user of the display device or a chat window of an existing chat room. Users can communicate with other users in real time through the chat window (104).
[0050] For example, the chat service may be a chatbot-participatory chat service in which a chatbot participates in the chat. The chatbot may provide a response message to a user's message (e.g., a user's chat message, or a user's utterance or conversation) based on artificial intelligence (AI) technology. The chatbot may be cloud-based. For example, when a user inputs a message, the input message may be transmitted to a chatbot server in the cloud. The chatbot server may analyze the input message and generate a response message based on the analysis results. The generated response message may be transmitted to a display device and displayed as a chatbot message in a chat window (104).
[0051] For example, a chat service may include a text-based chat service and support various input methods for chatting. For example, the various input methods may include input using a remote control, input using a mobile device, input using a voice input device, input using a text input device, or input using a touch screen.
[0052] For example, if the display device is a TV, input using a remote control may be supported. The user can input a chat message by operating one or more buttons on the remote control or by using the remote control to operate a virtual keyboard displayed on the TV's display. Infrared communication may be used between the TV and the remote control, but is not limited thereto and various other types of communication may be used.
[0053] For example, if there is a mobile device linked to a display device, input using the mobile device may be supported. For example, the mobile device may be an electronic device capable of wireless communication, such as a mobile phone, a tablet PC (personal computer), or a wearable device. The display device and the mobile device may be connected based on various wireless communication technologies, such as Wi-Fi (wireless fidelity) or Bluetooth. Once connected, the display device and the mobile device may perform operations such as information exchange, data sharing, screen mirroring, or remote control. For example, if the mobile device remotely controls the display device, the user may input a chat message into the display device by manipulating a graphical user interface (GUI) displayed on the display of the mobile device or at least one button provided on the mobile device. For example, the user may also input a chat message by manipulating a virtual keyboard displayed on the display device with the mobile device.
[0054] In one example, the display device may support input using a voice input device. For example, the voice input device may be either a voice input device built into the display device (e.g., a microphone of the display device) or a voice input device linked to the display device (e.g., a microphone built into a mobile device or a separate microphone device). The user may input a voice message using the voice input device. The display device may convert the voice message input by the user into a text message and display it, and output the displayed text message as a chat message in a chat window (104) according to the user's selection. In one example, the display device may convert the voice message input by the user into a text message using a speech-to-text (STT) engine. The STT engine may be a system, application, or software that converts voice into text, and may be included in the display device.
[0055] In one example, the display device may support input using a character input device. For example, the character input device may be an input device (e.g., a keyboard) connected to the display device via a wired or wireless connection. The character input device may be connected to the display device via a high definition multimedia interface (HDMI) cable or a universal serial bus (USB) cable, or may be connected wirelessly to the display device via wireless communication such as Wi-Fi or Bluetooth. A user may input a chat message using the character input device connected to the display device.
[0056] For example, a display device may support touch input on a touchscreen. For example, if the display device has a touchscreen display, chat messages may be entered based on the user's touch input. The user's touch input may be performed at a location associated with a GUI (e.g., a virtual keyboard) displayed on the touchscreen of the display device.
[0057] According to one example, the display device may display recommended message information (106) for the convenience of inputting a chat message. For example, the recommended message information (106) may include one or more recommended chat messages based on the chat content (or conversation context) of the chat window (104). When at least one of the one or more recommended chat messages is selected by the user, the display device may output at least one chat message selected by the user to the chat window (104). According to one example, the user may select at least one chat message based on at least one of the various input methods described above (e.g., input using a remote control, a mobile device, a voice input device, input using a text input device, or a user's touch input).
[0058] In one example, the display device may display recommended emoticon information (108) for the convenience of inputting a chat message. For example, the recommended emoticon information (108) may include one or more recommended emoticons based on the chat content (or conversation context) of the chat window (104). When at least one of the one or more recommended emoticons is selected by the user, the display device may output at least one emoticon selected by the user to the chat window (104). In one example, the user may select at least one emoticon based on at least one of various input methods (e.g., input using a remote control, a mobile device, a voice input device, an input using a text input device, or a user's touch input).
[0059] For example, the display device may display a menu bar (110) for selectively utilizing various input methods. For example, the menu bar (110) may include menus related to at least one of input using a remote control, input using a mobile device, input using a voice input device, or input based on touch input (e.g., inputting emoticons or text using a virtual keyboard). The menu bar (110) may initially be controlled by input using a remote control, and may be changed to any one of at least one menu included in the menu bar (110) depending on a user's selection.
[0060] FIG. 2 is a diagram illustrating a system providing a chat service according to one embodiment.
[0061] Referring to FIG. 2, a system (200) providing a chat service may include a display device (202) and at least one server (e.g., a broadcast server (204) and / or a chat server (206)).
[0062] For example, the display device (202) may be a device that displays real-time broadcast images based on a broadcast channel, or streaming images provided from a content server or other devices. The display device (202) may be a device that can perform various computing functions such as an input function (e.g., a voice input function), an output function (e.g., a voice or audio output function), or a communication function in addition to a display function. For example, the display device (202) may be a TV, a smart TV, a mobile device (e.g., a tablet PC, a wearable device, a smartphone, or a mobile phone), a PC, a desktop computer, a laptop, a personal digital assistant (PDA), a laptop, a media player, an e-book reader, a digital broadcasting terminal, a navigation device, a kiosk, a digital camera, or a home appliance. The display device (202) is not limited to the above-described devices and may also be another type of electronic device.
[0063] According to one example, the display device (202) can perform communication using any of various wired or wireless communication protocols, such as Ethernet, GSM (global system for mobile communications), EDGE (enhanced data GSM environment), CDMA (code division multiple access), TDMA (time division multiplexing access), LTE (long term evolution), LTE-A (LTE advance), NR (new radio), Wi-Fi, or Bluetooth. For example, the display device (202) can perform communication with the broadcast server (204) and / or the chat server (206) based on the wired or wireless communication protocol.
[0064] In one example, the display device (202) may be an on-device AI device or an edge or edged AI device capable of performing AI functions. In one example, the display device (202) may perform an operation to optimize a chat message entered by a user (e.g., an operation to abbreviate or compress a chat message) to reduce costs associated with the chat server (206), and may utilize AI functions to analyze the displayed screen to generate meta information.
[0065] In one example, the display device (202) may be connected, wired or wirelessly, to one or more electronic devices (210) that may be used for various types of input. For example, the display device (202) may be connected, wired or wirelessly, to at least one of a remote control (212), a mobile device (214), a voice input device (216), or a text input device (218). A user of the display device (202) may perform an input operation (e.g., an operation of entering a chat message) using at least one of the remote control (212), the mobile device (214), the voice input device (216), or the text input device (218). In one example, the display of the display device (202) may be a touch screen, and a user of the display device (202) may control the display device (202) or perform an input operation by touch.
[0066] According to one example, the broadcast server (204) can provide various broadcast information to the display device (202). For example, the broadcast server (204) can provide an electronic program guide (EPG) (220) to the display device (202). The EPG (220) is information associated with one or more broadcast programs, and may include at least one of broadcast time information (e.g., broadcast start time and / or broadcast end time), broadcast channel information (e.g., channel name, channel logo, or channel number), broadcast program title, broadcast program description, broadcast program genre (e.g., drama, sports, documentary, or entertainment), broadcast program performer information, broadcast program production crew information, or broadcast program screen information.
[0067] In one example, the display device (202) can receive the EPG (220) periodically or aperiodically. In one example, the display device (202) can receive the EPG (220) at a set time or at a random time. In one example, when the content being displayed (or the content being watched by the user) is a broadcast program, the display device (202) can use the EPG to generate context information associated with the broadcast program.
[0068] In one example, the chat server (206) may be a server in the cloud and may be a server that can communicate with the display device (202) to provide a chat service (222) to a user. The chat server (206) may be a single, independent server or may include two or more servers. In one example, the chat server (206) may include a language model and may provide a paid service that charges based on the amount of language model used. For example, the chat server (206) may be a server that provides a chatbot response to an input message based on the language model. The service cost associated with the chat server (206) may be determined based on the size, length, or quantity of a message (e.g., a user's chat message) input from the display device (202) to the chat server (206).
[0069] In one example, the display device (202) may perform an operation to compress a message input to the chat server (206) so as to reduce the usage cost of the chat server (206). For example, the display device (202) may perform a compression operation to replace words or sentences included in the user's chat message with shorter words or sentences of the same or similar meaning, or to reduce the size, length, or quantity of the user's chat message through translation. When the compression operation is performed, the user's chat message may be abbreviated, and the abbreviated message may be transmitted to the chat server (206), thereby reducing the usage cost of the chat server (206).
[0070] For convenience of explanation, the following description will exemplify the use of tokens, the smallest semantic units of a language model, as units for checking the size, length, or quantity of a message by the display device (202). However, the units for checking the size, length, or quantity of a message by the display device (202) are not limited to tokens, and other units (e.g., bits or bytes) may also be used.
[0071] FIG. 3 is a diagram schematically illustrating the configuration and operation of a display device and a chat server according to one embodiment.
[0072] Referring to FIG. 3, the display device (202) may be connected, wired or wirelessly, to one or more electronic devices (e.g., at least one of a remote control (212), a mobile device (214), a voice input device (216), or a text input device (218)) that may be used for various types of input. In one example, the display device (202) may include an STT engine (219) that converts a voice message input by a user through the voice input device (216) into a text message.
[0073] In one example, the display device (202) may include a context database (DB) (230) that stores context information. In one example, the display device (202) may generate context information based on meta information. For example, the meta information may include at least one of information based on EPG (220) (e.g., at least one of broadcast time information, broadcast channel information, broadcast program title, broadcast program description, broadcast program genre, broadcast program performer information, broadcast program production team information, or broadcast program screen information), information obtained by screen analysis of the display device (202) (e.g., at least one of information on people or objects appearing in the content or background information of the content), information obtained by audio analysis of the display device (202) (e.g., voice information or sound information such as the voice tone of a person in the content), text information obtained from the screen of the content by a text detection operation, chat participant information (e.g., number of participants, nationality of participants, gender of participants, age of participants, or account information of participants), or conversation history information of chat participants.
[0074] For example, information obtained through screen analysis of a display device (202) may be obtained through non-periodic screen analysis of the display device (202) using computer vision, and may be used to determine the genre of the content, or the atmosphere or information of the content. For example, if the content is a broadcast video broadcasting a sports game, information on the type of the sports game (e.g., soccer, baseball, or basketball), the names of the teams participating in the sports game, score information, or information on wins / losses may be obtained through the screen analysis results.
[0075] In one example, the display device (202) may include a chat service unit (240) and a chat compressor (242). In one example, the chat service unit (240) may include an application for providing a chat service. For example, the chat service unit (240) may provide a user interface (UI) associated with the chat service, and may receive a chat message from a user through the UI or output a response message to a user's chat message (e.g., a chatbot response or another user's chat message) in a chat window.
[0076] For example, the chat compression unit (242) may include a language model (LM) that can be utilized for on-device AI functions. The chat compression unit (242) may utilize the LM to compress chat messages or meta-information input by the user. For example, the chat compression unit (242) may utilize the LM to perform a compression operation that abbreviates chat messages or meta-information for transmission to the chat server (206).
[0077] For example, a compression operation may involve replacing or modifying text (or words or sentences) contained in a chat message or meta information with other text. The other text may have the same or similar meaning as the original text, but with fewer tokens.
[0078] The following [Table 1] illustrates chat messages between chat participants watching a sports broadcast program. The chat messages illustrated in [Table 1] may be included in the meta information as conversation history information between the chat participants and may be compressed by a compression operation. Any of the chat messages illustrated in [Table 1] may be a message entered by a user of the display device (202) and may be compressed similarly to the compression of meta information.
[0079]
[0080] Referring to [Table 1], the token number of participant 1's chat message (can't wait) is 3, the token number of participant 2's chat message (Why so nervous?) is 4, and the token number of participant 3's chat message (should be a good game.) is 5, so the total token number of chat messages in the chat room may be 12. The chat compression unit (242) may abbreviate at least one of the chat messages in the chat room. For example, the chat compression unit (242) may change the chat messages of participants 1 to 3 into abbreviated messages as shown in the following [Table 2].
[0081]
[0082] Referring to [Table 2], the chat message of Participant 1 was changed from “can't wait” to “excited”, and the number of tokens corresponding to the chat message of Participant 1 was reduced from 3 to 1 due to the change. The chat message of Participant 2 was changed from “Why so nervous?” to “felling anxious?”, and the number of tokens corresponding to the chat message of Participant 2 was reduced from 4 to 2 due to the change. The chat message of Participant 3 was changed from “should be a good game.” to “anticipating a great match”, and the number of tokens corresponding to the chat message of Participant 3 was reduced from 5 to 4 due to the change. As a result, the total number of tokens of the chat messages of Participants 1 to 3 was reduced from 12 to 7, and the meta information (e.g., conversation history information between chat participants) was reduced by approximately 32% compared to the meta information before the change. In this way, the chat compression unit (242) can reduce the number of tokens while maintaining the meaning of the chat message or meta information based on the operation of replacing text. In one example, the compression operation may include condensing multiple texts into one text or deleting at least one of the multiple texts when multiple texts with overlapping meanings exist in a chat message or meta information.
[0083] As an example, the compression operation may include removing unnecessary text from chat messages or meta information that is not relevant to the context of the conversation or content within the chat room.
[0084] In one example, the compression operation may include an operation of abbreviating a chat message or meta information through translation. For example, the chat compression unit (242) may detect the language of the chat message (e.g., Korean) and count the number of tokens in the chat message. The chat compression unit (242) may translate the language of the chat message into another language (e.g., English) using LM and count the number of tokens in the translated chat message. The chat compression unit (242) may compare the number of tokens in the chat message before translation with the number of tokens in the translated chat message. Based on the comparison result, the chat compression unit (242) may or may not use the translated chat message as an abbreviated message.
[0085] For example, the chat compression unit (242) may use the translated chat message as an abbreviated message if the number of tokens in the translated chat message is less than the number of tokens in the chat message before translation. [Table 3] below is a table showing examples of chat messages before and after translation.
[0086]
[0087] Referring to [Table 3], the chat compression unit (242) can detect that the language of the chat messages before translation is English and count the number of tokens for each or all of the chat messages. For example, the chat compression unit (242) can count the number of tokens for the chat message of participant 1 (They play soccer really well today) as 7, the number of tokens for the chat message of participant 2 (They are the best!!) as 5, and the number of tokens for the chat message of participant 3 (It would be nice to score just one more goal) as 10. The chat compression unit (242) can count the total number of tokens for the chat messages of participants 1 to 3 as 22.
[0088] As shown in [Table 3], the chat compression unit (242) can translate English chat messages into Korean. The chat compression unit (242) can count the number of tokens for each or all of the chat messages translated into Korean. For example, the chat compression unit (242) can translate Participant 1's chat message, “They play soccer really well today.” into “They are really good at soccer today,” and count the number of tokens corresponding to Participant 1's translated chat message as 6. The chat compression unit (242) can translate Participant 2's chat message, “They are the best!!” into “They are the best!!” and count the number of tokens corresponding to Participant 2's translated chat message as 3. The chat compression unit (242) can translate Participant 3's chat message, “It would be nice to score just one more goal” into “I hope we score one more goal,” and count the number of tokens corresponding to Participant 3's translated chat message as 5. The chat compression unit (242) can count the total number of tokens for the chat messages of participants 1 to 3 as 14.
[0089] The chat compression unit (242) can identify that the number of tokens for each or all of the chat messages of participants 1 to 3 has been reduced after translation compared to before translation. For example, the chat compression unit (242) can identify that the number of tokens corresponding to the chat message of participant 1 has been reduced from 7 to 6 due to translation, the number of tokens corresponding to the chat message of participant 2 has been reduced from 5 to 3 due to translation, and the number of tokens corresponding to the chat message of participant 3 has been reduced from 10 to 5 due to translation. Consequently, the chat compression unit (242) can identify that the total number of tokens of the chat messages of participants 1 to 3 has been reduced by approximately 36% from 22 to 14. Therefore, the chat compression unit (242) can use the translated chat message as an abbreviated message based on the reduction in the number of tokens due to translation.
[0090] For example, if the number of tokens in a translated chat message is greater than the number of tokens in the chat message before translation, the chat compression unit (242) may perform a compression operation using another method (e.g., text replacement method) without using the translated chat message. [Table 4] below is a table showing examples of chat messages before and after translation.
[0091]
[0092] Referring to [Table 4], the chat compression unit (242) can detect that the language of the chat messages before translation is English and count the number of tokens for each or all of the chat messages. For example, the chat compression unit (242) can count the number of tokens for the chat message of participant 1 (can't wait) as 3, the number of tokens for the chat message of participant 2 (Why so nervous?) as 4, and the number of tokens for the chat message of participant 3 (should be a good game.) as 5. The chat compression unit (242) can count the total number of tokens for the chat messages of participants 1 to 3 as 12. As shown in [Table 4], the chat compression unit (242) can translate the chat messages in English into Korean. The chat compression unit (242) can count the number of tokens for each or all of the chat messages translated into Korean. For example, the chat compression unit (242) can translate participant 1's chat message “can't wait” into “I can't wait” and count the number of tokens corresponding to the translated chat message of participant 1 as 5. The chat compression unit (242) can translate participant 2's chat message “Why so nervous?” into “Why are you so sensitive?” and count the number of tokens corresponding to the translated chat message of participant 2 as 7. The chat compression unit (242) can translate participant 3's chat message “should be a good game.” into “It will be a good game.” and count the number of tokens corresponding to the translated chat message of participant 3 as 7. The chat compression unit (242) can count the total number of tokens for the chat messages of participants 1 to 3 as 19.
[0093] The chat compression unit (242) can identify that the number of tokens for each or all of the chat messages of participants 1 to 3 has increased after translation compared to before translation. For example, the chat compression unit (242) can identify that the number of tokens corresponding to the chat message of participant 1 has increased from 3 to 5 due to translation, the number of tokens corresponding to the chat message of participant 2 has increased from 4 to 7 due to translation, and the number of tokens corresponding to the chat message of participant 3 has increased from 5 to 7 due to translation. Consequently, the chat compression unit (242) can identify that the total number of tokens of the chat messages of participants 1 to 3 has increased by approximately 58% from 12 to 19. Accordingly, the chat compression unit (242) can perform a compression operation in a different manner (e.g., a text replacement method) without using the translated chat messages. In one example, the compression operation may include an operation of compressing the meaning of non-text (e.g., an emoticon). When an emoticon is input, the chat compression unit (242) can obtain the name of the input emoticon based on the LM. For example, the name of the emoticon that can be obtained by the LM may be a text that represents the emotion or facial expression expressed by the emoticon (e.g., a smiling face with an open mouth or a crying face with tears). The chat compression unit (242) can abbreviate the meaning of the emoticon by changing the name of the acquired emoticon to another text corresponding to a smaller number of tokens with a substantially identical or similar meaning. The chat compression unit (242) can abbreviate the meaning of the emoticon more clearly by considering context information (e.g., a conversation context or a content genre or scene).
[0094] According to one example, the chat service unit (240) and the chat compression unit (242) may be integrated hardware components or software included in at least one processor of the display device (202), controlled by at least one processor, or physically separate hardware components or software.
[0095] According to one example, the chat server (206) may include multiple servers, for example, an open API (application programming interface) server (244), a chat service server (246), and a chatbot server (248).
[0096] In one example, the open API server (244) may be a server that the display device (202) (or another electronic device) can access to utilize a chat service or chatbot service. For example, the display device (202) may communicate with the open API server (244) to request information related to the chat service or obtain a chatbot response. The open API server (244) and the display device (202) may communicate based on, for example, the hypertext transfer protocol (HTTP).
[0097] In one example, the chat service server (246) may be a server that manages information associated with the chat service (e.g., user account information, chat room information or chat messages, or cost information associated with the use of the chatbot server (248)) and performs operations to provide a chatbot service between the open API server (244) and the chatbot server (248). For example, the chat service server (246) may receive a compressed message (or an abbreviated message) from the open API server (244) and request the chatbot server (248) to provide a response message to the compressed message.
[0098] In one example, the chatbot server (248) may generate a response message for a compressed message based on a request from the chat service server (246) and provide the generated response message as a chatbot response to the open API server (244). The chatbot server (248) may include a large language model (LLM) and may be referred to as an LLM server. The LLM is a language model learned based on a large amount of data and may be a language model larger in scale than the LM included in the chat compression unit (242) of the display device (202). The LLM may be used to generate an answer or response based on a given conversation or message. The LLM enables language-based processing based on deep learning and natural language processing technology, and may also perform a function of inferring the meaning of a non-verbal message (e.g., emoticon) based on a given context. In one example, the chatbot server (248) may use the compressed message as an input to the LLM and generate a response message for the compressed message.
[0099] In one example, the chat server (206) may not include an open API server (244), a chat service server (246), and a chatbot server (248), and may be a single server that performs the functions of the open API server (244), the chat service server (246), and the chatbot server (248). Although the operations of the open API server (244), the chat service server (246), and the chatbot server (248) are described separately below, the operations of the open API server (244), the chat service server (246), and the chatbot server (248) may also be performed by a single independent server.
[0100] According to one example, the display device (202) and the chat server (206) can perform the following operations.
[0101] In operation 302, the chat service unit (240) of the display device (202) may acquire a user input message as a chat message entered by the user. In one example, the chat service unit (240) may acquire the user input message when the user uses the chat service while content is being displayed. The user may use the chat service by entering a chat room associated with the content being displayed or by opening a chat room associated with the content being displayed.
[0102] In one example, the user input message may be a message input using at least one of a remote control (212), a mobile device (214), a voice input device (216), or a text input device (218), or a message input by a user's touch on a touch screen of the display device (202). In one example, the user input message may include text and / or emoticons (or emojis) input or selected by the user. The chat service unit (240) may provide the user input message to the chat compression unit (242), and the chat compression unit (242) may receive the user input message from the chat service unit (240).
[0103] In operation 304, the chat compression unit (242) may count the number of tokens corresponding to the received user input message. In one example, the chat compression unit (242) may include a token counter for counting the number of tokens. The token counter may calculate how many tokens a natural language sentence, such as a user input message, is processed into.
[0104] In operation 306, the chat compression unit (242) may perform a message compression operation. For example, the chat compression unit (242) may convert or change a user input message into a compressed message based on an LM that may be used for an on-device AI function. In one example, the compressed message is an abbreviated message having the same or similar meaning as the user input message, and may include a smaller number of tokens than the number of tokens of the user input message counted in operation 304. In one example, the chat compression unit (242) may use context information stored in the context DB (230) to convert or change the user input message into a compressed message. In one example, the chat compression unit (242) may change the user input message into a compressed message based on any one of the various compression operations described above (e.g., a text replacement operation, a translation operation, an emoticon compression operation, or an operation for deleting unnecessary or redundant text). The chat compression unit (242) may provide the compressed message to the chat service unit (240).
[0105] In operation 308, the chat service unit (240) may receive a compressed message, transmit it to the chat server (206), and display the transmitted compressed message in the chat window. In one example, the chat service unit (240) may first display the compressed message and then transmit it to the chat server (206) according to the user's selection. In one example, the chat service unit (240) may include the compressed message in a request message and transmit it to the chat server (206). In one example, the request message may be an HTTP request message and may be a message requesting a response message to the compressed message.
[0106] In one example, the chat service unit (240) may receive and store the number of tokens for a compressed message transmitted to the chat server (206) from the chat compression unit (242). In one example, the chat service unit (240) may use the number of tokens for the stored compressed message to calculate a cost associated with the chat server (206) (e.g., a cost for generating a chatbot response). In one example, the chat service unit (240) may transmit information about the calculated cost to the chat server (206) (or the chat service server (246)). In one example, the chat service unit (240) may not transmit information about the calculated cost. In this case, the chat server (206) (or the chat service server (246)) may count the number of tokens in the compressed message to calculate the cost.
[0107] In operation 310, the open API server (244) may receive a request message and transmit a compressed message included in the received request message to the chat service server (246). According to an example, if the open API server (244) determines that the number of tokens in the compressed message is greater than a set number, the compressed message may not be transmitted to the chat service server (246). In this case, the open API server (244) may transmit an instruction message to the display device (202) indicating that the number of tokens in the compressed message is excessively large. When the instruction message is received, the chat service unit (240) of the display device (202) may transmit the compressed message to the chat compression unit (242) so that a compression operation to reduce the number of tokens in the compressed message is additionally performed.
[0108] For example, if the cost of using the chat server (206) exceeds a set amount, at least one server within the chat server (206) may stop generating chatbot responses and transmit a notification message to the display device (202). For example, the notification message may include information indicating that the cost of using the server is excessive.
[0109] In operation 312, the chat service server (246) may receive a compressed message from the open API server (244) and request the chatbot server (248) to generate a response message for the compressed message. The chat service server (246) may transmit the compressed message to the chatbot server (248) together with the request. In one example, the chat service server (246) may transmit compression instruction information indicating to compress or abbreviate the chatbot response and / or token count instruction information indicating the number of tokens or the range of the number of tokens of the chatbot response to the chatbot server (248).
[0110] In operation 314, the chatbot server (248) may receive a compressed message from the chat service server (246). In one example, the chatbot server (248) may receive compression instruction information and / or token count instruction information.
[0111] In operation 316, the chatbot server (248) may generate a chatbot response, which is a response message to the compressed message, in response to a request from the chat service server (246). In one example, the chatbot server (248) may generate a chatbot response based on the compressed message using LLM. For example, the chatbot server (248) may generate a chatbot response as shown in the following [Table 5] in response to the compressed message including any one of the chat messages of participants 1 to 3.
[0112]
[0113] Referring to [Table 5], a chatbot response may include 15 tokens. In one example, the chatbot server (248) may receive compression instruction information and / or token count instruction information. For example, based on the compression instruction information, the chatbot server (248) may abbreviate the chatbot response shown in [Table 5] as shown in [Table 6].
[0114]
[0115] Referring to [Table 6], the chatbot response may include 10 tokens, which is less than the number of tokens in the chatbot response as shown in [Table 5]. For example, the chatbot server (248) may abbreviate the chatbot response as shown in [Table 5] as shown in [Table 7], based on the compression instruction information and the token count instruction information.
[0116]
[0117] Referring to [Table 7], the chatbot response may include 5 tokens based on the token count information, if the token count information indicates a token count of 5 or less. In one example, the chatbot server (248) may use exclamation marks or emoticons, or perform translation, to abbreviate the chatbot response.
[0118] In operation 318, when a chatbot response is generated, the chatbot server (248) can transmit the generated chatbot response to the chat service server (246).
[0119] In operation 320, the chat service server (246) can receive a chatbot response transmitted from the chatbot server (248). The chat service server (246) can store the chatbot response in the message DB (252) and transmit the chatbot response to the open API server (244).
[0120] In one example, operations 312 and 320 may be performed by a chat room management unit (250) included in a chat service server (246). For example, the chat room management unit (250) may store and manage messages of a chat room opened in connection with a chat service in a message DB (252), control the generation of a chatbot response by a chatbot server (248), or calculate or manage a cost associated with the generation of a chatbot response. In one example, the cost associated with the generation of a chatbot response may be based on the number of tokens of a compressed message used to generate a chatbot response and / or the number of tokens of the chatbot response. In one example, the chat room management unit (250) may correspond to at least one processor of the chat service server (246) or may be a separate component controlled by at least one processor.
[0121] In operation 322, the open API server (244) may obtain a chatbot response from the chat service server (246) and provide the obtained chatbot response to the display device (202). In one example, the open API server (244) may include the chatbot response in a response message and transmit it to the display device (202). For example, the response message may be an HTTP response message and may be a response message to the request message transmitted by the display device (202) in operation 308.
[0122] In operation 324, the chat service unit (240) of the display device (202) receives a chatbot response from the open API server (244) and can display the received chatbot response on a display (e.g., the chat window (104) of FIG. 1) as a response message to a user input message.
[0123] In one example, the display device (202) may perform the following actions to provide meta information to the chat server (206) (or chatbot server (248)) to obtain a more appropriate chatbot response.
[0124] According to one example, the chat service unit (240) of the display device (202) can obtain meta information. For example, the meta information may include at least one of information based on the EPG (220) (e.g., at least one of broadcast time information, broadcast channel information, broadcast program title, broadcast program description, broadcast program genre, broadcast program cast information, broadcast program production team information, or broadcast program screen information), information obtained by screen analysis (or scene analysis) of the display device (202) (e.g., at least one of information on people or objects appearing in the content, or background information of the content), information obtained by audio analysis of the display device (202) (e.g., voice information or sound information such as the voice tone of a person in the content), text information obtained from the screen of the content by a text detection operation, chat participant information (e.g., number of participants, nationality of participants, gender of participants, age of participants, or account information of participants), or conversation history information of chat participants.
[0125] In one example, the chat service unit (240) can transmit meta information to the chat compression unit (242). The chat compression unit (242) can count the number of tokens corresponding to the received meta information. The chat compression unit (242) can compress the meta information based on the counted number of tokens. For example, the chat compression unit (242) can compress or abbreviate the meta information based on any one of the various compression operations described above (e.g., text replacement operation, translation operation, emoticon compression operation, or operation of deleting unnecessary or redundant text). The chat compression unit (242) can provide the abbreviated meta information to the chat service unit (240).
[0126] In one example, the chat service unit (240) may transmit abbreviated meta information to the chat server (206). For example, the abbreviated meta information may not be displayed in the chat window and may be transmitted to the chat server (206) without the user's confirmation.
[0127] In one example, the open API server (244) may receive abbreviated meta information and transmit the abbreviated meta information to the chat service server (246). The chat service server (246) may receive the abbreviated meta information from the open API server (244) and transmit the abbreviated meta information to the chatbot server (248). The chatbot server (248) may use the abbreviated meta information to generate a chatbot response to a user input message (or compressed message).
[0128] According to one example, the aforementioned operations associated with the display device (202) and the chat server (206) may be performed repeatedly.
[0129] According to one example, the display device (202) may measure the volume of conversation (or volume of chat messages) in the chat room and the conversation speed between participants, and adjust the degree of activation of the chatbot response (e.g., the volume of chatbot responses generated and / or the generation speed of the chatbot responses) based on the measurement results. For example, the display device (202) may increase the connection frequency of the chat server (206) so that chatbot responses are generated more or faster when the volume of conversation in the chat room is lower than a threshold or the conversation speed is slower. The display device (202) may decrease the connection frequency of the chat server (206) so that chatbot responses are generated less or slower when the volume of conversation in the chat room is higher than a threshold or the conversation speed is faster. Accordingly, if there is a steady conversation between participants, the generation speed of chatbot responses may be reduced, resulting in relatively fewer chatbot responses being output, and if there is little conversation between participants, the generation speed of chatbot responses may be increased, resulting in relatively more chatbot responses being output.
[0130] For example, the display device (202) may adjust the degree of activation of the chatbot response so that, when the user is watching a broadcast program, the chatbot response is output less or more slowly as the end of the broadcast program approaches.
[0131] For example, the display device (202) may calculate the elapsed time from the broadcast start time or the remaining time until the broadcast end time based on information about the broadcast start time or the broadcast end time obtained from the EPG. The display device (202) may adjust the activation level of the chatbot response based on the elapsed time from the broadcast start time or the remaining time until the broadcast end time.
[0132] For example, the display device (202) may increase the activation level of the chatbot response if the elapsed time (e.g., 12 minutes) from the broadcast start time is less than the threshold time (e.g., 50 minutes). The display device (202) may decrease the activation level of the chatbot response if the elapsed time (e.g., 51 minutes) from the broadcast start time is greater than the threshold time (e.g., 50 minutes).
[0133] For example, the display device (202) may increase the activation level of the chatbot response if the remaining time until the end of the broadcast (e.g., 48 minutes) is greater than or equal to a threshold time (e.g., 10 minutes). The display device (202) may decrease the activation level of the chatbot response if the remaining time until the end of the broadcast (e.g., 8 minutes) is less than or equal to a threshold time (e.g., 10 minutes).
[0134] For example, the display device (202) may calculate a first ratio, which is the ratio of elapsed time to the total broadcast time, or a second ratio, which is the ratio of remaining time to the total broadcast time. The display device (202) may compare the first ratio or the second ratio with a threshold ratio and determine the degree of activation of the chatbot response based on the comparison result.
[0135] For example, the display device (202) may increase the activation level of the chatbot response when the first ratio is less than the first threshold ratio or the second ratio is greater than or equal to the second threshold ratio. For example, the display device (202) may decrease the activation level of the chatbot response when the first ratio is greater than or equal to the first threshold ratio or the second ratio is less than the second threshold ratio.
[0136] Figure 4 is a flowchart illustrating the operation of a display device according to one embodiment.
[0137] Referring to FIG. 4, in operation 402, the display device (202) may display content. For example, the display device (202) may display a video streamed from an external electronic device or content server or a video on a broadcast channel according to the user's selection. For example, the display device (202) may provide a chat service so that the user can chat in real time while watching the content. If the display device (202) determines that the user has created a chat room or entered an existing chat room, the display device (202) may allow a chatbot to join the chat room the user has entered. For example, the display device (202) may provide guidance regarding the chatbot in the chat room. For example, the display device (202) may output information indicating that an AI-based chatbot is participating in the chat and / or a risk notice regarding the presence of a non-human participant (chatbot) in the chat room.
[0138] In operation 404, the display device (202) may identify a chat message entered by a user while content is being displayed. For example, the chat message may be a user-entered message entered by the user using at least one of a remote control (212), a mobile device (214), a voice input device (216), a text input device (218), or a touch on a touch screen.
[0139] In operation 406, the display device (202) may convert the identified chat message into an abbreviated message (e.g., the compressed message of FIG. 3 ). For example, the display device (202) may convert the identified chat message into an abbreviated chat message having the same or similar meaning as the identified chat message based on contextual information associated with the content being displayed. In one example, the display device (202) may include a LM for converting the identified chat message into an abbreviated chat message. For example, the LM may be used to obtain similar words or sentences that can replace words or sentences included in the chat message, or to translate the chat message into another language. When contextual information is utilized, the conversational context between chat participants or the context associated with the content may be considered to understand the meaning of words or sentences included in the chat message, thereby obtaining more specific similar words or sentences. In one example, the abbreviated chat message may include a smaller number of tokens than the number of tokens in the identified chat message.
[0140] In operation 408, the display device (202) may transmit the abbreviated message to a server (e.g., a chat server (206) or an open API server (244) of FIG. 3). In one example, the server may directly generate a chatbot response to the compressed message based on LLM, or may include a separate server (e.g., a chatbot server (248) of FIG. 3) that generates a chatbot response.
[0141] In operation 410, the display device (202) may receive a response message from the server. In one example, the display device (202) may display the received response message in the chat room as a chatbot response.
[0142] For example, operation 406 may be performed based on various compression methods. Details related to this are described below with reference to FIGS. 5 to 7.
[0143] FIG. 5 is a flowchart illustrating an operation of a display device according to one embodiment to abbreviate a chat message based on a text replacement method.
[0144] Referring to FIG. 5, in operation 502, the display device (202) may identify a first text included in a chat message. In one example, the first text may include at least one first word or at least one first sentence.
[0145] In operation 504, the display device (202) may change the first text into a second text having a smaller number of tokens based on the LM. In one example, the second text may include at least one second word or at least one second sentence having the same or similar meaning as at least one first word or at least one first sentence.
[0146] In operation 506, the display device (202) can utilize the message including the second text as an abbreviated message.
[0147] FIG. 6A is a flowchart illustrating an operation of a display device according to one embodiment to abbreviate a chat message through translation.
[0148] Referring to FIG. 6A, in operation 602, the display device (202) can detect the language (e.g., Korean) of the chat message based on the LM.
[0149] In operation 604, the display device (202) can count a first token number, which is the number of tokens in the chat message.
[0150] In operation 606, the display device (202) may translate the chat message into a language other than the detected language (e.g., English).
[0151] In operation 608, the display device (202) may count a second token count, which is the number of tokens in the translated chat message.
[0152] In operation 610, the display device (202) can determine whether the number of second tokens is less than the number of first tokens.
[0153] In operation 612, the display device (202) can use the translated message as an abbreviated message if the number of second tokens is less than the number of first tokens.
[0154] In operation 614, the display device (202) may abbreviate the chat message based on another compression method (e.g., text replacement method) if the number of second tokens is greater than or equal to the number of first tokens.
[0155] FIG. 6b is a flowchart illustrating another operation of a display device according to one embodiment to abbreviate a chat message through translation.
[0156] As shown in FIG. 6b, the display device (202) may also abbreviate chat messages through token count limitation translation.
[0157] Referring to FIG. 6B, in operation 622, the display device (202) can detect the language (e.g., Korean) of the chat message based on the LM.
[0158] In operation 624, the display device (202) may count a first token number (e.g., 15), which is the number of tokens in the chat message.
[0159] In operation 626, the display device (202) may determine a second number of tokens (e.g., 10) that is less than the first number of tokens. In one example, instead of the second number of tokens, a range of tokens (e.g., 10 or less) may be determined.
[0160] In operation 628, the display device (202) may translate the chat message into a language other than the detected language (e.g., English) based on the determined second token count. For example, the display device (202) may perform the translation so that the translated message contains a number of tokens equal to or less than the second token count.
[0161] In operation 630, the display device (202) can use the translated message as an abbreviated message.
[0162] The following [Table 8] is a table showing an example of a chat message abbreviated by a display device (202) using a token count restriction translation.
[0163]
[0164] Referring to [Table 8], a chat message having 19 tokens before translation can be changed to a chat message having 16 tokens after translation. Since the number of tokens in the chat message after translation does not satisfy a predetermined number of tokens (e.g., 10 tokens) or a range of tokens (e.g., less than or equal to 10 tokens), the display device (202) can perform compression on the message after translation. For example, the display device (202) can replace the text of the chat message after translation with other text or briefly abbreviate it so that it becomes 10 tokens or less than or equal to 10 tokens. Accordingly, the message after the token-limited translation can be used as an abbreviated message that satisfies the determined number of tokens or a range of tokens. FIG. 7 is a flowchart illustrating an operation of a display device abbreviating a chat message through semantic compression of emoticons according to one embodiment.
[0165] Referring to FIG. 7, in operation 702, the display device (202) can identify an emoticon included in a chat message.
[0166] In operation 704, the display device (202) can obtain the name of the emoticon based on the LM.
[0167] In operation 706, the display device (202) may generate a first text indicating the meaning of the emoticon based on the acquired emoticon name.
[0168] In operation 708, the display device (202) can generate a second text by abbreviating the first text based on context information.
[0169] In operation 710, the display device (202) can use the message including the second text as an abbreviated message.
[0170] FIG. 8 is a drawing showing an example in which the meaning of an emoticon is compressed by a display device according to one embodiment.
[0171] Referring to FIG. 8, the display device (202) can obtain the name of the emoticon (802) based on the LM based on identifying the emoticon (802) included in the chat message. For example, the name of the emoticon (802) can be “Smiling Face with Open Mouth and Tears (804)” consisting of 9 tokens.
[0172] Generally, since the name of an emoticon indicates the emotion, facial expression, or state expressed by the emoticon, the display device (202) can identify the meaning of the emoticon (802) based on the name of the emoticon (802). Based on the identified meaning of the emoticon (802), a first text indicating the meaning of the emoticon (802) can be generated. For example, the display device (202) can generate the first text “Laughing Tears (806)” of 4 tokens by compressing the name of the emoticon (802), “Smiling Face with Open Mouth and Tears (804).”
[0173] The display device (202) can perform semantic compression of the first text considering contextual information. For example, if the content the user is viewing is a comedy show, the display device (202) can compress the meaning of the first text and change it into a second text, such as "Hilarious (808)" of three tokens. For example, if the content the user is viewing is a sports game, the display device (202) can compress the meaning of the first text and change it into a second text, such as "So painful (810)" of two tokens. The display device (202) can use a message including the second text as an abbreviated message.
[0174] FIG. 9 is a flowchart illustrating an operation of a display device according to one embodiment to generate context information based on EPG.
[0175] Referring to FIG. 9, in operation 902, the display device (202) can obtain an EPG (220) from a broadcast server (204).
[0176] In operation 904, the display device (202) may obtain information from the EPG (220). According to one example, the display device (202) may obtain text information included in the EPG (220). For example, the display device (202) may obtain at least one of broadcast time information (e.g., broadcast start time and / or broadcast end time), broadcast channel information (e.g., channel name, channel logo, or channel number), broadcast program title, broadcast program description, broadcast program genre (e.g., drama, sports, documentary, or entertainment), broadcast program cast information, broadcast program production crew information, or broadcast program screen information as information associated with one or more broadcast programs from the EPG (220).
[0177] In operation 906, the display device (202) can generate meta information based on the acquired information.
[0178] In operation 908, the display device (202) may generate context information based on meta information. In one example, the display device (202) may receive EPG (220) periodically or aperiodically, and update context information based on information of the received EPG (220).
[0179] FIG. 10 is a flowchart illustrating an operation of a display device according to one embodiment to generate context information based on a screen analysis operation or a text detection operation.
[0180] Referring to FIG. 10, in operation 1002, the display device (202) may obtain a content screen (e.g., a still screen and / or a video screen).
[0181] In operation 1003, the display device (202) may determine whether to perform a screen analysis operation or a text detection operation in response to the content screen being acquired.
[0182] If the display device (202) determines to perform the screen analysis operation in operation 1003, it can perform operations 1004 to 1014.
[0183] In operation 1004, the display device (202) may analyze the acquired screen using a visual information processing function, such as computer vision. In one example, the screen analysis of the display device (202) may be performed irregularly and may be used to obtain the mood, status, or information of the content.
[0184] In operation 1006, the display device (202) may detect an object, detect a feature of an object, or detect a movement or action of an object based on the screen analysis results. For example, the object may include at least one of a person, an animal, or an object.
[0185] In operation 1008, the display device (202) can generate meta information based on the detection results.
[0186] In operation 1014, the display device (202) can generate context information based on meta information.
[0187] If the display device (202) determines to perform a text detection operation in operation 1003, it can perform operations 1010 to 1014.
[0188] In operation 1010, the display device (202) can detect text from the acquired screen. In one example, the display device (202) can detect text using a predetermined text detection algorithm based on the acquired screen.
[0189] In operation 1012, the display device (202) may analyze the detected text to generate meta information.
[0190] In operation 1014, the display device (202) can generate context information based on meta information.
[0191] Figure 11 is a flowchart illustrating the operation of a server according to one embodiment.
[0192] Referring to FIG. 11, in operation 1102, a server (e.g., a chat server (206)) may receive an abbreviated message (or compressed message) from a display device (202). In one example, operation 1102 may be performed by an open API server (244). In this case, the open API server (244) may transmit the abbreviated message to a chat service server (246) so that the abbreviated message is provided to the chatbot server (244).
[0193] In operation 1104, the server may generate a chatbot response to the abbreviated message based on the LLM. In one example, operation 1104 may be performed by the chatbot server (244). In this case, the chatbot server (244) may generate the chatbot response based on a request from the chat service server (246).
[0194] In one example, when the server receives meta information from the display device (202), it may generate a chatbot response to an abbreviated message by considering the received meta information. The received meta information may be meta information compressed or abbreviated by the display device (202).
[0195] In operation 1106, a server (e.g., a chat server (206) or an open API server (244)) may transmit the generated chatbot response to a display device (202).
[0196] Fig. 12 is a block diagram of a display device according to one embodiment.
[0197] Referring to FIG. 12, the display device (202) may include a display (1200), a transceiver (1202), a memory (1204), and a processor (1206). According to an example, the display device (202) may include additional components (e.g., an audio input unit, an audio output unit, a communication interface for communicating with an electronic device such as a remote control, or a tuner unit for receiving a broadcast signal) in addition to the components illustrated, or may omit at least one of the components illustrated.
[0198] According to one example, the display (1200) can perform functions for outputting information in the form of numbers, characters, images, and / or graphics. The display (1200) can include at least one hardware module for outputting. The at least one hardware module can include, for example, at least one of a liquid crystal display (LCD), a light emitting diode (LED), a light emitting polymer display (LPD), an organic light emitting diode (OLED), an active matrix organic light emitting diode (AMOLED), or a flexible LED (FLED). The display (1200) can display a screen corresponding to data received from the processor (1206). The display (1200) may be referred to as an 'output unit', a 'display unit', or other terms having an equivalent technical meaning thereto.
[0199] According to one example, the transceiver (1202) may communicate with an external electronic device (e.g., a mobile device (214)) and / or at least one server (e.g., a broadcast server (204), a chat server (206), or an open API server (244)). For example, the transceiver (1202) may communicate with at least one server based on various wired / wireless communication technologies.
[0200] According to one example, the memory (1204) can store various information or data related to the operation of the display device (202), and can store at least one program. For example, the memory (1204) can store meta information, context information, chat messages entered by the user, information on the number of tokens, meta information, or LM used for chat message compression.
[0201] In one example, the processor (1206) may be electrically or operatively connected to the display (1200), the transceiver (1202), and the memory (1204). The processor (1206) may be a processing circuit that executes at least one instruction of a program stored in the memory (1204). The processor (1206) may perform operations or data processing related to control and / or communication of at least one other component of the display device (202). The processor (1206) may include at least one of a central processing unit (CPU), a neural processing unit (NPU), a graphics processing unit (GPU), a micro processing unit (MPU), a micro controller unit (MCU), an application processor (AP), a communication processor (CP), a system on chip (SoC), or an integrated circuit (IC), a sensor hub, a supplementary processor, a communication processor, an application processor, an application specific integrated circuit (ASIC), or a field programmable gate array (FPGA), and may have multiple cores. The processor (1206) may control the chat service unit (240) or the chat compression unit (242) of FIG. 3, or perform a function corresponding to the operation of the chat service unit (240) or the chat compression unit (242). The processor (1206) may perform the operations of the display device (202) described above (e.g., the operations of the display device (202) described in FIGS. 1 to 10).
[0202] Figure 13 is a block diagram of a server according to one embodiment.
[0203] Referring to FIG. 13, a server (e.g., a chat server (206) or one server included in the chat server (206)) may include a transceiver (1302), a memory (1304), and a processor (1306). In one example, the server (130) may include additional components (e.g., a communication module for communicating with another server or another electronic device) in addition to the illustrated components, or may omit at least one of the illustrated components.
[0204] According to an example, the transceiver (1302) can communicate with the display device (202). For example, the transceiver (1302) can communicate with the display device (202) based on various wired / wireless communication technologies.
[0205] In one example, the memory (1304) may store various information or data related to the operation of the server and may store at least one program. For example, the memory (1304) may store compressed or abbreviated messages received from the display device (202), meta information, cost information based on the number of tokens, or an LLM used to generate a chatbot response.
[0206] According to one example, the processor (1306) may be electrically or operatively connected to the transceiver (1302) and the memory (1304). The processor (1306) may be a processing circuit that executes at least one instruction of a program stored in the memory (1304). There may be one or more processors (1306) and may perform the operations of the server described above (e.g., the operations of the chat server (206) of FIGS. 2 and 3, or the operations of any one of the open API server (244) and the chatbot server (248) of FIG. 3, and the operations of the server described in FIG. 11).
[0207] According to various embodiments of the present document, it is possible to provide a chatbot response to a user that is substantially identical or similar to a chatbot response based on an uncompressed chat message, while reducing server costs based on a compressed message (or an abbreviated message).
[0208] According to various embodiments of the present document, the user experience of a chat service can be improved and the utilization rate can be increased by controlling the activation of a chatbot on a display device (202).
[0209] According to various embodiments of the present document, the display device (202) and / or the chat server (206) (or the chatbot server (248)) can determine content information, information about chat participants, or the context of the conversation based on meta information, so that it may be possible to efficiently provide a chat service corresponding to the user's viewing environment or chat environment.
[0210] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
[0211] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0212] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and placed in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Claims
1. In the display device, display; Transmitter and receiver; memory for storing at least one program; and At least one processor electrically connectable to said memory and comprising a processing circuit configured to execute at least one instruction of said at least one program while connected to said memory, wherein the at least one processor individually or commonly: Control the above display so that the content is displayed, Identify chat messages entered by users while the above content is displayed, Based on the context information associated with the displayed content, the identified chat message is changed into an abbreviated message having the same or similar meaning as the identified chat message, A display device configured to control the transceiver to transmit the abbreviated message to a server capable of providing a chatbot response.
2. In paragraph 1, A display device wherein the abbreviated message contains a number of tokens less than the number of tokens of the identified chat message.
3. In paragraph 1, At least one processor, individually or in common: Based on the language model, the first text included in the identified chat message is changed into a second text including a smaller number of tokens than the number of tokens of the first text, A display device configured to use a message including the second text as the abbreviated message.
4. In paragraph 1, At least one processor, individually or in common: Detecting the language of the identified chat message based on the language model, Count the number of first tokens, which is the number of tokens in the identified chat message, Translate the identified chat message into a language other than the detected language, Count the number of second tokens, which is the number of tokens in the above translated chat message, A display device configured to use the translated chat message as the abbreviated message in response to the second token number being less than the first token number.
5. In paragraph 1, At least one processor, individually or in common: Detecting the language of the identified chat message based on the language model, Count the number of first tokens, which is the number of tokens in the identified chat message, Determine the number of second tokens that is less than the number of first tokens, Based on the determined second token number, the identified chat message is translated into a language other than the detected language, A display device configured to use the translated chat message as the abbreviated message.
6. In paragraph 1, At least one processor, individually or in common: Identify the emoticons contained in the above identified chat message, Obtain the name of the above emoticon based on the language model, Identifying the meaning of the emoticon based on the obtained name and generating a first text representing the identified meaning; Based on the context information, the first text is abbreviated to generate a second text having a smaller number of tokens than the number of tokens of the first text, A display device configured to use a message including the second text as the abbreviated message.
7. In paragraph 1, The above context information is generated based on meta information, A display device, wherein the above meta information includes at least one of broadcast time information, broadcast channel information, broadcast program title, broadcast program description, broadcast program genre, broadcast program performer information, broadcast program production team information, or broadcast program screen information obtained based on an EPG (electronic program guide).
8. In paragraph 1, The above context information is generated based on meta information, A display device, wherein the meta information includes at least one of information on people or objects appearing in the content obtained by screen analysis of the display device, or background information of the content, voice or sound information obtained by audio analysis of the display device, text information obtained from the screen of the content by text detection operation, or information on one or more chat participants including the user, or conversation history information of the one or more chat participants.
9. In paragraph 7 or 8, At least one processor, individually or in common: It is configured to control the transceiver to change the above meta information into abbreviated information having a similar meaning to the above meta information and transmit the abbreviated information to the server, A display device wherein the abbreviated information includes a number of tokens less than the number of tokens of the meta information.
10. In paragraph 1, At least one processor, individually or in common: Receive a response message for the abbreviated message from the server through the transceiver, A display device configured to control the display to display the received response message as the chatbot response.
11. In the method of providing a chat service by a display device, Action to display content; An action to identify a chat message entered by a user while the above content is displayed; An action of changing the identified chat message into an abbreviated message having the same or similar meaning as the identified chat message based on context information associated with the displayed content; and A method comprising the action of transmitting the abbreviated message to a server capable of providing a chatbot response.
12. In paragraph 11, A method wherein the abbreviated message contains a number of tokens less than the number of tokens of the identified chat message.
13. In paragraph 11, The action to change to the above abbreviated message is: A method comprising, based on a language model, changing a first text included in the identified chat message into a second text including a smaller number of tokens than the number of tokens of the first text, and using a message including the second text as the abbreviated message.
14. In paragraph 11, The action to change to the above abbreviated message is: An action of detecting the language of the identified chat message based on a language model; An action of counting a first token number, which is the number of tokens of the identified chat message; An action of translating the identified chat message into a language other than the detected language; An operation of counting a second token number, which is the number of tokens of the above translated chat message; and A method comprising: in response to the second token number being less than the first token number, using the translated chat message as the abbreviated message.
15. In paragraph 11, The action to change to the above abbreviated message is: An action of detecting the language of the identified chat message based on a language model; An action of counting a first token number, which is the number of tokens of the identified chat message; An operation of determining a second token number less than the first token number; An operation of translating the identified chat message into a language other than the detected language based on the determined second token number; and A method comprising the action of using the translated chat message as the abbreviated message.
Citation Information
Patent Citations
Systems and methods for controllable text summarization
JP2023536103A
Association of a social message with a related multimedia flow
KR1020160052704A
Context-based interactive service providing system and method
KR102572200B1
Electric position adjusting device for vehicle seat
KR102620395B1
KR20210081103A