System
The SNS system addresses the challenge of inefficient AI knowledge acquisition by allowing users to register, post questions, and vote on answers, enhancing security and facilitating efficient problem-solving through a community-driven platform.
Patent Information
- Application Number
- JP2024117299
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-22
- Publication Date
- 2026-02-03
AI Technical Summary
Users face difficulties in efficiently acquiring knowledge about AI and solving AI-related problems due to the lack of appropriate platforms and communities, leading to inefficiencies in information sharing and problem-solving.
A social networking service (SNS) system that allows users to register, post questions, receive answers, search for information, and vote on answers, with enhanced security through user authentication, enabling efficient knowledge sharing and problem-solving.
The system facilitates efficient acquisition of AI knowledge and problem-solving by providing a platform for users to post and receive answers, search for relevant information, and evaluate the usefulness of responses, thereby improving information sharing and reducing the time and effort required.
Smart Images

Figure 2026016209000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] In recent years, with the spread of artificial intelligence (AI) technology, many users are seeking information about AI. However, it remains difficult for ordinary users to efficiently acquire knowledge about AI and apply it to specific projects. In addition, there is a lack of appropriate communities or platforms for resolving questions about AI, and solving individual problems requires a great deal of time and effort. In light of this situation, there is a need to provide a platform where users can post questions about AI and efficiently receive answers and feedback from other users. [Means for solving the problem]
[0005] The present invention provides a system that allows users to register their identification information and post questions about AI. Specifically, the system solves these problems by providing a means for users to register their identification information, a means for users to submit questions, a means for a server to store received questions, a means for the server to notify other users of the questions, a means for users to respond to questions, a means for the server to store responses, a means for users to submit search keywords, a means for the server to search a database based on the search keywords, a means for the server to send search results to users, a means for users to vote on other users' answers, and a means for the server to store and tally votes. Furthermore, by adding a means for the server to verify the user's identification information received and a means for users to log in using their registered identification information, user authentication can be strengthened, improving the security and reliability of the system. In this way, users can efficiently obtain information about AI and solve their own problems.
[0006] A "user" is a person who accesses the system and provides or obtains information.
[0007] "Identification information" is data such as an email address or a user name for identifying a user.
[0008] "Question content" refers to the text or other information of a question or challenge about AI that a user submits to the system.
[0009] The "transmission means" is an operation function or interface for transmitting information input by the user to the server.
[0010] A "server" is a computer system that processes, stores, and communicates information received from users to other users.
[0011] The "storage means" is a function for storing and maintaining data received by the server in a database.
[0012] "Notification means" is a function that allows the server to notify other users of new or updated information.
[0013] An "answer" refers to a solution or opinion provided by another user in response to a question.
[0014] A "search keyword" is a character string that a user inputs into a server to obtain related information.
[0015] The "search means" is a function that allows the server to retrieve related information from a database based on a search keyword.
[0016] "Search results" refers to related information acquired by the server through a search means.
[0017] "Voting" is an operation performed by a user to evaluate the usefulness of other users' answers or posts.
[0018] The "counting means" is a function for statistically processing the voting information received by the server and displaying the results.
[0019] "Verification means" is a function for verifying whether the received data is appropriate.
[0020] A "login procedure" is an authentication process by which a user accesses and begins using a system using their identification information. [Brief explanation of the drawings]
[0021] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4]FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0022] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0023] First, the terms used in the following description will be explained.
[0024] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0025] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0026] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0027] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0028] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0029] [First embodiment]
[0030] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0031] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0032] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0033] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0034] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0035] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0036] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0037] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0038] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0039] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0040] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0041] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0042] The present invention is a social networking service (SNS) system that allows users to post questions about AI and promotes information sharing and problem solving across the entire community. An embodiment of this system will be described below.
[0043] User Registration and Login
[0044] The first time a user uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user uses this identifying information to log in to the system. The server checks the login information against the database and, if it matches, grants the user access.
[0045] Post a question
[0046] After logging in, users can type and post questions about the AI. The device sends the post to the server, which receives it, verifies it, and stores it in a database. The server then notifies other appropriate users of the new question, allowing them to respond to the new question quickly.
[0047] Posting and viewing answers
[0048] When other users receive a notification, they can view the question and post their own answers. The device sends the answers to the server, which stores them in a database. The original question poster and other users can view these answers.
[0049] Search function
[0050] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which searches a database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[0051] Voting function
[0052] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[0053] Specific examples
[0054] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this question in a database and notifies users who have answered many other AI-related questions. A user who receives this notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." The user who posted the original question and other users can view and vote for this answer, and the answer with the most votes will be displayed at the top.
[0055] In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI.
[0056] The processing flow will be explained below.
[0057] User Registration and Login
[0058] User Registration
[0059] Step 1:
[0060] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[0061] Step 2:
[0062] The terminal transmits the input user information to the server.
[0063] Step 3:
[0064] The server validates the user information received based on the validation logic.
[0065] Step 4:
[0066] If the server is successful in the verification, it stores the user information in a database.
[0067] Step 5:
[0068] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[0069] User Login
[0070] Step 1:
[0071] The user enters their email address and password in the login form and clicks the "Login" button.
[0072] Step 2:
[0073] The terminal sends the entered login information to the server.
[0074] Step 3:
[0075] The server checks the received login information against a database and authenticates the user.
[0076] Step 4:
[0077] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[0078] Post a question
[0079] Step 1:
[0080] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[0081] Step 2:
[0082] The terminal transmits the input question to the server.
[0083] Step 3:
[0084] The server validates the received question and stores it in the database.
[0085] Step 4:
[0086] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[0087] Step 5:
[0088] The server notifies relevant users of new questions.
[0089] Posting and viewing answers
[0090] Step 1:
[0091] Other users receive notifications.
[0092] Step 2:
[0093] The user views the question, enters an answer, and presses the "Post" button.
[0094] Step 3:
[0095] The terminal transmits the inputted answer content to the server.
[0096] Step 4:
[0097] The server validates the received answer and stores it in the database.
[0098] Step 5:
[0099] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[0100] Search function
[0101] Step 1:
[0102] The user enters a specific keyword on the search screen and presses the "Search" button.
[0103] Step 2:
[0104] The terminal transmits the entered search keyword to the server.
[0105] Step 3:
[0106] The server searches the database based on the search keywords to retrieve relevant information.
[0107] Step 4:
[0108] The server sends the search results to the terminal.
[0109] Step 5:
[0110] The terminal displays the received search results to the user.
[0111] Voting function
[0112] Step 1:
[0113] The user presses the voting button next to the question or answer.
[0114] Step 2:
[0115] The terminal transmits the voting information to the server.
[0116] Step 3:
[0117] The server stores the received voting information in a database.
[0118] Step 4:
[0119] The server tally the votes and reflect them in the relevant questions and answers.
[0120] Step 5:
[0121] The device will display updated information to the user, with useful answers being ranked higher.
[0122] Example 1
[0123] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0124] In conventional SNS systems, it was difficult for users to post questions about AI and receive prompt and appropriate answers. Furthermore, there were limited ways to evaluate the usefulness of answers, and useful information was often buried. Furthermore, security measures for user registration and login were insufficient. A system that can solve these issues and enable efficient knowledge sharing among users is needed.
[0125] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0126] In this invention, the server includes a means for a user to register identification information, a means for a user to send a question, and a means for the server to save the question received, thereby enabling a user to register identification information when using the service for the first time and then send a question.
[0127] The server includes a means for notifying other users of the content of the question received by the server, a means for users to answer the content of the question, and a means for saving the answers received by the server, so that the question is notified to other users and a prompt and appropriate answer can be obtained.
[0128] The server further includes a means for a user to send a search keyword, a means for the server to search a database based on the search keyword, and a means for the server to send the search results to the user, thereby enabling the user to easily find related questions and answers through keyword searches.
[0129] The server also includes a means for users to vote on other users' answers, a means for the server to store and tally the votes received, and a means for the server to manage session IDs based on the primary means, which makes it easier to evaluate by voting, allowing better answers to be displayed at the top, and ensuring security through session management.
[0130] "User" refers to a general user who uses the SNS system to register identification information and post questions and answers.
[0131] "Identification information" is data for identifying a user, and mainly includes an email address, a username, and a password.
[0132] "Question content" refers to inquiries or problems about AI posted by users through the SNS system.
[0133] "Server" refers to a computer system that performs various processes such as receiving, storing, notifying, searching, and counting votes for questions and answers.
[0134] "Means of storage" refers to the method by which the server stores the questions and answers it receives in storage such as a database.
[0135] "Notification means" refers to the communication means used by the server to notify other users of new questions and answers posted.
[0136] An "answer" refers to a written explanation or solution provided by another user in response to a question.
[0137] "Search keywords" refer to words or phrases that users enter into a search screen to find specific information.
[0138] "Session ID" refers to a unique identification number generated by the server to maintain a user's logged-in state and manage successive accesses.
[0139] "Means for voting" refers to a function that allows a user to rate the answers of other users.
[0140] "Means for counting" refers to the method by which the server calculates the number of votes received and determines the display order of the answers based on the counting results.
[0141] This invention is a social networking service (SNS) system in which users can post questions about AI and share information and solve problems across the community. In this system, users operate the system according to the following procedure, and the server performs various processes.
[0142] First, when using the system for the first time, the user enters identification information such as an email address, username, and password. The device sends this identification information to the server, and the server validates the received information (e.g., checking the format of the email address and the strength of the password). After validation passes, the server stores this information in a database (e.g., MySQL, PostgreSQL). From the next time onwards, the user logs in to the system using this identification information, and the server verifies the entered login information against the database and allows access if it matches.
[0143] After logging in, users can enter and post questions about AI. First, the device sends the question to the server. Next, the server receives the question and validates it (e.g., checking for prohibited words). Questions that pass validation are saved in a database. Furthermore, the server notifies other relevant users that a new question has been posted. This notification is done using WebSocket or push notification.
[0144] When other users receive a notification, they can view the question and post an answer. The user enters the answer and the device sends it to the server. The server receives the answer and validates it, and answers that pass are stored in a database. The user who posted the original question and other users can view this answer.
[0145] Furthermore, users can input specific keywords on the search screen to search for related questions and answers. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The search results are then sent to the device, where the user can view them.
[0146] Users can also vote on other users' answers. The voting information is sent from the device to the server, which then stores it in a database and tallies the votes. The order in which answers are displayed is updated based on the tallied results, with useful information being displayed at the top.
[0147] As a specific example of how this works, consider the case where a user posts a question such as, "Please tell me about dataset preprocessing for image recognition." After this question is sent from the device to the server, the server saves it in a database and notifies other relevant users. The user who receives the notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." This answer is saved in the database, and can be viewed by the user who posted the original question and other users, who vote for answers they find helpful. This voting information is sent to the server, and the results are reflected in the tallies, so that useful answers are displayed at the top.
[0148] Here are some example prompts using a generative AI model:
[0149] User: "How do I preprocess a dataset for image recognition?"
[0150] AI models: "Labeling, normalization, and data augmentation are important for dataset preprocessing."
[0151] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0152] Step 1:
[0153] The user accesses the registration screen and enters their email address, username, and password.
[0154] Input: The identification information entered by the user (email address, username, password).
[0155] Data processing: The device checks the email address format and password strength.
[0156] Output: The validated identity is sent to the server.
[0157] Step 2:
[0158] The server revalidates the received identification information and stores it in the database.
[0159] Input: The identification information sent by the device.
[0160] Data processing: The server will double-check that the email address is not duplicated and that the password is correct.
[0161] Output: The validated identity is saved in the database.
[0162] Step 3:
[0163] The user accesses the login screen and enters their email address and password.
[0164] Input: The email address and password entered by the user.
[0165] Data processing: The device sends the identification information to the server.
[0166] Output: Login information is sent to the server.
[0167] Step 4:
[0168] The server checks the received login information against the database, and if it matches, it generates a session ID and sends it to the user.
[0169] Input: The login information sent to the server.
[0170] Data processing: The server checks the information against the database and, if it matches, generates a session ID.
[0171] Output: The session ID is sent to the user and access is granted.
[0172] Step 5:
[0173] To submit a question about AI, users enter the question and click the "Submit" button.
[0174] Input: The question typed by the user.
[0175] Data processing: The device sends the question to the server.
[0176] Output: The question is sent to the server.
[0177] Step 6:
[0178] The server validates the received question and stores it in the database.
[0179] Input: The question sent to the server.
[0180] Data processing: The server validates the question (e.g., checks for forbidden words).
[0181] Output: Questions that pass validation are saved in the database.
[0182] Step 7:
[0183] The server notifies other users of the question.
[0184] Input: Questions stored in the database.
[0185] Data processing: The server notifies other relevant users of the question.
[0186] Output: Other users are notified of the new question.
[0187] Step 8:
[0188] Other users who receive the notification can view the question and post their answers.
[0189] Input: The answer entered by other users.
[0190] Data processing: The device sends the answers to the server.
[0191] Output: The answer is sent to the server.
[0192] Step 9:
[0193] The server validates the received response and stores it in the database.
[0194] Input: The response sent to the server.
[0195] Data processing: The server validates the response (e.g., checks for forbidden words).
[0196] Output: The answers that pass validation are saved in the database.
[0197] Step 10:
[0198] The person who posted the original question and others can view the answer.
[0199] Input: Answers stored in the database.
[0200] Data processing: Allows the server to view the answers.
[0201] Output: The user can view the answer.
[0202] Step 11:
[0203] The user enters keywords on the search screen and clicks "Search."
[0204] Input: The search term entered by the user.
[0205] Data processing: The device sends the search keywords to the server.
[0206] Output: The search keywords are sent to the server.
[0207] Step 12:
[0208] The server searches the database using the received search keywords and sends the results to the terminal.
[0209] Input: The search keywords sent to the server.
[0210] Data processing: The server searches the database and extracts relevant questions and answers.
[0211] Output: Search results are sent to the device.
[0212] Step 13:
[0213] A user clicks "Vote" to vote for another user's answer.
[0214] Input: The poll information the user clicked on.
[0215] Data processing: The device sends the voting information to the server.
[0216] Output: The voting information is sent to the server.
[0217] Step 14:
[0218] The server stores the received voting information in a database and tallies it.
[0219] Input: Voting information sent to the server.
[0220] Data processing: The server tallies the votes and stores them in a database.
[0221] Output: The order of answers is updated based on the results.
[0222] (Application example 1)
[0223] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0224] Currently, content creators often face technical issues related to generative AI, but lack the appropriate platforms to solve them. As a result, creators are forced to solve these issues independently, wasting time and effort. Furthermore, there is inefficiency in having multiple creators working on the same problem. Therefore, there is a need for a platform that allows content creators to efficiently solve technical issues and share knowledge.
[0225] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0226] In this invention, the server includes means for a user to register identification information, means for a user to send a question, means for the server to save the question received, means for notifying other users of the question received by the server, means for a user to answer the question, means for the server to save the answer received, means for a user to send a search keyword, means for the server to search a database based on the search keyword, means for the server to send the search results to the user, means for a user to vote on answers from other users, means for the server to save and tally the votes received, means for a content creator to post a technical question about the artificial intelligence, means for other content creators to post technical answers, means for voting on the usefulness of the technical answers, and means for the server to save and tally the technical questions and answers. This makes it possible to provide a platform where content creators can efficiently solve and share technical problems.
[0227] "User identification information" is unique information that allows a user to register with the system, and typically includes an email address, a username, and a password.
[0228] A "Question" is a description of a technical question or problem posted by a content creator.
[0229] A "server" is a central computing unit for receiving, processing, and storing input information from users.
[0230] A "notification" is a message that notifies other users that a new question has been posted.
[0231] An "answer" is a solution or explanation provided by a user in response to a posted question.
[0232] "Search keywords" are words or phrases that users enter to search for a particular question or answer.
[0233] "Database" means a system for storing questions, answers, user identification information and other related data received by the server.
[0234] "Voting" is an act by a user of evaluating the usefulness of answers provided by other users.
[0235] "Tallying" is the process by which the server statistically processes the received votes and ranks the usefulness of the answers.
[0236] A "content creator" is a creative professional who performs video editing, image processing, audio processing, etc., and utilizes knowledge and technology related to generative artificial intelligence.
[0237] "Generative AI" is an AI technology that automatically generates models from data to perform various tasks.
[0238] "Technical questions" are questions that clearly express specific technical problems or concerns about generative artificial intelligence.
[0239] "Technical answers" are content that provides specific solutions or explanations to technical questions.
[0240] The present invention provides a social networking service (SNS) system that allows content creators to post technical questions about generative AI and receive technical answers from other creators. Specific embodiments for implementing the present invention are described below.
[0241] User Registration and Login
[0242] A user first creates an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. The user then uses this identifying information to log into the system later. The server checks the login information against the database and, if it matches, grants the user access.
[0243] Post a question
[0244] After logging in, users can enter and post technical questions about the generative AI. The device sends the posts to the server, which receives, verifies, and stores them in a database. The server then notifies other appropriate users of the new questions, allowing them to respond quickly to new questions.
[0245] Posting and viewing answers
[0246] Other users can view the question and post technical answers after receiving the notification. The device sends the answers to the server, which stores them in a database. These answers can then be viewed by the user who posted the original question and by other users.
[0247] Search function
[0248] Users can enter specific keywords on the search screen to search for questions and answers about generative AI. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[0249] Voting function
[0250] Users can vote on other users' answers, which makes it easier for useful answers to be appreciated by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information being displayed higher.
[0251] Hardware and software used
[0252] Hardware used: Servers, devices (smartphones and computers)
[0253] Software used: programming language (e.g., Python), web framework (e.g., Flask), database (e.g., SQLAlchemy), encryption library (e.g., Bcrypt), authentication library (e.g., JWT-Extended)
[0254] The server combines these technologies to process user identification information and question and answer queries.
[0255] Specific example explanation
[0256] For example, a content creator posts a technical question such as "How to reduce the training time of an AI model." This question is notified to other creators, who post specific technical answers, such as "You can reduce the training time by reducing the dataset or the complexity of the model." Other creators then vote on these answers, and the most useful answers are ranked higher.
[0257] Prompt Sentence Examples
[0258] Example questions:
[0259] "What are some data preprocessing techniques to improve the performance of deep learning models?"
[0260] Expected answer:
[0261] "Data normalization, data augmentation (rotation, flipping, scaling), and outlier removal are effective."
[0262] In this way, the present invention provides a platform for content creators to effectively solve technical problems and share knowledge related to generative artificial intelligence.
[0263] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0264] Step 1: User Registration
[0265] The user uses the terminal to enter their identification information (email address, username, password) and send it to the server. The server receives this information and hashes the password using the Bcrypt library. The server then saves the user information in a database (SQLAlchemy) and sends a message to the terminal confirming registration.
[0266] Input: Email address, username, password
[0267] Data processing: password hashing
[0268] Output: Registration complete message
[0269] Step 2: User Login
[0270] The user enters their identification information (email address, password) using the terminal and sends it to the server. The server receives this information and checks it against the hashed password stored in the database. If the check is successful, the server generates a JWT token and sends it to the terminal. If the check is unsuccessful, it returns an error message.
[0271] Input: Email address, password
[0272] Data operations: password verification, token generation
[0273] Output: JWT token or error message
[0274] Step 3: Post a question
[0275] Once logged in, users can use their devices to input technical questions about the AI generation system and send them to the server, which receives the questions and stores them in a database. The server then notifies other relevant users that a new question has been posted.
[0276] Input: Technical Question
[0277] Data storage: Save questions to a database
[0278] Output: New question notification
[0279] Step 4: Post your answer
[0280] After receiving the notification, other users can use their devices to view the question, enter a technical answer, and send it to the server. The server receives this answer and stores it in a database. The user who posted the original question and other users can view this answer as a response from the server.
[0281] Input: Technical Answer
[0282] Data storage: Save answers to a database
[0283] Output: Viewable answers
[0284] Step 5: Search
[0285] The user inputs search keywords using the terminal and sends them to the server. The server receives the keywords, searches for related questions and answers in the database, collects search results, and sends them to the user's terminal.
[0286] Input: Search keyword
[0287] Data Search: Search for related questions and answers
[0288] Output: Search results
[0289] Step 6: Vote for the answer
[0290] To vote for other users' answers, users use their devices to click a voting button and send the voting data to the server. The server receives this voting data, stores it in a database, and tallies it. The tallied results are reflected in the display order of the answers, with answers that receive the most votes being displayed at the top.
[0291] Input: Voting data
[0292] Data Storage and Counting: Storing and counting voting data
[0293] Output: Updated answers in display order
[0294] This allows users to efficiently post technical questions about generative artificial intelligence, receive answers, and vote on the usefulness of the answers to promote knowledge growth across the community.
[0295] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0296] The present invention is a social networking system in which users can post questions about AI and share information and solve problems across the community. Additionally, the present invention incorporates an emotion engine that recognizes users' emotions, performs emotion analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described below.
[0297] User Registration and Login
[0298] When a user first uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identifying information. The server checks the login information against the database and, if it matches, grants the user access.
[0299] Post a question
[0300] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[0301] Posting and viewing answers
[0302] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[0303] Search function
[0304] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[0305] Voting function
[0306] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[0307] Sentiment analysis and notification customization
[0308] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[0309] Specific examples
[0310] If a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this in the database and notifies other related users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine analyzes the content of the answer as positive, the answer is more likely to be displayed at the top of the results. Furthermore, if a user votes for this answer, the emotion engine also analyzes the reasons for the vote, allowing it to provide information more in line with the user's intentions.
[0311] In this way, this system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI. In addition, by combining it with an emotion engine, it is possible to provide customized services according to the user's emotions, which is expected to improve the user experience.
[0312] The processing flow will be explained below.
[0313] User Registration and Login
[0314] User Registration
[0315] Step 1:
[0316] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[0317] Step 2:
[0318] The terminal transmits the input user information to the server.
[0319] Step 3:
[0320] The server validates the user information received based on the validation logic.
[0321] Step 4:
[0322] If the server is successful in the verification, it stores the user information in a database.
[0323] Step 5:
[0324] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[0325] User Login
[0326] Step 1:
[0327] The user enters their email address and password in the login form and clicks the "Login" button.
[0328] Step 2:
[0329] The terminal sends the entered login information to the server.
[0330] Step 3:
[0331] The server checks the received login information against a database and authenticates the user.
[0332] Step 4:
[0333] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[0334] Post a question
[0335] Step 1:
[0336] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[0337] Step 2:
[0338] The terminal transmits the input question to the server.
[0339] Step 3:
[0340] The server validates the received question and stores it in the database.
[0341] Step 4:
[0342] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[0343] Step 5:
[0344] The server notifies relevant users of new questions.
[0345] Posting and viewing answers
[0346] Step 1:
[0347] Other users receive notifications.
[0348] Step 2:
[0349] The user views the question, enters an answer, and presses the "Post" button.
[0350] Step 3:
[0351] The terminal transmits the inputted answer content to the server.
[0352] Step 4:
[0353] The server validates the received answer and stores it in the database.
[0354] Step 5:
[0355] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[0356] Search function
[0357] Step 1:
[0358] The user enters a specific keyword on the search screen and presses the "Search" button.
[0359] Step 2:
[0360] The terminal transmits the entered search keyword to the server.
[0361] Step 3:
[0362] The server searches the database based on the search keywords to retrieve relevant information.
[0363] Step 4:
[0364] The server sends the search results to the terminal.
[0365] Step 5:
[0366] The terminal displays the received search results to the user.
[0367] Voting function
[0368] Step 1:
[0369] The user presses the voting button next to the question or answer.
[0370] Step 2:
[0371] The terminal transmits the voting information to the server.
[0372] Step 3:
[0373] The server stores the received voting information in a database.
[0374] Step 4:
[0375] The server tally the votes and reflect them in the relevant questions and answers.
[0376] Step 5:
[0377] The device will display updated information to the user, with useful answers being ranked higher.
[0378] Sentiment analysis and notification customization
[0379] Step 1:
[0380] When a user inputs and sends a question or answer, the terminal sends the posted content to the server.
[0381] Step 2:
[0382] The server sends the received post content to the emotion engine for emotion analysis.
[0383] Step 3:
[0384] The emotion engine generates the analysis results and stores the user's emotion information in a database.
[0385] Step 4:
[0386] The server generates a customized notification based on the emotion information and sends it to the device.
[0387] Step 5:
[0388] The device displays a customized notification to the user.
[0389] Specific examples
[0390] If a user posts a question such as "Please tell me how to preprocess datasets for image recognition," the following process will take place:
[0391] Step 1:
[0392] The user enters the question and presses the "Post" button.
[0393] Step 2:
[0394] The device sends the question to the server.
[0395] Step 3:
[0396] The server receives the question and performs validation.
[0397] Step 4:
[0398] The server saves the question in the database and sends a save success message to the terminal.
[0399] Step 5:
[0400] The server sends the question to the emotion engine, which then analyzes it.
[0401] Step 6:
[0402] The emotion engine generates the user's emotion information and stores it in a database.
[0403] Step 7:
[0404] The server sends notification of the question to other interested users.
[0405] Step 8:
[0406] Related users view the question and post answers.
[0407] Step 9:
[0408] The terminal sends the answer to the server, and the server stores the received answer in a database.
[0409] Step 10:
[0410] The server sends the answer content to the emotion engine, which analyzes it and generates emotion information about the user.
[0411] Step 11:
[0412] The server sends a customized notification to the original question poster based on the sentiment information.
[0413] Step 12:
[0414] The device displays a customized notification to the user.
[0415] Example 2
[0416] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0417] Conventional SNS systems have problems such as not receiving appropriate feedback on questions and answers posted by users, and insufficient emotional response. Furthermore, when users perform searches, the results are not adjusted based on emotions, making it difficult for users to effectively obtain the information they are looking for. Furthermore, there are limited ways to evaluate useful answers, making it difficult to promote knowledge sharing throughout the community.
[0418] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing the sentiment of received questions and answers, means for sending notifications customized based on the sentiment analysis results, and means for adjusting the display order of answers based on the sentiment analysis results. This makes it possible to customize feedback and notifications according to the user's sentiment and present optimal information. Furthermore, by combining evaluation by voting with sentiment analysis, more effective knowledge sharing can be achieved.
[0419] "Identification information" is information for uniquely identifying a user, and includes an email address, a username, a password, and the like.
[0420] "Question content" is text information of a question or inquiry that a user poses to another user within the system.
[0421] A "server" is a computer system whose role is to store, analyze, process, and transmit information received from users.
[0422] A "database" is a system for systematically storing and managing questions, answers, voting information, sentiment analysis results, etc. received by the server.
[0423] A "notification" is a message or alert that provides information from the server to the user.
[0424] "Sentiment analysis" is the process of identifying a user's emotional state from the text content of posted questions and answers and generating emotional tags such as positive, negative, or neutral.
[0425] "Vote" is an action that allows a user to express an opinion such as for or against another user's answer.
[0426] "Search keywords" are words or phrases that a user enters into a system to search for specific information.
[0427] "Customized notifications" are messages and alerts that are generated based on sentiment analysis results and user behavior history and are optimized for individual users.
[0428] "Display order" refers to the order in which items are displayed in a list of search results or answers provided to a user.
[0429] The present invention is a social networking system that allows users to post questions about AI and share information and solve problems across the community. It also incorporates an emotion engine that recognizes users' emotions, performs emotional analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described in detail below.
[0430] User Registration and Login
[0431] When a user first uses the system, they create an account by entering their identification information (email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identification information. The server checks the login information against the database and allows the user access if it matches.
[0432] Post a question
[0433] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[0434] Posting and viewing answers
[0435] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[0436] Search function
[0437] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[0438] Voting function
[0439] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[0440] Sentiment analysis and notification customization
[0441] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[0442] Specific examples
[0443] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves the question in a database and notifies other relevant users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine interprets the answer as positive, the answer is more likely to appear higher on the results. Furthermore, if a user votes on this answer, the emotion engine analyzes the reasons for the vote and can provide information more in line with the user's intentions. In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving AI-related questions and problems. Furthermore, by combining the emotion engine, it is possible to provide customized services based on the user's emotions, which is expected to improve the user experience.
[0444] Prompt Sentence Examples
[0445] For example, you could set a prompt like, "Please tell me how to prioritize and display answers with positive sentiment based on the analysis results of user sentiment."
[0446] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0447] Step 1: User Registration
[0448] Input: The user enters their email address, username, and password from the device.
[0449] process:
[0450] 1. The terminal sends the entered identification information to the server.
[0451] 2. The server verifies the received identity and rejects any invalid input.
[0452] 3. The server stores the verified information in a database.
[0453] Output: The server sends a registration successful message to the terminal.
[0454] Step 2: Login process
[0455] Input: The user enters the registered email address and password from the device.
[0456] process:
[0457] 1. The device sends the entered login information to the server.
[0458] 2. The server checks the received login information against its database.
[0459] 3. If there is a match, the server starts a session and generates authentication information.
[0460] Output: The server sends the authentication information to the terminal and displays a successful login message.
[0461] Step 3: Question submission process
[0462] Input: The user inputs the question from the terminal.
[0463] process:
[0464] 1. The device sends the entered question to the server.
[0465] 2. The server validates the received question.
[0466] 3. Save the validated questions to the database.
[0467] 4. The server notifies other users of the new question.
[0468] Output: The server sends a success message to the terminal and sends notification messages to other users involved.
[0469] Step 4: Sentiment Analysis
[0470] Input: The question posted.
[0471] process:
[0472] 1. The server calls the emotion engine and sends the question.
[0473] 2. The sentiment engine analyzes the question and generates sentiment tags (positive, negative, neutral).
[0474] 3. Save the emotion tag in the database.
[0475] Output: The server stores the generated emotion tags in a database.
[0476] Step 5: Posting an Answer
[0477] Input: Other users input their answers from their devices.
[0478] process:
[0479] 1. The device sends the entered answer to the server.
[0480] 2. The server validates the received response.
[0481] 3. Save the validated answers to the database.
[0482] 4. The server notifies the relevant users.
[0483] Output: The server sends a success message to the terminal and a notification message to the relevant user.
[0484] Step 6: Display the answer field
[0485] Input: The user sends the question ID to the server.
[0486] process:
[0487] 1. The server retrieves the answer associated with the question ID from the database.
[0488] 2. The answer is sent to the device along with the sentiment analysis results.
[0489] Output: The list of answers and emotion tags are displayed on the user's device.
[0490] Step 7: Search process
[0491] Input: The user enters a specific keyword into a search screen.
[0492] process:
[0493] 1. The device sends the search keywords to the server.
[0494] 2. The server searches the database based on the keyword.
[0495] 3. Ranking search results based on the results of sentiment analysis.
[0496] 4. The server sends the search results to the terminal.
[0497] Output: The sentiment-based search results are displayed on the user's device.
[0498] Step 8: Voting Process
[0499] Input: A user votes on another user's answer.
[0500] process:
[0501] 1. The device sends the voting information to the server.
[0502] 2. The server stores the received voting information in a database.
[0503] Output: The server notifies the terminal that voting is complete.
[0504] Step 9: Aggregation and revaluation
[0505] Input: Voting information stored in a database.
[0506] process:
[0507] 1. The server periodically tallys the voting information.
[0508] 2. Re-evaluate the answers based on the results and update the display order.
[0509] Output: The updated answer display order is reflected on the user's device.
[0510] Step 10: Sentiment Analysis (Revisited)
[0511] Input: New posts and replies by users.
[0512] process:
[0513] 1. The server calls the emotion engine and sends it the text to be analyzed.
[0514] 2. The emotion engine generates the analysis results and returns them to the server.
[0515] Output: The emotional information resulting from the analysis is stored in a database.
[0516] Step 11: Customizing Notifications
[0517] Input: Sentiment analysis results.
[0518] process:
[0519] 1. The server refers to the emotion analysis results and generates notification content according to the user's state.
[0520] 2. Send customized notifications to your device.
[0521] Output: A customized notification will be displayed on the user's device.
[0522] (Application example 2)
[0523] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0524] Conventional question-and-answer systems do not provide feedback or adjust the display order based on the sentiment of questions and answers posted by users, making it difficult to improve the user experience.In addition, there was a need to improve the efficiency of information sharing and problem-solving within the community.
[0525] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the content of the user's question and answer using an emotion analysis engine and adjusting the data and display order based on the emotion information, means for saving the content of the question received by the server, and means for searching the database based on the search keyword by the server. This makes it possible to provide appropriate feedback on the user's emotion and prioritize the display of answers with positive emotions, thereby improving the atmosphere of the community and increasing the efficiency of information sharing and problem solving.
[0526] "User" refers to a person who uses the system.
[0527] "Identification information" is information for identifying a user, and includes, for example, an email address, a user name, and a password.
[0528] "Question content" refers to the text data of a question posted by a user to the system.
[0529] "Server" refers to a computing system that receives, stores, processes, and transmits data.
[0530] "Answer content" refers to text data of an answer provided by a user to a question posted.
[0531] A "database" refers to a systematically organized collection of data, and is used to store questions, answers, etc.
[0532] "Search keywords" refer to specific words or groups of words that a user uses to search a database.
[0533] "Voting" refers to the act of a user rating the answers of other users.
[0534] "Sentiment analysis engine" refers to technology or software for analyzing the emotional content of text data.
[0535] "Emotion information" refers to data about a user's emotions extracted by an emotion analysis engine.
[0536] This invention can be implemented as a question-and-answer system for a virtual store. This system supports a series of processes: a user registers identification information, posts a question, and receives answers from other users. Furthermore, this system incorporates an emotion analysis engine, which can adjust the system's operation based on the user's emotions.
[0537] System configuration
[0538] 1. User Registration and Login
[0539] The system has a function that allows users to create an account by entering identification information (e.g., email address, username, password). Users log in using the registered identification information.
[0540] 2. Post a question
[0541] After logging in, users can enter their own questions and send them to the server, which stores the received questions in a database and notifies other users.
[0542] 3. Posting and viewing answers
[0543] Once notified, other users can view the question and post their own answers. The server stores the answers in a database, where they can be viewed by the original question poster and other users.
[0544] 4. Search function
[0545] Users can search for questions and answers by entering specific keywords, and the server searches the database based on the search keywords and sends the search results to the user.
[0546] 5. Voting function
[0547] Users can vote on other users' answers, and the server stores and tallies the received votes.
[0548] 6. Sentiment analysis and display adjustment
[0549] The server uses an emotion analysis engine to analyze the user's questions and answers. Based on this analysis, the server stores the user's emotional information as data and makes adjustments such as prioritizing the display of answers with positive emotions.
[0550] Hardware and software used
[0551] Server: A computer system that receives, stores, notifies, searches, and aggregates data. Examples include Amazon Web Services (AWS) and Google Cloud Platform (GCP).
[0552] Database: A system for storing user identities, questions, answers, and sentiment information. Examples include MySQL and MongoDB.
[0553] Sentiment analysis engine: Software that analyzes user text data and extracts emotional information. You can use the open source NLTK or the commercial IBM Watson Natural Language Understanding.
[0554] Specific examples
[0555] User A posts a question saying, "Please tell me how to train a new AI model." The server saves this question in a database and notifies other users. User B responds, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!" The sentiment analysis engine interprets this response as positive. The server prioritizes displaying this positive response, improving the overall atmosphere of the community.
[0556] Prompt Sentence Examples
[0557] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[0558] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0559] Step 1:
[0560] The user registers by entering identification information (e.g., email address, username, password) on the terminal. The entered identification information is sent to the server. The server verifies the received identification information and, if it is correct, stores it in the database. This creates a user account.
[0561] Step 2:
[0562] The user uses a terminal to enter registered identification information and log in. The identification information is sent to the server, which then compares the received identification information with the database. If the comparison results in a match, the login is successful and the user is granted access.
[0563] Step 3:
[0564] After logging in, the user enters the question into the terminal and sends it to the server, which stores the received question in a database and notifies other users that a new question has been posted.
[0565] Step 4:
[0566] Other users receive the notification on their devices and view the question. The user who entered the answer sends the answer to the server, which then stores the received answer in a database.
[0567] Step 5:
[0568] The server sends the answers to a sentiment analysis engine, which analyzes the answers and extracts emotional information such as positive, negative, or neutral. The emotional information is then sent back to the server and stored in a database.
[0569] Step 6:
[0570] The user inputs search keywords using a device and sends them to the server. The server searches the database based on the received search keywords and extracts related questions and answers. The display order of the search results is adjusted based on the emotion information, and then the results are sent to the user's device.
[0571] Step 7:
[0572] Users vote for other users' answers. The voting information is sent to the server, and the received voting information is stored in a database. The server tallies the voting information and reflects it in the display order of the answers.
[0573] Step 8:
[0574] The server sends customized notifications to the user based on the emotion information obtained from the emotion analysis engine, for example, displaying a supportive message to the user if a negative emotion is detected.
[0575] Examples:
[0576] User A enters a question on their device, "Tell me how to train a new AI model," and sends it to the server. The server saves the question in a database and notifies other users. User B views the question on their device, enters an answer, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!", and sends it to the server. The sentiment analysis engine analyzes the answer as positive, and the server saves this result and adjusts the display order, prioritizing positive answers.
[0577] Example prompt sentence:
[0578] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[0579] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0580] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0581] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0582] [Second embodiment]
[0583] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0584] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0585] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0586] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0587] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0588] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0589] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0590] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0591] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0592] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0593] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0594] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0595] The present invention is a social networking service (SNS) system that allows users to post questions about AI and promotes information sharing and problem solving across the entire community. An embodiment of this system will be described below.
[0596] User Registration and Login
[0597] The first time a user uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user uses this identifying information to log in to the system. The server checks the login information against the database and, if it matches, grants the user access.
[0598] Post a question
[0599] After logging in, users can type and post questions about the AI. The device sends the post to the server, which receives it, verifies it, and stores it in a database. The server then notifies other appropriate users of the new question, allowing them to respond to the new question quickly.
[0600] Posting and viewing answers
[0601] When other users receive a notification, they can view the question and post their own answers. The device sends the answers to the server, which stores them in a database. The original question poster and other users can view these answers.
[0602] Search function
[0603] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which searches a database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[0604] Voting function
[0605] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[0606] Specific examples
[0607] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this question in a database and notifies users who have answered many other AI-related questions. A user who receives this notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." The user who posted the original question and other users can view and vote for this answer, and the answer with the most votes will be displayed at the top.
[0608] In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI.
[0609] The processing flow will be explained below.
[0610] User Registration and Login
[0611] User Registration
[0612] Step 1:
[0613] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[0614] Step 2:
[0615] The terminal transmits the input user information to the server.
[0616] Step 3:
[0617] The server validates the user information received based on the validation logic.
[0618] Step 4:
[0619] If the server is successful in the verification, it stores the user information in a database.
[0620] Step 5:
[0621] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[0622] User Login
[0623] Step 1:
[0624] The user enters their email address and password in the login form and clicks the "Login" button.
[0625] Step 2:
[0626] The terminal sends the entered login information to the server.
[0627] Step 3:
[0628] The server checks the received login information against a database and authenticates the user.
[0629] Step 4:
[0630] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[0631] Post a question
[0632] Step 1:
[0633] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[0634] Step 2:
[0635] The terminal transmits the input question to the server.
[0636] Step 3:
[0637] The server validates the received question and stores it in the database.
[0638] Step 4:
[0639] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[0640] Step 5:
[0641] The server notifies relevant users of new questions.
[0642] Posting and viewing answers
[0643] Step 1:
[0644] Other users receive notifications.
[0645] Step 2:
[0646] The user views the question, enters an answer, and presses the "Post" button.
[0647] Step 3:
[0648] The terminal transmits the inputted answer content to the server.
[0649] Step 4:
[0650] The server validates the received answer and stores it in the database.
[0651] Step 5:
[0652] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[0653] Search function
[0654] Step 1:
[0655] The user enters a specific keyword on the search screen and presses the "Search" button.
[0656] Step 2:
[0657] The terminal transmits the entered search keyword to the server.
[0658] Step 3:
[0659] The server searches the database based on the search keywords to retrieve relevant information.
[0660] Step 4:
[0661] The server sends the search results to the terminal.
[0662] Step 5:
[0663] The terminal displays the received search results to the user.
[0664] Voting function
[0665] Step 1:
[0666] The user presses the voting button next to the question or answer.
[0667] Step 2:
[0668] The terminal transmits the voting information to the server.
[0669] Step 3:
[0670] The server stores the received voting information in a database.
[0671] Step 4:
[0672] The server tally the votes and reflect them in the relevant questions and answers.
[0673] Step 5:
[0674] The device will display updated information to the user, with useful answers being ranked higher.
[0675] Example 1
[0676] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0677] In conventional SNS systems, it was difficult for users to post questions about AI and receive prompt and appropriate answers. Furthermore, there were limited ways to evaluate the usefulness of answers, and useful information was often buried. Furthermore, security measures for user registration and login were insufficient. A system that can solve these issues and enable efficient knowledge sharing among users is needed.
[0678] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0679] In this invention, the server includes a means for a user to register identification information, a means for a user to send a question, and a means for the server to save the question received, thereby enabling a user to register identification information when using the service for the first time and then send a question.
[0680] The server includes a means for notifying other users of the content of the question received by the server, a means for users to answer the content of the question, and a means for saving the answers received by the server, so that the question is notified to other users and a prompt and appropriate answer can be obtained.
[0681] The server further includes a means for a user to send a search keyword, a means for the server to search a database based on the search keyword, and a means for the server to send the search results to the user, thereby enabling the user to easily find related questions and answers through keyword searches.
[0682] The server also includes a means for users to vote on other users' answers, a means for the server to store and tally the votes received, and a means for the server to manage session IDs based on the primary means, which makes it easier to evaluate by voting, allowing better answers to be displayed at the top, and ensuring security through session management.
[0683] "User" refers to a general user who uses the SNS system to register identification information and post questions and answers.
[0684] "Identification information" is data for identifying a user, and mainly includes an email address, a username, and a password.
[0685] "Question content" refers to inquiries or problems about AI posted by users through the SNS system.
[0686] "Server" refers to a computer system that performs various processes such as receiving, storing, notifying, searching, and counting votes for questions and answers.
[0687] "Means of storage" refers to the method by which the server stores the questions and answers it receives in storage such as a database.
[0688] "Notification means" refers to the communication means used by the server to notify other users of new questions and answers posted.
[0689] An "answer" refers to a written explanation or solution provided by another user in response to a question.
[0690] "Search keywords" refer to words or phrases that users enter into a search screen to find specific information.
[0691] "Session ID" refers to a unique identification number generated by the server to maintain a user's logged-in state and manage successive accesses.
[0692] "Means for voting" refers to a function that allows a user to rate the answers of other users.
[0693] "Means for counting" refers to the method by which the server calculates the number of votes received and determines the display order of the answers based on the counting results.
[0694] This invention is a social networking service (SNS) system in which users can post questions about AI and share information and solve problems across the community. In this system, users operate the system according to the following procedure, and the server performs various processes.
[0695] First, when using the system for the first time, the user enters identification information such as an email address, username, and password. The device sends this identification information to the server, and the server validates the received information (e.g., checking the format of the email address and the strength of the password). After validation passes, the server stores this information in a database (e.g., MySQL, PostgreSQL). From the next time onwards, the user logs in to the system using this identification information, and the server verifies the entered login information against the database and allows access if it matches.
[0696] After logging in, users can enter and post questions about AI. First, the device sends the question to the server. Next, the server receives the question and validates it (e.g., checking for prohibited words). Questions that pass validation are saved in a database. Furthermore, the server notifies other relevant users that a new question has been posted. This notification is done using WebSocket or push notification.
[0697] When other users receive a notification, they can view the question and post an answer. The user enters the answer and the device sends it to the server. The server receives the answer and validates it, and answers that pass are stored in a database. The user who posted the original question and other users can view this answer.
[0698] Furthermore, users can input specific keywords on the search screen to search for related questions and answers. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The search results are then sent to the device, where the user can view them.
[0699] Users can also vote on other users' answers. The voting information is sent from the device to the server, which then stores it in a database and tallies the votes. The order in which answers are displayed is updated based on the tallied results, with useful information being displayed at the top.
[0700] As a specific example of how this works, consider the case where a user posts a question such as, "Please tell me about dataset preprocessing for image recognition." After this question is sent from the device to the server, the server saves it in a database and notifies other relevant users. The user who receives the notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." This answer is saved in the database, and can be viewed by the user who posted the original question and other users, who vote for answers they find helpful. This voting information is sent to the server, and the results are reflected in the tallies, so that useful answers are displayed at the top.
[0701] Here are some example prompts using a generative AI model:
[0702] User: "How do I preprocess a dataset for image recognition?"
[0703] AI models: "Labeling, normalization, and data augmentation are important for dataset preprocessing."
[0704] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0705] Step 1:
[0706] The user accesses the registration screen and enters their email address, username, and password.
[0707] Input: The identification information entered by the user (email address, username, password).
[0708] Data processing: The device checks the email address format and password strength.
[0709] Output: The validated identity is sent to the server.
[0710] Step 2:
[0711] The server revalidates the received identification information and stores it in the database.
[0712] Input: The identification information sent by the device.
[0713] Data processing: The server will double-check that the email address is not duplicated and that the password is correct.
[0714] Output: The validated identity is saved in the database.
[0715] Step 3:
[0716] The user accesses the login screen and enters their email address and password.
[0717] Input: The email address and password entered by the user.
[0718] Data processing: The device sends the identification information to the server.
[0719] Output: Login information is sent to the server.
[0720] Step 4:
[0721] The server checks the received login information against the database, and if it matches, it generates a session ID and sends it to the user.
[0722] Input: The login information sent to the server.
[0723] Data processing: The server checks the information against the database and, if it matches, generates a session ID.
[0724] Output: The session ID is sent to the user and access is granted.
[0725] Step 5:
[0726] To submit a question about AI, users enter the question and click the "Submit" button.
[0727] Input: The question typed by the user.
[0728] Data processing: The device sends the question to the server.
[0729] Output: The question is sent to the server.
[0730] Step 6:
[0731] The server validates the received question and stores it in the database.
[0732] Input: The question sent to the server.
[0733] Data processing: The server validates the question (e.g., checks for forbidden words).
[0734] Output: Questions that pass validation are saved in the database.
[0735] Step 7:
[0736] The server notifies other users of the question.
[0737] Input: Questions stored in the database.
[0738] Data processing: The server notifies other relevant users of the question.
[0739] Output: Other users are notified of the new question.
[0740] Step 8:
[0741] Other users who receive the notification can view the question and post their answers.
[0742] Input: The answer entered by other users.
[0743] Data processing: The device sends the answers to the server.
[0744] Output: The answer is sent to the server.
[0745] Step 9:
[0746] The server validates the received response and stores it in the database.
[0747] Input: The response sent to the server.
[0748] Data processing: The server validates the response (e.g., checks for forbidden words).
[0749] Output: The answers that pass validation are saved in the database.
[0750] Step 10:
[0751] The person who posted the original question and others can view the answer.
[0752] Input: Answers stored in the database.
[0753] Data processing: Allows the server to view the answers.
[0754] Output: The user can view the answer.
[0755] Step 11:
[0756] The user enters keywords on the search screen and clicks "Search."
[0757] Input: The search term entered by the user.
[0758] Data processing: The device sends the search keywords to the server.
[0759] Output: The search keywords are sent to the server.
[0760] Step 12:
[0761] The server searches the database using the received search keywords and sends the results to the terminal.
[0762] Input: The search keywords sent to the server.
[0763] Data processing: The server searches the database and extracts relevant questions and answers.
[0764] Output: Search results are sent to the device.
[0765] Step 13:
[0766] A user clicks "Vote" to vote for another user's answer.
[0767] Input: The poll information the user clicked on.
[0768] Data processing: The device sends the voting information to the server.
[0769] Output: The voting information is sent to the server.
[0770] Step 14:
[0771] The server stores the received voting information in a database and tallies it.
[0772] Input: Voting information sent to the server.
[0773] Data processing: The server tallies the votes and stores them in a database.
[0774] Output: The order of answers is updated based on the results.
[0775] (Application example 1)
[0776] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0777] Currently, content creators often face technical issues related to generative AI, but lack the appropriate platforms to solve them. As a result, creators are forced to solve these issues independently, wasting time and effort. Furthermore, there is inefficiency in having multiple creators working on the same problem. Therefore, there is a need for a platform that allows content creators to efficiently solve technical issues and share knowledge.
[0778] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0779] In this invention, the server includes means for a user to register identification information, means for a user to send a question, means for the server to save the question received, means for notifying other users of the question received by the server, means for a user to answer the question, means for the server to save the answer received, means for a user to send a search keyword, means for the server to search a database based on the search keyword, means for the server to send the search results to the user, means for a user to vote on answers from other users, means for the server to save and tally the votes received, means for a content creator to post a technical question about the artificial intelligence, means for other content creators to post technical answers, means for voting on the usefulness of the technical answers, and means for the server to save and tally the technical questions and answers. This makes it possible to provide a platform where content creators can efficiently solve and share technical problems.
[0780] "User identification information" is unique information that allows a user to register with the system, and typically includes an email address, a username, and a password.
[0781] A "Question" is a description of a technical question or problem posted by a content creator.
[0782] A "server" is a central computing unit for receiving, processing, and storing input information from users.
[0783] A "notification" is a message that notifies other users that a new question has been posted.
[0784] An "answer" is a solution or explanation provided by a user in response to a posted question.
[0785] "Search keywords" are words or phrases that users enter to search for a particular question or answer.
[0786] "Database" means a system for storing questions, answers, user identification information and other related data received by the server.
[0787] "Voting" is an act by a user of evaluating the usefulness of answers provided by other users.
[0788] "Tallying" is the process by which the server statistically processes the received votes and ranks the usefulness of the answers.
[0789] A "content creator" is a creative professional who performs video editing, image processing, audio processing, etc., and utilizes knowledge and technology related to generative artificial intelligence.
[0790] "Generative AI" is an AI technology that automatically generates models from data to perform various tasks.
[0791] "Technical questions" are questions that clearly express specific technical problems or concerns about generative artificial intelligence.
[0792] "Technical answers" are content that provides specific solutions or explanations to technical questions.
[0793] The present invention provides a social networking service (SNS) system that allows content creators to post technical questions about generative AI and receive technical answers from other creators. Specific embodiments for implementing the present invention are described below.
[0794] User Registration and Login
[0795] A user first creates an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. The user then uses this identifying information to log into the system later. The server checks the login information against the database and, if it matches, grants the user access.
[0796] Post a question
[0797] After logging in, users can enter and post technical questions about the generative AI. The device sends the posts to the server, which receives, verifies, and stores them in a database. The server then notifies other appropriate users of the new questions, allowing them to respond quickly to new questions.
[0798] Posting and viewing answers
[0799] Other users can view the question and post technical answers after receiving the notification. The device sends the answers to the server, which stores them in a database. These answers can then be viewed by the user who posted the original question and by other users.
[0800] Search function
[0801] Users can enter specific keywords on the search screen to search for questions and answers about generative AI. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[0802] Voting function
[0803] Users can vote on other users' answers, which makes it easier for useful answers to be appreciated by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information being displayed higher.
[0804] Hardware and software used
[0805] Hardware used: Servers, devices (smartphones and computers)
[0806] Software used: programming language (e.g., Python), web framework (e.g., Flask), database (e.g., SQLAlchemy), encryption library (e.g., Bcrypt), authentication library (e.g., JWT-Extended)
[0807] The server combines these technologies to process user identification information and question and answer queries.
[0808] Specific example explanation
[0809] For example, a content creator posts a technical question such as "How to reduce the training time of an AI model." This question is notified to other creators, who post specific technical answers, such as "You can reduce the training time by reducing the dataset or the complexity of the model." Other creators then vote on these answers, and the most useful answers are ranked higher.
[0810] Prompt Sentence Examples
[0811] Example questions:
[0812] "What are some data preprocessing techniques to improve the performance of deep learning models?"
[0813] Expected answer:
[0814] "Data normalization, data augmentation (rotation, flipping, scaling), and outlier removal are effective."
[0815] In this way, the present invention provides a platform for content creators to effectively solve technical problems and share knowledge related to generative artificial intelligence.
[0816] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0817] Step 1: User Registration
[0818] The user uses the terminal to enter their identification information (email address, username, password) and send it to the server. The server receives this information and hashes the password using the Bcrypt library. The server then saves the user information in a database (SQLAlchemy) and sends a message to the terminal confirming registration.
[0819] Input: Email address, username, password
[0820] Data processing: password hashing
[0821] Output: Registration complete message
[0822] Step 2: User Login
[0823] The user enters their identification information (email address, password) using the terminal and sends it to the server. The server receives this information and checks it against the hashed password stored in the database. If the check is successful, the server generates a JWT token and sends it to the terminal. If the check is unsuccessful, it returns an error message.
[0824] Input: Email address, password
[0825] Data operations: password verification, token generation
[0826] Output: JWT token or error message
[0827] Step 3: Post a question
[0828] Once logged in, users can use their devices to input technical questions about the AI generation system and send them to the server, which receives the questions and stores them in a database. The server then notifies other relevant users that a new question has been posted.
[0829] Input: Technical Question
[0830] Data storage: Save questions to a database
[0831] Output: New question notification
[0832] Step 4: Post your answer
[0833] After receiving the notification, other users can use their devices to view the question, enter a technical answer, and send it to the server. The server receives this answer and stores it in a database. The user who posted the original question and other users can view this answer as a response from the server.
[0834] Input: Technical Answer
[0835] Data storage: Save answers to a database
[0836] Output: Viewable answers
[0837] Step 5: Search
[0838] The user inputs search keywords using the terminal and sends them to the server. The server receives the keywords, searches for related questions and answers in the database, collects search results, and sends them to the user's terminal.
[0839] Input: Search keyword
[0840] Data Search: Search for related questions and answers
[0841] Output: Search results
[0842] Step 6: Vote for the answer
[0843] To vote for other users' answers, users use their devices to click a voting button and send the voting data to the server. The server receives this voting data, stores it in a database, and tallies it. The tallied results are reflected in the display order of the answers, with answers that receive the most votes being displayed at the top.
[0844] Input: Voting data
[0845] Data Storage and Counting: Storing and counting voting data
[0846] Output: Updated answers in display order
[0847] This allows users to efficiently post technical questions about generative artificial intelligence, receive answers, and vote on the usefulness of the answers to promote knowledge growth across the community.
[0848] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0849] The present invention is a social networking system in which users can post questions about AI and share information and solve problems across the community. Additionally, the present invention incorporates an emotion engine that recognizes users' emotions, performs emotion analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described below.
[0850] User Registration and Login
[0851] When a user first uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identifying information. The server checks the login information against the database and, if it matches, grants the user access.
[0852] Post a question
[0853] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[0854] Posting and viewing answers
[0855] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[0856] Search function
[0857] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[0858] Voting function
[0859] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[0860] Sentiment analysis and notification customization
[0861] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[0862] Specific examples
[0863] If a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this in the database and notifies other related users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine analyzes the content of the answer as positive, the answer is more likely to be displayed at the top of the results. Furthermore, if a user votes for this answer, the emotion engine also analyzes the reasons for the vote, allowing it to provide information more in line with the user's intentions.
[0864] In this way, this system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI. In addition, by combining it with an emotion engine, it is possible to provide customized services according to the user's emotions, which is expected to improve the user experience.
[0865] The processing flow will be explained below.
[0866] User Registration and Login
[0867] User Registration
[0868] Step 1:
[0869] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[0870] Step 2:
[0871] The terminal transmits the input user information to the server.
[0872] Step 3:
[0873] The server validates the user information received based on the validation logic.
[0874] Step 4:
[0875] If the server is successful in the verification, it stores the user information in a database.
[0876] Step 5:
[0877] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[0878] User Login
[0879] Step 1:
[0880] The user enters their email address and password in the login form and clicks the "Login" button.
[0881] Step 2:
[0882] The terminal sends the entered login information to the server.
[0883] Step 3:
[0884] The server checks the received login information against a database and authenticates the user.
[0885] Step 4:
[0886] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[0887] Post a question
[0888] Step 1:
[0889] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[0890] Step 2:
[0891] The terminal transmits the input question to the server.
[0892] Step 3:
[0893] The server validates the received question and stores it in the database.
[0894] Step 4:
[0895] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[0896] Step 5:
[0897] The server notifies relevant users of new questions.
[0898] Posting and viewing answers
[0899] Step 1:
[0900] Other users receive notifications.
[0901] Step 2:
[0902] The user views the question, enters an answer, and presses the "Post" button.
[0903] Step 3:
[0904] The terminal transmits the inputted answer content to the server.
[0905] Step 4:
[0906] The server validates the received answer and stores it in the database.
[0907] Step 5:
[0908] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[0909] Search function
[0910] Step 1:
[0911] The user enters a specific keyword on the search screen and presses the "Search" button.
[0912] Step 2:
[0913] The terminal transmits the entered search keyword to the server.
[0914] Step 3:
[0915] The server searches the database based on the search keywords to retrieve relevant information.
[0916] Step 4:
[0917] The server sends the search results to the terminal.
[0918] Step 5:
[0919] The terminal displays the received search results to the user.
[0920] Voting function
[0921] Step 1:
[0922] The user presses the voting button next to the question or answer.
[0923] Step 2:
[0924] The terminal transmits the voting information to the server.
[0925] Step 3:
[0926] The server stores the received voting information in a database.
[0927] Step 4:
[0928] The server tally the votes and reflect them in the relevant questions and answers.
[0929] Step 5:
[0930] The device will display updated information to the user, with useful answers being ranked higher.
[0931] Sentiment analysis and notification customization
[0932] Step 1:
[0933] When a user inputs and sends a question or answer, the terminal sends the posted content to the server.
[0934] Step 2:
[0935] The server sends the received post content to the emotion engine for emotion analysis.
[0936] Step 3:
[0937] The emotion engine generates the analysis results and stores the user's emotion information in a database.
[0938] Step 4:
[0939] The server generates a customized notification based on the emotion information and sends it to the device.
[0940] Step 5:
[0941] The device displays a customized notification to the user.
[0942] Specific examples
[0943] If a user posts a question such as "Please tell me how to preprocess datasets for image recognition," the following process will take place:
[0944] Step 1:
[0945] The user enters the question and presses the "Post" button.
[0946] Step 2:
[0947] The device sends the question to the server.
[0948] Step 3:
[0949] The server receives the question and performs validation.
[0950] Step 4:
[0951] The server saves the question in the database and sends a save success message to the terminal.
[0952] Step 5:
[0953] The server sends the question to the emotion engine, which then analyzes it.
[0954] Step 6:
[0955] The emotion engine generates the user's emotion information and stores it in a database.
[0956] Step 7:
[0957] The server sends notification of the question to other interested users.
[0958] Step 8:
[0959] Related users view the question and post answers.
[0960] Step 9:
[0961] The terminal sends the answer to the server, and the server stores the received answer in a database.
[0962] Step 10:
[0963] The server sends the answer content to the emotion engine, which analyzes it and generates emotion information about the user.
[0964] Step 11:
[0965] The server sends a customized notification to the original question poster based on the sentiment information.
[0966] Step 12:
[0967] The device displays a customized notification to the user.
[0968] Example 2
[0969] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0970] Conventional SNS systems have problems such as not receiving appropriate feedback on questions and answers posted by users, and insufficient emotional response. Furthermore, when users perform searches, the results are not adjusted based on emotions, making it difficult for users to effectively obtain the information they are looking for. Furthermore, there are limited ways to evaluate useful answers, making it difficult to promote knowledge sharing throughout the community.
[0971] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing the sentiment of received questions and answers, means for sending notifications customized based on the sentiment analysis results, and means for adjusting the display order of answers based on the sentiment analysis results. This makes it possible to customize feedback and notifications according to the user's sentiment and present optimal information. Furthermore, by combining evaluation by voting with sentiment analysis, more effective knowledge sharing can be achieved.
[0972] "Identification information" is information for uniquely identifying a user, and includes an email address, a username, a password, and the like.
[0973] "Question content" is text information of a question or inquiry that a user poses to another user within the system.
[0974] A "server" is a computer system whose role is to store, analyze, process, and transmit information received from users.
[0975] A "database" is a system for systematically storing and managing questions, answers, voting information, sentiment analysis results, etc. received by the server.
[0976] A "notification" is a message or alert that provides information from the server to the user.
[0977] "Sentiment analysis" is the process of identifying a user's emotional state from the text content of posted questions and answers and generating emotional tags such as positive, negative, or neutral.
[0978] "Vote" is an action that allows a user to express an opinion such as for or against another user's answer.
[0979] "Search keywords" are words or phrases that a user enters into a system to search for specific information.
[0980] "Customized notifications" are messages and alerts that are generated based on sentiment analysis results and user behavior history and are optimized for individual users.
[0981] "Display order" refers to the order in which items are displayed in a list of search results or answers provided to a user.
[0982] The present invention is a social networking system that allows users to post questions about AI and share information and solve problems across the community. It also incorporates an emotion engine that recognizes users' emotions, performs emotional analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described in detail below.
[0983] User Registration and Login
[0984] When a user first uses the system, they create an account by entering their identification information (email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identification information. The server checks the login information against the database and allows the user access if it matches.
[0985] Post a question
[0986] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[0987] Posting and viewing answers
[0988] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[0989] Search function
[0990] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[0991] Voting function
[0992] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[0993] Sentiment analysis and notification customization
[0994] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[0995] Specific examples
[0996] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves the question in a database and notifies other relevant users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine interprets the answer as positive, the answer is more likely to appear higher on the results. Furthermore, if a user votes on this answer, the emotion engine analyzes the reasons for the vote and can provide information more in line with the user's intentions. In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving AI-related questions and problems. Furthermore, by combining the emotion engine, it is possible to provide customized services based on the user's emotions, which is expected to improve the user experience.
[0997] Prompt Sentence Examples
[0998] For example, you could set a prompt like, "Please tell me how to prioritize and display answers with positive sentiment based on the analysis results of user sentiment."
[0999] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1000] Step 1: User Registration
[1001] Input: The user enters their email address, username, and password from the device.
[1002] process:
[1003] 1. The terminal sends the entered identification information to the server.
[1004] 2. The server verifies the received identity and rejects any invalid input.
[1005] 3. The server stores the verified information in a database.
[1006] Output: The server sends a registration successful message to the terminal.
[1007] Step 2: Login process
[1008] Input: The user enters the registered email address and password from the device.
[1009] process:
[1010] 1. The device sends the entered login information to the server.
[1011] 2. The server checks the received login information against its database.
[1012] 3. If there is a match, the server starts a session and generates authentication information.
[1013] Output: The server sends the authentication information to the terminal and displays a successful login message.
[1014] Step 3: Question submission process
[1015] Input: The user inputs the question from the terminal.
[1016] process:
[1017] 1. The device sends the entered question to the server.
[1018] 2. The server validates the received question.
[1019] 3. Save the validated questions to the database.
[1020] 4. The server notifies other users of the new question.
[1021] Output: The server sends a success message to the terminal and sends notification messages to other users involved.
[1022] Step 4: Sentiment Analysis
[1023] Input: The question posted.
[1024] process:
[1025] 1. The server calls the emotion engine and sends the question.
[1026] 2. The sentiment engine analyzes the question and generates sentiment tags (positive, negative, neutral).
[1027] 3. Save the emotion tag in the database.
[1028] Output: The server stores the generated emotion tags in a database.
[1029] Step 5: Posting an Answer
[1030] Input: Other users input their answers from their devices.
[1031] process:
[1032] 1. The device sends the entered answer to the server.
[1033] 2. The server validates the received response.
[1034] 3. Save the validated answers to the database.
[1035] 4. The server notifies the relevant users.
[1036] Output: The server sends a success message to the terminal and a notification message to the relevant user.
[1037] Step 6: Display the answer field
[1038] Input: The user sends the question ID to the server.
[1039] process:
[1040] 1. The server retrieves the answer associated with the question ID from the database.
[1041] 2. The answer is sent to the device along with the sentiment analysis results.
[1042] Output: The list of answers and emotion tags are displayed on the user's device.
[1043] Step 7: Search process
[1044] Input: The user enters a specific keyword into a search screen.
[1045] process:
[1046] 1. The device sends the search keywords to the server.
[1047] 2. The server searches the database based on the keyword.
[1048] 3. Ranking search results based on the results of sentiment analysis.
[1049] 4. The server sends the search results to the terminal.
[1050] Output: The sentiment-based search results are displayed on the user's device.
[1051] Step 8: Voting Process
[1052] Input: A user votes on another user's answer.
[1053] process:
[1054] 1. The device sends the voting information to the server.
[1055] 2. The server stores the received voting information in a database.
[1056] Output: The server notifies the terminal that voting is complete.
[1057] Step 9: Aggregation and revaluation
[1058] Input: Voting information stored in a database.
[1059] process:
[1060] 1. The server periodically tallys the voting information.
[1061] 2. Re-evaluate the answers based on the results and update the display order.
[1062] Output: The updated answer display order is reflected on the user's device.
[1063] Step 10: Sentiment Analysis (Revisited)
[1064] Input: New posts and replies by users.
[1065] process:
[1066] 1. The server calls the emotion engine and sends it the text to be analyzed.
[1067] 2. The emotion engine generates the analysis results and returns them to the server.
[1068] Output: The emotional information resulting from the analysis is stored in a database.
[1069] Step 11: Customizing Notifications
[1070] Input: Sentiment analysis results.
[1071] process:
[1072] 1. The server refers to the emotion analysis results and generates notification content according to the user's state.
[1073] 2. Send customized notifications to your device.
[1074] Output: A customized notification will be displayed on the user's device.
[1075] (Application example 2)
[1076] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[1077] Conventional question-and-answer systems do not provide feedback or adjust the display order based on the sentiment of questions and answers posted by users, making it difficult to improve the user experience.In addition, there was a need to improve the efficiency of information sharing and problem-solving within the community.
[1078] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the content of the user's question and answer using an emotion analysis engine and adjusting the data and display order based on the emotion information, means for saving the content of the question received by the server, and means for searching the database based on the search keyword by the server. This makes it possible to provide appropriate feedback on the user's emotion and prioritize the display of answers with positive emotions, thereby improving the atmosphere of the community and increasing the efficiency of information sharing and problem solving.
[1079] "User" refers to a person who uses the system.
[1080] "Identification information" is information for identifying a user, and includes, for example, an email address, a user name, and a password.
[1081] "Question content" refers to the text data of a question posted by a user to the system.
[1082] "Server" refers to a computing system that receives, stores, processes, and transmits data.
[1083] "Answer content" refers to text data of an answer provided by a user to a question posted.
[1084] A "database" refers to a systematically organized collection of data, and is used to store questions, answers, etc.
[1085] "Search keywords" refer to specific words or groups of words that a user uses to search a database.
[1086] "Voting" refers to the act of a user rating the answers of other users.
[1087] "Sentiment analysis engine" refers to technology or software for analyzing the emotional content of text data.
[1088] "Emotion information" refers to data about a user's emotions extracted by an emotion analysis engine.
[1089] This invention can be implemented as a question-and-answer system for a virtual store. This system supports a series of processes: a user registers identification information, posts a question, and receives answers from other users. Furthermore, this system incorporates an emotion analysis engine, which can adjust the system's operation based on the user's emotions.
[1090] System configuration
[1091] 1. User Registration and Login
[1092] The system has a function that allows users to create an account by entering identification information (e.g., email address, username, password). Users log in using the registered identification information.
[1093] 2. Post a question
[1094] After logging in, users can enter their own questions and send them to the server, which stores the received questions in a database and notifies other users.
[1095] 3. Posting and viewing answers
[1096] Once notified, other users can view the question and post their own answers. The server stores the answers in a database, where they can be viewed by the original question poster and other users.
[1097] 4. Search function
[1098] Users can search for questions and answers by entering specific keywords, and the server searches the database based on the search keywords and sends the search results to the user.
[1099] 5. Voting function
[1100] Users can vote on other users' answers, and the server stores and tallies the received votes.
[1101] 6. Sentiment analysis and display adjustment
[1102] The server uses an emotion analysis engine to analyze the user's questions and answers. Based on this analysis, the server stores the user's emotional information as data and makes adjustments such as prioritizing the display of answers with positive emotions.
[1103] Hardware and software used
[1104] Server: A computer system that receives, stores, notifies, searches, and aggregates data. Examples include Amazon Web Services (AWS) and Google Cloud Platform (GCP).
[1105] Database: A system for storing user identities, questions, answers, and sentiment information. Examples include MySQL and MongoDB.
[1106] Sentiment analysis engine: Software that analyzes user text data and extracts emotional information. You can use the open source NLTK or the commercial IBM Watson Natural Language Understanding.
[1107] Specific examples
[1108] User A posts a question saying, "Please tell me how to train a new AI model." The server saves this question in a database and notifies other users. User B responds, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!" The sentiment analysis engine interprets this response as positive. The server prioritizes displaying this positive response, improving the overall atmosphere of the community.
[1109] Prompt Sentence Examples
[1110] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[1111] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1112] Step 1:
[1113] The user registers by entering identification information (e.g., email address, username, password) on the terminal. The entered identification information is sent to the server. The server verifies the received identification information and, if it is correct, stores it in the database. This creates a user account.
[1114] Step 2:
[1115] The user uses a terminal to enter registered identification information and log in. The identification information is sent to the server, which then compares the received identification information with the database. If the comparison results in a match, the login is successful and the user is granted access.
[1116] Step 3:
[1117] After logging in, the user enters the question into the terminal and sends it to the server, which stores the received question in a database and notifies other users that a new question has been posted.
[1118] Step 4:
[1119] Other users receive the notification on their devices and view the question. The user who entered the answer sends the answer to the server, which then stores the received answer in a database.
[1120] Step 5:
[1121] The server sends the answers to a sentiment analysis engine, which analyzes the answers and extracts emotional information such as positive, negative, or neutral. The emotional information is then sent back to the server and stored in a database.
[1122] Step 6:
[1123] The user inputs search keywords using a device and sends them to the server. The server searches the database based on the received search keywords and extracts related questions and answers. The display order of the search results is adjusted based on the emotion information, and then the results are sent to the user's device.
[1124] Step 7:
[1125] Users vote for other users' answers. The voting information is sent to the server, and the received voting information is stored in a database. The server tallies the voting information and reflects it in the display order of the answers.
[1126] Step 8:
[1127] The server sends customized notifications to the user based on the emotion information obtained from the emotion analysis engine, for example, displaying a supportive message to the user if a negative emotion is detected.
[1128] Examples:
[1129] User A enters a question on their device, "Tell me how to train a new AI model," and sends it to the server. The server saves the question in a database and notifies other users. User B views the question on their device, enters an answer, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!", and sends it to the server. The sentiment analysis engine analyzes the answer as positive, and the server saves this result and adjusts the display order, prioritizing positive answers.
[1130] Example prompt sentence:
[1131] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[1132] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1133] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1134] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[1135] [Third embodiment]
[1136] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1137] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[1138] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1139] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[1140] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1141] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1142] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1143] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1144] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1145] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1146] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1147] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[1148] The present invention is a social networking service (SNS) system that allows users to post questions about AI and promotes information sharing and problem solving across the entire community. An embodiment of this system will be described below.
[1149] User Registration and Login
[1150] The first time a user uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user uses this identifying information to log in to the system. The server checks the login information against the database and, if it matches, grants the user access.
[1151] Post a question
[1152] After logging in, users can type and post questions about the AI. The device sends the post to the server, which receives it, verifies it, and stores it in a database. The server then notifies other appropriate users of the new question, allowing them to respond to the new question quickly.
[1153] Posting and viewing answers
[1154] When other users receive a notification, they can view the question and post their own answers. The device sends the answers to the server, which stores them in a database. The original question poster and other users can view these answers.
[1155] Search function
[1156] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which searches a database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[1157] Voting function
[1158] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[1159] Specific examples
[1160] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this question in a database and notifies users who have answered many other AI-related questions. A user who receives this notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." The user who posted the original question and other users can view and vote for this answer, and the answer with the most votes will be displayed at the top.
[1161] In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI.
[1162] The processing flow will be explained below.
[1163] User Registration and Login
[1164] User Registration
[1165] Step 1:
[1166] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[1167] Step 2:
[1168] The terminal transmits the input user information to the server.
[1169] Step 3:
[1170] The server validates the user information received based on the validation logic.
[1171] Step 4:
[1172] If the server is successful in the verification, it stores the user information in a database.
[1173] Step 5:
[1174] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[1175] User Login
[1176] Step 1:
[1177] The user enters their email address and password in the login form and clicks the "Login" button.
[1178] Step 2:
[1179] The terminal sends the entered login information to the server.
[1180] Step 3:
[1181] The server checks the received login information against a database and authenticates the user.
[1182] Step 4:
[1183] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[1184] Post a question
[1185] Step 1:
[1186] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[1187] Step 2:
[1188] The terminal transmits the input question to the server.
[1189] Step 3:
[1190] The server validates the received question and stores it in the database.
[1191] Step 4:
[1192] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[1193] Step 5:
[1194] The server notifies relevant users of new questions.
[1195] Posting and viewing answers
[1196] Step 1:
[1197] Other users receive notifications.
[1198] Step 2:
[1199] The user views the question, enters an answer, and presses the "Post" button.
[1200] Step 3:
[1201] The terminal transmits the inputted answer content to the server.
[1202] Step 4:
[1203] The server validates the received answer and stores it in the database.
[1204] Step 5:
[1205] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[1206] Search function
[1207] Step 1:
[1208] The user enters a specific keyword on the search screen and presses the "Search" button.
[1209] Step 2:
[1210] The terminal transmits the entered search keyword to the server.
[1211] Step 3:
[1212] The server searches the database based on the search keywords to retrieve relevant information.
[1213] Step 4:
[1214] The server sends the search results to the terminal.
[1215] Step 5:
[1216] The terminal displays the received search results to the user.
[1217] Voting function
[1218] Step 1:
[1219] The user presses the voting button next to the question or answer.
[1220] Step 2:
[1221] The terminal transmits the voting information to the server.
[1222] Step 3:
[1223] The server stores the received voting information in a database.
[1224] Step 4:
[1225] The server tally the votes and reflect them in the relevant questions and answers.
[1226] Step 5:
[1227] The device will display updated information to the user, with useful answers being ranked higher.
[1228] Example 1
[1229] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1230] In conventional SNS systems, it was difficult for users to post questions about AI and receive prompt and appropriate answers. Furthermore, there were limited ways to evaluate the usefulness of answers, and useful information was often buried. Furthermore, security measures for user registration and login were insufficient. A system that can solve these issues and enable efficient knowledge sharing among users is needed.
[1231] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1232] In this invention, the server includes a means for a user to register identification information, a means for a user to send a question, and a means for the server to save the question received, thereby enabling a user to register identification information when using the service for the first time and then send a question.
[1233] The server includes a means for notifying other users of the content of the question received by the server, a means for users to answer the content of the question, and a means for saving the answers received by the server, so that the question is notified to other users and a prompt and appropriate answer can be obtained.
[1234] The server further includes a means for a user to send a search keyword, a means for the server to search a database based on the search keyword, and a means for the server to send the search results to the user, thereby enabling the user to easily find related questions and answers through keyword searches.
[1235] The server also includes a means for users to vote on other users' answers, a means for the server to store and tally the votes received, and a means for the server to manage session IDs based on the primary means, which makes it easier to evaluate by voting, allowing better answers to be displayed at the top, and ensuring security through session management.
[1236] "User" refers to a general user who uses the SNS system to register identification information and post questions and answers.
[1237] "Identification information" is data for identifying a user, and mainly includes an email address, a username, and a password.
[1238] "Question content" refers to inquiries or problems about AI posted by users through the SNS system.
[1239] "Server" refers to a computer system that performs various processes such as receiving, storing, notifying, searching, and counting votes for questions and answers.
[1240] "Means of storage" refers to the method by which the server stores the questions and answers it receives in storage such as a database.
[1241] "Notification means" refers to the communication means used by the server to notify other users of new questions and answers posted.
[1242] An "answer" refers to a written explanation or solution provided by another user in response to a question.
[1243] "Search keywords" refer to words or phrases that users enter into a search screen to find specific information.
[1244] "Session ID" refers to a unique identification number generated by the server to maintain a user's logged-in state and manage successive accesses.
[1245] "Means for voting" refers to a function that allows a user to rate the answers of other users.
[1246] "Means for counting" refers to the method by which the server calculates the number of votes received and determines the display order of the answers based on the counting results.
[1247] This invention is a social networking service (SNS) system in which users can post questions about AI and share information and solve problems across the community. In this system, users operate the system according to the following procedure, and the server performs various processes.
[1248] First, when using the system for the first time, the user enters identification information such as an email address, username, and password. The device sends this identification information to the server, and the server validates the received information (e.g., checking the format of the email address and the strength of the password). After validation passes, the server stores this information in a database (e.g., MySQL, PostgreSQL). From the next time onwards, the user logs in to the system using this identification information, and the server verifies the entered login information against the database and allows access if it matches.
[1249] After logging in, users can enter and post questions about AI. First, the device sends the question to the server. Next, the server receives the question and validates it (e.g., checking for prohibited words). Questions that pass validation are saved in a database. Furthermore, the server notifies other relevant users that a new question has been posted. This notification is done using WebSocket or push notification.
[1250] When other users receive a notification, they can view the question and post an answer. The user enters the answer and the device sends it to the server. The server receives the answer and validates it, and answers that pass are stored in a database. The user who posted the original question and other users can view this answer.
[1251] Furthermore, users can input specific keywords on the search screen to search for related questions and answers. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The search results are then sent to the device, where the user can view them.
[1252] Users can also vote on other users' answers. The voting information is sent from the device to the server, which then stores it in a database and tallies the votes. The order in which answers are displayed is updated based on the tallied results, with useful information being displayed at the top.
[1253] As a specific example of how this works, consider the case where a user posts a question such as, "Please tell me about dataset preprocessing for image recognition." After this question is sent from the device to the server, the server saves it in a database and notifies other relevant users. The user who receives the notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." This answer is saved in the database, and can be viewed by the user who posted the original question and other users, who vote for answers they find helpful. This voting information is sent to the server, and the results are reflected in the tallies, so that useful answers are displayed at the top.
[1254] Here are some example prompts using a generative AI model:
[1255] User: "How do I preprocess a dataset for image recognition?"
[1256] AI models: "Labeling, normalization, and data augmentation are important for dataset preprocessing."
[1257] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1258] Step 1:
[1259] The user accesses the registration screen and enters their email address, username, and password.
[1260] Input: The identification information entered by the user (email address, username, password).
[1261] Data processing: The device checks the email address format and password strength.
[1262] Output: The validated identity is sent to the server.
[1263] Step 2:
[1264] The server revalidates the received identification information and stores it in the database.
[1265] Input: The identification information sent by the device.
[1266] Data processing: The server will double-check that the email address is not duplicated and that the password is correct.
[1267] Output: The validated identity is saved in the database.
[1268] Step 3:
[1269] The user accesses the login screen and enters their email address and password.
[1270] Input: The email address and password entered by the user.
[1271] Data processing: The device sends the identification information to the server.
[1272] Output: Login information is sent to the server.
[1273] Step 4:
[1274] The server checks the received login information against the database, and if it matches, it generates a session ID and sends it to the user.
[1275] Input: The login information sent to the server.
[1276] Data processing: The server checks the information against the database and, if it matches, generates a session ID.
[1277] Output: The session ID is sent to the user and access is granted.
[1278] Step 5:
[1279] To submit a question about AI, users enter the question and click the "Submit" button.
[1280] Input: The question typed by the user.
[1281] Data processing: The device sends the question to the server.
[1282] Output: The question is sent to the server.
[1283] Step 6:
[1284] The server validates the received question and stores it in the database.
[1285] Input: The question sent to the server.
[1286] Data processing: The server validates the question (e.g., checks for forbidden words).
[1287] Output: Questions that pass validation are saved in the database.
[1288] Step 7:
[1289] The server notifies other users of the question.
[1290] Input: Questions stored in the database.
[1291] Data processing: The server notifies other relevant users of the question.
[1292] Output: Other users are notified of the new question.
[1293] Step 8:
[1294] Other users who receive the notification can view the question and post their answers.
[1295] Input: The answer entered by other users.
[1296] Data processing: The device sends the answers to the server.
[1297] Output: The answer is sent to the server.
[1298] Step 9:
[1299] The server validates the received response and stores it in the database.
[1300] Input: The response sent to the server.
[1301] Data processing: The server validates the response (e.g., checks for forbidden words).
[1302] Output: The answers that pass validation are saved in the database.
[1303] Step 10:
[1304] The person who posted the original question and others can view the answer.
[1305] Input: Answers stored in the database.
[1306] Data processing: Allows the server to view the answers.
[1307] Output: The user can view the answer.
[1308] Step 11:
[1309] The user enters keywords on the search screen and clicks "Search."
[1310] Input: The search term entered by the user.
[1311] Data processing: The device sends the search keywords to the server.
[1312] Output: The search keywords are sent to the server.
[1313] Step 12:
[1314] The server searches the database using the received search keywords and sends the results to the terminal.
[1315] Input: The search keywords sent to the server.
[1316] Data processing: The server searches the database and extracts relevant questions and answers.
[1317] Output: Search results are sent to the device.
[1318] Step 13:
[1319] A user clicks "Vote" to vote for another user's answer.
[1320] Input: The poll information the user clicked on.
[1321] Data processing: The device sends the voting information to the server.
[1322] Output: The voting information is sent to the server.
[1323] Step 14:
[1324] The server stores the received voting information in a database and tallies it.
[1325] Input: Voting information sent to the server.
[1326] Data processing: The server tallies the votes and stores them in a database.
[1327] Output: The order of answers is updated based on the results.
[1328] (Application example 1)
[1329] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1330] Currently, content creators often face technical issues related to generative AI, but lack the appropriate platforms to solve them. As a result, creators are forced to solve these issues independently, wasting time and effort. Furthermore, there is inefficiency in having multiple creators working on the same problem. Therefore, there is a need for a platform that allows content creators to efficiently solve technical issues and share knowledge.
[1331] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1332] In this invention, the server includes means for a user to register identification information, means for a user to send a question, means for the server to save the question received, means for notifying other users of the question received by the server, means for a user to answer the question, means for the server to save the answer received, means for a user to send a search keyword, means for the server to search a database based on the search keyword, means for the server to send the search results to the user, means for a user to vote on answers from other users, means for the server to save and tally the votes received, means for a content creator to post a technical question about the artificial intelligence, means for other content creators to post technical answers, means for voting on the usefulness of the technical answers, and means for the server to save and tally the technical questions and answers. This makes it possible to provide a platform where content creators can efficiently solve and share technical problems.
[1333] "User identification information" is unique information that allows a user to register with the system, and typically includes an email address, a username, and a password.
[1334] A "Question" is a description of a technical question or problem posted by a content creator.
[1335] A "server" is a central computing unit for receiving, processing, and storing input information from users.
[1336] A "notification" is a message that notifies other users that a new question has been posted.
[1337] An "answer" is a solution or explanation provided by a user in response to a posted question.
[1338] "Search keywords" are words or phrases that users enter to search for a particular question or answer.
[1339] "Database" means a system for storing questions, answers, user identification information and other related data received by the server.
[1340] "Voting" is an act by a user of evaluating the usefulness of answers provided by other users.
[1341] "Tallying" is the process by which the server statistically processes the received votes and ranks the usefulness of the answers.
[1342] A "content creator" is a creative professional who performs video editing, image processing, audio processing, etc., and utilizes knowledge and technology related to generative artificial intelligence.
[1343] "Generative AI" is an AI technology that automatically generates models from data to perform various tasks.
[1344] "Technical questions" are questions that clearly express specific technical problems or concerns about generative artificial intelligence.
[1345] "Technical answers" are content that provides specific solutions or explanations to technical questions.
[1346] The present invention provides a social networking service (SNS) system that allows content creators to post technical questions about generative AI and receive technical answers from other creators. Specific embodiments for implementing the present invention are described below.
[1347] User Registration and Login
[1348] A user first creates an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. The user then uses this identifying information to log into the system later. The server checks the login information against the database and, if it matches, grants the user access.
[1349] Post a question
[1350] After logging in, users can enter and post technical questions about the generative AI. The device sends the posts to the server, which receives, verifies, and stores them in a database. The server then notifies other appropriate users of the new questions, allowing them to respond quickly to new questions.
[1351] Posting and viewing answers
[1352] Other users can view the question and post technical answers after receiving the notification. The device sends the answers to the server, which stores them in a database. These answers can then be viewed by the user who posted the original question and by other users.
[1353] Search function
[1354] Users can enter specific keywords on the search screen to search for questions and answers about generative AI. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[1355] Voting function
[1356] Users can vote on other users' answers, which makes it easier for useful answers to be appreciated by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information being displayed higher.
[1357] Hardware and software used
[1358] Hardware used: Servers, devices (smartphones and computers)
[1359] Software used: programming language (e.g., Python), web framework (e.g., Flask), database (e.g., SQLAlchemy), encryption library (e.g., Bcrypt), authentication library (e.g., JWT-Extended)
[1360] The server combines these technologies to process user identification information and question and answer queries.
[1361] Specific example explanation
[1362] For example, a content creator posts a technical question such as "How to reduce the training time of an AI model." This question is notified to other creators, who post specific technical answers, such as "You can reduce the training time by reducing the dataset or the complexity of the model." Other creators then vote on these answers, and the most useful answers are ranked higher.
[1363] Prompt Sentence Examples
[1364] Example questions:
[1365] "What are some data preprocessing techniques to improve the performance of deep learning models?"
[1366] Expected answer:
[1367] "Data normalization, data augmentation (rotation, flipping, scaling), and outlier removal are effective."
[1368] In this way, the present invention provides a platform for content creators to effectively solve technical problems and share knowledge related to generative artificial intelligence.
[1369] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1370] Step 1: User Registration
[1371] The user uses the terminal to enter their identification information (email address, username, password) and send it to the server. The server receives this information and hashes the password using the Bcrypt library. The server then saves the user information in a database (SQLAlchemy) and sends a message to the terminal confirming registration.
[1372] Input: Email address, username, password
[1373] Data processing: password hashing
[1374] Output: Registration complete message
[1375] Step 2: User Login
[1376] The user enters their identification information (email address, password) using the terminal and sends it to the server. The server receives this information and checks it against the hashed password stored in the database. If the check is successful, the server generates a JWT token and sends it to the terminal. If the check is unsuccessful, it returns an error message.
[1377] Input: Email address, password
[1378] Data operations: password verification, token generation
[1379] Output: JWT token or error message
[1380] Step 3: Post a question
[1381] Once logged in, users can use their devices to input technical questions about the AI generation system and send them to the server, which receives the questions and stores them in a database. The server then notifies other relevant users that a new question has been posted.
[1382] Input: Technical Question
[1383] Data storage: Save questions to a database
[1384] Output: New question notification
[1385] Step 4: Post your answer
[1386] After receiving the notification, other users can use their devices to view the question, enter a technical answer, and send it to the server. The server receives this answer and stores it in a database. The user who posted the original question and other users can view this answer as a response from the server.
[1387] Input: Technical Answer
[1388] Data storage: Save answers to a database
[1389] Output: Viewable answers
[1390] Step 5: Search
[1391] The user inputs search keywords using the terminal and sends them to the server. The server receives the keywords, searches for related questions and answers in the database, collects search results, and sends them to the user's terminal.
[1392] Input: Search keyword
[1393] Data Search: Search for related questions and answers
[1394] Output: Search results
[1395] Step 6: Vote for the answer
[1396] To vote for other users' answers, users use their devices to click a voting button and send the voting data to the server. The server receives this voting data, stores it in a database, and tallies it. The tallied results are reflected in the display order of the answers, with answers that receive the most votes being displayed at the top.
[1397] Input: Voting data
[1398] Data Storage and Counting: Storing and counting voting data
[1399] Output: Updated answers in display order
[1400] This allows users to efficiently post technical questions about generative artificial intelligence, receive answers, and vote on the usefulness of the answers to promote knowledge growth across the community.
[1401] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1402] The present invention is a social networking system in which users can post questions about AI and share information and solve problems across the community. Additionally, the present invention incorporates an emotion engine that recognizes users' emotions, performs emotion analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described below.
[1403] User Registration and Login
[1404] When a user first uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identifying information. The server checks the login information against the database and, if it matches, grants the user access.
[1405] Post a question
[1406] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[1407] Posting and viewing answers
[1408] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[1409] Search function
[1410] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[1411] Voting function
[1412] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[1413] Sentiment analysis and notification customization
[1414] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[1415] Specific examples
[1416] If a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this in the database and notifies other related users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine analyzes the content of the answer as positive, the answer is more likely to be displayed at the top of the results. Furthermore, if a user votes for this answer, the emotion engine also analyzes the reasons for the vote, allowing it to provide information more in line with the user's intentions.
[1417] In this way, this system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI. In addition, by combining it with an emotion engine, it is possible to provide customized services according to the user's emotions, which is expected to improve the user experience.
[1418] The processing flow will be explained below.
[1419] User Registration and Login
[1420] User Registration
[1421] Step 1:
[1422] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[1423] Step 2:
[1424] The terminal transmits the input user information to the server.
[1425] Step 3:
[1426] The server validates the user information received based on the validation logic.
[1427] Step 4:
[1428] If the server is successful in the verification, it stores the user information in a database.
[1429] Step 5:
[1430] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[1431] User Login
[1432] Step 1:
[1433] The user enters their email address and password in the login form and clicks the "Login" button.
[1434] Step 2:
[1435] The terminal sends the entered login information to the server.
[1436] Step 3:
[1437] The server checks the received login information against a database and authenticates the user.
[1438] Step 4:
[1439] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[1440] Post a question
[1441] Step 1:
[1442] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[1443] Step 2:
[1444] The terminal transmits the input question to the server.
[1445] Step 3:
[1446] The server validates the received question and stores it in the database.
[1447] Step 4:
[1448] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[1449] Step 5:
[1450] The server notifies relevant users of new questions.
[1451] Posting and viewing answers
[1452] Step 1:
[1453] Other users receive notifications.
[1454] Step 2:
[1455] The user views the question, enters an answer, and presses the "Post" button.
[1456] Step 3:
[1457] The terminal transmits the inputted answer content to the server.
[1458] Step 4:
[1459] The server validates the received answer and stores it in the database.
[1460] Step 5:
[1461] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[1462] Search function
[1463] Step 1:
[1464] The user enters a specific keyword on the search screen and presses the "Search" button.
[1465] Step 2:
[1466] The terminal transmits the entered search keyword to the server.
[1467] Step 3:
[1468] The server searches the database based on the search keywords to retrieve relevant information.
[1469] Step 4:
[1470] The server sends the search results to the terminal.
[1471] Step 5:
[1472] The terminal displays the received search results to the user.
[1473] Voting function
[1474] Step 1:
[1475] The user presses the voting button next to the question or answer.
[1476] Step 2:
[1477] The terminal transmits the voting information to the server.
[1478] Step 3:
[1479] The server stores the received voting information in a database.
[1480] Step 4:
[1481] The server tally the votes and reflect them in the relevant questions and answers.
[1482] Step 5:
[1483] The device will display updated information to the user, with useful answers being ranked higher.
[1484] Sentiment analysis and notification customization
[1485] Step 1:
[1486] When a user inputs and sends a question or answer, the terminal sends the posted content to the server.
[1487] Step 2:
[1488] The server sends the received post content to the emotion engine for emotion analysis.
[1489] Step 3:
[1490] The emotion engine generates the analysis results and stores the user's emotion information in a database.
[1491] Step 4:
[1492] The server generates a customized notification based on the emotion information and sends it to the device.
[1493] Step 5:
[1494] The device displays a customized notification to the user.
[1495] Specific examples
[1496] If a user posts a question such as "Please tell me how to preprocess datasets for image recognition," the following process will take place:
[1497] Step 1:
[1498] The user enters the question and presses the "Post" button.
[1499] Step 2:
[1500] The device sends the question to the server.
[1501] Step 3:
[1502] The server receives the question and performs validation.
[1503] Step 4:
[1504] The server saves the question in the database and sends a save success message to the terminal.
[1505] Step 5:
[1506] The server sends the question to the emotion engine, which then analyzes it.
[1507] Step 6:
[1508] The emotion engine generates the user's emotion information and stores it in a database.
[1509] Step 7:
[1510] The server sends notification of the question to other interested users.
[1511] Step 8:
[1512] Related users view the question and post answers.
[1513] Step 9:
[1514] The terminal sends the answer to the server, and the server stores the received answer in a database.
[1515] Step 10:
[1516] The server sends the answer content to the emotion engine, which analyzes it and generates emotion information about the user.
[1517] Step 11:
[1518] The server sends a customized notification to the original question poster based on the sentiment information.
[1519] Step 12:
[1520] The device displays a customized notification to the user.
[1521] Example 2
[1522] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1523] Conventional SNS systems have problems such as not receiving appropriate feedback on questions and answers posted by users, and insufficient emotional response. Furthermore, when users perform searches, the results are not adjusted based on emotions, making it difficult for users to effectively obtain the information they are looking for. Furthermore, there are limited ways to evaluate useful answers, making it difficult to promote knowledge sharing throughout the community.
[1524] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing the sentiment of received questions and answers, means for sending notifications customized based on the sentiment analysis results, and means for adjusting the display order of answers based on the sentiment analysis results. This makes it possible to customize feedback and notifications according to the user's sentiment and present optimal information. Furthermore, by combining evaluation by voting with sentiment analysis, more effective knowledge sharing can be achieved.
[1525] "Identification information" is information for uniquely identifying a user, and includes an email address, a username, a password, and the like.
[1526] "Question content" is text information of a question or inquiry that a user poses to another user within the system.
[1527] A "server" is a computer system whose role is to store, analyze, process, and transmit information received from users.
[1528] A "database" is a system for systematically storing and managing questions, answers, voting information, sentiment analysis results, etc. received by the server.
[1529] A "notification" is a message or alert that provides information from the server to the user.
[1530] "Sentiment analysis" is the process of identifying a user's emotional state from the text content of posted questions and answers and generating emotional tags such as positive, negative, or neutral.
[1531] "Vote" is an action that allows a user to express an opinion such as for or against another user's answer.
[1532] "Search keywords" are words or phrases that a user enters into a system to search for specific information.
[1533] "Customized notifications" are messages and alerts that are generated based on sentiment analysis results and user behavior history and are optimized for individual users.
[1534] "Display order" refers to the order in which items are displayed in a list of search results or answers provided to a user.
[1535] The present invention is a social networking system that allows users to post questions about AI and share information and solve problems across the community. It also incorporates an emotion engine that recognizes users' emotions, performs emotional analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described in detail below.
[1536] User Registration and Login
[1537] When a user first uses the system, they create an account by entering their identification information (email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identification information. The server checks the login information against the database and allows the user access if it matches.
[1538] Post a question
[1539] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[1540] Posting and viewing answers
[1541] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[1542] Search function
[1543] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[1544] Voting function
[1545] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[1546] Sentiment analysis and notification customization
[1547] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[1548] Specific examples
[1549] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves the question in a database and notifies other relevant users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine interprets the answer as positive, the answer is more likely to appear higher on the results. Furthermore, if a user votes on this answer, the emotion engine analyzes the reasons for the vote and can provide information more in line with the user's intentions. In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving AI-related questions and problems. Furthermore, by combining the emotion engine, it is possible to provide customized services based on the user's emotions, which is expected to improve the user experience.
[1550] Prompt Sentence Examples
[1551] For example, you could set a prompt like, "Please tell me how to prioritize and display answers with positive sentiment based on the analysis results of user sentiment."
[1552] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1553] Step 1: User Registration
[1554] Input: The user enters their email address, username, and password from the device.
[1555] process:
[1556] 1. The terminal sends the entered identification information to the server.
[1557] 2. The server verifies the received identity and rejects any invalid input.
[1558] 3. The server stores the verified information in a database.
[1559] Output: The server sends a registration successful message to the terminal.
[1560] Step 2: Login process
[1561] Input: The user enters the registered email address and password from the device.
[1562] process:
[1563] 1. The device sends the entered login information to the server.
[1564] 2. The server checks the received login information against its database.
[1565] 3. If there is a match, the server starts a session and generates authentication information.
[1566] Output: The server sends the authentication information to the terminal and displays a successful login message.
[1567] Step 3: Question submission process
[1568] Input: The user inputs the question from the terminal.
[1569] process:
[1570] 1. The device sends the entered question to the server.
[1571] 2. The server validates the received question.
[1572] 3. Save the validated questions to the database.
[1573] 4. The server notifies other users of the new question.
[1574] Output: The server sends a success message to the terminal and sends notification messages to other users involved.
[1575] Step 4: Sentiment Analysis
[1576] Input: The question posted.
[1577] process:
[1578] 1. The server calls the emotion engine and sends the question.
[1579] 2. The sentiment engine analyzes the question and generates sentiment tags (positive, negative, neutral).
[1580] 3. Save the emotion tag in the database.
[1581] Output: The server stores the generated emotion tags in a database.
[1582] Step 5: Posting an Answer
[1583] Input: Other users input their answers from their devices.
[1584] process:
[1585] 1. The device sends the entered answer to the server.
[1586] 2. The server validates the received response.
[1587] 3. Save the validated answers to the database.
[1588] 4. The server notifies the relevant users.
[1589] Output: The server sends a success message to the terminal and a notification message to the relevant user.
[1590] Step 6: Display the answer field
[1591] Input: The user sends the question ID to the server.
[1592] process:
[1593] 1. The server retrieves the answer associated with the question ID from the database.
[1594] 2. The answer is sent to the device along with the sentiment analysis results.
[1595] Output: The list of answers and emotion tags are displayed on the user's device.
[1596] Step 7: Search process
[1597] Input: The user enters a specific keyword into a search screen.
[1598] process:
[1599] 1. The device sends the search keywords to the server.
[1600] 2. The server searches the database based on the keyword.
[1601] 3. Ranking search results based on the results of sentiment analysis.
[1602] 4. The server sends the search results to the terminal.
[1603] Output: The sentiment-based search results are displayed on the user's device.
[1604] Step 8: Voting Process
[1605] Input: A user votes on another user's answer.
[1606] process:
[1607] 1. The device sends the voting information to the server.
[1608] 2. The server stores the received voting information in a database.
[1609] Output: The server notifies the terminal that voting is complete.
[1610] Step 9: Aggregation and revaluation
[1611] Input: Voting information stored in a database.
[1612] process:
[1613] 1. The server periodically tallys the voting information.
[1614] 2. Re-evaluate the answers based on the results and update the display order.
[1615] Output: The updated answer display order is reflected on the user's device.
[1616] Step 10: Sentiment Analysis (Revisited)
[1617] Input: New posts and replies by users.
[1618] process:
[1619] 1. The server calls the emotion engine and sends it the text to be analyzed.
[1620] 2. The emotion engine generates the analysis results and returns them to the server.
[1621] Output: The emotional information resulting from the analysis is stored in a database.
[1622] Step 11: Customizing Notifications
[1623] Input: Sentiment analysis results.
[1624] process:
[1625] 1. The server refers to the emotion analysis results and generates notification content according to the user's state.
[1626] 2. Send customized notifications to your device.
[1627] Output: A customized notification will be displayed on the user's device.
[1628] (Application example 2)
[1629] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1630] Conventional question-and-answer systems do not provide feedback or adjust the display order based on the sentiment of questions and answers posted by users, making it difficult to improve the user experience.In addition, there was a need to improve the efficiency of information sharing and problem-solving within the community.
[1631] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the content of the user's question and answer using an emotion analysis engine and adjusting the data and display order based on the emotion information, means for saving the content of the question received by the server, and means for searching the database based on the search keyword by the server. This makes it possible to provide appropriate feedback on the user's emotion and prioritize the display of answers with positive emotions, thereby improving the atmosphere of the community and increasing the efficiency of information sharing and problem solving.
[1632] "User" refers to a person who uses the system.
[1633] "Identification information" is information for identifying a user, and includes, for example, an email address, a user name, and a password.
[1634] "Question content" refers to the text data of a question posted by a user to the system.
[1635] "Server" refers to a computing system that receives, stores, processes, and transmits data.
[1636] "Answer content" refers to text data of an answer provided by a user to a question posted.
[1637] A "database" refers to a systematically organized collection of data, and is used to store questions, answers, etc.
[1638] "Search keywords" refer to specific words or groups of words that a user uses to search a database.
[1639] "Voting" refers to the act of a user rating the answers of other users.
[1640] "Sentiment analysis engine" refers to technology or software for analyzing the emotional content of text data.
[1641] "Emotion information" refers to data about a user's emotions extracted by an emotion analysis engine.
[1642] This invention can be implemented as a question-and-answer system for a virtual store. This system supports a series of processes: a user registers identification information, posts a question, and receives answers from other users. Furthermore, this system incorporates an emotion analysis engine, which can adjust the system's operation based on the user's emotions.
[1643] System configuration
[1644] 1. User Registration and Login
[1645] The system has a function that allows users to create an account by entering identification information (e.g., email address, username, password). Users log in using the registered identification information.
[1646] 2. Post a question
[1647] After logging in, users can enter their own questions and send them to the server, which stores the received questions in a database and notifies other users.
[1648] 3. Posting and viewing answers
[1649] Once notified, other users can view the question and post their own answers. The server stores the answers in a database, where they can be viewed by the original question poster and other users.
[1650] 4. Search function
[1651] Users can search for questions and answers by entering specific keywords, and the server searches the database based on the search keywords and sends the search results to the user.
[1652] 5. Voting function
[1653] Users can vote on other users' answers, and the server stores and tallies the received votes.
[1654] 6. Sentiment analysis and display adjustment
[1655] The server uses an emotion analysis engine to analyze the user's questions and answers. Based on this analysis, the server stores the user's emotional information as data and makes adjustments such as prioritizing the display of answers with positive emotions.
[1656] Hardware and software used
[1657] Server: A computer system that receives, stores, notifies, searches, and aggregates data. Examples include Amazon Web Services (AWS) and Google Cloud Platform (GCP).
[1658] Database: A system for storing user identities, questions, answers, and sentiment information. Examples include MySQL and MongoDB.
[1659] Sentiment analysis engine: Software that analyzes user text data and extracts emotional information. You can use the open source NLTK or the commercial IBM Watson Natural Language Understanding.
[1660] Specific examples
[1661] User A posts a question saying, "Please tell me how to train a new AI model." The server saves this question in a database and notifies other users. User B responds, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!" The sentiment analysis engine interprets this response as positive. The server prioritizes displaying this positive response, improving the overall atmosphere of the community.
[1662] Prompt Sentence Examples
[1663] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[1664] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1665] Step 1:
[1666] The user registers by entering identification information (e.g., email address, username, password) on the terminal. The entered identification information is sent to the server. The server verifies the received identification information and, if it is correct, stores it in the database. This creates a user account.
[1667] Step 2:
[1668] The user uses a terminal to enter registered identification information and log in. The identification information is sent to the server, which then compares the received identification information with the database. If the comparison results in a match, the login is successful and the user is granted access.
[1669] Step 3:
[1670] After logging in, the user enters the question into the terminal and sends it to the server, which stores the received question in a database and notifies other users that a new question has been posted.
[1671] Step 4:
[1672] Other users receive the notification on their devices and view the question. The user who entered the answer sends the answer to the server, which then stores the received answer in a database.
[1673] Step 5:
[1674] The server sends the answers to a sentiment analysis engine, which analyzes the answers and extracts emotional information such as positive, negative, or neutral. The emotional information is then sent back to the server and stored in a database.
[1675] Step 6:
[1676] The user inputs search keywords using a device and sends them to the server. The server searches the database based on the received search keywords and extracts related questions and answers. The display order of the search results is adjusted based on the emotion information, and then the results are sent to the user's device.
[1677] Step 7:
[1678] Users vote for other users' answers. The voting information is sent to the server, and the received voting information is stored in a database. The server tallies the voting information and reflects it in the display order of the answers.
[1679] Step 8:
[1680] The server sends customized notifications to the user based on the emotion information obtained from the emotion analysis engine, for example, displaying a supportive message to the user if a negative emotion is detected.
[1681] Examples:
[1682] User A enters a question on their device, "Tell me how to train a new AI model," and sends it to the server. The server saves the question in a database and notifies other users. User B views the question on their device, enters an answer, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!", and sends it to the server. The sentiment analysis engine analyzes the answer as positive, and the server saves this result and adjusts the display order, prioritizing positive answers.
[1683] Example prompt sentence:
[1684] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[1685] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1686] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1687] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1688] [Fourth embodiment]
[1689] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1690] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1691] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1692] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1693] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1694] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1695] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1696] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1697] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1698] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1699] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1700] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1701] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1702] The present invention is a social networking service (SNS) system that allows users to post questions about AI and promotes information sharing and problem solving across the entire community. An embodiment of this system will be described below.
[1703] User Registration and Login
[1704] The first time a user uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user uses this identifying information to log in to the system. The server checks the login information against the database and, if it matches, grants the user access.
[1705] Post a question
[1706] After logging in, users can type and post questions about the AI. The device sends the post to the server, which receives it, verifies it, and stores it in a database. The server then notifies other appropriate users of the new question, allowing them to respond to the new question quickly.
[1707] Posting and viewing answers
[1708] When other users receive a notification, they can view the question and post their own answers. The device sends the answers to the server, which stores them in a database. The original question poster and other users can view these answers.
[1709] Search function
[1710] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which searches a database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[1711] Voting function
[1712] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[1713] Specific examples
[1714] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this question in a database and notifies users who have answered many other AI-related questions. A user who receives this notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." The user who posted the original question and other users can view and vote for this answer, and the answer with the most votes will be displayed at the top.
[1715] In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI.
[1716] The processing flow will be explained below.
[1717] User Registration and Login
[1718] User Registration
[1719] Step 1:
[1720] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[1721] Step 2:
[1722] The terminal transmits the input user information to the server.
[1723] Step 3:
[1724] The server validates the user information received based on the validation logic.
[1725] Step 4:
[1726] If the server is successful in the verification, it stores the user information in a database.
[1727] Step 5:
[1728] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[1729] User Login
[1730] Step 1:
[1731] The user enters their email address and password in the login form and clicks the "Login" button.
[1732] Step 2:
[1733] The terminal sends the entered login information to the server.
[1734] Step 3:
[1735] The server checks the received login information against a database and authenticates the user.
[1736] Step 4:
[1737] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[1738] Post a question
[1739] Step 1:
[1740] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[1741] Step 2:
[1742] The terminal transmits the input question to the server.
[1743] Step 3:
[1744] The server validates the received question and stores it in the database.
[1745] Step 4:
[1746] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[1747] Step 5:
[1748] The server notifies relevant users of new questions.
[1749] Posting and viewing answers
[1750] Step 1:
[1751] Other users receive notifications.
[1752] Step 2:
[1753] The user views the question, enters an answer, and presses the "Post" button.
[1754] Step 3:
[1755] The terminal transmits the inputted answer content to the server.
[1756] Step 4:
[1757] The server validates the received answer and stores it in the database.
[1758] Step 5:
[1759] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[1760] Search function
[1761] Step 1:
[1762] The user enters a specific keyword on the search screen and presses the "Search" button.
[1763] Step 2:
[1764] The terminal transmits the entered search keyword to the server.
[1765] Step 3:
[1766] The server searches the database based on the search keywords to retrieve relevant information.
[1767] Step 4:
[1768] The server sends the search results to the terminal.
[1769] Step 5:
[1770] The terminal displays the received search results to the user.
[1771] Voting function
[1772] Step 1:
[1773] The user presses the voting button next to the question or answer.
[1774] Step 2:
[1775] The terminal transmits the voting information to the server.
[1776] Step 3:
[1777] The server stores the received voting information in a database.
[1778] Step 4:
[1779] The server tally the votes and reflect them in the relevant questions and answers.
[1780] Step 5:
[1781] The device will display updated information to the user, with useful answers being ranked higher.
[1782] Example 1
[1783] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1784] In conventional SNS systems, it was difficult for users to post questions about AI and receive prompt and appropriate answers. Furthermore, there were limited ways to evaluate the usefulness of answers, and useful information was often buried. Furthermore, security measures for user registration and login were insufficient. A system that can solve these issues and enable efficient knowledge sharing among users is needed.
[1785] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1786] In this invention, the server includes a means for a user to register identification information, a means for a user to send a question, and a means for the server to save the question received, thereby enabling a user to register identification information when using the service for the first time and then send a question.
[1787] The server includes a means for notifying other users of the content of the question received by the server, a means for users to answer the content of the question, and a means for saving the answers received by the server, so that the question is notified to other users and a prompt and appropriate answer can be obtained.
[1788] The server further includes a means for a user to send a search keyword, a means for the server to search a database based on the search keyword, and a means for the server to send the search results to the user, thereby enabling the user to easily find related questions and answers through keyword searches.
[1789] The server also includes a means for users to vote on other users' answers, a means for the server to store and tally the votes received, and a means for the server to manage session IDs based on the primary means, which makes it easier to evaluate by voting, allowing better answers to be displayed at the top, and ensuring security through session management.
[1790] "User" refers to a general user who uses the SNS system to register identification information and post questions and answers.
[1791] "Identification information" is data for identifying a user, and mainly includes an email address, a username, and a password.
[1792] "Question content" refers to inquiries or problems about AI posted by users through the SNS system.
[1793] "Server" refers to a computer system that performs various processes such as receiving, storing, notifying, searching, and counting votes for questions and answers.
[1794] "Means of storage" refers to the method by which the server stores the questions and answers it receives in storage such as a database.
[1795] "Notification means" refers to the communication means used by the server to notify other users of new questions and answers posted.
[1796] An "answer" refers to a written explanation or solution provided by another user in response to a question.
[1797] "Search keywords" refer to words or phrases that users enter into a search screen to find specific information.
[1798] "Session ID" refers to a unique identification number generated by the server to maintain a user's logged-in state and manage successive accesses.
[1799] "Means for voting" refers to a function that allows a user to rate the answers of other users.
[1800] "Means for counting" refers to the method by which the server calculates the number of votes received and determines the display order of the answers based on the counting results.
[1801] This invention is a social networking service (SNS) system in which users can post questions about AI and share information and solve problems across the community. In this system, users operate the system according to the following procedure, and the server performs various processes.
[1802] First, when using the system for the first time, the user enters identification information such as an email address, username, and password. The device sends this identification information to the server, and the server validates the received information (e.g., checking the format of the email address and the strength of the password). After validation passes, the server stores this information in a database (e.g., MySQL, PostgreSQL). From the next time onwards, the user logs in to the system using this identification information, and the server verifies the entered login information against the database and allows access if it matches.
[1803] After logging in, users can enter and post questions about AI. First, the device sends the question to the server. Next, the server receives the question and validates it (e.g., checking for prohibited words). Questions that pass validation are saved in a database. Furthermore, the server notifies other relevant users that a new question has been posted. This notification is done using WebSocket or push notification.
[1804] When other users receive a notification, they can view the question and post an answer. The user enters the answer and the device sends it to the server. The server receives the answer and validates it, and answers that pass are stored in a database. The user who posted the original question and other users can view this answer.
[1805] Furthermore, users can input specific keywords on the search screen to search for related questions and answers. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The search results are then sent to the device, where the user can view them.
[1806] Users can also vote on other users' answers. The voting information is sent from the device to the server, which then stores it in a database and tallies the votes. The order in which answers are displayed is updated based on the tallied results, with useful information being displayed at the top.
[1807] As a specific example of how this works, consider the case where a user posts a question such as, "Please tell me about dataset preprocessing for image recognition." After this question is sent from the device to the server, the server saves it in a database and notifies other relevant users. The user who receives the notification answers, "Labeling, normalization, and data augmentation are important for dataset preprocessing." This answer is saved in the database, and can be viewed by the user who posted the original question and other users, who vote for answers they find helpful. This voting information is sent to the server, and the results are reflected in the tallies, so that useful answers are displayed at the top.
[1808] Here are some example prompts using a generative AI model:
[1809] User: "How do I preprocess a dataset for image recognition?"
[1810] AI models: "Labeling, normalization, and data augmentation are important for dataset preprocessing."
[1811] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1812] Step 1:
[1813] The user accesses the registration screen and enters their email address, username, and password.
[1814] Input: The identification information entered by the user (email address, username, password).
[1815] Data processing: The device checks the email address format and password strength.
[1816] Output: The validated identity is sent to the server.
[1817] Step 2:
[1818] The server revalidates the received identification information and stores it in the database.
[1819] Input: The identification information sent by the device.
[1820] Data processing: The server will double-check that the email address is not duplicated and that the password is correct.
[1821] Output: The validated identity is saved in the database.
[1822] Step 3:
[1823] The user accesses the login screen and enters their email address and password.
[1824] Input: The email address and password entered by the user.
[1825] Data processing: The device sends the identification information to the server.
[1826] Output: Login information is sent to the server.
[1827] Step 4:
[1828] The server checks the received login information against the database, and if it matches, it generates a session ID and sends it to the user.
[1829] Input: The login information sent to the server.
[1830] Data processing: The server checks the information against the database and, if it matches, generates a session ID.
[1831] Output: The session ID is sent to the user and access is granted.
[1832] Step 5:
[1833] To submit a question about AI, users enter the question and click the "Submit" button.
[1834] Input: The question typed by the user.
[1835] Data processing: The device sends the question to the server.
[1836] Output: The question is sent to the server.
[1837] Step 6:
[1838] The server validates the received question and stores it in the database.
[1839] Input: The question sent to the server.
[1840] Data processing: The server validates the question (e.g., checks for forbidden words).
[1841] Output: Questions that pass validation are saved in the database.
[1842] Step 7:
[1843] The server notifies other users of the question.
[1844] Input: Questions stored in the database.
[1845] Data processing: The server notifies other relevant users of the question.
[1846] Output: Other users are notified of the new question.
[1847] Step 8:
[1848] Other users who receive the notification can view the question and post their answers.
[1849] Input: The answer entered by other users.
[1850] Data processing: The device sends the answers to the server.
[1851] Output: The answer is sent to the server.
[1852] Step 9:
[1853] The server validates the received response and stores it in the database.
[1854] Input: The response sent to the server.
[1855] Data processing: The server validates the response (e.g., checks for forbidden words).
[1856] Output: The answers that pass validation are saved in the database.
[1857] Step 10:
[1858] The person who posted the original question and others can view the answer.
[1859] Input: Answers stored in the database.
[1860] Data processing: Allows the server to view the answers.
[1861] Output: The user can view the answer.
[1862] Step 11:
[1863] The user enters keywords on the search screen and clicks "Search."
[1864] Input: The search term entered by the user.
[1865] Data processing: The device sends the search keywords to the server.
[1866] Output: The search keywords are sent to the server.
[1867] Step 12:
[1868] The server searches the database using the received search keywords and sends the results to the terminal.
[1869] Input: The search keywords sent to the server.
[1870] Data processing: The server searches the database and extracts relevant questions and answers.
[1871] Output: Search results are sent to the device.
[1872] Step 13:
[1873] A user clicks "Vote" to vote for another user's answer.
[1874] Input: The poll information the user clicked on.
[1875] Data processing: The device sends the voting information to the server.
[1876] Output: The voting information is sent to the server.
[1877] Step 14:
[1878] The server stores the received voting information in a database and tallies it.
[1879] Input: Voting information sent to the server.
[1880] Data processing: The server tallies the votes and stores them in a database.
[1881] Output: The order of answers is updated based on the results.
[1882] (Application example 1)
[1883] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1884] Currently, content creators often face technical issues related to generative AI, but lack the appropriate platforms to solve them. As a result, creators are forced to solve these issues independently, wasting time and effort. Furthermore, there is inefficiency in having multiple creators working on the same problem. Therefore, there is a need for a platform that allows content creators to efficiently solve technical issues and share knowledge.
[1885] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1886] In this invention, the server includes means for a user to register identification information, means for a user to send a question, means for the server to save the question received, means for notifying other users of the question received by the server, means for a user to answer the question, means for the server to save the answer received, means for a user to send a search keyword, means for the server to search a database based on the search keyword, means for the server to send the search results to the user, means for a user to vote on answers from other users, means for the server to save and tally the votes received, means for a content creator to post a technical question about the artificial intelligence, means for other content creators to post technical answers, means for voting on the usefulness of the technical answers, and means for the server to save and tally the technical questions and answers. This makes it possible to provide a platform where content creators can efficiently solve and share technical problems.
[1887] "User identification information" is unique information that allows a user to register with the system, and typically includes an email address, a username, and a password.
[1888] A "Question" is a description of a technical question or problem posted by a content creator.
[1889] A "server" is a central computing unit for receiving, processing, and storing input information from users.
[1890] A "notification" is a message that notifies other users that a new question has been posted.
[1891] An "answer" is a solution or explanation provided by a user in response to a posted question.
[1892] "Search keywords" are words or phrases that users enter to search for a particular question or answer.
[1893] "Database" means a system for storing questions, answers, user identification information and other related data received by the server.
[1894] "Voting" is an act by a user of evaluating the usefulness of answers provided by other users.
[1895] "Tallying" is the process by which the server statistically processes the received votes and ranks the usefulness of the answers.
[1896] A "content creator" is a creative professional who performs video editing, image processing, audio processing, etc., and utilizes knowledge and technology related to generative artificial intelligence.
[1897] "Generative AI" is an AI technology that automatically generates models from data to perform various tasks.
[1898] "Technical questions" are questions that clearly express specific technical problems or concerns about generative artificial intelligence.
[1899] "Technical answers" are content that provides specific solutions or explanations to technical questions.
[1900] The present invention provides a social networking service (SNS) system that allows content creators to post technical questions about generative AI and receive technical answers from other creators. Specific embodiments for implementing the present invention are described below.
[1901] User Registration and Login
[1902] A user first creates an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. The user then uses this identifying information to log into the system later. The server checks the login information against the database and, if it matches, grants the user access.
[1903] Post a question
[1904] After logging in, users can enter and post technical questions about the generative AI. The device sends the posts to the server, which receives, verifies, and stores them in a database. The server then notifies other appropriate users of the new questions, allowing them to respond quickly to new questions.
[1905] Posting and viewing answers
[1906] Other users can view the question and post technical answers after receiving the notification. The device sends the answers to the server, which stores them in a database. These answers can then be viewed by the user who posted the original question and by other users.
[1907] Search function
[1908] Users can enter specific keywords on the search screen to search for questions and answers about generative AI. The device sends the search keywords to the server, which searches the database to retrieve related questions and answers. The server then sends the search results to the device, where the user can view them.
[1909] Voting function
[1910] Users can vote on other users' answers, which makes it easier for useful answers to be appreciated by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information being displayed higher.
[1911] Hardware and software used
[1912] Hardware used: Servers, devices (smartphones and computers)
[1913] Software used: programming language (e.g., Python), web framework (e.g., Flask), database (e.g., SQLAlchemy), encryption library (e.g., Bcrypt), authentication library (e.g., JWT-Extended)
[1914] The server combines these technologies to process user identification information and question and answer queries.
[1915] Specific example explanation
[1916] For example, a content creator posts a technical question such as "How to reduce the training time of an AI model." This question is notified to other creators, who post specific technical answers, such as "You can reduce the training time by reducing the dataset or the complexity of the model." Other creators then vote on these answers, and the most useful answers are ranked higher.
[1917] Prompt Sentence Examples
[1918] Example questions:
[1919] "What are some data preprocessing techniques to improve the performance of deep learning models?"
[1920] Expected answer:
[1921] "Data normalization, data augmentation (rotation, flipping, scaling), and outlier removal are effective."
[1922] In this way, the present invention provides a platform for content creators to effectively solve technical problems and share knowledge related to generative artificial intelligence.
[1923] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1924] Step 1: User Registration
[1925] The user uses the terminal to enter their identification information (email address, username, password) and send it to the server. The server receives this information and hashes the password using the Bcrypt library. The server then saves the user information in a database (SQLAlchemy) and sends a message to the terminal confirming registration.
[1926] Input: Email address, username, password
[1927] Data processing: password hashing
[1928] Output: Registration complete message
[1929] Step 2: User Login
[1930] The user enters their identification information (email address, password) using the terminal and sends it to the server. The server receives this information and checks it against the hashed password stored in the database. If the check is successful, the server generates a JWT token and sends it to the terminal. If the check is unsuccessful, it returns an error message.
[1931] Input: Email address, password
[1932] Data operations: password verification, token generation
[1933] Output: JWT token or error message
[1934] Step 3: Post a question
[1935] Once logged in, users can use their devices to input technical questions about the AI generation system and send them to the server, which receives the questions and stores them in a database. The server then notifies other relevant users that a new question has been posted.
[1936] Input: Technical Question
[1937] Data storage: Save questions to a database
[1938] Output: New question notification
[1939] Step 4: Post your answer
[1940] After receiving the notification, other users can use their devices to view the question, enter a technical answer, and send it to the server. The server receives this answer and stores it in a database. The user who posted the original question and other users can view this answer as a response from the server.
[1941] Input: Technical Answer
[1942] Data storage: Save answers to a database
[1943] Output: Viewable answers
[1944] Step 5: Search
[1945] The user inputs search keywords using the terminal and sends them to the server. The server receives the keywords, searches for related questions and answers in the database, collects search results, and sends them to the user's terminal.
[1946] Input: Search keyword
[1947] Data Search: Search for related questions and answers
[1948] Output: Search results
[1949] Step 6: Vote for the answer
[1950] To vote for other users' answers, users use their devices to click a voting button and send the voting data to the server. The server receives this voting data, stores it in a database, and tallies it. The tallied results are reflected in the display order of the answers, with answers that receive the most votes being displayed at the top.
[1951] Input: Voting data
[1952] Data Storage and Counting: Storing and counting voting data
[1953] Output: Updated answers in display order
[1954] This allows users to efficiently post technical questions about generative artificial intelligence, receive answers, and vote on the usefulness of the answers to promote knowledge growth across the community.
[1955] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1956] The present invention is a social networking system in which users can post questions about AI and share information and solve problems across the community. Additionally, the present invention incorporates an emotion engine that recognizes users' emotions, performs emotion analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described below.
[1957] User Registration and Login
[1958] When a user first uses the system, they create an account by entering identifying information (e.g., email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identifying information. The server checks the login information against the database and, if it matches, grants the user access.
[1959] Post a question
[1960] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[1961] Posting and viewing answers
[1962] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[1963] Search function
[1964] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[1965] Voting function
[1966] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[1967] Sentiment analysis and notification customization
[1968] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[1969] Specific examples
[1970] If a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves this in the database and notifies other related users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine analyzes the content of the answer as positive, the answer is more likely to be displayed at the top of the results. Furthermore, if a user votes for this answer, the emotion engine also analyzes the reasons for the vote, allowing it to provide information more in line with the user's intentions.
[1971] In this way, this system promotes knowledge sharing among users and provides a platform for efficiently resolving questions and problems related to AI. In addition, by combining it with an emotion engine, it is possible to provide customized services according to the user's emotions, which is expected to improve the user experience.
[1972] The processing flow will be explained below.
[1973] User Registration and Login
[1974] User Registration
[1975] Step 1:
[1976] The user launches the app, enters the required information (email address, username, password) in the new registration form, and presses the "Register" button.
[1977] Step 2:
[1978] The terminal transmits the input user information to the server.
[1979] Step 3:
[1980] The server validates the user information received based on the validation logic.
[1981] Step 4:
[1982] If the server is successful in the verification, it stores the user information in a database.
[1983] Step 5:
[1984] The server sends a message indicating successful saving to the terminal, which then displays the message to the user.
[1985] User Login
[1986] Step 1:
[1987] The user enters their email address and password in the login form and clicks the "Login" button.
[1988] Step 2:
[1989] The terminal sends the entered login information to the server.
[1990] Step 3:
[1991] The server checks the received login information against a database and authenticates the user.
[1992] Step 4:
[1993] If the server is successful in the authentication, it sends a message to the user that login is permitted, and the terminal transitions the user to the main screen.
[1994] Post a question
[1995] Step 1:
[1996] The user enters the question on the screen for creating a new question about AI and presses the "Post" button.
[1997] Step 2:
[1998] The terminal transmits the input question to the server.
[1999] Step 3:
[2000] The server validates the received question and stores it in the database.
[2001] Step 4:
[2002] The server sends a question saving success message to the terminal, and the terminal notifies the user of the successful posting.
[2003] Step 5:
[2004] The server notifies relevant users of new questions.
[2005] Posting and viewing answers
[2006] Step 1:
[2007] Other users receive notifications.
[2008] Step 2:
[2009] The user views the question, enters an answer, and presses the "Post" button.
[2010] Step 3:
[2011] The terminal transmits the inputted answer content to the server.
[2012] Step 4:
[2013] The server validates the received answer and stores it in the database.
[2014] Step 5:
[2015] The server sends a message that the answer has been successfully saved to the terminal, and the terminal notifies the user that the answer has been successfully posted.
[2016] Search function
[2017] Step 1:
[2018] The user enters a specific keyword on the search screen and presses the "Search" button.
[2019] Step 2:
[2020] The terminal transmits the entered search keyword to the server.
[2021] Step 3:
[2022] The server searches the database based on the search keywords to retrieve relevant information.
[2023] Step 4:
[2024] The server sends the search results to the terminal.
[2025] Step 5:
[2026] The terminal displays the received search results to the user.
[2027] Voting function
[2028] Step 1:
[2029] The user presses the voting button next to the question or answer.
[2030] Step 2:
[2031] The terminal transmits the voting information to the server.
[2032] Step 3:
[2033] The server stores the received voting information in a database.
[2034] Step 4:
[2035] The server tally the votes and reflect them in the relevant questions and answers.
[2036] Step 5:
[2037] The device will display updated information to the user, with useful answers being ranked higher.
[2038] Sentiment analysis and notification customization
[2039] Step 1:
[2040] When a user inputs and sends a question or answer, the terminal sends the posted content to the server.
[2041] Step 2:
[2042] The server sends the received post content to the emotion engine for emotion analysis.
[2043] Step 3:
[2044] The emotion engine generates the analysis results and stores the user's emotion information in a database.
[2045] Step 4:
[2046] The server generates a customized notification based on the emotion information and sends it to the device.
[2047] Step 5:
[2048] The device displays a customized notification to the user.
[2049] Specific examples
[2050] If a user posts a question such as "Please tell me how to preprocess datasets for image recognition," the following process will take place:
[2051] Step 1:
[2052] The user enters the question and presses the "Post" button.
[2053] Step 2:
[2054] The device sends the question to the server.
[2055] Step 3:
[2056] The server receives the question and performs validation.
[2057] Step 4:
[2058] The server saves the question in the database and sends a save success message to the terminal.
[2059] Step 5:
[2060] The server sends the question to the emotion engine, which then analyzes it.
[2061] Step 6:
[2062] The emotion engine generates the user's emotion information and stores it in a database.
[2063] Step 7:
[2064] The server sends notification of the question to other interested users.
[2065] Step 8:
[2066] Related users view the question and post answers.
[2067] Step 9:
[2068] The terminal sends the answer to the server, and the server stores the received answer in a database.
[2069] Step 10:
[2070] The server sends the answer content to the emotion engine, which analyzes it and generates emotion information about the user.
[2071] Step 11:
[2072] The server sends a customized notification to the original question poster based on the sentiment information.
[2073] Step 12:
[2074] The device displays a customized notification to the user.
[2075] Example 2
[2076] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2077] Conventional SNS systems have problems such as not receiving appropriate feedback on questions and answers posted by users, and insufficient emotional response. Furthermore, when users perform searches, the results are not adjusted based on emotions, making it difficult for users to effectively obtain the information they are looking for. Furthermore, there are limited ways to evaluate useful answers, making it difficult to promote knowledge sharing throughout the community.
[2078] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing the sentiment of received questions and answers, means for sending notifications customized based on the sentiment analysis results, and means for adjusting the display order of answers based on the sentiment analysis results. This makes it possible to customize feedback and notifications according to the user's sentiment and present optimal information. Furthermore, by combining evaluation by voting with sentiment analysis, more effective knowledge sharing can be achieved.
[2079] "Identification information" is information for uniquely identifying a user, and includes an email address, a username, a password, and the like.
[2080] "Question content" is text information of a question or inquiry that a user poses to another user within the system.
[2081] A "server" is a computer system whose role is to store, analyze, process, and transmit information received from users.
[2082] A "database" is a system for systematically storing and managing questions, answers, voting information, sentiment analysis results, etc. received by the server.
[2083] A "notification" is a message or alert that provides information from the server to the user.
[2084] "Sentiment analysis" is the process of identifying a user's emotional state from the text content of posted questions and answers and generating emotional tags such as positive, negative, or neutral.
[2085] "Vote" is an action that allows a user to express an opinion such as for or against another user's answer.
[2086] "Search keywords" are words or phrases that a user enters into a system to search for specific information.
[2087] "Customized notifications" are messages and alerts that are generated based on sentiment analysis results and user behavior history and are optimized for individual users.
[2088] "Display order" refers to the order in which items are displayed in a list of search results or answers provided to a user.
[2089] The present invention is a social networking system that allows users to post questions about AI and share information and solve problems across the community. It also incorporates an emotion engine that recognizes users' emotions, performs emotional analysis of user posts and responses, and adjusts the system's operation based on the analysis. An embodiment of this system is described in detail below.
[2090] User Registration and Login
[2091] When a user first uses the system, they create an account by entering their identification information (email address, username, password). The device sends this information to the server, which verifies the information and stores it in a database. On subsequent visits, the user can log in to the system using this identification information. The server checks the login information against the database and allows the user access if it matches.
[2092] Post a question
[2093] After logging in, users can enter and post questions about the AI. The device sends the posted content to the server, which receives, verifies, and stores it in a database. The server then notifies other users of the new question. The emotion engine also analyzes the posted content and stores the user's emotional information.
[2094] Posting and viewing answers
[2095] When other users receive a notification, they can view the question and post an answer. The device sends the answer to the server, which validates it and stores it in a database. The emotion engine analyzes the answer and stores the emotional information. The user who posted the original question and other users can view these answers and receive feedback based on the poster's emotions.
[2096] Search function
[2097] Users can enter specific keywords on the search screen to search for questions and answers about AI. The device sends the search keywords to the server, which then searches a database to retrieve relevant information. The server then sends the search results to the device, where the user can view them. At this time, it is also possible to present search results in a display order that matches the user's emotions based on the analysis results of the emotion engine.
[2098] Voting function
[2099] Users can vote on other users' answers, which makes it easier for useful answers to be valued by the entire community. The device sends the voting information to the server, which stores it in a database and tallys it. The tallying results are reflected in the display order of answers, with useful information appearing higher.
[2100] Sentiment analysis and notification customization
[2101] The emotion engine analyzes the content of posts and replies to identify the user's emotions. Based on this information, the server can send customized notifications to the user. For example, if a user is feeling stressed, the system can display a supportive message. The system can also adjust the display order of posts and replies based on the results of emotion analysis. For example, replies with positive emotions can be prioritized to improve the community atmosphere.
[2102] Specific examples
[2103] For example, if a user posts a question such as "Please tell me about dataset preprocessing for image recognition," the server saves the question in a database and notifies other relevant users. The user then replies, "Labeling, normalization, and data augmentation are important for dataset preprocessing." If the emotion engine interprets the answer as positive, the answer is more likely to appear higher on the results. Furthermore, if a user votes on this answer, the emotion engine analyzes the reasons for the vote and can provide information more in line with the user's intentions. In this way, the system promotes knowledge sharing among users and provides a platform for efficiently resolving AI-related questions and problems. Furthermore, by combining the emotion engine, it is possible to provide customized services based on the user's emotions, which is expected to improve the user experience.
[2104] Prompt Sentence Examples
[2105] For example, you could set a prompt like, "Please tell me how to prioritize and display answers with positive sentiment based on the analysis results of user sentiment."
[2106] The flow of the identification process in the second embodiment will be described with reference to FIG.
[2107] Step 1: User Registration
[2108] Input: The user enters their email address, username, and password from the device.
[2109] process:
[2110] 1. The terminal sends the entered identification information to the server.
[2111] 2. The server verifies the received identity and rejects any invalid input.
[2112] 3. The server stores the verified information in a database.
[2113] Output: The server sends a registration successful message to the terminal.
[2114] Step 2: Login process
[2115] Input: The user enters the registered email address and password from the device.
[2116] process:
[2117] 1. The device sends the entered login information to the server.
[2118] 2. The server checks the received login information against its database.
[2119] 3. If there is a match, the server starts a session and generates authentication information.
[2120] Output: The server sends the authentication information to the terminal and displays a successful login message.
[2121] Step 3: Question submission process
[2122] Input: The user inputs the question from the terminal.
[2123] process:
[2124] 1. The device sends the entered question to the server.
[2125] 2. The server validates the received question.
[2126] 3. Save the validated questions to the database.
[2127] 4. The server notifies other users of the new question.
[2128] Output: The server sends a success message to the terminal and sends notification messages to other users involved.
[2129] Step 4: Sentiment Analysis
[2130] Input: The question posted.
[2131] process:
[2132] 1. The server calls the emotion engine and sends the question.
[2133] 2. The sentiment engine analyzes the question and generates sentiment tags (positive, negative, neutral).
[2134] 3. Save the emotion tag in the database.
[2135] Output: The server stores the generated emotion tags in a database.
[2136] Step 5: Posting an Answer
[2137] Input: Other users input their answers from their devices.
[2138] process:
[2139] 1. The device sends the entered answer to the server.
[2140] 2. The server validates the received response.
[2141] 3. Save the validated answers to the database.
[2142] 4. The server notifies the relevant users.
[2143] Output: The server sends a success message to the terminal and a notification message to the relevant user.
[2144] Step 6: Display the answer field
[2145] Input: The user sends the question ID to the server.
[2146] process:
[2147] 1. The server retrieves the answer associated with the question ID from the database.
[2148] 2. The answer is sent to the device along with the sentiment analysis results.
[2149] Output: The list of answers and emotion tags are displayed on the user's device.
[2150] Step 7: Search process
[2151] Input: The user enters a specific keyword into a search screen.
[2152] process:
[2153] 1. The device sends the search keywords to the server.
[2154] 2. The server searches the database based on the keyword.
[2155] 3. Ranking search results based on the results of sentiment analysis.
[2156] 4. The server sends the search results to the terminal.
[2157] Output: The sentiment-based search results are displayed on the user's device.
[2158] Step 8: Voting Process
[2159] Input: A user votes on another user's answer.
[2160] process:
[2161] 1. The device sends the voting information to the server.
[2162] 2. The server stores the received voting information in a database.
[2163] Output: The server notifies the terminal that voting is complete.
[2164] Step 9: Aggregation and revaluation
[2165] Input: Voting information stored in a database.
[2166] process:
[2167] 1. The server periodically tallys the voting information.
[2168] 2. Re-evaluate the answers based on the results and update the display order.
[2169] Output: The updated answer display order is reflected on the user's device.
[2170] Step 10: Sentiment Analysis (Revisited)
[2171] Input: New posts and replies by users.
[2172] process:
[2173] 1. The server calls the emotion engine and sends it the text to be analyzed.
[2174] 2. The emotion engine generates the analysis results and returns them to the server.
[2175] Output: The emotional information resulting from the analysis is stored in a database.
[2176] Step 11: Customizing Notifications
[2177] Input: Sentiment analysis results.
[2178] process:
[2179] 1. The server refers to the emotion analysis results and generates notification content according to the user's state.
[2180] 2. Send customized notifications to your device.
[2181] Output: A customized notification will be displayed on the user's device.
[2182] (Application example 2)
[2183] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2184] Conventional question-and-answer systems do not provide feedback or adjust the display order based on the sentiment of questions and answers posted by users, making it difficult to improve the user experience.In addition, there was a need to improve the efficiency of information sharing and problem-solving within the community.
[2185] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the content of the user's question and answer using an emotion analysis engine and adjusting the data and display order based on the emotion information, means for saving the content of the question received by the server, and means for searching the database based on the search keyword by the server. This makes it possible to provide appropriate feedback on the user's emotion and prioritize the display of answers with positive emotions, thereby improving the atmosphere of the community and increasing the efficiency of information sharing and problem solving.
[2186] "User" refers to a person who uses the system.
[2187] "Identification information" is information for identifying a user, and includes, for example, an email address, a user name, and a password.
[2188] "Question content" refers to the text data of a question posted by a user to the system.
[2189] "Server" refers to a computing system that receives, stores, processes, and transmits data.
[2190] "Answer content" refers to text data of an answer provided by a user to a question posted.
[2191] A "database" refers to a systematically organized collection of data, and is used to store questions, answers, etc.
[2192] "Search keywords" refer to specific words or groups of words that a user uses to search a database.
[2193] "Voting" refers to the act of a user rating the answers of other users.
[2194] "Sentiment analysis engine" refers to technology or software for analyzing the emotional content of text data.
[2195] "Emotion information" refers to data about a user's emotions extracted by an emotion analysis engine.
[2196] This invention can be implemented as a question-and-answer system for a virtual store. This system supports a series of processes: a user registers identification information, posts a question, and receives answers from other users. Furthermore, this system incorporates an emotion analysis engine, which can adjust the system's operation based on the user's emotions.
[2197] System configuration
[2198] 1. User Registration and Login
[2199] The system has a function that allows users to create an account by entering identification information (e.g., email address, username, password). Users log in using the registered identification information.
[2200] 2. Post a question
[2201] After logging in, users can enter their own questions and send them to the server, which stores the received questions in a database and notifies other users.
[2202] 3. Posting and viewing answers
[2203] Once notified, other users can view the question and post their own answers. The server stores the answers in a database, where they can be viewed by the original question poster and other users.
[2204] 4. Search function
[2205] Users can search for questions and answers by entering specific keywords, and the server searches the database based on the search keywords and sends the search results to the user.
[2206] 5. Voting function
[2207] Users can vote on other users' answers, and the server stores and tallies the received votes.
[2208] 6. Sentiment analysis and display adjustment
[2209] The server uses an emotion analysis engine to analyze the user's questions and answers. Based on this analysis, the server stores the user's emotional information as data and makes adjustments such as prioritizing the display of answers with positive emotions.
[2210] Hardware and software used
[2211] Server: A computer system that receives, stores, notifies, searches, and aggregates data. Examples include Amazon Web Services (AWS) and Google Cloud Platform (GCP).
[2212] Database: A system for storing user identities, questions, answers, and sentiment information. Examples include MySQL and MongoDB.
[2213] Sentiment analysis engine: Software that analyzes user text data and extracts emotional information. You can use the open source NLTK or the commercial IBM Watson Natural Language Understanding.
[2214] Specific examples
[2215] User A posts a question saying, "Please tell me how to train a new AI model." The server saves this question in a database and notifies other users. User B responds, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!" The sentiment analysis engine interprets this response as positive. The server prioritizes displaying this positive response, improving the overall atmosphere of the community.
[2216] Prompt Sentence Examples
[2217] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[2218] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2219] Step 1:
[2220] The user registers by entering identification information (e.g., email address, username, password) on the terminal. The entered identification information is sent to the server. The server verifies the received identification information and, if it is correct, stores it in the database. This creates a user account.
[2221] Step 2:
[2222] The user uses a terminal to enter registered identification information and log in. The identification information is sent to the server, which then compares the received identification information with the database. If the comparison results in a match, the login is successful and the user is granted access.
[2223] Step 3:
[2224] After logging in, the user enters the question into the terminal and sends it to the server, which stores the received question in a database and notifies other users that a new question has been posted.
[2225] Step 4:
[2226] Other users receive the notification on their devices and view the question. The user who entered the answer sends the answer to the server, which then stores the received answer in a database.
[2227] Step 5:
[2228] The server sends the answers to a sentiment analysis engine, which analyzes the answers and extracts emotional information such as positive, negative, or neutral. The emotional information is then sent back to the server and stored in a database.
[2229] Step 6:
[2230] The user inputs search keywords using a device and sends them to the server. The server searches the database based on the received search keywords and extracts related questions and answers. The display order of the search results is adjusted based on the emotion information, and then the results are sent to the user's device.
[2231] Step 7:
[2232] Users vote for other users' answers. The voting information is sent to the server, and the received voting information is stored in a database. The server tallies the voting information and reflects it in the display order of the answers.
[2233] Step 8:
[2234] The server sends customized notifications to the user based on the emotion information obtained from the emotion analysis engine, for example, displaying a supportive message to the user if a negative emotion is detected.
[2235] Examples:
[2236] User A enters a question on their device, "Tell me how to train a new AI model," and sends it to the server. The server saves the question in a database and notifies other users. User B views the question on their device, enters an answer, "First, prepare the dataset, then do preprocessing, and finally build the model. Good luck!", and sends it to the server. The sentiment analysis engine analyzes the answer as positive, and the server saves this result and adjusts the display order, prioritizing positive answers.
[2237] Example prompt sentence:
[2238] "We would like to implement a function that uses an emotion engine to prioritize answers in a system for posting questions about AI in a virtual store. Please build a function that analyzes emotions based on keywords contained in the user's questions and answers, and displays positive answers at the top. Please also provide examples of well-known libraries and specific algorithms as emotion analysis engines."
[2239] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[2240] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[2241] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[2242] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[2243] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[2244] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[2245] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[2246] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[2247] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[2248] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[2249] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[2250] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[2251] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[2252] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[2253] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[2254] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[2255] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[2256] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[2257] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[2258] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[2259] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[2260] The following is further disclosed regarding the above embodiment.
[2261] (Claim 1)
[2262] A means for a user to register identification information;
[2263] A means for a user to submit a question;
[2264] A means for storing the content of the query received by the server;
[2265] a means for notifying other users of the content of the question received by the server;
[2266] A means for users to answer questions;
[2267] a means for the server to store the received response;
[2268] A means for a user to submit search keywords;
[2269] A means for the server to search the database based on the search keyword;
[2270] means for the server to transmit search results to the user;
[2271] a means for users to vote on other users' answers;
[2272] The system includes a means for the server to store and tally received votes.
[2273] (Claim 2)
[2274] 10. The system of claim 1, further comprising means for the server to verify the received user identity information.
[2275] (Claim 3)
[2276] 10. The system of claim 1, further comprising means for a user to log in using registered identification information.
[2277] "Example 1"
[2278] (Claim 1)
[2279] A means for a user to register identification information;
[2280] A means for a user to submit a question;
[2281] A means for storing the content of the query received by the server;
[2282] a means for notifying other users of the content of the question received by the server;
[2283] A means for users to answer questions;
[2284] a means for the server to store the received response;
[2285] A means for a user to submit search keywords;
[2286] A means for the server to search the database based on the search keyword;
[2287] means for the server to transmit search results to the user;
[2288] a means for users to vote on other users' answers;
[2289] a means for the server to store and tally the received votes;
[2290] A system that includes a means for the server to manage session IDs based on a primary method.
[2291] (Claim 2)
[2292] 10. The system of claim 1, further comprising means for the server to verify the received user identity information.
[2293] (Claim 3)
[2294] 10. The system of claim 1, further comprising means for a user to log in using registered identification information.
[2295] "Application Example 1"
[2296] (Claim 1)
[2297] A means for a user to register identification information;
[2298] A means for a user to submit a question;
[2299] A means for storing the content of the query received by the server;
[2300] a means for notifying other users of the content of the question received by the server;
[2301] A means for users to answer questions;
[2302] a means for the server to store the received response;
[2303] A means for a user to submit search keywords;
[2304] A means for the server to search the database based on the search keyword;
[2305] means for the server to transmit search results to the user;
[2306] a means for users to vote on other users' answers;
[2307] a means for the server to store and tally the received votes;
[2308] A means for content creators to post technical questions about generative artificial intelligence;
[2309] A way for other content creators to post technical answers,
[2310] A means to vote on the usefulness of technical answers;
[2311] A system including a server that stores and aggregates technical questions and answers.
[2312] (Claim 2)
[2313] 10. The system of claim 1, further comprising means for the server to verify the received user identity information.
[2314] (Claim 3)
[2315] 10. The system of claim 1, further comprising means for a user to log in using registered identification information.
[2316] "Example 2: Combining Emotion Engines"
[2317] (Claim 1)
[2318] A means for a user to register identification information;
[2319] A means for a user to submit a question;
[2320] A means for storing the content of the query received by the server;
[2321] a means for notifying other users of the content of the question received by the server;
[2322] A means for users to answer questions;
[2323] a means for the server to store the received response;
[2324] A means for a user to submit search keywords;
[2325] A means for the server to search the database based on the search keyword;
[2326] means for the server to transmit search results to the user;
[2327] a means for users to vote on other users' answers;
[2328] a means for the server to store and tally the received votes;
[2329] A means for analyzing emotions in the questions and answers received by the server;
[2330] a means for the server to send a customized notification based on the sentiment analysis result;
[2331] The system includes a means for the server to adjust the display order of answers based on the sentiment analysis results.
[2332] (Claim 2)
[2333] 10. The system of claim 1, further comprising means for the server to verify the received user identity information.
[2334] (Claim 3)
[2335] 10. The system of claim 1, further comprising means for a user to log in using registered identification information.
[2336] "Application example 2 when combining emotion engines"
[2337] (Claim 1)
[2338] A means for a user to register identification information;
[2339] A means for a user to submit a question;
[2340] A means for storing the content of the query received by the server;
[2341] a means for notifying other users of the content of the question received by the server;
[2342] A means for users to answer questions;
[2343] a means for the server to store the received response;
[2344] A means for a user to submit search keywords;
[2345] A means for the server to search the database based on the search keyword;
[2346] means for the server to transmit search results to the user;
[2347] a means for users to vote on other users' answers;
[2348] a means for the server to store and tally the received votes;
[2349] A means of analyzing the content of user questions and answers using a sentiment analysis engine and adjusting data and display order based on that sentiment information.
[2350] A system including:
[2351] (Claim 2)
[2352] 10. The system of claim 1, further comprising means for the server t...
Claims
1. A means for a user to register identification information; A means for a user to submit a question; A means for storing the content of the query received by the server; a means for notifying other users of the content of the question received by the server; A means for users to answer questions; a means for the server to store the received response; A means for a user to submit search keywords; A means for the server to search the database based on the search keyword; means for the server to transmit search results to the user; a means for users to vote on other users' answers; The system includes a means for the server to store and tally received votes.
2. 10. The system of claim 1, further comprising means for verifying the identity of the user received by the server.
3. 10. The system of claim 1, further comprising means for a user to log in using registered identification information.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A