System
The system addresses the challenge of inefficient skill sharing by allowing users to input, search, and exchange skills with others, providing real-time feedback and evaluation, enhancing user satisfaction and skill improvement.
Patent Information
- Application Number
- JP2024131532
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-07
- Publication Date
- 2026-02-20
AI Technical Summary
Existing platforms lack an effective mechanism for users to efficiently share skills and knowledge, making it difficult to find appropriate interaction opportunities and improve user satisfaction due to insufficient feedback and evaluation mechanisms.
A system that allows users to input their skills and interests, search for and apply to exchange skills with others, agree on terms, conduct sessions, and provide feedback, with features for storing and synchronizing data in real time, supporting video calling and chat functions.
The system facilitates efficient skill exchange and feedback, improving user satisfaction and service quality by enabling users to effectively learn and improve their skills through a structured platform.
Smart Images

Figure 2026028915000001_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] Currently, many people lack an effective platform for sharing their skills and knowledge or efficiently acquiring the skills they want to learn. Existing services make it difficult to easily find people with specific skills or knowledge, making it difficult to obtain appropriate opportunities for interaction and skill exchange. Furthermore, due to insufficient feedback and evaluation mechanisms during skill exchange, there are challenges in improving user satisfaction and service quality. This invention aims to create a richer learning environment by providing a platform where users can efficiently exchange their skills and knowledge with other users and mutually improve their skills. [Means for solving the problem]
[0005] The present invention provides a system including an input means for a user to input their skills, interests, and fields of study, a means for saving the information input by the input means in a database, a means for searching for skills and services that can be provided by other users based on the saved information, a means for displaying the search results, a means for making skill exchange applications to other users, a means for saving the application information in a database and notifying the target user, a proposal and agreement means for reaching an agreement on the skill exchange, a means for setting up and recording a skill exchange session, a means for inputting and saving feedback after the skill exchange session, and a means for recording skill results and updating ratings and rankings. This allows users to effectively exchange skills with other users and receive feedback and ratings, thereby improving the quality of services and user satisfaction.
[0006] Below are definitions of important terms included in the claims for the "Skill Chat Service."
[0007] A "user profile" is personal information stored in a database that includes information about a user's skills, interests, areas of study, etc.
[0008] "Input means" is an interface that allows users to input their skills, interests, and areas they wish to learn.
[0009] "Database" means a system for storing and managing information about user profiles and skill exchanges.
[0010] "Search means" is a function for searching for other users' skills and services that can be provided based on information in the database.
[0011] The "display means" is an interface for visually displaying search results and notifications to the user.
[0012] A "skill exchange offer" is a process in which a user proposes to exchange specific skills with another user.
[0013] The "notification means" is a system for notifying target users of skill exchange applications and other important information.
[0014] "Proposal and Agreement Means" is a function that allows users to propose specific terms and transaction details for skill exchange and for both parties to reach an agreement.
[0015] A "skill exchange session" is the actual exchange process in which users teach each other skills at a pre-determined date, time and method.
[0016] The "feedback means" is a system that allows users to input evaluations of each other's teaching methods and skills after a skill exchange session and save that information.
[0017] The "evaluation and ranking update means" is a function for updating the user's evaluation and ranking based on the results of skill exchange and feedback. [Brief explanation of the drawings]
[0018] [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
[0019] 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.
[0020] First, the terms used in the following description will be explained.
[0021] 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).
[0022] 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.
[0023] 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.
[0024] 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.
[0025] 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."
[0026] [First embodiment]
[0027] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0028] 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.
[0029] 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).
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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."
[0039] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[0040] 1. Registration Process
[0041] Users input their skills, interests, and areas of interest, and the device captures this information and sends it to a server, which stores it in a database and creates a user profile.
[0042] 2. Skill Search Processing
[0043] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[0044] 3. Skill exchange request processing
[0045] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[0046] 4. Skill Exchange Agreement Processing
[0047] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[0048] 5. Skill Exchange Implementation Process
[0049] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[0050] 6. Feedback Processing
[0051] After the skill exchange session, the user enters their evaluation in a feedback form and sends it to the server via their device. The server stores the feedback in a database and notifies the user.
[0052] 7. Skill Result Record Processing
[0053] The server accumulates the results of the skill exchange and feedback information in a database, and updates the evaluations and rankings. The updated evaluations and rankings are displayed to the user via their device.
[0054] Specific examples
[0055] 1. Person A offers "Programming" and registers that he wants to learn "Korean."
[0056] 2. Person B registers saying that he is good at "Korean" and wants to learn "illustration."
[0057] 3. Person A searches for the "Korean" skill and finds Person B's profile.
[0058] 4. Person A applies for a "skill exchange in programming and Korean."
[0059] 5. Person B agrees to this and exchanges messages to define the specific terms.
[0060] 6. Both parties agree to set up a skills exchange session.
[0061] 7. The session takes place, and Person A learns Korean from Person B, and Person B learns programming from Person A.
[0062] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[0063] 9. The server updates A and B's ratings based on their feedback and achievements and reflects them in their profiles.
[0064] This allows both A and B to effectively learn new skills, and also allows other users to improve their skills through a similar process.
[0065] The processing flow will be explained below.
[0066] 1. Registration Process
[0067] Step 1:
[0068] Users fill out a form to learn about their skills, interests, and areas of interest.
[0069] Step 2:
[0070] The terminal temporarily stores the input information.
[0071] Step 3:
[0072] The user clicks the "Register" button.
[0073] Step 4:
[0074] The terminal transmits the input information to the server.
[0075] Step 5:
[0076] The server stores the received information in a database and creates a user profile.
[0077] Step 6:
[0078] The server sends a response confirming the completion of registration to the terminal.
[0079] Step 7:
[0080] The terminal displays a message to the user indicating that registration is complete.
[0081] 2. Skill Search Processing
[0082] Step 1:
[0083] A user enters a keyword of interest into the skill search bar.
[0084] Step 2:
[0085] The terminal temporarily stores the keyword.
[0086] Step 3:
[0087] The user clicks the Search button.
[0088] Step 4:
[0089] The terminal transmits the keyword to the server.
[0090] Step 5:
[0091] The server searches the database for user profiles that match the keywords.
[0092] Step 6:
[0093] The server sends the search results to the terminal.
[0094] Step 7:
[0095] The terminal displays the search results to the user in a list format.
[0096] 3. Skill exchange request processing
[0097] Step 1:
[0098] Users can select and view profiles of other users who have skills that interest them.
[0099] Step 2:
[0100] The device will display the selected profile.
[0101] Step 3:
[0102] The user clicks the "Apply for Skill Exchange" button.
[0103] Step 4:
[0104] The terminal transmits application information for skill exchange to the server.
[0105] Step 5:
[0106] The server stores the application information in a database and sends notifications to the target users.
[0107] 4. Skill Exchange Agreement Processing
[0108] Step 1:
[0109] The target user sees the notification and opens a skill exchange request.
[0110] Step 2:
[0111] The target user enters information into a form to enter their agreement or proposed amendment.
[0112] Step 3:
[0113] The terminal sends the suggestions or modifications to the server.
[0114] Step 4:
[0115] The server sends the suggestions or modifications to the requesting user.
[0116] Step 5:
[0117] The user checks the proposal or amendment and agrees or proposes amendments again.
[0118] Step 6:
[0119] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[0120] Step 7:
[0121] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[0122] 5. Skill Exchange Implementation Process
[0123] Step 1:
[0124] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[0125] Step 2:
[0126] The device checks the session date and time and method (video call, chat, etc.).
[0127] Step 3:
[0128] As the session date and time approaches, the server will send reminder notifications.
[0129] Step 4:
[0130] The user and the other user join the session at the set date and time.
[0131] Step 5:
[0132] The device will support the session using video calling and chat functions.
[0133] Step 6:
[0134] Once the session is complete, the server logs the session.
[0135] 6. Feedback Processing
[0136] Step 1:
[0137] After the skill exchange session, the user enters their rating in the feedback form.
[0138] Step 2:
[0139] The terminal transmits the input feedback to the server.
[0140] Step 3:
[0141] The server stores the feedback in a database.
[0142] Step 4:
[0143] The server sends a feedback notification to the target user.
[0144] 7. Skill Result Record Processing
[0145] Step 1:
[0146] The server accumulates the results of the skill exchange and feedback information in a database.
[0147] Step 2:
[0148] The server uses a rating and ranking algorithm to update the user's rating and ranking.
[0149] Step 3:
[0150] Send updated ratings and ranking information to your device.
[0151] Step 4:
[0152] The device displays the latest ratings and ranking information to the user.
[0153] Example 1
[0154] 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."
[0155] Previous skill exchange services lacked mechanisms for users to easily exchange their skills and areas of interest with other users and efficiently improve their skills. Furthermore, the lack of a real-time skill exchange or evaluation system limited user satisfaction and the effectiveness of skill improvement. This made it difficult for users to effectively learn skills and receive mutual feedback.
[0156] 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.
[0157] In this invention, the server includes an input means for users to input their skills, interests, and fields of study, a means for storing the information input by the input means in a database, and a means for searching for other users' skills and services they can provide based on the stored information. This allows users to effectively exchange skills and provide each other with feedback. In addition, a communication means for synchronizing data in real time allows for smooth skill exchange and agreement. Functional means for supporting video calls and chat functions enable effective communication between users and allow the exchange session to proceed smoothly. A means for storing feedback information in a database and notifying the target user allows for appropriate recording of skill achievements and updating evaluations and rankings in real time.
[0158] "Input means" refers to a device or method for a user to input their skills, interests, and areas of study.
[0159] A "database" refers to a system for systematically storing and managing information.
[0160] "Search means" refers to a method or device for searching for the skills and services that other users can provide based on information stored in a database.
[0161] "Display means" refers to a device or method for visually presenting search results or other information to a user.
[0162] The "application means" refers to a device or method for applying to exchange skills with other users.
[0163] "Notification means" refers to a device or method for notifying the target user of application information or other information.
[0164] "Proposal and Agreement Means" refers to a method or device for making proposals and agreements to reach an agreement on a skill exchange.
[0165] "Communication means" refers to devices and methods for synchronizing data in real time.
[0166] "Functional means" refers to devices and methods for supporting video calling and chat functions.
[0167] "Recording means" refers to a device or method for setting up a skills exchange session and recording the content thereof.
[0168] "Feedback means" refers to a device or method for inputting and storing feedback after a skills exchange session.
[0169] "Evaluation and ranking update means" refers to a device or method for recording skill performance and updating evaluations and rankings.
[0170] MODE FOR CARRYING OUT THE INVENTION
[0171] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[0172] System Configuration
[0173] 1. Input: The means by which users input their skills, interests, and learning interests. This can include forms in a browser or a mobile application.
[0174] 2. Database: This is the database where the server will store the input information from the user. Here we will use MySQL.
[0175] 3. Search method: This is a method for the server to search for other users' skills and services based on the information stored in the database. In this case, we will use Elasticsearch.
[0176] 4. Display: The device visually displays the search results to the user. Search results are displayed in list format or card format.
[0177] 5. Application method: A method for users to apply for skill exchange with other users. This is done through the user interface.
[0178] 6. Notification method: The server saves the application information in a database and notifies the target user. Firebase Cloud Messaging (FCM) is used.
[0179] 7. Proposal and Agreement: A proposal and agreement mechanism for users to agree on skill exchanges. It uses Socket.io to synchronize data in real time.
[0180] 8. Communication Method: This is the communication method that allows the server to synchronize data in real time, which allows for smooth data exchange.
[0181] 9. Functionality: The means by which the device supports video calling and chat functions. For video calling, we use the Zoom API, and for chat, we use Twilio.
[0182] 10. Recording: The server sets up and records the skill exchange session. This record is saved in a log file or similar.
[0183] 11. Feedback channel: A channel for users to enter and store feedback after a skill exchange session. Feedback information is stored in MongoDB.
[0184] 12. Evaluation and ranking update method: This is the method by which the server records skill results and updates evaluations and rankings. The server uses Redis to update rankings based on the evaluation results and feedback.
[0185] Hardware and software used
[0186] The implementation of this system utilizes the following hardware and software.
[0187] Input method: Browser, mobile application
[0188] Database: MySQL, MongoDB
[0189] Search method: Elasticsearch
[0190] Notification method: Firebase Cloud Messaging (FCM)
[0191] Communication method: Socket.io
[0192] Function: Zoom API (video call), Twilio (chat)
[0193] Rating and Ranking Update: Redis
[0194] Explanation with concrete examples
[0195] 1. User A offers "Programming" and registers that he wants to learn "Korean."
[0196] 2. User B registers that he is good at "Korean" and wants to learn "illustration."
[0197] 3. User A searches for the "Korean" skill and finds User B's profile.
[0198] 4. User A applies for a "Programming and Korean language skill exchange."
[0199] 5. User B agrees to this and exchanges messages to define the specific terms.
[0200] 6. Both parties agree to set up a skills exchange session.
[0201] 7. The session is conducted, with User A learning Korean from User B and User B learning programming from User A.
[0202] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[0203] 9. The server updates the ratings of User A and User B based on the feedback and achievements and reflects them in their profiles.
[0204] Prompt Sentence Examples
[0205] Below are some examples of prompts to input to a generative AI model (e.g., GPT-3).
[0206] Please explain in natural language the program processing flow of the "Skill Chat Service" system, including specific processing steps and detailed operations.
[0207] This prompt enables the generative AI model to generate text in natural language that explains the detailed operation of the system for each processing step.
[0208] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0209] Step 1:
[0210] Input Method
[0211] Users fill out a form in a browser or mobile application to enter their skills, interests, and areas they want to learn, and the data is compiled on the device in JSON format.
[0212] Output: User-entered data on skills, interests, and areas of study.
[0213] Step 2:
[0214] Sending information
[0215] The terminal sends the input data obtained in step 1 to the server via an HTTP POST request.
[0216] Input: User data in JSON format.
[0217] Output: User data sent to the server.
[0218] Step 3:
[0219] Database storage
[0220] The server parses the received user data and stores it in a MySQL database, using the SQL INSERT statement.
[0221] Input: User data in JSON format.
[0222] Output: User profile stored in the database.
[0223] Step 4:
[0224] Skill Search
[0225] Users enter keywords of interest in the skill search bar and click the search button.
[0226] Input: Search keyword.
[0227] Output: A search request for the skill containing the keyword.
[0228] Step 5:
[0229] Submitting a search request
[0230] The terminal sends the search keywords obtained in step 4 to the server via an HTTP POST request.
[0231] Input: Search keyword.
[0232] Output: The search terms sent to the server.
[0233] Step 6:
[0234] Database search
[0235] The server uses Elasticsearch to search for the relevant user profile from the information stored in the database, generating an Elasticsearch query to find matching records.
[0236] Input: Search keyword.
[0237] Output: A list of user profiles as search results.
[0238] Step 7:
[0239] Returning search results
[0240] The server sends the search results to the terminal in JSON format.
[0241] Input: A list of user profiles as search results.
[0242] Output: Search results returned to the device.
[0243] Step 8:
[0244] Displaying search results
[0245] The device analyzes the search results it receives and displays them to the user in list or card format.
[0246] Input: The search results returned.
[0247] Output: The search results displayed in a user-readable format.
[0248] Step 9:
[0249] Skills exchange application
[0250] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange.
[0251] Input: User profile for the skill you wish to exchange.
[0252] Output: Skill exchange application request.
[0253] Step 10:
[0254] Submit application information
[0255] The terminal transmits the application information generated in step 9 to the server.
[0256] Input: Skill Exchange Application Request.
[0257] Output: The application information sent to the server.
[0258] Step 11:
[0259] Database storage and notifications
[0260] The server stores the received application information in a database and sends notifications to the target users using FCM.
[0261] Input: Skills Exchange application data.
[0262] Output: Application information stored in the database and notification to the target user.
[0263] Step 12:
[0264] Proposal and Agreement
[0265] Users enter the terms and conditions of the skill exchange and the details of the transaction, and send them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until the terms are met. Socket.io is used here to synchronize data in real time.
[0266] Input: Skill exchange proposal information.
[0267] Output: Agreed skill exchange terms.
[0268] Step 13:
[0269] Notice of Agreement
[0270] Once an agreement is reached, the server notifies both terminals of the details of the agreement.
[0271] Input: Agreed skills exchange terms.
[0272] Output: Agreement notification message.
[0273] Step 14:
[0274] Setting up a Skills Exchange session
[0275] The user and the target user coordinate their schedules and set a specific date and time for the skill exchange session, and the server records this information.
[0276] Input: Scheduling information.
[0277] Output: The configured Skill Exchange session date and time information.
[0278] Step 15:
[0279] Conducting skills exchange sessions
[0280] The device supports video calling and chat functions, and skill exchange sessions are conducted using the Zoom API to set up video calls and Twilio for chat.
[0281] Input: Skills Exchange session implementation information.
[0282] Output: Session data as logs.
[0283] Step 16:
[0284] Session logging
[0285] The server logs the skill exchange session and sends notifications and reminders as needed.
[0286] Input: Skill Exchange session log information.
[0287] Output: Recorded session log and reminder notifications.
[0288] Step 17:
[0289] Enter your feedback
[0290] After the session, the user enters their evaluation in a feedback form and sends it to the server via their terminal.
[0291] Input: Feedback data.
[0292] Output: Feedback data sent to the server.
[0293] Step 18:
[0294] Feedback storage and notification
[0295] The server stores the feedback data in MongoDB and sends notifications to the target users.
[0296] Input: Feedback data.
[0297] Output: Stored feedback data and notification to target users.
[0298] Step 19:
[0299] Ratings and Rankings Updates
[0300] The server uses Redis to update ratings and rankings based on the results of skill exchange and feedback information.
[0301] Input: Feedback information and outcome data.
[0302] Output: Updated ratings and rankings data.
[0303] (Application example 1)
[0304] 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."
[0305] In conventional skill exchange systems, users have difficulty efficiently finding other users who share their interests and concerns, and it takes a lot of time to find an appropriate skill exchange partner. Furthermore, when exchanging skills, it is often unclear whether the abilities and needs of both parties match, which hinders efficient and effective skill improvement. Furthermore, there is a lack of systems that effectively utilize feedback and evaluations to objectively evaluate users' growth and skill improvement, which means users are unable to utilize feedback for further learning or skill improvement.
[0306] 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.
[0307] In this invention, the server includes: an input means for a user to input their abilities, interests, and fields of study; a means for storing the information input by the input means in a database; a means for searching for other users' abilities and available services based on the stored information; a means for displaying the search results; a means for submitting an application for an ability exchange to other users; a means for storing the application information in a database and notifying the target user; a means for proposing and agreeing to an ability exchange; a means for setting up and recording an ability exchange session; a means for inputting and storing feedback after the ability exchange session; a means for recording the ability results and updating the evaluation and ranking; a means for generating prompt sentences using a generative AI model when a user searches for the abilities of other users; and a means for recommending other users' abilities based on the generated prompt sentences. This allows users to efficiently find other users who match their interests and learning needs, making skill exchange more effective and efficient. Furthermore, by utilizing feedback and evaluation, a system can be realized that objectively evaluates a user's skill improvement and promotes growth.
[0308] "Ability" is a general term for the knowledge, skills, and experience that a user possesses.
[0309] "Interests" are areas or topics that a user is interested in and would like to learn more about.
[0310] The "area to learn" is a category of new knowledge or skills that the user wants to learn or acquire.
[0311] "Input means" is a general term for devices and systems that allow users to input their own information into a system.
[0312] A "database" is an information storage system for systematically storing and managing user information and skill information.
[0313] A "search tool" is a function or algorithm for finding information that matches certain criteria based on records in a database.
[0314] "Display means" refers to a device or interface that visually presents search results and registered information to the user.
[0315] An "application means" is a function or process that allows a user to propose the exchange of skills or abilities with other users.
[0316] A "notification mechanism" is a system for notifying target users of new information or changes in real time.
[0317] The "proposal means" is a function that allows the user to present the conditions and contents of the ability exchange.
[0318] An "agreement mechanism" is a process or function by which both parties reach an agreement on the terms of skill exchange.
[0319] "Session setting means" is a function for planning and starting conversations and activities for skill exchange.
[0320] "Recording Means" means a system or process for storing the content and progress of a Skill Exchange Session.
[0321] "Feedback means" is a system that allows users to provide evaluations and opinions to the other party after skill exchange.
[0322] The "evaluation means" is a function for quantitatively evaluating the improvement of a user's skills and abilities.
[0323] The "ranking update means" is a system for updating the relative ranking of users based on their skill exchange performance.
[0324] A "generative AI model" is an artificial intelligence that is trained to provide information based on generated text or prompts.
[0325] A "prompt" is a predefined piece of text generated by a generative AI model and used to elicit the information the user is seeking.
[0326] A "recommendation tool" is a system for selecting appropriate abilities from other users based on prompt sentences generated by a generative AI model.
[0327] An embodiment of the present invention is a skills exchange platform in the food delivery industry. This system allows users to share their skills, interests, and areas of study with other users and mutually improve their skills. A specific embodiment of the system is described below.
[0328] First, a user accesses the system using a smartphone. First, the user enters their abilities, interests, and the fields they wish to study. This information is entered through input fields in the smartphone application, and the entered information is sent to the server in real time. The server stores the information in a database and generates a user profile. This profile displays the user's abilities, interests, ratings, rank, etc.
[0329] Next, the user uses the search function. In the search function, the user enters keywords into the search bar to search for the abilities and services offered by other users. For example, by entering "efficient route planning" or "basic cooking skills," the user can find the relevant profile. The server searches the database for the relevant information and displays the results on the smartphone screen.
[0330] Users can apply for skill exchange with profiles they are interested in. For example, if a driver wants to learn "efficient route planning," they can apply to other users who have related skills. This application information is sent to the server and stored in a database. At the same time, a notification is sent to the target users.
[0331] Proposals and agreements for skill exchanges are made through the chat function. Users propose specific terms and content via text messages and exchange information until both parties reach an agreement. This exchange is recorded on the server, and even if an agreement is reached, it is saved in a form that can be viewed later.
[0332] After a specific date and time for the skills exchange is agreed upon, the session is conducted using video calls or chat functions. The smartphone application supports video calls and real-time chats, and logs of these sessions are also stored on the server. After the session ends, the user enters feedback and sends it to the server. The feedback is stored in a database and notified to the relevant user.
[0333] Furthermore, based on the feedback and ratings, the server will update the user's ratings and rankings, helping other users find suitable matches based on more reliable information.
[0334] Finally, the system uses a generative AI model to generate prompts when a user searches for other users' abilities. Based on these prompts, the server recommends other users' abilities that best suit the user. For example, if the generated prompt is "I want to learn about efficient route planning," the server will use this information to recommend users with the corresponding abilities.
[0335] Specific examples are shown below.
[0336] 1. Driver A enters that he / she wants to learn about "efficient route planning."
[0337] 2. The server searches the database for other users with the relevant capabilities and displays the results.
[0338] 3. Driver A is interested in learning the "basic cooking techniques" of a particular chef B.
[0339] 4. Driver A applies to Chef B for a skill exchange.
[0340] 5. Chef B agrees and the specific terms are agreed upon via chat.
[0341] 6. The two parties set up a video call session to learn.
[0342] 7. After the session, Driver A sends feedback to Chef B, which is saved in the system.
[0343] 8. The server updates the ratings and rankings based on this.
[0344] This will enable efficient and effective capacity development.
[0345] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0346] Step 1:
[0347] A user accesses the system via their smartphone and inputs their abilities, interests, and desired fields of study. They enter the required information into the input fields and send it to the server, which stores this information in a database and creates a new user profile.
[0348] Input: User profile information (e.g., abilities, interests, areas of study)
[0349] Data processing: storing information in a database and creating profiles
[0350] Output: New user profile
[0351] Step 2:
[0352] Users use the system's search function to search for keywords for capabilities or services they are interested in. They enter the keywords in the search bar and send them to the server, which searches the database to retrieve the corresponding user profile and sends it to the device.
[0353] Input: Search keyword (e.g. "efficient route planning")
[0354] Data processing: database search, acquisition of relevant profiles
[0355] Output: Search results (list of matching user profiles)
[0356] Step 3:
[0357] Users apply for a skills exchange with a profile they are interested in. They click the Apply button, enter their details, and send them to the server. The server stores the application information in a database and sends a notification to the target users.
[0358] Input: Application information (e.g., target user ID, desired skill exchange details)
[0359] Data processing: saving application information, generating notifications
[0360] Output: Application notification, database update
[0361] Step 4:
[0362] The target users receive a notification and confirm the proposal for the exchange. They then use the chat function to propose and amend specific terms and content through messages. The server records these messages and updates the log until an agreement is reached.
[0363] Input: Proposal message, Correction message
[0364] Data processing: recording messages, updating logs
[0365] Output: Log of conditions agreed upon
[0366] Step 5:
[0367] After the date and time for the capability exchange is agreed upon, the session is conducted using a video call or chat function. The device records a log of the session and sends it to the server, which then stores the log in a database.
[0368] Input: Video call logs, chat logs
[0369] Data processing: Log recording, database storage
[0370] Output: Session log
[0371] Step 6:
[0372] After the session ends, users input feedback to each other. The feedback is entered and sent to the server, which stores it in a database and notifies the other user.
[0373] Input: Feedback information (e.g., ratings, comments)
[0374] Data processing: feedback storage, notification generation
[0375] Output: Feedback notification, database update
[0376] Step 7:
[0377] The server updates the user's ratings and rankings based on the collected feedback and ratings. It references the database, calculates new rating values, and updates the rankings. It then updates the user profile with the new rating information.
[0378] Input: Feedback data, existing evaluation data
[0379] Data processing: Calculation of evaluation value, updating of ranking
[0380] Output: Updated user profile
[0381] Step 8:
[0382] The next time a user searches for other users' abilities, the generative AI model is used to generate a prompt. The AI model generates a prompt based on the information the user enters when using the search function, and the server sends it to the database. The server then recommends other users' abilities based on the generated prompt.
[0383] Input: Search criteria, past search data
[0384] Data processing: Prompt generation using generative AI models, database search
[0385] Output: Recommended user profile
[0386] For example, if a user generates a prompt sentence such as "I want to learn about efficient route planning," the server will recommend relevant user profiles based on the keyword "efficient route planning." In this way, users can quickly find the best match for their next learning or skill improvement.
[0387] 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.
[0388] The "Skill Chat Service" of this invention is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system aims to maximize the effectiveness of skill exchange by combining functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as an emotion engine to recognize and analyze user emotions.
[0389] 1. Registration Process
[0390] Users fill out a form to learn about their skills, interests, and areas of interest. The device captures this information and sends it to the server, which stores it in a database and creates a user profile.
[0391] 2. Skill Search Processing
[0392] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[0393] 3. Skill exchange request processing
[0394] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[0395] 4. Skill Exchange Agreement Processing
[0396] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[0397] 5. Skill Exchange Implementation Process
[0398] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[0399] During the skill exchange session, an emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[0400] 6. Feedback Processing
[0401] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion engine is also stored in the database and notified to the target user as part of the feedback.
[0402] 7. Skill Result Record Processing
[0403] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by the emotion engine. The updated rating and ranking information is displayed to the user via their device.
[0404] Specific examples
[0405] 1. Person C registers that he / she wants to provide "cooking" and learn "guitar."
[0406] 2. Mr. D registers saying that he is good at "guitar" and wants to learn "photography."
[0407] 3. Person C searches for the skill "guitar" and finds Person D's profile.
[0408] 4. C applies for a "cooking and guitar skill exchange."
[0409] 5. Mr. D agrees to this and they exchange messages to define the specific terms.
[0410] 6. Both parties agree to set up a skills exchange session.
[0411] 7. The session is carried out, with C learning guitar from D and D learning cooking from C. During this time, the emotion engine analyzes the emotions of C and D in real time and uses this information to guide the session.
[0412] 8. After the session ends, participants provide feedback to each other, which is then saved on the server. The emotional data collected by the emotion engine is also saved and used as part of the evaluation.
[0413] 9. The server updates C and D's ratings based on their feedback and achievements and reflects them in their profiles.
[0414] This format also allows users to receive emotional feedback, giving them a deeper understanding of their own skill development and the quality of their session.
[0415] The processing flow will be explained below.
[0416] Embodiments of the invention combining emotion engines using specific examples
[0417] Registration process
[0418] Step 1:
[0419] Users fill out a form to learn about their skills, interests, and areas of interest.
[0420] Step 2:
[0421] The terminal temporarily stores the input information.
[0422] Step 3:
[0423] The user clicks the "Register" button.
[0424] Step 4:
[0425] The terminal transmits the input information to the server.
[0426] Step 5:
[0427] The server stores the received information in a database and creates a user profile.
[0428] Step 6:
[0429] The server sends a response confirming the completion of registration to the terminal.
[0430] Step 7:
[0431] The terminal displays a message to the user indicating that registration is complete.
[0432] Skill search process
[0433] Step 1:
[0434] A user enters a keyword of interest into the skill search bar.
[0435] Step 2:
[0436] The terminal temporarily stores the keyword.
[0437] Step 3:
[0438] The user clicks the Search button.
[0439] Step 4:
[0440] The terminal transmits the keyword to the server.
[0441] Step 5:
[0442] The server searches the database for user profiles that match the keywords.
[0443] Step 6:
[0444] The server sends the search results to the terminal.
[0445] Step 7:
[0446] The terminal displays the search results to the user in a list format.
[0447] Skill exchange request processing
[0448] Step 1:
[0449] Users can select and view profiles of other users who have skills that interest them.
[0450] Step 2:
[0451] The device will display the selected profile.
[0452] Step 3:
[0453] The user clicks the "Apply for Skill Exchange" button.
[0454] Step 4:
[0455] The terminal transmits application information for skill exchange to the server.
[0456] Step 5:
[0457] The server stores the application information in a database and sends notifications to the target users.
[0458] Skill Exchange Agreement Processing
[0459] Step 1:
[0460] The target user sees the notification and opens a skill exchange request.
[0461] Step 2:
[0462] The target user enters information into a form to enter their agreement or proposed amendment.
[0463] Step 3:
[0464] The terminal sends the suggestions or modifications to the server.
[0465] Step 4:
[0466] The server sends the suggestions or modifications to the requesting user.
[0467] Step 5:
[0468] The user checks the proposal or amendment and agrees or proposes amendments again.
[0469] Step 6:
[0470] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[0471] Step 7:
[0472] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[0473] Skill exchange process
[0474] Step 1:
[0475] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[0476] Step 2:
[0477] The device checks the session date and time and method (video call, chat, etc.).
[0478] Step 3:
[0479] As the session date and time approaches, the server will send reminder notifications.
[0480] Step 4:
[0481] The user and the other user join the session at the set date and time.
[0482] Step 5:
[0483] The device will support the session using video calling and chat functions.
[0484] Step 6:
[0485] During the session, the emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time.
[0486] Step 7:
[0487] The server processes the recognized emotional information in real time and provides it as feedback to both parties.
[0488] Step 8:
[0489] Once the session is complete, the server records the session log and emotion data.
[0490] Feedback Processing
[0491] Step 1:
[0492] After the skill exchange session, the user enters their rating in the feedback form.
[0493] Step 2:
[0494] The terminal transmits the input feedback to the server.
[0495] Step 3:
[0496] The server stores the feedback in a database.
[0497] Step 4:
[0498] The server also stores the emotion data collected by the emotion engine along with the feedback and sends notifications to the target users.
[0499] Skill result recording processing
[0500] Step 1:
[0501] The server accumulates the results of the skill exchange and feedback information in a database.
[0502] Step 2:
[0503] The server takes into account the user's emotional information recognized by the emotion engine and updates the user's ratings and rankings using a rating and ranking algorithm.
[0504] Step 3:
[0505] Send updated ratings and ranking information to your device.
[0506] Step 4:
[0507] The device displays the latest ratings and ranking information to the user.
[0508] This specific processing flow enables more effective skill exchange between users, and maximizes user satisfaction and learning effectiveness through emotion analysis and evaluation.
[0509] Example 2
[0510] 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."
[0511] Conventional skill exchange platforms lack real-time feedback to improve the efficiency of skill exchange between users. They also lack the means to properly grasp users' emotional states and maximize the effectiveness of sessions. As a result, it is difficult to improve the user experience and the quality of skill exchange in a rational manner.
[0512] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0513] In this invention, the server includes: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and services that can be provided; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; a sentiment analysis means for automatically analyzing the user's sentiment; a means for providing feedback during the skill exchange session based on the sentiment information obtained by the sentiment analysis means; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating ratings and rankings. This makes it possible to visualize the quality of skill exchange sessions between users in real time and provide effective feedback, thereby improving the quality of skill exchange.
[0514] A "user" is an individual or organization that uses this system to provide information about their skills, interests, areas of study, etc.
[0515] "Input means" refers to an interface through which users input information such as skills, interests, and areas of study, and includes web forms and mobile applications.
[0516] The "database" is a digital storage system for storing and managing information entered by users, information on skill exchange, feedback, emotional data, etc.
[0517] "Search means" refers to a function that allows users to search for other users' skills and services that they can provide, and includes keyword search and filtering functions.
[0518] "Display means" refers to an interface for visually presenting search results and other information to a user, and refers to a display device such as a monitor, smartphone, or tablet.
[0519] The "application means" is a function that allows a user to apply to exchange skills with other users, and includes a dedicated form and a message function.
[0520] "Notification methods" are functions for communicating skill exchange applications and other important notifications to target users, and include email, in-app notifications, SMS, etc.
[0521] "Proposal and agreement means" refers to a function for proposing conditions for skill exchange and transaction details between users and obtaining agreement, and includes messaging and chat functions.
[0522] The "skill exchange session setting means" is a function that enables a user to set up a session for skill exchange, and includes a scheduling function that supports video calls and chat functions.
[0523] "Means for recording" is a function for saving the content and results of the skill exchange session in a database.
[0524] "Emotion analysis means" refers to technology that analyzes a user's facial expressions, voice, etc. to obtain emotional information in real time, and includes machine learning and computer vision technologies.
[0525] The "feedback means" is a function that allows users to enter evaluations and comments after a skill exchange session, and includes a dedicated form.
[0526] The "means for updating ratings and rankings" is a function for calculating user ratings and rankings based on acquired feedback information and emotional information, and updating them to the latest status.
[0527] This invention is a platform that allows users to exchange their skills and knowledge with other users and mutually improve their skills. This system combines functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as a sentiment analysis engine to recognize and analyze user sentiment and maximize the effectiveness of skill exchange.
[0528] Registration process
[0529] Users enter information into a form to input their skills, interests, and areas they want to learn. The device captures this information and sends it to the server. The server stores the information in a database and creates a user profile. For example, if a user inputs skills such as "cooking" or "guitar," the device sends this information in JSON format to the server, which stores it in a database (e.g., MySQL).
[0530] Skill search process
[0531] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user. Front-end technologies (e.g., React) can be used for this process.
[0532] Skill exchange request processing
[0533] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[0534] Skill Exchange Agreement Processing
[0535] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[0536] Skill exchange process
[0537] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The device supports video calls and chat functions, and the skill exchange session is conducted. The server records the session log and sends notifications and reminders as necessary. In addition, an emotion analysis engine operates during the skill exchange session, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[0538] Feedback Processing
[0539] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion analysis engine is also stored in the database and notified to the target user as part of the feedback.
[0540] Skill result recording processing
[0541] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by an emotion analysis engine. The updated rating and ranking information is displayed to the user via their device.
[0542] Example prompt
[0543] A concrete example will be given in which a user uses this system to improve their own skills.
[0544] 1. A user offers "cooking" and registers that they want to learn "guitar."
[0545] 2. Another user registers that they are good at "guitar" and want to learn "photography."
[0546] 3. A user searches for the skill "guitar" and finds the profile of the target user.
[0547] 4. A user applies for a "cooking and guitar skill exchange."
[0548] 5. The target user agrees to this and a message exchange takes place to define the specific terms.
[0549] 6. Both parties agree to set up a skills exchange session.
[0550] 7. The session is then carried out, with the user learning guitar from the target user and the target user learning cooking from the user. During this time, the emotion analysis engine analyzes the emotions of both parties in real time and uses this information to guide the session.
[0551] 8. After the session, participants provide feedback to each other, which is then saved on the server. Emotion data collected by the emotion analysis engine is also saved and used as part of the evaluation.
[0552] 9. The server updates the user and target user's ratings based on the feedback and achievements, and reflects them in the profile.
[0553] An example prompt is:
[0554] "Enter 'cooking' and 'guitar' on the registration page and click the submit button."
[0555] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0556] Registration process
[0557] Step 1:
[0558] A user visits a registration page and enters their name, skills, interests, and areas they would like to learn.
[0559] What happens: The user opens the registration page using a web browser and enters information into the input form.
[0560] Step 2:
[0561] The device retrieves the form content using JavaScript or other front-end technologies (e.g., React, Angular).
[0562] Input: Information entered by the user (name, skills, interests, areas of study)
[0563] Output: JSON format data
[0564] Step 3:
[0565] The device sends information to the server in JSON format via the REST API.
[0566] Input: JSON format data
[0567] Output: Data sent to the server
[0568] Step 4:
[0569] The server processes the received JSON data using a server-side programming language such as Python or Java.
[0570] Input: JSON format data
[0571] Output: Command to save to database
[0572] Step 5:
[0573] The server stores the information in a database such as MySQL or PostgreSQL.
[0574] Input: Save command
[0575] Output: Saved user profile
[0576] Step 6:
[0577] The server sends the newly created user profile information to the user as a confirmation email.
[0578] Input: User profile information
[0579] Output:Confirmation email
[0580] Skill search process
[0581] Step 1:
[0582] A user enters a keyword, such as "guitar," into the search bar on the homepage and clicks the search button.
[0583] Specific actions: The user enters keywords in the search bar and clicks the search button.
[0584] Step 2:
[0585] The device uses front-end technologies such as Vue.js to send keywords to the server via Ajax requests.
[0586] Input: The keyword entered by the user
[0587] Output: Request to server
[0588] Step 3:
[0589] The server executes an SQL query to retrieve user profiles corresponding to "guitar" from the database.
[0590] Input: A request to the server
[0591] Output: A list of user profiles
[0592] Step 4:
[0593] The server returns the acquired information to the terminal in JSON format.
[0594] Input: List of user profiles
[0595] Output: JSON format data
[0596] Step 5:
[0597] The device renders the results in HTML and displays them to the user.
[0598] Input: JSON format data
[0599] Output: Search results displayed
[0600] Skill exchange request processing
[0601] Step 1:
[0602] The user selects the profile of the other user from the search results and clicks the "Request Skill Exchange" button.
[0603] Specific operation: The user selects a specific user from the search results and presses the button to request a skill exchange.
[0604] Step 2:
[0605] The device sends the request information (requester, target, skills to be exchanged, etc.) to the server in JSON format.
[0606] Input: Request information
[0607] Output: Request to server
[0608] Step 3:
[0609] The server saves the request information in the database and sends a notification email to the target user.
[0610] Input: Request information
[0611] Output: Saved request information, notification email
[0612] Skill Exchange Agreement Processing
[0613] Step 1:
[0614] The user enters the conditions for skill exchange and transaction details, and presses the confirmation button.
[0615] Specific operation: The user enters the skill exchange conditions into the form and clicks the confirmation button.
[0616] Step 2:
[0617] The device sends the condition information to the server in JSON format.
[0618] Input: Condition information
[0619] Output: Request to server
[0620] Step 3:
[0621] The target user receives the notification, checks the conditions, and, if necessary, sends a correction proposal from the terminal to the server.
[0622] Input: Condition information
[0623] Output: A modification request to the server
[0624] Step 4:
[0625] The server confirms that an agreement has been reached and sends a notification of the agreement to both parties.
[0626] Input: Agreement information
[0627] Output: Notification of agreement
[0628] Skill exchange process
[0629] Step 1:
[0630] The user and the other user use the chat function to arrange a date and time for the session, and then use the schedule function to set the date and time for the session.
[0631] Specific operation: The user and the other user exchange messages to determine the date and time of the session.
[0632] Step 2:
[0633] The device initiates a video call session using WebRTC technology.
[0634] Input: Session initiation request
[0635] Output: Start a video call
[0636] Step 3:
[0637] The server logs the start and end of the session in a database and sends reminders.
[0638] Input: Session log information
[0639] Output: Logs saved to database, reminder notifications
[0640] Step 4:
[0641] The emotion analysis engine analyzes the user's facial expressions and voice data during the session and displays the analysis results in real time.
[0642] Input: User's facial expressions and voice data
[0643] Output: Real-time analysis results
[0644] Feedback Processing
[0645] Step 1:
[0646] The user opens the feedback form after the session and enters text and a rating score.
[0647] What happens: After a session, users access the feedback form and enter their ratings.
[0648] Step 2:
[0649] The device sends feedback information in JSON format to the server.
[0650] Input: Feedback information
[0651] Output: Request to server
[0652] Step 3:
[0653] The server stores the feedback information and the emotion data analyzed by the emotion engine in a database.
[0654] Input: Feedback information, emotion data
[0655] Output: Save to database
[0656] Step 4:
[0657] The server will send the saved feedback to the user via email.
[0658] Input: Feedback information
[0659] Output: Notification email
[0660] Skill result recording processing
[0661] Step 1:
[0662] The server collects the results of the skill exchange and feedback information in a database.
[0663] Specific operation: The server performs daily batch processing to compile skill exchange results and feedback information.
[0664] Step 2:
[0665] The server updates the ratings and rankings, taking into account the emotional data collected by the emotion engine.
[0666] Input: Feedback information, emotion data
[0667] Output: Updated ratings and rankings
[0668] Step 3:
[0669] Updated ratings and ranking information is sent to the device via API, and the device displays the latest information on the user profile page.
[0670] Input: Updated rating and ranking information
[0671] Output: Update user profile page
[0672] (Application example 2)
[0673] 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."
[0674] Conventional skill exchange platforms allow users to easily register the skills they can offer or the content they want to learn, and exchange skills with other users. However, they lack the means to maximize the effectiveness of skill exchange. They also lack the functionality to perform real-time sentiment analysis and provide feedback to improve session effectiveness. Therefore, a system that can improve the quality of skill exchange and user satisfaction is needed.
[0675] 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: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and available services based on the saved information; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; an emotion analysis means for maximizing the effect of the skill exchange based on emotion analysis; a means for recognizing and analyzing emotion information during the skill exchange session in real time; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating evaluations and rankings. This makes it possible to analyze the user's emotion information during the skill exchange session in real time and provide feedback based on that information.
[0676] "Input means" refers to a means by which a user inputs their skills, interests, and areas they wish to learn.
[0677] The "means for saving to a database" is a means for saving information input by a user through an input means to a database.
[0678] The "means for searching for skills and services that other users can provide" is a means for searching for skills that other users have and services that they can provide based on the stored information.
[0679] The "means for displaying search results" is a means for displaying search results for skills and services to the user.
[0680] The "means for applying for skill exchange" is a means for applying for skill exchange with another user.
[0681] The "means for notifying the target user" is a means for storing the application information in a database and sending a notification to the target user.
[0682] "Proposal and Agreement Means" refers to the means for making proposals and agreements to reach an agreement on skill exchange.
[0683] The "means for setting and recording a skill exchange session" is a means for setting a date for a skill exchange session and recording the content thereof.
[0684] "Emotion analysis means" refers to a means for performing emotion analysis in order to maximize the effect of skill exchange.
[0685] The "means for recognizing and analyzing in real time" refers to a means for recognizing and analyzing emotional information in real time during a skill exchange session.
[0686] The "means for inputting and saving feedback" refers to a means for inputting and saving feedback after a skill exchange session.
[0687] The "means for updating evaluations and rankings" refers to a means for recording the results of skill exchanges and updating evaluations and rankings based on that information.
[0688] A specific embodiment for implementing this invention will be described. This invention is a system for exchanging skills and knowledge with other users and mutually improving their skills. This system includes a function for maximizing the effectiveness of skill exchange sessions using emotion analysis. Each function of the system and its implementation means will be described below.
[0689] System Configuration
[0690] This system consists of a smartphone, a server, and a database. The smartphone functions as a terminal where users can input and retrieve information. The server manages user profiles, searches, manages skill exchanges, and performs sentiment analysis. The database stores user information, skill information, and feedback information.
[0691] Program processing explanation
[0692] Software used
[0693] Flask (Python): Web Application Framework
[0694] EmotionRecognitionEngine (hypothesis): Emotion analysis engine
[0695] Database class: A database module that manages profile and feedback information
[0696] Data processing and calculation
[0697] 1. User Registration
[0698] Using the input means of the smartphone, the user inputs their skills, interests, and areas they would like to learn.
[0699] The server stores the entered information in a database and creates a user profile.
[0700] 2. Skill Search
[0701] Users can use their smartphones to enter keywords and search for skills they are interested in.
[0702] The server searches the database for relevant user profiles based on the keywords and displays the results on the smartphone.
[0703] 3. Skill Exchange Request
[0704] When a user selects another user's profile and applies for a skill exchange, the server stores the information in a database and notifies the target user.
[0705] 4. Obtaining consent
[0706] Proposals and amendments are made between users to agree on the terms of skill exchange, which is done in real time through the server.
[0707] 5. Skills Exchange Session
[0708] Skill exchange sessions are conducted using smartphone video calls and chat functions, and the server records and manages logs of these sessions.
[0709] The emotion analysis engine recognizes and analyzes the user's emotional information in real time, and this information is used as feedback for the progress of the session.
[0710] 6. Feedback and Ratings
[0711] After the skill exchange session, the user enters feedback and sends it to the server, which stores the feedback information in a database along with sentiment analysis data.
[0712] Based on this information, user ratings and rankings are updated and displayed on smartphones.
[0713] Specific examples
[0714] For example, consider a case where a store staff member uses this system to improve their customer service skills. If store staff member A wants to improve their product knowledge and another store staff member, store staff member B, has that knowledge, store staff member A can use a skill-sharing app to request a skill exchange with store staff member B. Store staff members A and B will train via video call, during which the emotion analysis engine will analyze the emotions of both parties in real time and provide feedback according to the training's progress, thereby increasing the effectiveness of the training.
[0715] Prompt Sentence Examples
[0716] "I want to learn more about product A. Salesperson B seems to be very knowledgeable about it. I want the emotion engine to analyze my current learning progress and emotional state and provide effective feedback."
[0717] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0718] Step 1:
[0719] A user uses the input means of their smartphone to input their skills, interests, and areas they wish to learn. The input information is sent from the device to a server. The server stores the received information in a database and creates a user profile. Through this process, the user's skills and interests are digitized and used for later searches and matching.
[0720] Step 2:
[0721] A user enters keywords of interest into the skill search bar on their smartphone and clicks the search button. Based on this input, the device sends the keywords to the server. The server searches the database for user profiles that match the keywords and returns the results to the device. The device then displays the search results to the user, allowing the user to find other users who have skills of interest to them.
[0722] Step 3:
[0723] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The terminal sends the application information to the server, which stores the information in a database. At the same time, the server sends a skill exchange notification to the target user, who then receives the skill exchange request.
[0724] Step 4:
[0725] The user and the target user negotiate the terms of the skill exchange using proposal and agreement methods. Specifically, they exchange messages via their devices to present and modify the terms. Once an agreement is reached, the server stores the information and sends a final notification to both users. This concludes the skill exchange agreement.
[0726] Step 5:
[0727] The user and the target user set a date for the skill exchange session. This information is sent from the device to the server, which stores it in a database. On the day of the session, the skill exchange is carried out using the device's video call or chat functions. The server records the progress of the session in a log in real time, and an emotion analysis engine analyzes the user's facial expressions and voice to obtain emotional information. This improves the quality of the skill exchange.
[0728] Step 6:
[0729] After the skill exchange session, the user enters feedback using their smartphone. The feedback information is sent from the device to the server, which stores it in a database. Furthermore, emotional data generated by an emotion analysis engine is also included in the feedback, and the feedback is notified to the target user. This provides detailed feedback on the progress of the session.
[0730] Step 7:
[0731] The server evaluates the results of the skill exchange based on user feedback and sentiment analysis data, and records the results in a database. As a result, the user's ratings and rankings are updated and displayed on their smartphone. This allows users to check the degree of their skill improvement and their relative position compared to other users.
[0732] 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.
[0733] 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.
[0734] 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.
[0735] [Second embodiment]
[0736] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0737] 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.
[0738] 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).
[0739] 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.
[0740] 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.
[0741] 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).
[0742] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[0743] 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.
[0744] 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.
[0745] 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.
[0746] 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.
[0747] 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."
[0748] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[0749] 1. Registration Process
[0750] Users input their skills, interests, and areas of interest, and the device captures this information and sends it to a server, which stores it in a database and creates a user profile.
[0751] 2. Skill Search Processing
[0752] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[0753] 3. Skill exchange request processing
[0754] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[0755] 4. Skill Exchange Agreement Processing
[0756] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[0757] 5. Skill Exchange Implementation Process
[0758] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[0759] 6. Feedback Processing
[0760] After the skill exchange session, the user enters their evaluation in a feedback form and sends it to the server via their device. The server stores the feedback in a database and notifies the user.
[0761] 7. Skill Result Record Processing
[0762] The server accumulates the results of the skill exchange and feedback information in a database, and updates the evaluations and rankings. The updated evaluations and rankings are displayed to the user via their device.
[0763] Specific examples
[0764] 1. Person A offers "Programming" and registers that he wants to learn "Korean."
[0765] 2. Person B registers saying that he is good at "Korean" and wants to learn "illustration."
[0766] 3. Person A searches for the "Korean" skill and finds Person B's profile.
[0767] 4. Person A applies for a "skill exchange in programming and Korean."
[0768] 5. Person B agrees to this and exchanges messages to define the specific terms.
[0769] 6. Both parties agree to set up a skills exchange session.
[0770] 7. The session takes place, and Person A learns Korean from Person B, and Person B learns programming from Person A.
[0771] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[0772] 9. The server updates A and B's ratings based on their feedback and achievements and reflects them in their profiles.
[0773] This allows both A and B to effectively learn new skills, and also allows other users to improve their skills through a similar process.
[0774] The processing flow will be explained below.
[0775] 1. Registration Process
[0776] Step 1:
[0777] Users fill out a form to learn about their skills, interests, and areas of interest.
[0778] Step 2:
[0779] The terminal temporarily stores the input information.
[0780] Step 3:
[0781] The user clicks the "Register" button.
[0782] Step 4:
[0783] The terminal transmits the input information to the server.
[0784] Step 5:
[0785] The server stores the received information in a database and creates a user profile.
[0786] Step 6:
[0787] The server sends a response confirming the completion of registration to the terminal.
[0788] Step 7:
[0789] The terminal displays a message to the user indicating that registration is complete.
[0790] 2. Skill Search Processing
[0791] Step 1:
[0792] A user enters a keyword of interest into the skill search bar.
[0793] Step 2:
[0794] The terminal temporarily stores the keyword.
[0795] Step 3:
[0796] The user clicks the Search button.
[0797] Step 4:
[0798] The terminal transmits the keyword to the server.
[0799] Step 5:
[0800] The server searches the database for user profiles that match the keywords.
[0801] Step 6:
[0802] The server sends the search results to the terminal.
[0803] Step 7:
[0804] The terminal displays the search results to the user in a list format.
[0805] 3. Skill exchange request processing
[0806] Step 1:
[0807] Users can select and view profiles of other users who have skills that interest them.
[0808] Step 2:
[0809] The device will display the selected profile.
[0810] Step 3:
[0811] The user clicks the "Apply for Skill Exchange" button.
[0812] Step 4:
[0813] The terminal transmits application information for skill exchange to the server.
[0814] Step 5:
[0815] The server stores the application information in a database and sends notifications to the target users.
[0816] 4. Skill Exchange Agreement Processing
[0817] Step 1:
[0818] The target user sees the notification and opens a skill exchange request.
[0819] Step 2:
[0820] The target user enters information into a form to enter their agreement or proposed amendment.
[0821] Step 3:
[0822] The terminal sends the suggestions or modifications to the server.
[0823] Step 4:
[0824] The server sends the suggestions or modifications to the requesting user.
[0825] Step 5:
[0826] The user checks the proposal or amendment and agrees or proposes amendments again.
[0827] Step 6:
[0828] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[0829] Step 7:
[0830] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[0831] 5. Skill Exchange Implementation Process
[0832] Step 1:
[0833] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[0834] Step 2:
[0835] The device checks the session date and time and method (video call, chat, etc.).
[0836] Step 3:
[0837] As the session date and time approaches, the server will send reminder notifications.
[0838] Step 4:
[0839] The user and the other user join the session at the set date and time.
[0840] Step 5:
[0841] The device will support the session using video calling and chat functions.
[0842] Step 6:
[0843] Once the session is complete, the server logs the session.
[0844] 6. Feedback Processing
[0845] Step 1:
[0846] After the skill exchange session, the user enters their rating in the feedback form.
[0847] Step 2:
[0848] The terminal transmits the input feedback to the server.
[0849] Step 3:
[0850] The server stores the feedback in a database.
[0851] Step 4:
[0852] The server sends a feedback notification to the target user.
[0853] 7. Skill Result Record Processing
[0854] Step 1:
[0855] The server accumulates the results of the skill exchange and feedback information in a database.
[0856] Step 2:
[0857] The server uses a rating and ranking algorithm to update the user's rating and ranking.
[0858] Step 3:
[0859] Send updated ratings and ranking information to your device.
[0860] Step 4:
[0861] The device displays the latest ratings and ranking information to the user.
[0862] Example 1
[0863] 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."
[0864] Previous skill exchange services lacked mechanisms for users to easily exchange their skills and areas of interest with other users and efficiently improve their skills. Furthermore, the lack of a real-time skill exchange or evaluation system limited user satisfaction and the effectiveness of skill improvement. This made it difficult for users to effectively learn skills and receive mutual feedback.
[0865] 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.
[0866] In this invention, the server includes an input means for users to input their skills, interests, and fields of study, a means for storing the information input by the input means in a database, and a means for searching for other users' skills and services they can provide based on the stored information. This allows users to effectively exchange skills and provide each other with feedback. In addition, a communication means for synchronizing data in real time allows for smooth skill exchange and agreement. Functional means for supporting video calls and chat functions enable effective communication between users and allow the exchange session to proceed smoothly. A means for storing feedback information in a database and notifying the target user allows for appropriate recording of skill achievements and updating evaluations and rankings in real time.
[0867] "Input means" refers to a device or method for a user to input their skills, interests, and areas of study.
[0868] A "database" refers to a system for systematically storing and managing information.
[0869] "Search means" refers to a method or device for searching for the skills and services that other users can provide based on information stored in a database.
[0870] "Display means" refers to a device or method for visually presenting search results or other information to a user.
[0871] The "application means" refers to a device or method for applying to exchange skills with other users.
[0872] "Notification means" refers to a device or method for notifying the target user of application information or other information.
[0873] "Proposal and Agreement Means" refers to a method or device for making proposals and agreements to reach an agreement on a skill exchange.
[0874] "Communication means" refers to devices and methods for synchronizing data in real time.
[0875] "Functional means" refers to devices and methods for supporting video calling and chat functions.
[0876] "Recording means" refers to a device or method for setting up a skills exchange session and recording the content thereof.
[0877] "Feedback means" refers to a device or method for inputting and storing feedback after a skills exchange session.
[0878] "Evaluation and ranking update means" refers to a device or method for recording skill performance and updating evaluations and rankings.
[0879] MODE FOR CARRYING OUT THE INVENTION
[0880] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[0881] System Configuration
[0882] 1. Input: The means by which users input their skills, interests, and learning interests. This can include forms in a browser or a mobile application.
[0883] 2. Database: This is the database where the server will store the input information from the user. Here we will use MySQL.
[0884] 3. Search method: This is a method for the server to search for other users' skills and services based on the information stored in the database. In this case, we will use Elasticsearch.
[0885] 4. Display: The device visually displays the search results to the user. Search results are displayed in list format or card format.
[0886] 5. Application method: A method for users to apply for skill exchange with other users. This is done through the user interface.
[0887] 6. Notification method: The server saves the application information in a database and notifies the target user. Firebase Cloud Messaging (FCM) is used.
[0888] 7. Proposal and Agreement: A proposal and agreement mechanism for users to agree on skill exchanges. It uses Socket.io to synchronize data in real time.
[0889] 8. Communication Method: This is the communication method that allows the server to synchronize data in real time, which allows for smooth data exchange.
[0890] 9. Functionality: The means by which the device supports video calling and chat functions. For video calling, we use the Zoom API, and for chat, we use Twilio.
[0891] 10. Recording: The server sets up and records the skill exchange session. This record is saved in a log file or similar.
[0892] 11. Feedback channel: A channel for users to enter and store feedback after a skill exchange session. Feedback information is stored in MongoDB.
[0893] 12. Evaluation and ranking update method: This is the method by which the server records skill results and updates evaluations and rankings. The server uses Redis to update rankings based on the evaluation results and feedback.
[0894] Hardware and software used
[0895] The implementation of this system utilizes the following hardware and software.
[0896] Input method: Browser, mobile application
[0897] Database: MySQL, MongoDB
[0898] Search method: Elasticsearch
[0899] Notification method: Firebase Cloud Messaging (FCM)
[0900] Communication method: Socket.io
[0901] Function: Zoom API (video call), Twilio (chat)
[0902] Rating and Ranking Update: Redis
[0903] Explanation with concrete examples
[0904] 1. User A offers "Programming" and registers that he wants to learn "Korean."
[0905] 2. User B registers that he is good at "Korean" and wants to learn "illustration."
[0906] 3. User A searches for the "Korean" skill and finds User B's profile.
[0907] 4. User A applies for a "Programming and Korean language skill exchange."
[0908] 5. User B agrees to this and exchanges messages to define the specific terms.
[0909] 6. Both parties agree to set up a skills exchange session.
[0910] 7. The session is conducted, with User A learning Korean from User B and User B learning programming from User A.
[0911] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[0912] 9. The server updates the ratings of User A and User B based on the feedback and achievements and reflects them in their profiles.
[0913] Prompt Sentence Examples
[0914] Below are some examples of prompts to input to a generative AI model (e.g., GPT-3).
[0915] Please explain in natural language the program processing flow of the "Skill Chat Service" system, including specific processing steps and detailed operations.
[0916] This prompt enables the generative AI model to generate text in natural language that explains the detailed operation of the system for each processing step.
[0917] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0918] Step 1:
[0919] Input Method
[0920] Users fill out a form in a browser or mobile application to enter their skills, interests, and areas they want to learn, and the data is compiled on the device in JSON format.
[0921] Output: User-entered data on skills, interests, and areas of study.
[0922] Step 2:
[0923] Sending information
[0924] The terminal sends the input data obtained in step 1 to the server via an HTTP POST request.
[0925] Input: User data in JSON format.
[0926] Output: User data sent to the server.
[0927] Step 3:
[0928] Database storage
[0929] The server parses the received user data and stores it in a MySQL database, using the SQL INSERT statement.
[0930] Input: User data in JSON format.
[0931] Output: User profile stored in the database.
[0932] Step 4:
[0933] Skill Search
[0934] Users enter keywords of interest in the skill search bar and click the search button.
[0935] Input: Search keyword.
[0936] Output: A search request for the skill containing the keyword.
[0937] Step 5:
[0938] Submitting a search request
[0939] The terminal sends the search keywords obtained in step 4 to the server via an HTTP POST request.
[0940] Input: Search keyword.
[0941] Output: The search terms sent to the server.
[0942] Step 6:
[0943] Database search
[0944] The server uses Elasticsearch to search for the relevant user profile from the information stored in the database, generating an Elasticsearch query to find matching records.
[0945] Input: Search keyword.
[0946] Output: A list of user profiles as search results.
[0947] Step 7:
[0948] Returning search results
[0949] The server sends the search results to the terminal in JSON format.
[0950] Input: A list of user profiles as search results.
[0951] Output: Search results returned to the device.
[0952] Step 8:
[0953] Displaying search results
[0954] The device analyzes the search results it receives and displays them to the user in list or card format.
[0955] Input: The search results returned.
[0956] Output: The search results displayed in a user-readable format.
[0957] Step 9:
[0958] Skills exchange application
[0959] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange.
[0960] Input: User profile for the skill you wish to exchange.
[0961] Output: Skill exchange application request.
[0962] Step 10:
[0963] Submit application information
[0964] The terminal transmits the application information generated in step 9 to the server.
[0965] Input: Skill Exchange Application Request.
[0966] Output: The application information sent to the server.
[0967] Step 11:
[0968] Database storage and notifications
[0969] The server stores the received application information in a database and sends notifications to the target users using FCM.
[0970] Input: Skills Exchange application data.
[0971] Output: Application information stored in the database and notification to the target user.
[0972] Step 12:
[0973] Proposal and Agreement
[0974] Users enter the terms and conditions of the skill exchange and the details of the transaction, and send them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until the terms are met. Socket.io is used here to synchronize data in real time.
[0975] Input: Skill exchange proposal information.
[0976] Output: Agreed skill exchange terms.
[0977] Step 13:
[0978] Notice of Agreement
[0979] Once an agreement is reached, the server notifies both terminals of the details of the agreement.
[0980] Input: Agreed skills exchange terms.
[0981] Output: Agreement notification message.
[0982] Step 14:
[0983] Setting up a Skills Exchange session
[0984] The user and the target user coordinate their schedules and set a specific date and time for the skill exchange session, and the server records this information.
[0985] Input: Scheduling information.
[0986] Output: The configured Skill Exchange session date and time information.
[0987] Step 15:
[0988] Conducting skills exchange sessions
[0989] The device supports video calling and chat functions, and skill exchange sessions are conducted using the Zoom API to set up video calls and Twilio for chat.
[0990] Input: Skills Exchange session implementation information.
[0991] Output: Session data as logs.
[0992] Step 16:
[0993] Session logging
[0994] The server logs the skill exchange session and sends notifications and reminders as needed.
[0995] Input: Skill Exchange session log information.
[0996] Output: Recorded session log and reminder notifications.
[0997] Step 17:
[0998] Enter your feedback
[0999] After the session, the user enters their evaluation in a feedback form and sends it to the server via their terminal.
[1000] Input: Feedback data.
[1001] Output: Feedback data sent to the server.
[1002] Step 18:
[1003] Feedback storage and notification
[1004] The server stores the feedback data in MongoDB and sends notifications to the target users.
[1005] Input: Feedback data.
[1006] Output: Stored feedback data and notification to target users.
[1007] Step 19:
[1008] Ratings and Rankings Updates
[1009] The server uses Redis to update ratings and rankings based on the results of skill exchange and feedback information.
[1010] Input: Feedback information and outcome data.
[1011] Output: Updated ratings and rankings data.
[1012] (Application example 1)
[1013] 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."
[1014] In conventional skill exchange systems, users have difficulty efficiently finding other users who share their interests and concerns, and it takes a lot of time to find an appropriate skill exchange partner. Furthermore, when exchanging skills, it is often unclear whether the abilities and needs of both parties match, which hinders efficient and effective skill improvement. Furthermore, there is a lack of systems that effectively utilize feedback and evaluations to objectively evaluate users' growth and skill improvement, which means users are unable to utilize feedback for further learning or skill improvement.
[1015] 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.
[1016] In this invention, the server includes: an input means for a user to input their abilities, interests, and fields of study; a means for storing the information input by the input means in a database; a means for searching for other users' abilities and available services based on the stored information; a means for displaying the search results; a means for submitting an application for an ability exchange to other users; a means for storing the application information in a database and notifying the target user; a means for proposing and agreeing to an ability exchange; a means for setting up and recording an ability exchange session; a means for inputting and storing feedback after the ability exchange session; a means for recording the ability results and updating the evaluation and ranking; a means for generating prompt sentences using a generative AI model when a user searches for the abilities of other users; and a means for recommending other users' abilities based on the generated prompt sentences. This allows users to efficiently find other users who match their interests and learning needs, making skill exchange more effective and efficient. Furthermore, by utilizing feedback and evaluation, a system can be realized that objectively evaluates a user's skill improvement and promotes growth.
[1017] "Ability" is a general term for the knowledge, skills, and experience that a user possesses.
[1018] "Interests" are areas or topics that a user is interested in and would like to learn more about.
[1019] The "area to learn" is a category of new knowledge or skills that the user wants to learn or acquire.
[1020] "Input means" is a general term for devices and systems that allow users to input their own information into a system.
[1021] A "database" is an information storage system for systematically storing and managing user information and skill information.
[1022] A "search tool" is a function or algorithm for finding information that matches certain criteria based on records in a database.
[1023] "Display means" refers to a device or interface that visually presents search results and registered information to the user.
[1024] An "application means" is a function or process that allows a user to propose the exchange of skills or abilities with other users.
[1025] A "notification mechanism" is a system for notifying target users of new information or changes in real time.
[1026] The "proposal means" is a function that allows the user to present the conditions and contents of the ability exchange.
[1027] An "agreement mechanism" is a process or function by which both parties reach an agreement on the terms of skill exchange.
[1028] "Session setting means" is a function for planning and starting conversations and activities for skill exchange.
[1029] "Recording Means" means a system or process for storing the content and progress of a Skill Exchange Session.
[1030] "Feedback means" is a system that allows users to provide evaluations and opinions to the other party after skill exchange.
[1031] The "evaluation means" is a function for quantitatively evaluating the improvement of a user's skills and abilities.
[1032] The "ranking update means" is a system for updating the relative ranking of users based on their skill exchange performance.
[1033] A "generative AI model" is an artificial intelligence that is trained to provide information based on generated text or prompts.
[1034] A "prompt" is a predefined piece of text generated by a generative AI model and used to elicit the information the user is seeking.
[1035] A "recommendation tool" is a system for selecting appropriate abilities from other users based on prompt sentences generated by a generative AI model.
[1036] An embodiment of the present invention is a skills exchange platform in the food delivery industry. This system allows users to share their skills, interests, and areas of study with other users and mutually improve their skills. A specific embodiment of the system is described below.
[1037] First, a user accesses the system using a smartphone. First, the user enters their abilities, interests, and the fields they wish to study. This information is entered through input fields in the smartphone application, and the entered information is sent to the server in real time. The server stores the information in a database and generates a user profile. This profile displays the user's abilities, interests, ratings, rank, etc.
[1038] Next, the user uses the search function. In the search function, the user enters keywords into the search bar to search for the abilities and services offered by other users. For example, by entering "efficient route planning" or "basic cooking skills," the user can find the relevant profile. The server searches the database for the relevant information and displays the results on the smartphone screen.
[1039] Users can apply for skill exchange with profiles they are interested in. For example, if a driver wants to learn "efficient route planning," they can apply to other users who have related skills. This application information is sent to the server and stored in a database. At the same time, a notification is sent to the target users.
[1040] Proposals and agreements for skill exchanges are made through the chat function. Users propose specific terms and content via text messages and exchange information until both parties reach an agreement. This exchange is recorded on the server, and even if an agreement is reached, it is saved in a form that can be viewed later.
[1041] After a specific date and time for the skills exchange is agreed upon, the session is conducted using video calls or chat functions. The smartphone application supports video calls and real-time chats, and logs of these sessions are also stored on the server. After the session ends, the user enters feedback and sends it to the server. The feedback is stored in a database and notified to the relevant user.
[1042] Furthermore, based on the feedback and ratings, the server will update the user's ratings and rankings, helping other users find suitable matches based on more reliable information.
[1043] Finally, the system uses a generative AI model to generate prompts when a user searches for other users' abilities. Based on these prompts, the server recommends other users' abilities that best suit the user. For example, if the generated prompt is "I want to learn about efficient route planning," the server will use this information to recommend users with the corresponding abilities.
[1044] Specific examples are shown below.
[1045] 1. Driver A enters that he / she wants to learn about "efficient route planning."
[1046] 2. The server searches the database for other users with the relevant capabilities and displays the results.
[1047] 3. Driver A is interested in learning the "basic cooking techniques" of a particular chef B.
[1048] 4. Driver A applies to Chef B for a skill exchange.
[1049] 5. Chef B agrees and the specific terms are agreed upon via chat.
[1050] 6. The two parties set up a video call session to learn.
[1051] 7. After the session, Driver A sends feedback to Chef B, which is saved in the system.
[1052] 8. The server updates the ratings and rankings based on this.
[1053] This will enable efficient and effective capacity development.
[1054] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1055] Step 1:
[1056] A user accesses the system via their smartphone and inputs their abilities, interests, and desired fields of study. They enter the required information into the input fields and send it to the server, which stores this information in a database and creates a new user profile.
[1057] Input: User profile information (e.g., abilities, interests, areas of study)
[1058] Data processing: storing information in a database and creating profiles
[1059] Output: New user profile
[1060] Step 2:
[1061] Users use the system's search function to search for keywords for capabilities or services they are interested in. They enter the keywords in the search bar and send them to the server, which searches the database to retrieve the corresponding user profile and sends it to the device.
[1062] Input: Search keyword (e.g. "efficient route planning")
[1063] Data processing: database search, acquisition of relevant profiles
[1064] Output: Search results (list of matching user profiles)
[1065] Step 3:
[1066] Users apply for a skills exchange with a profile they are interested in. They click the Apply button, enter their details, and send them to the server. The server stores the application information in a database and sends a notification to the target users.
[1067] Input: Application information (e.g., target user ID, desired skill exchange details)
[1068] Data processing: saving application information, generating notifications
[1069] Output: Application notification, database update
[1070] Step 4:
[1071] The target users receive a notification and confirm the proposal for the exchange. They then use the chat function to propose and amend specific terms and content through messages. The server records these messages and updates the log until an agreement is reached.
[1072] Input: Proposal message, Correction message
[1073] Data processing: recording messages, updating logs
[1074] Output: Log of conditions agreed upon
[1075] Step 5:
[1076] After the date and time for the capability exchange is agreed upon, the session is conducted using a video call or chat function. The device records a log of the session and sends it to the server, which then stores the log in a database.
[1077] Input: Video call logs, chat logs
[1078] Data processing: Log recording, database storage
[1079] Output: Session log
[1080] Step 6:
[1081] After the session ends, users input feedback to each other. The feedback is entered and sent to the server, which stores it in a database and notifies the other user.
[1082] Input: Feedback information (e.g., ratings, comments)
[1083] Data processing: feedback storage, notification generation
[1084] Output: Feedback notification, database update
[1085] Step 7:
[1086] The server updates the user's ratings and rankings based on the collected feedback and ratings. It references the database, calculates new rating values, and updates the rankings. It then updates the user profile with the new rating information.
[1087] Input: Feedback data, existing evaluation data
[1088] Data processing: Calculation of evaluation value, updating of ranking
[1089] Output: Updated user profile
[1090] Step 8:
[1091] The next time a user searches for other users' abilities, the generative AI model is used to generate a prompt. The AI model generates a prompt based on the information the user enters when using the search function, and the server sends it to the database. The server then recommends other users' abilities based on the generated prompt.
[1092] Input: Search criteria, past search data
[1093] Data processing: Prompt generation using generative AI models, database search
[1094] Output: Recommended user profile
[1095] For example, if a user generates a prompt sentence such as "I want to learn about efficient route planning," the server will recommend relevant user profiles based on the keyword "efficient route planning." In this way, users can quickly find the best match for their next learning or skill improvement.
[1096] 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.
[1097] The "Skill Chat Service" of this invention is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system aims to maximize the effectiveness of skill exchange by combining functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as an emotion engine to recognize and analyze user emotions.
[1098] 1. Registration Process
[1099] Users fill out a form to learn about their skills, interests, and areas of interest. The device captures this information and sends it to the server, which stores it in a database and creates a user profile.
[1100] 2. Skill Search Processing
[1101] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[1102] 3. Skill exchange request processing
[1103] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[1104] 4. Skill Exchange Agreement Processing
[1105] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[1106] 5. Skill Exchange Implementation Process
[1107] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[1108] During the skill exchange session, an emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[1109] 6. Feedback Processing
[1110] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion engine is also stored in the database and notified to the target user as part of the feedback.
[1111] 7. Skill Result Record Processing
[1112] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by the emotion engine. The updated rating and ranking information is displayed to the user via their device.
[1113] Specific examples
[1114] 1. Person C registers that he / she wants to provide "cooking" and learn "guitar."
[1115] 2. Mr. D registers saying that he is good at "guitar" and wants to learn "photography."
[1116] 3. Person C searches for the skill "guitar" and finds Person D's profile.
[1117] 4. C applies for a "cooking and guitar skill exchange."
[1118] 5. Mr. D agrees to this and they exchange messages to define the specific terms.
[1119] 6. Both parties agree to set up a skills exchange session.
[1120] 7. The session is carried out, with C learning guitar from D and D learning cooking from C. During this time, the emotion engine analyzes the emotions of C and D in real time and uses this information to guide the session.
[1121] 8. After the session ends, participants provide feedback to each other, which is then saved on the server. The emotional data collected by the emotion engine is also saved and used as part of the evaluation.
[1122] 9. The server updates C and D's ratings based on their feedback and achievements and reflects them in their profiles.
[1123] This format also allows users to receive emotional feedback, giving them a deeper understanding of their own skill development and the quality of their session.
[1124] The processing flow will be explained below.
[1125] Embodiments of the invention combining emotion engines using specific examples
[1126] Registration process
[1127] Step 1:
[1128] Users fill out a form to learn about their skills, interests, and areas of interest.
[1129] Step 2:
[1130] The terminal temporarily stores the input information.
[1131] Step 3:
[1132] The user clicks the "Register" button.
[1133] Step 4:
[1134] The terminal transmits the input information to the server.
[1135] Step 5:
[1136] The server stores the received information in a database and creates a user profile.
[1137] Step 6:
[1138] The server sends a response confirming the completion of registration to the terminal.
[1139] Step 7:
[1140] The terminal displays a message to the user indicating that registration is complete.
[1141] Skill search process
[1142] Step 1:
[1143] A user enters a keyword of interest into the skill search bar.
[1144] Step 2:
[1145] The terminal temporarily stores the keyword.
[1146] Step 3:
[1147] The user clicks the Search button.
[1148] Step 4:
[1149] The terminal transmits the keyword to the server.
[1150] Step 5:
[1151] The server searches the database for user profiles that match the keywords.
[1152] Step 6:
[1153] The server sends the search results to the terminal.
[1154] Step 7:
[1155] The terminal displays the search results to the user in a list format.
[1156] Skill exchange request processing
[1157] Step 1:
[1158] Users can select and view profiles of other users who have skills that interest them.
[1159] Step 2:
[1160] The device will display the selected profile.
[1161] Step 3:
[1162] The user clicks the "Apply for Skill Exchange" button.
[1163] Step 4:
[1164] The terminal transmits application information for skill exchange to the server.
[1165] Step 5:
[1166] The server stores the application information in a database and sends notifications to the target users.
[1167] Skill Exchange Agreement Processing
[1168] Step 1:
[1169] The target user sees the notification and opens a skill exchange request.
[1170] Step 2:
[1171] The target user enters information into a form to enter their agreement or proposed amendment.
[1172] Step 3:
[1173] The terminal sends the suggestions or modifications to the server.
[1174] Step 4:
[1175] The server sends the suggestions or modifications to the requesting user.
[1176] Step 5:
[1177] The user checks the proposal or amendment and agrees or proposes amendments again.
[1178] Step 6:
[1179] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[1180] Step 7:
[1181] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[1182] Skill exchange process
[1183] Step 1:
[1184] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[1185] Step 2:
[1186] The device checks the session date and time and method (video call, chat, etc.).
[1187] Step 3:
[1188] As the session date and time approaches, the server will send reminder notifications.
[1189] Step 4:
[1190] The user and the other user join the session at the set date and time.
[1191] Step 5:
[1192] The device will support the session using video calling and chat functions.
[1193] Step 6:
[1194] During the session, the emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time.
[1195] Step 7:
[1196] The server processes the recognized emotional information in real time and provides it as feedback to both parties.
[1197] Step 8:
[1198] Once the session is complete, the server records the session log and emotion data.
[1199] Feedback Processing
[1200] Step 1:
[1201] After the skill exchange session, the user enters their rating in the feedback form.
[1202] Step 2:
[1203] The terminal transmits the input feedback to the server.
[1204] Step 3:
[1205] The server stores the feedback in a database.
[1206] Step 4:
[1207] The server also stores the emotion data collected by the emotion engine along with the feedback and sends notifications to the target users.
[1208] Skill result recording processing
[1209] Step 1:
[1210] The server accumulates the results of the skill exchange and feedback information in a database.
[1211] Step 2:
[1212] The server takes into account the user's emotional information recognized by the emotion engine and updates the user's ratings and rankings using a rating and ranking algorithm.
[1213] Step 3:
[1214] Send updated ratings and ranking information to your device.
[1215] Step 4:
[1216] The device displays the latest ratings and ranking information to the user.
[1217] This specific processing flow enables more effective skill exchange between users, and maximizes user satisfaction and learning effectiveness through emotion analysis and evaluation.
[1218] Example 2
[1219] 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."
[1220] Conventional skill exchange platforms lack real-time feedback to improve the efficiency of skill exchange between users. They also lack the means to properly grasp users' emotional states and maximize the effectiveness of sessions. As a result, it is difficult to improve the user experience and the quality of skill exchange in a rational manner.
[1221] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1222] In this invention, the server includes: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and services that can be provided; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; a sentiment analysis means for automatically analyzing the user's sentiment; a means for providing feedback during the skill exchange session based on the sentiment information obtained by the sentiment analysis means; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating ratings and rankings. This makes it possible to visualize the quality of skill exchange sessions between users in real time and provide effective feedback, thereby improving the quality of skill exchange.
[1223] A "user" is an individual or organization that uses this system to provide information about their skills, interests, areas of study, etc.
[1224] "Input means" refers to an interface through which users input information such as skills, interests, and areas of study, and includes web forms and mobile applications.
[1225] The "database" is a digital storage system for storing and managing information entered by users, information on skill exchange, feedback, emotional data, etc.
[1226] "Search means" refers to a function that allows users to search for other users' skills and services that they can provide, and includes keyword search and filtering functions.
[1227] "Display means" refers to an interface for visually presenting search results and other information to a user, and refers to a display device such as a monitor, smartphone, or tablet.
[1228] The "application means" is a function that allows a user to apply to exchange skills with other users, and includes a dedicated form and a message function.
[1229] "Notification methods" are functions for communicating skill exchange applications and other important notifications to target users, and include email, in-app notifications, SMS, etc.
[1230] "Proposal and agreement means" refers to a function for proposing conditions for skill exchange and transaction details between users and obtaining agreement, and includes messaging and chat functions.
[1231] The "skill exchange session setting means" is a function that enables a user to set up a session for skill exchange, and includes a scheduling function that supports video calls and chat functions.
[1232] "Means for recording" is a function for saving the content and results of the skill exchange session in a database.
[1233] "Emotion analysis means" refers to technology that analyzes a user's facial expressions, voice, etc. to obtain emotional information in real time, and includes machine learning and computer vision technologies.
[1234] The "feedback means" is a function that allows users to enter evaluations and comments after a skill exchange session, and includes a dedicated form.
[1235] The "means for updating ratings and rankings" is a function for calculating user ratings and rankings based on acquired feedback information and emotional information, and updating them to the latest status.
[1236] This invention is a platform that allows users to exchange their skills and knowledge with other users and mutually improve their skills. This system combines functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as a sentiment analysis engine to recognize and analyze user sentiment and maximize the effectiveness of skill exchange.
[1237] Registration process
[1238] Users enter information into a form to input their skills, interests, and areas they want to learn. The device captures this information and sends it to the server. The server stores the information in a database and creates a user profile. For example, if a user inputs skills such as "cooking" or "guitar," the device sends this information in JSON format to the server, which stores it in a database (e.g., MySQL).
[1239] Skill search process
[1240] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user. Front-end technologies (e.g., React) can be used for this process.
[1241] Skill exchange request processing
[1242] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[1243] Skill Exchange Agreement Processing
[1244] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[1245] Skill exchange process
[1246] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The device supports video calls and chat functions, and the skill exchange session is conducted. The server records the session log and sends notifications and reminders as necessary. In addition, an emotion analysis engine operates during the skill exchange session, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[1247] Feedback Processing
[1248] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion analysis engine is also stored in the database and notified to the target user as part of the feedback.
[1249] Skill result recording processing
[1250] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by an emotion analysis engine. The updated rating and ranking information is displayed to the user via their device.
[1251] Example prompt
[1252] A concrete example will be given in which a user uses this system to improve their own skills.
[1253] 1. A user offers "cooking" and registers that they want to learn "guitar."
[1254] 2. Another user registers that they are good at "guitar" and want to learn "photography."
[1255] 3. A user searches for the skill "guitar" and finds the profile of the target user.
[1256] 4. A user applies for a "cooking and guitar skill exchange."
[1257] 5. The target user agrees to this and a message exchange takes place to define the specific terms.
[1258] 6. Both parties agree to set up a skills exchange session.
[1259] 7. The session is then carried out, with the user learning guitar from the target user and the target user learning cooking from the user. During this time, the emotion analysis engine analyzes the emotions of both parties in real time and uses this information to guide the session.
[1260] 8. After the session, participants provide feedback to each other, which is then saved on the server. Emotion data collected by the emotion analysis engine is also saved and used as part of the evaluation.
[1261] 9. The server updates the user and target user's ratings based on the feedback and achievements, and reflects them in the profile.
[1262] An example prompt is:
[1263] "Enter 'cooking' and 'guitar' on the registration page and click the submit button."
[1264] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1265] Registration process
[1266] Step 1:
[1267] A user visits a registration page and enters their name, skills, interests, and areas they would like to learn.
[1268] What happens: The user opens the registration page using a web browser and enters information into the input form.
[1269] Step 2:
[1270] The device retrieves the form content using JavaScript or other front-end technologies (e.g., React, Angular).
[1271] Input: Information entered by the user (name, skills, interests, areas of study)
[1272] Output: JSON format data
[1273] Step 3:
[1274] The device sends information to the server in JSON format via the REST API.
[1275] Input: JSON format data
[1276] Output: Data sent to the server
[1277] Step 4:
[1278] The server processes the received JSON data using a server-side programming language such as Python or Java.
[1279] Input: JSON format data
[1280] Output: Command to save to database
[1281] Step 5:
[1282] The server stores the information in a database such as MySQL or PostgreSQL.
[1283] Input: Save command
[1284] Output: Saved user profile
[1285] Step 6:
[1286] The server sends the newly created user profile information to the user as a confirmation email.
[1287] Input: User profile information
[1288] Output:Confirmation email
[1289] Skill search process
[1290] Step 1:
[1291] A user enters a keyword, such as "guitar," into the search bar on the homepage and clicks the search button.
[1292] Specific actions: The user enters keywords in the search bar and clicks the search button.
[1293] Step 2:
[1294] The device uses front-end technologies such as Vue.js to send keywords to the server via Ajax requests.
[1295] Input: The keyword entered by the user
[1296] Output: Request to server
[1297] Step 3:
[1298] The server executes an SQL query to retrieve user profiles corresponding to "guitar" from the database.
[1299] Input: A request to the server
[1300] Output: A list of user profiles
[1301] Step 4:
[1302] The server returns the acquired information to the terminal in JSON format.
[1303] Input: List of user profiles
[1304] Output: JSON format data
[1305] Step 5:
[1306] The device renders the results in HTML and displays them to the user.
[1307] Input: JSON format data
[1308] Output: Search results displayed
[1309] Skill exchange request processing
[1310] Step 1:
[1311] The user selects the profile of the other user from the search results and clicks the "Request Skill Exchange" button.
[1312] Specific operation: The user selects a specific user from the search results and presses the button to request a skill exchange.
[1313] Step 2:
[1314] The device sends the request information (requester, target, skills to be exchanged, etc.) to the server in JSON format.
[1315] Input: Request information
[1316] Output: Request to server
[1317] Step 3:
[1318] The server saves the request information in the database and sends a notification email to the target user.
[1319] Input: Request information
[1320] Output: Saved request information, notification email
[1321] Skill Exchange Agreement Processing
[1322] Step 1:
[1323] The user enters the conditions for skill exchange and transaction details, and presses the confirmation button.
[1324] Specific operation: The user enters the skill exchange conditions into the form and clicks the confirmation button.
[1325] Step 2:
[1326] The device sends the condition information to the server in JSON format.
[1327] Input: Condition information
[1328] Output: Request to server
[1329] Step 3:
[1330] The target user receives the notification, checks the conditions, and, if necessary, sends a correction proposal from the terminal to the server.
[1331] Input: Condition information
[1332] Output: A modification request to the server
[1333] Step 4:
[1334] The server confirms that an agreement has been reached and sends a notification of the agreement to both parties.
[1335] Input: Agreement information
[1336] Output: Notification of agreement
[1337] Skill exchange process
[1338] Step 1:
[1339] The user and the other user use the chat function to arrange a date and time for the session, and then use the schedule function to set the date and time for the session.
[1340] Specific operation: The user and the other user exchange messages to determine the date and time of the session.
[1341] Step 2:
[1342] The device initiates a video call session using WebRTC technology.
[1343] Input: Session initiation request
[1344] Output: Start a video call
[1345] Step 3:
[1346] The server logs the start and end of the session in a database and sends reminders.
[1347] Input: Session log information
[1348] Output: Logs saved to database, reminder notifications
[1349] Step 4:
[1350] The emotion analysis engine analyzes the user's facial expressions and voice data during the session and displays the analysis results in real time.
[1351] Input: User's facial expressions and voice data
[1352] Output: Real-time analysis results
[1353] Feedback Processing
[1354] Step 1:
[1355] The user opens the feedback form after the session and enters text and a rating score.
[1356] What happens: After a session, users access the feedback form and enter their ratings.
[1357] Step 2:
[1358] The device sends feedback information in JSON format to the server.
[1359] Input: Feedback information
[1360] Output: Request to server
[1361] Step 3:
[1362] The server stores the feedback information and the emotion data analyzed by the emotion engine in a database.
[1363] Input: Feedback information, emotion data
[1364] Output: Save to database
[1365] Step 4:
[1366] The server will send the saved feedback to the user via email.
[1367] Input: Feedback information
[1368] Output: Notification email
[1369] Skill result recording processing
[1370] Step 1:
[1371] The server collects the results of the skill exchange and feedback information in a database.
[1372] Specific operation: The server performs daily batch processing to compile skill exchange results and feedback information.
[1373] Step 2:
[1374] The server updates the ratings and rankings, taking into account the emotional data collected by the emotion engine.
[1375] Input: Feedback information, emotion data
[1376] Output: Updated ratings and rankings
[1377] Step 3:
[1378] Updated ratings and ranking information is sent to the device via API, and the device displays the latest information on the user profile page.
[1379] Input: Updated rating and ranking information
[1380] Output: Update user profile page
[1381] (Application example 2)
[1382] 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."
[1383] Conventional skill exchange platforms allow users to easily register the skills they can offer or the content they want to learn, and exchange skills with other users. However, they lack the means to maximize the effectiveness of skill exchange. They also lack the functionality to perform real-time sentiment analysis and provide feedback to improve session effectiveness. Therefore, a system that can improve the quality of skill exchange and user satisfaction is needed.
[1384] 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: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and available services based on the saved information; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; an emotion analysis means for maximizing the effect of the skill exchange based on emotion analysis; a means for recognizing and analyzing emotion information during the skill exchange session in real time; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating evaluations and rankings. This makes it possible to analyze the user's emotion information during the skill exchange session in real time and provide feedback based on that information.
[1385] "Input means" refers to a means by which a user inputs their skills, interests, and areas they wish to learn.
[1386] The "means for saving to a database" is a means for saving information input by a user through an input means to a database.
[1387] The "means for searching for skills and services that other users can provide" is a means for searching for skills that other users have and services that they can provide based on the stored information.
[1388] The "means for displaying search results" is a means for displaying search results for skills and services to the user.
[1389] The "means for applying for skill exchange" is a means for applying for skill exchange with another user.
[1390] The "means for notifying the target user" is a means for storing the application information in a database and sending a notification to the target user.
[1391] "Proposal and Agreement Means" refers to the means for making proposals and agreements to reach an agreement on skill exchange.
[1392] The "means for setting and recording a skill exchange session" is a means for setting a date for a skill exchange session and recording the content thereof.
[1393] "Emotion analysis means" refers to a means for performing emotion analysis in order to maximize the effect of skill exchange.
[1394] The "means for recognizing and analyzing in real time" refers to a means for recognizing and analyzing emotional information in real time during a skill exchange session.
[1395] The "means for inputting and saving feedback" refers to a means for inputting and saving feedback after a skill exchange session.
[1396] The "means for updating evaluations and rankings" refers to a means for recording the results of skill exchanges and updating evaluations and rankings based on that information.
[1397] A specific embodiment for implementing this invention will be described. This invention is a system for exchanging skills and knowledge with other users and mutually improving their skills. This system includes a function for maximizing the effectiveness of skill exchange sessions using emotion analysis. Each function of the system and its implementation means will be described below.
[1398] System Configuration
[1399] This system consists of a smartphone, a server, and a database. The smartphone functions as a terminal where users can input and retrieve information. The server manages user profiles, searches, manages skill exchanges, and performs sentiment analysis. The database stores user information, skill information, and feedback information.
[1400] Program processing explanation
[1401] Software used
[1402] Flask (Python): Web Application Framework
[1403] EmotionRecognitionEngine (hypothesis): Emotion analysis engine
[1404] Database class: A database module that manages profile and feedback information
[1405] Data processing and calculation
[1406] 1. User Registration
[1407] Using the input means of the smartphone, the user inputs their skills, interests, and areas they would like to learn.
[1408] The server stores the entered information in a database and creates a user profile.
[1409] 2. Skill Search
[1410] Users can use their smartphones to enter keywords and search for skills they are interested in.
[1411] The server searches the database for relevant user profiles based on the keywords and displays the results on the smartphone.
[1412] 3. Skill Exchange Request
[1413] When a user selects another user's profile and applies for a skill exchange, the server stores the information in a database and notifies the target user.
[1414] 4. Obtaining consent
[1415] Proposals and amendments are made between users to agree on the terms of skill exchange, which is done in real time through the server.
[1416] 5. Skills Exchange Session
[1417] Skill exchange sessions are conducted using smartphone video calls and chat functions, and the server records and manages logs of these sessions.
[1418] The emotion analysis engine recognizes and analyzes the user's emotional information in real time, and this information is used as feedback for the progress of the session.
[1419] 6. Feedback and Ratings
[1420] After the skill exchange session, the user enters feedback and sends it to the server, which stores the feedback information in a database along with sentiment analysis data.
[1421] Based on this information, user ratings and rankings are updated and displayed on smartphones.
[1422] Specific examples
[1423] For example, consider a case where a store staff member uses this system to improve their customer service skills. If store staff member A wants to improve their product knowledge and another store staff member, store staff member B, has that knowledge, store staff member A can use a skill-sharing app to request a skill exchange with store staff member B. Store staff members A and B will train via video call, during which the emotion analysis engine will analyze the emotions of both parties in real time and provide feedback according to the training's progress, thereby increasing the effectiveness of the training.
[1424] Prompt Sentence Examples
[1425] "I want to learn more about product A. Salesperson B seems to be very knowledgeable about it. I want the emotion engine to analyze my current learning progress and emotional state and provide effective feedback."
[1426] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1427] Step 1:
[1428] A user uses the input means of their smartphone to input their skills, interests, and areas they wish to learn. The input information is sent from the device to a server. The server stores the received information in a database and creates a user profile. Through this process, the user's skills and interests are digitized and used for later searches and matching.
[1429] Step 2:
[1430] A user enters keywords of interest into the skill search bar on their smartphone and clicks the search button. Based on this input, the device sends the keywords to the server. The server searches the database for user profiles that match the keywords and returns the results to the device. The device then displays the search results to the user, allowing the user to find other users who have skills of interest to them.
[1431] Step 3:
[1432] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The terminal sends the application information to the server, which stores the information in a database. At the same time, the server sends a skill exchange notification to the target user, who then receives the skill exchange request.
[1433] Step 4:
[1434] The user and the target user negotiate the terms of the skill exchange using proposal and agreement methods. Specifically, they exchange messages via their devices to present and modify the terms. Once an agreement is reached, the server stores the information and sends a final notification to both users. This concludes the skill exchange agreement.
[1435] Step 5:
[1436] The user and the target user set a date for the skill exchange session. This information is sent from the device to the server, which stores it in a database. On the day of the session, the skill exchange is carried out using the device's video call or chat functions. The server records the progress of the session in a log in real time, and an emotion analysis engine analyzes the user's facial expressions and voice to obtain emotional information. This improves the quality of the skill exchange.
[1437] Step 6:
[1438] After the skill exchange session, the user enters feedback using their smartphone. The feedback information is sent from the device to the server, which stores it in a database. Furthermore, emotional data generated by an emotion analysis engine is also included in the feedback, and the feedback is notified to the target user. This provides detailed feedback on the progress of the session.
[1439] Step 7:
[1440] The server evaluates the results of the skill exchange based on user feedback and sentiment analysis data, and records the results in a database. As a result, the user's ratings and rankings are updated and displayed on their smartphone. This allows users to check the degree of their skill improvement and their relative position compared to other users.
[1441] 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.
[1442] 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.
[1443] 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.
[1444] [Third embodiment]
[1445] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1446] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[1447] 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).
[1448] 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.
[1449] 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.
[1450] 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).
[1451] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[1452] 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.
[1453] 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.
[1454] 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.
[1455] 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.
[1456] 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."
[1457] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[1458] 1. Registration Process
[1459] Users input their skills, interests, and areas of interest, and the device captures this information and sends it to a server, which stores it in a database and creates a user profile.
[1460] 2. Skill Search Processing
[1461] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[1462] 3. Skill exchange request processing
[1463] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[1464] 4. Skill Exchange Agreement Processing
[1465] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[1466] 5. Skill Exchange Implementation Process
[1467] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[1468] 6. Feedback Processing
[1469] After the skill exchange session, the user enters their evaluation in a feedback form and sends it to the server via their device. The server stores the feedback in a database and notifies the user.
[1470] 7. Skill Result Record Processing
[1471] The server accumulates the results of the skill exchange and feedback information in a database, and updates the evaluations and rankings. The updated evaluations and rankings are displayed to the user via their device.
[1472] Specific examples
[1473] 1. Person A offers "Programming" and registers that he wants to learn "Korean."
[1474] 2. Person B registers saying that he is good at "Korean" and wants to learn "illustration."
[1475] 3. Person A searches for the "Korean" skill and finds Person B's profile.
[1476] 4. Person A applies for a "skill exchange in programming and Korean."
[1477] 5. Person B agrees to this and exchanges messages to define the specific terms.
[1478] 6. Both parties agree to set up a skills exchange session.
[1479] 7. The session takes place, and Person A learns Korean from Person B, and Person B learns programming from Person A.
[1480] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[1481] 9. The server updates A and B's ratings based on their feedback and achievements and reflects them in their profiles.
[1482] This allows both A and B to effectively learn new skills, and also allows other users to improve their skills through a similar process.
[1483] The processing flow will be explained below.
[1484] 1. Registration Process
[1485] Step 1:
[1486] Users fill out a form to learn about their skills, interests, and areas of interest.
[1487] Step 2:
[1488] The terminal temporarily stores the input information.
[1489] Step 3:
[1490] The user clicks the "Register" button.
[1491] Step 4:
[1492] The terminal transmits the input information to the server.
[1493] Step 5:
[1494] The server stores the received information in a database and creates a user profile.
[1495] Step 6:
[1496] The server sends a response confirming the completion of registration to the terminal.
[1497] Step 7:
[1498] The terminal displays a message to the user indicating that registration is complete.
[1499] 2. Skill Search Processing
[1500] Step 1:
[1501] A user enters a keyword of interest into the skill search bar.
[1502] Step 2:
[1503] The terminal temporarily stores the keyword.
[1504] Step 3:
[1505] The user clicks the Search button.
[1506] Step 4:
[1507] The terminal transmits the keyword to the server.
[1508] Step 5:
[1509] The server searches the database for user profiles that match the keywords.
[1510] Step 6:
[1511] The server sends the search results to the terminal.
[1512] Step 7:
[1513] The terminal displays the search results to the user in a list format.
[1514] 3. Skill exchange request processing
[1515] Step 1:
[1516] Users can select and view profiles of other users who have skills that interest them.
[1517] Step 2:
[1518] The device will display the selected profile.
[1519] Step 3:
[1520] The user clicks the "Apply for Skill Exchange" button.
[1521] Step 4:
[1522] The terminal transmits application information for skill exchange to the server.
[1523] Step 5:
[1524] The server stores the application information in a database and sends notifications to the target users.
[1525] 4. Skill Exchange Agreement Processing
[1526] Step 1:
[1527] The target user sees the notification and opens a skill exchange request.
[1528] Step 2:
[1529] The target user enters information into a form to enter their agreement or proposed amendment.
[1530] Step 3:
[1531] The terminal sends the suggestions or modifications to the server.
[1532] Step 4:
[1533] The server sends the suggestions or modifications to the requesting user.
[1534] Step 5:
[1535] The user checks the proposal or amendment and agrees or proposes amendments again.
[1536] Step 6:
[1537] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[1538] Step 7:
[1539] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[1540] 5. Skill Exchange Implementation Process
[1541] Step 1:
[1542] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[1543] Step 2:
[1544] The device checks the session date and time and method (video call, chat, etc.).
[1545] Step 3:
[1546] As the session date and time approaches, the server will send reminder notifications.
[1547] Step 4:
[1548] The user and the other user join the session at the set date and time.
[1549] Step 5:
[1550] The device will support the session using video calling and chat functions.
[1551] Step 6:
[1552] Once the session is complete, the server logs the session.
[1553] 6. Feedback Processing
[1554] Step 1:
[1555] After the skill exchange session, the user enters their rating in the feedback form.
[1556] Step 2:
[1557] The terminal transmits the input feedback to the server.
[1558] Step 3:
[1559] The server stores the feedback in a database.
[1560] Step 4:
[1561] The server sends a feedback notification to the target user.
[1562] 7. Skill Result Record Processing
[1563] Step 1:
[1564] The server accumulates the results of the skill exchange and feedback information in a database.
[1565] Step 2:
[1566] The server uses a rating and ranking algorithm to update the user's rating and ranking.
[1567] Step 3:
[1568] Send updated ratings and ranking information to your device.
[1569] Step 4:
[1570] The device displays the latest ratings and ranking information to the user.
[1571] Example 1
[1572] 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."
[1573] Previous skill exchange services lacked mechanisms for users to easily exchange their skills and areas of interest with other users and efficiently improve their skills. Furthermore, the lack of a real-time skill exchange or evaluation system limited user satisfaction and the effectiveness of skill improvement. This made it difficult for users to effectively learn skills and receive mutual feedback.
[1574] 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.
[1575] In this invention, the server includes an input means for users to input their skills, interests, and fields of study, a means for storing the information input by the input means in a database, and a means for searching for other users' skills and services they can provide based on the stored information. This allows users to effectively exchange skills and provide each other with feedback. In addition, a communication means for synchronizing data in real time allows for smooth skill exchange and agreement. Functional means for supporting video calls and chat functions enable effective communication between users and allow the exchange session to proceed smoothly. A means for storing feedback information in a database and notifying the target user allows for appropriate recording of skill achievements and updating evaluations and rankings in real time.
[1576] "Input means" refers to a device or method for a user to input their skills, interests, and areas of study.
[1577] A "database" refers to a system for systematically storing and managing information.
[1578] "Search means" refers to a method or device for searching for the skills and services that other users can provide based on information stored in a database.
[1579] "Display means" refers to a device or method for visually presenting search results or other information to a user.
[1580] The "application means" refers to a device or method for applying to exchange skills with other users.
[1581] "Notification means" refers to a device or method for notifying the target user of application information or other information.
[1582] "Proposal and Agreement Means" refers to a method or device for making proposals and agreements to reach an agreement on a skill exchange.
[1583] "Communication means" refers to devices and methods for synchronizing data in real time.
[1584] "Functional means" refers to devices and methods for supporting video calling and chat functions.
[1585] "Recording means" refers to a device or method for setting up a skills exchange session and recording the content thereof.
[1586] "Feedback means" refers to a device or method for inputting and storing feedback after a skills exchange session.
[1587] "Evaluation and ranking update means" refers to a device or method for recording skill performance and updating evaluations and rankings.
[1588] MODE FOR CARRYING OUT THE INVENTION
[1589] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[1590] System Configuration
[1591] 1. Input: The means by which users input their skills, interests, and learning interests. This can include forms in a browser or a mobile application.
[1592] 2. Database: This is the database where the server will store the input information from the user. Here we will use MySQL.
[1593] 3. Search method: This is a method for the server to search for other users' skills and services based on the information stored in the database. In this case, we will use Elasticsearch.
[1594] 4. Display: The device visually displays the search results to the user. Search results are displayed in list format or card format.
[1595] 5. Application method: A method for users to apply for skill exchange with other users. This is done through the user interface.
[1596] 6. Notification method: The server saves the application information in a database and notifies the target user. Firebase Cloud Messaging (FCM) is used.
[1597] 7. Proposal and Agreement: A proposal and agreement mechanism for users to agree on skill exchanges. It uses Socket.io to synchronize data in real time.
[1598] 8. Communication Method: This is the communication method that allows the server to synchronize data in real time, which allows for smooth data exchange.
[1599] 9. Functionality: The means by which the device supports video calling and chat functions. For video calling, we use the Zoom API, and for chat, we use Twilio.
[1600] 10. Recording: The server sets up and records the skill exchange session. This record is saved in a log file or similar.
[1601] 11. Feedback channel: A channel for users to enter and store feedback after a skill exchange session. Feedback information is stored in MongoDB.
[1602] 12. Evaluation and ranking update method: This is the method by which the server records skill results and updates evaluations and rankings. The server uses Redis to update rankings based on the evaluation results and feedback.
[1603] Hardware and software used
[1604] The implementation of this system utilizes the following hardware and software.
[1605] Input method: Browser, mobile application
[1606] Database: MySQL, MongoDB
[1607] Search method: Elasticsearch
[1608] Notification method: Firebase Cloud Messaging (FCM)
[1609] Communication method: Socket.io
[1610] Function: Zoom API (video call), Twilio (chat)
[1611] Rating and Ranking Update: Redis
[1612] Explanation with concrete examples
[1613] 1. User A offers "Programming" and registers that he wants to learn "Korean."
[1614] 2. User B registers that he is good at "Korean" and wants to learn "illustration."
[1615] 3. User A searches for the "Korean" skill and finds User B's profile.
[1616] 4. User A applies for a "Programming and Korean language skill exchange."
[1617] 5. User B agrees to this and exchanges messages to define the specific terms.
[1618] 6. Both parties agree to set up a skills exchange session.
[1619] 7. The session is conducted, with User A learning Korean from User B and User B learning programming from User A.
[1620] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[1621] 9. The server updates the ratings of User A and User B based on the feedback and achievements and reflects them in their profiles.
[1622] Prompt Sentence Examples
[1623] Below are some examples of prompts to input to a generative AI model (e.g., GPT-3).
[1624] Please explain in natural language the program processing flow of the "Skill Chat Service" system, including specific processing steps and detailed operations.
[1625] This prompt enables the generative AI model to generate text in natural language that explains the detailed operation of the system for each processing step.
[1626] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1627] Step 1:
[1628] Input Method
[1629] Users fill out a form in a browser or mobile application to enter their skills, interests, and areas they want to learn, and the data is compiled on the device in JSON format.
[1630] Output: User-entered data on skills, interests, and areas of study.
[1631] Step 2:
[1632] Sending information
[1633] The terminal sends the input data obtained in step 1 to the server via an HTTP POST request.
[1634] Input: User data in JSON format.
[1635] Output: User data sent to the server.
[1636] Step 3:
[1637] Database storage
[1638] The server parses the received user data and stores it in a MySQL database, using the SQL INSERT statement.
[1639] Input: User data in JSON format.
[1640] Output: User profile stored in the database.
[1641] Step 4:
[1642] Skill Search
[1643] Users enter keywords of interest in the skill search bar and click the search button.
[1644] Input: Search keyword.
[1645] Output: A search request for the skill containing the keyword.
[1646] Step 5:
[1647] Submitting a search request
[1648] The terminal sends the search keywords obtained in step 4 to the server via an HTTP POST request.
[1649] Input: Search keyword.
[1650] Output: The search terms sent to the server.
[1651] Step 6:
[1652] Database search
[1653] The server uses Elasticsearch to search for the relevant user profile from the information stored in the database, generating an Elasticsearch query to find matching records.
[1654] Input: Search keyword.
[1655] Output: A list of user profiles as search results.
[1656] Step 7:
[1657] Returning search results
[1658] The server sends the search results to the terminal in JSON format.
[1659] Input: A list of user profiles as search results.
[1660] Output: Search results returned to the device.
[1661] Step 8:
[1662] Displaying search results
[1663] The device analyzes the search results it receives and displays them to the user in list or card format.
[1664] Input: The search results returned.
[1665] Output: The search results displayed in a user-readable format.
[1666] Step 9:
[1667] Skills exchange application
[1668] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange.
[1669] Input: User profile for the skill you wish to exchange.
[1670] Output: Skill exchange application request.
[1671] Step 10:
[1672] Submit application information
[1673] The terminal transmits the application information generated in step 9 to the server.
[1674] Input: Skill Exchange Application Request.
[1675] Output: The application information sent to the server.
[1676] Step 11:
[1677] Database storage and notifications
[1678] The server stores the received application information in a database and sends notifications to the target users using FCM.
[1679] Input: Skills Exchange application data.
[1680] Output: Application information stored in the database and notification to the target user.
[1681] Step 12:
[1682] Proposal and Agreement
[1683] Users enter the terms and conditions of the skill exchange and the details of the transaction, and send them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until the terms are met. Socket.io is used here to synchronize data in real time.
[1684] Input: Skill exchange proposal information.
[1685] Output: Agreed skill exchange terms.
[1686] Step 13:
[1687] Notice of Agreement
[1688] Once an agreement is reached, the server notifies both terminals of the details of the agreement.
[1689] Input: Agreed skills exchange terms.
[1690] Output: Agreement notification message.
[1691] Step 14:
[1692] Setting up a Skills Exchange session
[1693] The user and the target user coordinate their schedules and set a specific date and time for the skill exchange session, and the server records this information.
[1694] Input: Scheduling information.
[1695] Output: The configured Skill Exchange session date and time information.
[1696] Step 15:
[1697] Conducting skills exchange sessions
[1698] The device supports video calling and chat functions, and skill exchange sessions are conducted using the Zoom API to set up video calls and Twilio for chat.
[1699] Input: Skills Exchange session implementation information.
[1700] Output: Session data as logs.
[1701] Step 16:
[1702] Session logging
[1703] The server logs the skill exchange session and sends notifications and reminders as needed.
[1704] Input: Skill Exchange session log information.
[1705] Output: Recorded session log and reminder notifications.
[1706] Step 17:
[1707] Enter your feedback
[1708] After the session, the user enters their evaluation in a feedback form and sends it to the server via their terminal.
[1709] Input: Feedback data.
[1710] Output: Feedback data sent to the server.
[1711] Step 18:
[1712] Feedback storage and notification
[1713] The server stores the feedback data in MongoDB and sends notifications to the target users.
[1714] Input: Feedback data.
[1715] Output: Stored feedback data and notification to target users.
[1716] Step 19:
[1717] Ratings and Rankings Updates
[1718] The server uses Redis to update ratings and rankings based on the results of skill exchange and feedback information.
[1719] Input: Feedback information and outcome data.
[1720] Output: Updated ratings and rankings data.
[1721] (Application example 1)
[1722] 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."
[1723] In conventional skill exchange systems, users have difficulty efficiently finding other users who share their interests and concerns, and it takes a lot of time to find an appropriate skill exchange partner. Furthermore, when exchanging skills, it is often unclear whether the abilities and needs of both parties match, which hinders efficient and effective skill improvement. Furthermore, there is a lack of systems that effectively utilize feedback and evaluations to objectively evaluate users' growth and skill improvement, which means users are unable to utilize feedback for further learning or skill improvement.
[1724] 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.
[1725] In this invention, the server includes: an input means for a user to input their abilities, interests, and fields of study; a means for storing the information input by the input means in a database; a means for searching for other users' abilities and available services based on the stored information; a means for displaying the search results; a means for submitting an application for an ability exchange to other users; a means for storing the application information in a database and notifying the target user; a means for proposing and agreeing to an ability exchange; a means for setting up and recording an ability exchange session; a means for inputting and storing feedback after the ability exchange session; a means for recording the ability results and updating the evaluation and ranking; a means for generating prompt sentences using a generative AI model when a user searches for the abilities of other users; and a means for recommending other users' abilities based on the generated prompt sentences. This allows users to efficiently find other users who match their interests and learning needs, making skill exchange more effective and efficient. Furthermore, by utilizing feedback and evaluation, a system can be realized that objectively evaluates a user's skill improvement and promotes growth.
[1726] "Ability" is a general term for the knowledge, skills, and experience that a user possesses.
[1727] "Interests" are areas or topics that a user is interested in and would like to learn more about.
[1728] The "area to learn" is a category of new knowledge or skills that the user wants to learn or acquire.
[1729] "Input means" is a general term for devices and systems that allow users to input their own information into a system.
[1730] A "database" is an information storage system for systematically storing and managing user information and skill information.
[1731] A "search tool" is a function or algorithm for finding information that matches certain criteria based on records in a database.
[1732] "Display means" refers to a device or interface that visually presents search results and registered information to the user.
[1733] An "application means" is a function or process that allows a user to propose the exchange of skills or abilities with other users.
[1734] A "notification mechanism" is a system for notifying target users of new information or changes in real time.
[1735] The "proposal means" is a function that allows the user to present the conditions and contents of the ability exchange.
[1736] An "agreement mechanism" is a process or function by which both parties reach an agreement on the terms of skill exchange.
[1737] "Session setting means" is a function for planning and starting conversations and activities for skill exchange.
[1738] "Recording Means" means a system or process for storing the content and progress of a Skill Exchange Session.
[1739] "Feedback means" is a system that allows users to provide evaluations and opinions to the other party after skill exchange.
[1740] The "evaluation means" is a function for quantitatively evaluating the improvement of a user's skills and abilities.
[1741] The "ranking update means" is a system for updating the relative ranking of users based on their skill exchange performance.
[1742] A "generative AI model" is an artificial intelligence that is trained to provide information based on generated text or prompts.
[1743] A "prompt" is a predefined piece of text generated by a generative AI model and used to elicit the information the user is seeking.
[1744] A "recommendation tool" is a system for selecting appropriate abilities from other users based on prompt sentences generated by a generative AI model.
[1745] An embodiment of the present invention is a skills exchange platform in the food delivery industry. This system allows users to share their skills, interests, and areas of study with other users and mutually improve their skills. A specific embodiment of the system is described below.
[1746] First, a user accesses the system using a smartphone. First, the user enters their abilities, interests, and the fields they wish to study. This information is entered through input fields in the smartphone application, and the entered information is sent to the server in real time. The server stores the information in a database and generates a user profile. This profile displays the user's abilities, interests, ratings, rank, etc.
[1747] Next, the user uses the search function. In the search function, the user enters keywords into the search bar to search for the abilities and services offered by other users. For example, by entering "efficient route planning" or "basic cooking skills," the user can find the relevant profile. The server searches the database for the relevant information and displays the results on the smartphone screen.
[1748] Users can apply for skill exchange with profiles they are interested in. For example, if a driver wants to learn "efficient route planning," they can apply to other users who have related skills. This application information is sent to the server and stored in a database. At the same time, a notification is sent to the target users.
[1749] Proposals and agreements for skill exchanges are made through the chat function. Users propose specific terms and content via text messages and exchange information until both parties reach an agreement. This exchange is recorded on the server, and even if an agreement is reached, it is saved in a form that can be viewed later.
[1750] After a specific date and time for the skills exchange is agreed upon, the session is conducted using video calls or chat functions. The smartphone application supports video calls and real-time chats, and logs of these sessions are also stored on the server. After the session ends, the user enters feedback and sends it to the server. The feedback is stored in a database and notified to the relevant user.
[1751] Furthermore, based on the feedback and ratings, the server will update the user's ratings and rankings, helping other users find suitable matches based on more reliable information.
[1752] Finally, the system uses a generative AI model to generate prompts when a user searches for other users' abilities. Based on these prompts, the server recommends other users' abilities that best suit the user. For example, if the generated prompt is "I want to learn about efficient route planning," the server will use this information to recommend users with the corresponding abilities.
[1753] Specific examples are shown below.
[1754] 1. Driver A enters that he / she wants to learn about "efficient route planning."
[1755] 2. The server searches the database for other users with the relevant capabilities and displays the results.
[1756] 3. Driver A is interested in learning the "basic cooking techniques" of a particular chef B.
[1757] 4. Driver A applies to Chef B for a skill exchange.
[1758] 5. Chef B agrees and the specific terms are agreed upon via chat.
[1759] 6. The two parties set up a video call session to learn.
[1760] 7. After the session, Driver A sends feedback to Chef B, which is saved in the system.
[1761] 8. The server updates the ratings and rankings based on this.
[1762] This will enable efficient and effective capacity development.
[1763] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1764] Step 1:
[1765] A user accesses the system via their smartphone and inputs their abilities, interests, and desired fields of study. They enter the required information into the input fields and send it to the server, which stores this information in a database and creates a new user profile.
[1766] Input: User profile information (e.g., abilities, interests, areas of study)
[1767] Data processing: storing information in a database and creating profiles
[1768] Output: New user profile
[1769] Step 2:
[1770] Users use the system's search function to search for keywords for capabilities or services they are interested in. They enter the keywords in the search bar and send them to the server, which searches the database to retrieve the corresponding user profile and sends it to the device.
[1771] Input: Search keyword (e.g. "efficient route planning")
[1772] Data processing: database search, acquisition of relevant profiles
[1773] Output: Search results (list of matching user profiles)
[1774] Step 3:
[1775] Users apply for a skills exchange with a profile they are interested in. They click the Apply button, enter their details, and send them to the server. The server stores the application information in a database and sends a notification to the target users.
[1776] Input: Application information (e.g., target user ID, desired skill exchange details)
[1777] Data processing: saving application information, generating notifications
[1778] Output: Application notification, database update
[1779] Step 4:
[1780] The target users receive a notification and confirm the proposal for the exchange. They then use the chat function to propose and amend specific terms and content through messages. The server records these messages and updates the log until an agreement is reached.
[1781] Input: Proposal message, Correction message
[1782] Data processing: recording messages, updating logs
[1783] Output: Log of conditions agreed upon
[1784] Step 5:
[1785] After the date and time for the capability exchange is agreed upon, the session is conducted using a video call or chat function. The device records a log of the session and sends it to the server, which then stores the log in a database.
[1786] Input: Video call logs, chat logs
[1787] Data processing: Log recording, database storage
[1788] Output: Session log
[1789] Step 6:
[1790] After the session ends, users input feedback to each other. The feedback is entered and sent to the server, which stores it in a database and notifies the other user.
[1791] Input: Feedback information (e.g., ratings, comments)
[1792] Data processing: feedback storage, notification generation
[1793] Output: Feedback notification, database update
[1794] Step 7:
[1795] The server updates the user's ratings and rankings based on the collected feedback and ratings. It references the database, calculates new rating values, and updates the rankings. It then updates the user profile with the new rating information.
[1796] Input: Feedback data, existing evaluation data
[1797] Data processing: Calculation of evaluation value, updating of ranking
[1798] Output: Updated user profile
[1799] Step 8:
[1800] The next time a user searches for other users' abilities, the generative AI model is used to generate a prompt. The AI model generates a prompt based on the information the user enters when using the search function, and the server sends it to the database. The server then recommends other users' abilities based on the generated prompt.
[1801] Input: Search criteria, past search data
[1802] Data processing: Prompt generation using generative AI models, database search
[1803] Output: Recommended user profile
[1804] For example, if a user generates a prompt sentence such as "I want to learn about efficient route planning," the server will recommend relevant user profiles based on the keyword "efficient route planning." In this way, users can quickly find the best match for their next learning or skill improvement.
[1805] 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.
[1806] The "Skill Chat Service" of this invention is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system aims to maximize the effectiveness of skill exchange by combining functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as an emotion engine to recognize and analyze user emotions.
[1807] 1. Registration Process
[1808] Users fill out a form to learn about their skills, interests, and areas of interest. The device captures this information and sends it to the server, which stores it in a database and creates a user profile.
[1809] 2. Skill Search Processing
[1810] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[1811] 3. Skill exchange request processing
[1812] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[1813] 4. Skill Exchange Agreement Processing
[1814] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[1815] 5. Skill Exchange Implementation Process
[1816] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[1817] During the skill exchange session, an emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[1818] 6. Feedback Processing
[1819] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion engine is also stored in the database and notified to the target user as part of the feedback.
[1820] 7. Skill Result Record Processing
[1821] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by the emotion engine. The updated rating and ranking information is displayed to the user via their device.
[1822] Specific examples
[1823] 1. Person C registers that he / she wants to provide "cooking" and learn "guitar."
[1824] 2. Mr. D registers saying that he is good at "guitar" and wants to learn "photography."
[1825] 3. Person C searches for the skill "guitar" and finds Person D's profile.
[1826] 4. C applies for a "cooking and guitar skill exchange."
[1827] 5. Mr. D agrees to this and they exchange messages to define the specific terms.
[1828] 6. Both parties agree to set up a skills exchange session.
[1829] 7. The session is carried out, with C learning guitar from D and D learning cooking from C. During this time, the emotion engine analyzes the emotions of C and D in real time and uses this information to guide the session.
[1830] 8. After the session ends, participants provide feedback to each other, which is then saved on the server. The emotional data collected by the emotion engine is also saved and used as part of the evaluation.
[1831] 9. The server updates C and D's ratings based on their feedback and achievements and reflects them in their profiles.
[1832] This format also allows users to receive emotional feedback, giving them a deeper understanding of their own skill development and the quality of their session.
[1833] The processing flow will be explained below.
[1834] Embodiments of the invention combining emotion engines using specific examples
[1835] Registration process
[1836] Step 1:
[1837] Users fill out a form to learn about their skills, interests, and areas of interest.
[1838] Step 2:
[1839] The terminal temporarily stores the input information.
[1840] Step 3:
[1841] The user clicks the "Register" button.
[1842] Step 4:
[1843] The terminal transmits the input information to the server.
[1844] Step 5:
[1845] The server stores the received information in a database and creates a user profile.
[1846] Step 6:
[1847] The server sends a response confirming the completion of registration to the terminal.
[1848] Step 7:
[1849] The terminal displays a message to the user indicating that registration is complete.
[1850] Skill search process
[1851] Step 1:
[1852] A user enters a keyword of interest into the skill search bar.
[1853] Step 2:
[1854] The terminal temporarily stores the keyword.
[1855] Step 3:
[1856] The user clicks the Search button.
[1857] Step 4:
[1858] The terminal transmits the keyword to the server.
[1859] Step 5:
[1860] The server searches the database for user profiles that match the keywords.
[1861] Step 6:
[1862] The server sends the search results to the terminal.
[1863] Step 7:
[1864] The terminal displays the search results to the user in a list format.
[1865] Skill exchange request processing
[1866] Step 1:
[1867] Users can select and view profiles of other users who have skills that interest them.
[1868] Step 2:
[1869] The device will display the selected profile.
[1870] Step 3:
[1871] The user clicks the "Apply for Skill Exchange" button.
[1872] Step 4:
[1873] The terminal transmits application information for skill exchange to the server.
[1874] Step 5:
[1875] The server stores the application information in a database and sends notifications to the target users.
[1876] Skill Exchange Agreement Processing
[1877] Step 1:
[1878] The target user sees the notification and opens a skill exchange request.
[1879] Step 2:
[1880] The target user enters information into a form to enter their agreement or proposed amendment.
[1881] Step 3:
[1882] The terminal sends the suggestions or modifications to the server.
[1883] Step 4:
[1884] The server sends the suggestions or modifications to the requesting user.
[1885] Step 5:
[1886] The user checks the proposal or amendment and agrees or proposes amendments again.
[1887] Step 6:
[1888] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[1889] Step 7:
[1890] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[1891] Skill exchange process
[1892] Step 1:
[1893] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[1894] Step 2:
[1895] The device checks the session date and time and method (video call, chat, etc.).
[1896] Step 3:
[1897] As the session date and time approaches, the server will send reminder notifications.
[1898] Step 4:
[1899] The user and the other user join the session at the set date and time.
[1900] Step 5:
[1901] The device will support the session using video calling and chat functions.
[1902] Step 6:
[1903] During the session, the emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time.
[1904] Step 7:
[1905] The server processes the recognized emotional information in real time and provides it as feedback to both parties.
[1906] Step 8:
[1907] Once the session is complete, the server records the session log and emotion data.
[1908] Feedback Processing
[1909] Step 1:
[1910] After the skill exchange session, the user enters their rating in the feedback form.
[1911] Step 2:
[1912] The terminal transmits the input feedback to the server.
[1913] Step 3:
[1914] The server stores the feedback in a database.
[1915] Step 4:
[1916] The server also stores the emotion data collected by the emotion engine along with the feedback and sends notifications to the target users.
[1917] Skill result recording processing
[1918] Step 1:
[1919] The server accumulates the results of the skill exchange and feedback information in a database.
[1920] Step 2:
[1921] The server takes into account the user's emotional information recognized by the emotion engine and updates the user's ratings and rankings using a rating and ranking algorithm.
[1922] Step 3:
[1923] Send updated ratings and ranking information to your device.
[1924] Step 4:
[1925] The device displays the latest ratings and ranking information to the user.
[1926] This specific processing flow enables more effective skill exchange between users, and maximizes user satisfaction and learning effectiveness through emotion analysis and evaluation.
[1927] Example 2
[1928] 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."
[1929] Conventional skill exchange platforms lack real-time feedback to improve the efficiency of skill exchange between users. They also lack the means to properly grasp users' emotional states and maximize the effectiveness of sessions. As a result, it is difficult to improve the user experience and the quality of skill exchange in a rational manner.
[1930] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1931] In this invention, the server includes: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and services that can be provided; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; a sentiment analysis means for automatically analyzing the user's sentiment; a means for providing feedback during the skill exchange session based on the sentiment information obtained by the sentiment analysis means; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating ratings and rankings. This makes it possible to visualize the quality of skill exchange sessions between users in real time and provide effective feedback, thereby improving the quality of skill exchange.
[1932] A "user" is an individual or organization that uses this system to provide information about their skills, interests, areas of study, etc.
[1933] "Input means" refers to an interface through which users input information such as skills, interests, and areas of study, and includes web forms and mobile applications.
[1934] The "database" is a digital storage system for storing and managing information entered by users, information on skill exchange, feedback, emotional data, etc.
[1935] "Search means" refers to a function that allows users to search for other users' skills and services that they can provide, and includes keyword search and filtering functions.
[1936] "Display means" refers to an interface for visually presenting search results and other information to a user, and refers to a display device such as a monitor, smartphone, or tablet.
[1937] The "application means" is a function that allows a user to apply to exchange skills with other users, and includes a dedicated form and a message function.
[1938] "Notification methods" are functions for communicating skill exchange applications and other important notifications to target users, and include email, in-app notifications, SMS, etc.
[1939] "Proposal and agreement means" refers to a function for proposing conditions for skill exchange and transaction details between users and obtaining agreement, and includes messaging and chat functions.
[1940] The "skill exchange session setting means" is a function that enables a user to set up a session for skill exchange, and includes a scheduling function that supports video calls and chat functions.
[1941] "Means for recording" is a function for saving the content and results of the skill exchange session in a database.
[1942] "Emotion analysis means" refers to technology that analyzes a user's facial expressions, voice, etc. to obtain emotional information in real time, and includes machine learning and computer vision technologies.
[1943] The "feedback means" is a function that allows users to enter evaluations and comments after a skill exchange session, and includes a dedicated form.
[1944] The "means for updating ratings and rankings" is a function for calculating user ratings and rankings based on acquired feedback information and emotional information, and updating them to the latest status.
[1945] This invention is a platform that allows users to exchange their skills and knowledge with other users and mutually improve their skills. This system combines functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as a sentiment analysis engine to recognize and analyze user sentiment and maximize the effectiveness of skill exchange.
[1946] Registration process
[1947] Users enter information into a form to input their skills, interests, and areas they want to learn. The device captures this information and sends it to the server. The server stores the information in a database and creates a user profile. For example, if a user inputs skills such as "cooking" or "guitar," the device sends this information in JSON format to the server, which stores it in a database (e.g., MySQL).
[1948] Skill search process
[1949] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user. Front-end technologies (e.g., React) can be used for this process.
[1950] Skill exchange request processing
[1951] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[1952] Skill Exchange Agreement Processing
[1953] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[1954] Skill exchange process
[1955] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The device supports video calls and chat functions, and the skill exchange session is conducted. The server records the session log and sends notifications and reminders as necessary. In addition, an emotion analysis engine operates during the skill exchange session, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[1956] Feedback Processing
[1957] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion analysis engine is also stored in the database and notified to the target user as part of the feedback.
[1958] Skill result recording processing
[1959] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by an emotion analysis engine. The updated rating and ranking information is displayed to the user via their device.
[1960] Example prompt
[1961] A concrete example will be given in which a user uses this system to improve their own skills.
[1962] 1. A user offers "cooking" and registers that they want to learn "guitar."
[1963] 2. Another user registers that they are good at "guitar" and want to learn "photography."
[1964] 3. A user searches for the skill "guitar" and finds the profile of the target user.
[1965] 4. A user applies for a "cooking and guitar skill exchange."
[1966] 5. The target user agrees to this and a message exchange takes place to define the specific terms.
[1967] 6. Both parties agree to set up a skills exchange session.
[1968] 7. The session is then carried out, with the user learning guitar from the target user and the target user learning cooking from the user. During this time, the emotion analysis engine analyzes the emotions of both parties in real time and uses this information to guide the session.
[1969] 8. After the session, participants provide feedback to each other, which is then saved on the server. Emotion data collected by the emotion analysis engine is also saved and used as part of the evaluation.
[1970] 9. The server updates the user and target user's ratings based on the feedback and achievements, and reflects them in the profile.
[1971] An example prompt is:
[1972] "Enter 'cooking' and 'guitar' on the registration page and click the submit button."
[1973] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1974] Registration process
[1975] Step 1:
[1976] A user visits a registration page and enters their name, skills, interests, and areas they would like to learn.
[1977] What happens: The user opens the registration page using a web browser and enters information into the input form.
[1978] Step 2:
[1979] The device retrieves the form content using JavaScript or other front-end technologies (e.g., React, Angular).
[1980] Input: Information entered by the user (name, skills, interests, areas of study)
[1981] Output: JSON format data
[1982] Step 3:
[1983] The device sends information to the server in JSON format via the REST API.
[1984] Input: JSON format data
[1985] Output: Data sent to the server
[1986] Step 4:
[1987] The server processes the received JSON data using a server-side programming language such as Python or Java.
[1988] Input: JSON format data
[1989] Output: Command to save to database
[1990] Step 5:
[1991] The server stores the information in a database such as MySQL or PostgreSQL.
[1992] Input: Save command
[1993] Output: Saved user profile
[1994] Step 6:
[1995] The server sends the newly created user profile information to the user as a confirmation email.
[1996] Input: User profile information
[1997] Output:Confirmation email
[1998] Skill search process
[1999] Step 1:
[2000] A user enters a keyword, such as "guitar," into the search bar on the homepage and clicks the search button.
[2001] Specific actions: The user enters keywords in the search bar and clicks the search button.
[2002] Step 2:
[2003] The device uses front-end technologies such as Vue.js to send keywords to the server via Ajax requests.
[2004] Input: The keyword entered by the user
[2005] Output: Request to server
[2006] Step 3:
[2007] The server executes an SQL query to retrieve user profiles corresponding to "guitar" from the database.
[2008] Input: A request to the server
[2009] Output: A list of user profiles
[2010] Step 4:
[2011] The server returns the acquired information to the terminal in JSON format.
[2012] Input: List of user profiles
[2013] Output: JSON format data
[2014] Step 5:
[2015] The device renders the results in HTML and displays them to the user.
[2016] Input: JSON format data
[2017] Output: Search results displayed
[2018] Skill exchange request processing
[2019] Step 1:
[2020] The user selects the profile of the other user from the search results and clicks the "Request Skill Exchange" button.
[2021] Specific operation: The user selects a specific user from the search results and presses the button to request a skill exchange.
[2022] Step 2:
[2023] The device sends the request information (requester, target, skills to be exchanged, etc.) to the server in JSON format.
[2024] Input: Request information
[2025] Output: Request to server
[2026] Step 3:
[2027] The server saves the request information in the database and sends a notification email to the target user.
[2028] Input: Request information
[2029] Output: Saved request information, notification email
[2030] Skill Exchange Agreement Processing
[2031] Step 1:
[2032] The user enters the conditions for skill exchange and transaction details, and presses the confirmation button.
[2033] Specific operation: The user enters the skill exchange conditions into the form and clicks the confirmation button.
[2034] Step 2:
[2035] The device sends the condition information to the server in JSON format.
[2036] Input: Condition information
[2037] Output: Request to server
[2038] Step 3:
[2039] The target user receives the notification, checks the conditions, and, if necessary, sends a correction proposal from the terminal to the server.
[2040] Input: Condition information
[2041] Output: A modification request to the server
[2042] Step 4:
[2043] The server confirms that an agreement has been reached and sends a notification of the agreement to both parties.
[2044] Input: Agreement information
[2045] Output: Notification of agreement
[2046] Skill exchange process
[2047] Step 1:
[2048] The user and the other user use the chat function to arrange a date and time for the session, and then use the schedule function to set the date and time for the session.
[2049] Specific operation: The user and the other user exchange messages to determine the date and time of the session.
[2050] Step 2:
[2051] The device initiates a video call session using WebRTC technology.
[2052] Input: Session initiation request
[2053] Output: Start a video call
[2054] Step 3:
[2055] The server logs the start and end of the session in a database and sends reminders.
[2056] Input: Session log information
[2057] Output: Logs saved to database, reminder notifications
[2058] Step 4:
[2059] The emotion analysis engine analyzes the user's facial expressions and voice data during the session and displays the analysis results in real time.
[2060] Input: User's facial expressions and voice data
[2061] Output: Real-time analysis results
[2062] Feedback Processing
[2063] Step 1:
[2064] The user opens the feedback form after the session and enters text and a rating score.
[2065] What happens: After a session, users access the feedback form and enter their ratings.
[2066] Step 2:
[2067] The device sends feedback information in JSON format to the server.
[2068] Input: Feedback information
[2069] Output: Request to server
[2070] Step 3:
[2071] The server stores the feedback information and the emotion data analyzed by the emotion engine in a database.
[2072] Input: Feedback information, emotion data
[2073] Output: Save to database
[2074] Step 4:
[2075] The server will send the saved feedback to the user via email.
[2076] Input: Feedback information
[2077] Output: Notification email
[2078] Skill result recording processing
[2079] Step 1:
[2080] The server collects the results of the skill exchange and feedback information in a database.
[2081] Specific operation: The server performs daily batch processing to compile skill exchange results and feedback information.
[2082] Step 2:
[2083] The server updates the ratings and rankings, taking into account the emotional data collected by the emotion engine.
[2084] Input: Feedback information, emotion data
[2085] Output: Updated ratings and rankings
[2086] Step 3:
[2087] Updated ratings and ranking information is sent to the device via API, and the device displays the latest information on the user profile page.
[2088] Input: Updated rating and ranking information
[2089] Output: Update user profile page
[2090] (Application example 2)
[2091] 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."
[2092] Conventional skill exchange platforms allow users to easily register the skills they can offer or the content they want to learn, and exchange skills with other users. However, they lack the means to maximize the effectiveness of skill exchange. They also lack the functionality to perform real-time sentiment analysis and provide feedback to improve session effectiveness. Therefore, a system that can improve the quality of skill exchange and user satisfaction is needed.
[2093] 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: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and available services based on the saved information; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; an emotion analysis means for maximizing the effect of the skill exchange based on emotion analysis; a means for recognizing and analyzing emotion information during the skill exchange session in real time; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating evaluations and rankings. This makes it possible to analyze the user's emotion information during the skill exchange session in real time and provide feedback based on that information.
[2094] "Input means" refers to a means by which a user inputs their skills, interests, and areas they wish to learn.
[2095] The "means for saving to a database" is a means for saving information input by a user through an input means to a database.
[2096] The "means for searching for skills and services that other users can provide" is a means for searching for skills that other users have and services that they can provide based on the stored information.
[2097] The "means for displaying search results" is a means for displaying search results for skills and services to the user.
[2098] The "means for applying for skill exchange" is a means for applying for skill exchange with another user.
[2099] The "means for notifying the target user" is a means for storing the application information in a database and sending a notification to the target user.
[2100] "Proposal and Agreement Means" refers to the means for making proposals and agreements to reach an agreement on skill exchange.
[2101] The "means for setting and recording a skill exchange session" is a means for setting a date for a skill exchange session and recording the content thereof.
[2102] "Emotion analysis means" refers to a means for performing emotion analysis in order to maximize the effect of skill exchange.
[2103] The "means for recognizing and analyzing in real time" refers to a means for recognizing and analyzing emotional information in real time during a skill exchange session.
[2104] The "means for inputting and saving feedback" refers to a means for inputting and saving feedback after a skill exchange session.
[2105] The "means for updating evaluations and rankings" refers to a means for recording the results of skill exchanges and updating evaluations and rankings based on that information.
[2106] A specific embodiment for implementing this invention will be described. This invention is a system for exchanging skills and knowledge with other users and mutually improving their skills. This system includes a function for maximizing the effectiveness of skill exchange sessions using emotion analysis. Each function of the system and its implementation means will be described below.
[2107] System Configuration
[2108] This system consists of a smartphone, a server, and a database. The smartphone functions as a terminal where users can input and retrieve information. The server manages user profiles, searches, manages skill exchanges, and performs sentiment analysis. The database stores user information, skill information, and feedback information.
[2109] Program processing explanation
[2110] Software used
[2111] Flask (Python): Web Application Framework
[2112] EmotionRecognitionEngine (hypothesis): Emotion analysis engine
[2113] Database class: A database module that manages profile and feedback information
[2114] Data processing and calculation
[2115] 1. User Registration
[2116] Using the input means of the smartphone, the user inputs their skills, interests, and areas they would like to learn.
[2117] The server stores the entered information in a database and creates a user profile.
[2118] 2. Skill Search
[2119] Users can use their smartphones to enter keywords and search for skills they are interested in.
[2120] The server searches the database for relevant user profiles based on the keywords and displays the results on the smartphone.
[2121] 3. Skill Exchange Request
[2122] When a user selects another user's profile and applies for a skill exchange, the server stores the information in a database and notifies the target user.
[2123] 4. Obtaining consent
[2124] Proposals and amendments are made between users to agree on the terms of skill exchange, which is done in real time through the server.
[2125] 5. Skills Exchange Session
[2126] Skill exchange sessions are conducted using smartphone video calls and chat functions, and the server records and manages logs of these sessions.
[2127] The emotion analysis engine recognizes and analyzes the user's emotional information in real time, and this information is used as feedback for the progress of the session.
[2128] 6. Feedback and Ratings
[2129] After the skill exchange session, the user enters feedback and sends it to the server, which stores the feedback information in a database along with sentiment analysis data.
[2130] Based on this information, user ratings and rankings are updated and displayed on smartphones.
[2131] Specific examples
[2132] For example, consider a case where a store staff member uses this system to improve their customer service skills. If store staff member A wants to improve their product knowledge and another store staff member, store staff member B, has that knowledge, store staff member A can use a skill-sharing app to request a skill exchange with store staff member B. Store staff members A and B will train via video call, during which the emotion analysis engine will analyze the emotions of both parties in real time and provide feedback according to the training's progress, thereby increasing the effectiveness of the training.
[2133] Prompt Sentence Examples
[2134] "I want to learn more about product A. Salesperson B seems to be very knowledgeable about it. I want the emotion engine to analyze my current learning progress and emotional state and provide effective feedback."
[2135] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2136] Step 1:
[2137] A user uses the input means of their smartphone to input their skills, interests, and areas they wish to learn. The input information is sent from the device to a server. The server stores the received information in a database and creates a user profile. Through this process, the user's skills and interests are digitized and used for later searches and matching.
[2138] Step 2:
[2139] A user enters keywords of interest into the skill search bar on their smartphone and clicks the search button. Based on this input, the device sends the keywords to the server. The server searches the database for user profiles that match the keywords and returns the results to the device. The device then displays the search results to the user, allowing the user to find other users who have skills of interest to them.
[2140] Step 3:
[2141] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The terminal sends the application information to the server, which stores the information in a database. At the same time, the server sends a skill exchange notification to the target user, who then receives the skill exchange request.
[2142] Step 4:
[2143] The user and the target user negotiate the terms of the skill exchange using proposal and agreement methods. Specifically, they exchange messages via their devices to present and modify the terms. Once an agreement is reached, the server stores the information and sends a final notification to both users. This concludes the skill exchange agreement.
[2144] Step 5:
[2145] The user and the target user set a date for the skill exchange session. This information is sent from the device to the server, which stores it in a database. On the day of the session, the skill exchange is carried out using the device's video call or chat functions. The server records the progress of the session in a log in real time, and an emotion analysis engine analyzes the user's facial expressions and voice to obtain emotional information. This improves the quality of the skill exchange.
[2146] Step 6:
[2147] After the skill exchange session, the user enters feedback using their smartphone. The feedback information is sent from the device to the server, which stores it in a database. Furthermore, emotional data generated by an emotion analysis engine is also included in the feedback, and the feedback is notified to the target user. This provides detailed feedback on the progress of the session.
[2148] Step 7:
[2149] The server evaluates the results of the skill exchange based on user feedback and sentiment analysis data, and records the results in a database. As a result, the user's ratings and rankings are updated and displayed on their smartphone. This allows users to check the degree of their skill improvement and their relative position compared to other users.
[2150] 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.
[2151] 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.
[2152] 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.
[2153] [Fourth embodiment]
[2154] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[2155] 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.
[2156] 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).
[2157] 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.
[2158] 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.
[2159] 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).
[2160] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.
[2161] 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.
[2162] 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.
[2163] 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.
[2164] 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.
[2165] 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.
[2166] 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."
[2167] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[2168] 1. Registration Process
[2169] Users input their skills, interests, and areas of interest, and the device captures this information and sends it to a server, which stores it in a database and creates a user profile.
[2170] 2. Skill Search Processing
[2171] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[2172] 3. Skill exchange request processing
[2173] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[2174] 4. Skill Exchange Agreement Processing
[2175] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[2176] 5. Skill Exchange Implementation Process
[2177] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[2178] 6. Feedback Processing
[2179] After the skill exchange session, the user enters their evaluation in a feedback form and sends it to the server via their device. The server stores the feedback in a database and notifies the user.
[2180] 7. Skill Result Record Processing
[2181] The server accumulates the results of the skill exchange and feedback information in a database, and updates the evaluations and rankings. The updated evaluations and rankings are displayed to the user via their device.
[2182] Specific examples
[2183] 1. Person A offers "Programming" and registers that he wants to learn "Korean."
[2184] 2. Person B registers saying that he is good at "Korean" and wants to learn "illustration."
[2185] 3. Person A searches for the "Korean" skill and finds Person B's profile.
[2186] 4. Person A applies for a "skill exchange in programming and Korean."
[2187] 5. Person B agrees to this and exchanges messages to define the specific terms.
[2188] 6. Both parties agree to set up a skills exchange session.
[2189] 7. The session takes place, and Person A learns Korean from Person B, and Person B learns programming from Person A.
[2190] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[2191] 9. The server updates A and B's ratings based on their feedback and achievements and reflects them in their profiles.
[2192] This allows both A and B to effectively learn new skills, and also allows other users to improve their skills through a similar process.
[2193] The processing flow will be explained below.
[2194] 1. Registration Process
[2195] Step 1:
[2196] Users fill out a form to learn about their skills, interests, and areas of interest.
[2197] Step 2:
[2198] The terminal temporarily stores the input information.
[2199] Step 3:
[2200] The user clicks the "Register" button.
[2201] Step 4:
[2202] The terminal transmits the input information to the server.
[2203] Step 5:
[2204] The server stores the received information in a database and creates a user profile.
[2205] Step 6:
[2206] The server sends a response confirming the completion of registration to the terminal.
[2207] Step 7:
[2208] The terminal displays a message to the user indicating that registration is complete.
[2209] 2. Skill Search Processing
[2210] Step 1:
[2211] A user enters a keyword of interest into the skill search bar.
[2212] Step 2:
[2213] The terminal temporarily stores the keyword.
[2214] Step 3:
[2215] The user clicks the Search button.
[2216] Step 4:
[2217] The terminal transmits the keyword to the server.
[2218] Step 5:
[2219] The server searches the database for user profiles that match the keywords.
[2220] Step 6:
[2221] The server sends the search results to the terminal.
[2222] Step 7:
[2223] The terminal displays the search results to the user in a list format.
[2224] 3. Skill exchange request processing
[2225] Step 1:
[2226] Users can select and view profiles of other users who have skills that interest them.
[2227] Step 2:
[2228] The device will display the selected profile.
[2229] Step 3:
[2230] The user clicks the "Apply for Skill Exchange" button.
[2231] Step 4:
[2232] The terminal transmits application information for skill exchange to the server.
[2233] Step 5:
[2234] The server stores the application information in a database and sends notifications to the target users.
[2235] 4. Skill Exchange Agreement Processing
[2236] Step 1:
[2237] The target user sees the notification and opens a skill exchange request.
[2238] Step 2:
[2239] The target user enters information into a form to enter their agreement or proposed amendment.
[2240] Step 3:
[2241] The terminal sends the suggestions or modifications to the server.
[2242] Step 4:
[2243] The server sends the suggestions or modifications to the requesting user.
[2244] Step 5:
[2245] The user checks the proposal or amendment and agrees or proposes amendments again.
[2246] Step 6:
[2247] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[2248] Step 7:
[2249] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[2250] 5. Skill Exchange Implementation Process
[2251] Step 1:
[2252] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[2253] Step 2:
[2254] The device checks the session date and time and method (video call, chat, etc.).
[2255] Step 3:
[2256] As the session date and time approaches, the server will send reminder notifications.
[2257] Step 4:
[2258] The user and the other user join the session at the set date and time.
[2259] Step 5:
[2260] The device will support the session using video calling and chat functions.
[2261] Step 6:
[2262] Once the session is complete, the server logs the session.
[2263] 6. Feedback Processing
[2264] Step 1:
[2265] After the skill exchange session, the user enters their rating in the feedback form.
[2266] Step 2:
[2267] The terminal transmits the input feedback to the server.
[2268] Step 3:
[2269] The server stores the feedback in a database.
[2270] Step 4:
[2271] The server sends a feedback notification to the target user.
[2272] 7. Skill Result Record Processing
[2273] Step 1:
[2274] The server accumulates the results of the skill exchange and feedback information in a database.
[2275] Step 2:
[2276] The server uses a rating and ranking algorithm to update the user's rating and ranking.
[2277] Step 3:
[2278] Send updated ratings and ranking information to your device.
[2279] Step 4:
[2280] The device displays the latest ratings and ranking information to the user.
[2281] Example 1
[2282] 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."
[2283] Previous skill exchange services lacked mechanisms for users to easily exchange their skills and areas of interest with other users and efficiently improve their skills. Furthermore, the lack of a real-time skill exchange or evaluation system limited user satisfaction and the effectiveness of skill improvement. This made it difficult for users to effectively learn skills and receive mutual feedback.
[2284] 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.
[2285] In this invention, the server includes an input means for users to input their skills, interests, and fields of study, a means for storing the information input by the input means in a database, and a means for searching for other users' skills and services they can provide based on the stored information. This allows users to effectively exchange skills and provide each other with feedback. In addition, a communication means for synchronizing data in real time allows for smooth skill exchange and agreement. Functional means for supporting video calls and chat functions enable effective communication between users and allow the exchange session to proceed smoothly. A means for storing feedback information in a database and notifying the target user allows for appropriate recording of skill achievements and updating evaluations and rankings in real time.
[2286] "Input means" refers to a device or method for a user to input their skills, interests, and areas of study.
[2287] A "database" refers to a system for systematically storing and managing information.
[2288] "Search means" refers to a method or device for searching for the skills and services that other users can provide based on information stored in a database.
[2289] "Display means" refers to a device or method for visually presenting search results or other information to a user.
[2290] The "application means" refers to a device or method for applying to exchange skills with other users.
[2291] "Notification means" refers to a device or method for notifying the target user of application information or other information.
[2292] "Proposal and Agreement Means" refers to a method or device for making proposals and agreements to reach an agreement on a skill exchange.
[2293] "Communication means" refers to devices and methods for synchronizing data in real time.
[2294] "Functional means" refers to devices and methods for supporting video calling and chat functions.
[2295] "Recording means" refers to a device or method for setting up a skills exchange session and recording the content thereof.
[2296] "Feedback means" refers to a device or method for inputting and storing feedback after a skills exchange session.
[2297] "Evaluation and ranking update means" refers to a device or method for recording skill performance and updating evaluations and rankings.
[2298] MODE FOR CARRYING OUT THE INVENTION
[2299] An embodiment of a "skill chat service" according to the present invention will be described below. This system is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system has functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking update.
[2300] System Configuration
[2301] 1. Input: The means by which users input their skills, interests, and learning interests. This can include forms in a browser or a mobile application.
[2302] 2. Database: This is the database where the server will store the input information from the user. Here we will use MySQL.
[2303] 3. Search method: This is a method for the server to search for other users' skills and services based on the information stored in the database. In this case, we will use Elasticsearch.
[2304] 4. Display: The device visually displays the search results to the user. Search results are displayed in list format or card format.
[2305] 5. Application method: A method for users to apply for skill exchange with other users. This is done through the user interface.
[2306] 6. Notification method: The server saves the application information in a database and notifies the target user. Firebase Cloud Messaging (FCM) is used.
[2307] 7. Proposal and Agreement: A proposal and agreement mechanism for users to agree on skill exchanges. It uses Socket.io to synchronize data in real time.
[2308] 8. Communication Method: This is the communication method that allows the server to synchronize data in real time, which allows for smooth data exchange.
[2309] 9. Functionality: The means by which the device supports video calling and chat functions. For video calling, we use the Zoom API, and for chat, we use Twilio.
[2310] 10. Recording: The server sets up and records the skill exchange session. This record is saved in a log file or similar.
[2311] 11. Feedback channel: A channel for users to enter and store feedback after a skill exchange session. Feedback information is stored in MongoDB.
[2312] 12. Evaluation and ranking update method: This is the method by which the server records skill results and updates evaluations and rankings. The server uses Redis to update rankings based on the evaluation results and feedback.
[2313] Hardware and software used
[2314] The implementation of this system utilizes the following hardware and software.
[2315] Input method: Browser, mobile application
[2316] Database: MySQL, MongoDB
[2317] Search method: Elasticsearch
[2318] Notification method: Firebase Cloud Messaging (FCM)
[2319] Communication method: Socket.io
[2320] Function: Zoom API (video call), Twilio (chat)
[2321] Rating and Ranking Update: Redis
[2322] Explanation with concrete examples
[2323] 1. User A offers "Programming" and registers that he wants to learn "Korean."
[2324] 2. User B registers that he is good at "Korean" and wants to learn "illustration."
[2325] 3. User A searches for the "Korean" skill and finds User B's profile.
[2326] 4. User A applies for a "Programming and Korean language skill exchange."
[2327] 5. User B agrees to this and exchanges messages to define the specific terms.
[2328] 6. Both parties agree to set up a skills exchange session.
[2329] 7. The session is conducted, with User A learning Korean from User B and User B learning programming from User A.
[2330] 8. After the session ends, participants provide feedback to each other, which is then stored on the server.
[2331] 9. The server updates the ratings of User A and User B based on the feedback and achievements and reflects them in their profiles.
[2332] Prompt Sentence Examples
[2333] Below are some examples of prompts to input to a generative AI model (e.g., GPT-3).
[2334] Please explain in natural language the program processing flow of the "Skill Chat Service" system, including specific processing steps and detailed operations.
[2335] This prompt enables the generative AI model to generate text in natural language that explains the detailed operation of the system for each processing step.
[2336] The flow of the identification process in the first embodiment will be described with reference to FIG.
[2337] Step 1:
[2338] Input Method
[2339] Users fill out a form in a browser or mobile application to enter their skills, interests, and areas they want to learn, and the data is compiled on the device in JSON format.
[2340] Output: User-entered data on skills, interests, and areas of study.
[2341] Step 2:
[2342] Sending information
[2343] The terminal sends the input data obtained in step 1 to the server via an HTTP POST request.
[2344] Input: User data in JSON format.
[2345] Output: User data sent to the server.
[2346] Step 3:
[2347] Database storage
[2348] The server parses the received user data and stores it in a MySQL database, using the SQL INSERT statement.
[2349] Input: User data in JSON format.
[2350] Output: User profile stored in the database.
[2351] Step 4:
[2352] Skill Search
[2353] Users enter keywords of interest in the skill search bar and click the search button.
[2354] Input: Search keyword.
[2355] Output: A search request for the skill containing the keyword.
[2356] Step 5:
[2357] Submitting a search request
[2358] The terminal sends the search keywords obtained in step 4 to the server via an HTTP POST request.
[2359] Input: Search keyword.
[2360] Output: The search terms sent to the server.
[2361] Step 6:
[2362] Database search
[2363] The server uses Elasticsearch to search for the relevant user profile from the information stored in the database, generating an Elasticsearch query to find matching records.
[2364] Input: Search keyword.
[2365] Output: A list of user profiles as search results.
[2366] Step 7:
[2367] Returning search results
[2368] The server sends the search results to the terminal in JSON format.
[2369] Input: A list of user profiles as search results.
[2370] Output: Search results returned to the device.
[2371] Step 8:
[2372] Displaying search results
[2373] The device analyzes the search results it receives and displays them to the user in list or card format.
[2374] Input: The search results returned.
[2375] Output: The search results displayed in a user-readable format.
[2376] Step 9:
[2377] Skills exchange application
[2378] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange.
[2379] Input: User profile for the skill you wish to exchange.
[2380] Output: Skill exchange application request.
[2381] Step 10:
[2382] Submit application information
[2383] The terminal transmits the application information generated in step 9 to the server.
[2384] Input: Skill Exchange Application Request.
[2385] Output: The application information sent to the server.
[2386] Step 11:
[2387] Database storage and notifications
[2388] The server stores the received application information in a database and sends notifications to the target users using FCM.
[2389] Input: Skills Exchange application data.
[2390] Output: Application information stored in the database and notification to the target user.
[2391] Step 12:
[2392] Proposal and Agreement
[2393] Users enter the terms and conditions of the skill exchange and the details of the transaction, and send them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until the terms are met. Socket.io is used here to synchronize data in real time.
[2394] Input: Skill exchange proposal information.
[2395] Output: Agreed skill exchange terms.
[2396] Step 13:
[2397] Notice of Agreement
[2398] Once an agreement is reached, the server notifies both terminals of the details of the agreement.
[2399] Input: Agreed skills exchange terms.
[2400] Output: Agreement notification message.
[2401] Step 14:
[2402] Setting up a Skills Exchange session
[2403] The user and the target user coordinate their schedules and set a specific date and time for the skill exchange session, and the server records this information.
[2404] Input: Scheduling information.
[2405] Output: The configured Skill Exchange session date and time information.
[2406] Step 15:
[2407] Conducting skills exchange sessions
[2408] The device supports video calling and chat functions, and skill exchange sessions are conducted using the Zoom API to set up video calls and Twilio for chat.
[2409] Input: Skills Exchange session implementation information.
[2410] Output: Session data as logs.
[2411] Step 16:
[2412] Session logging
[2413] The server logs the skill exchange session and sends notifications and reminders as needed.
[2414] Input: Skill Exchange session log information.
[2415] Output: Recorded session log and reminder notifications.
[2416] Step 17:
[2417] Enter your feedback
[2418] After the session, the user enters their evaluation in a feedback form and sends it to the server via their terminal.
[2419] Input: Feedback data.
[2420] Output: Feedback data sent to the server.
[2421] Step 18:
[2422] Feedback storage and notification
[2423] The server stores the feedback data in MongoDB and sends notifications to the target users.
[2424] Input: Feedback data.
[2425] Output: Stored feedback data and notification to target users.
[2426] Step 19:
[2427] Ratings and Rankings Updates
[2428] The server uses Redis to update ratings and rankings based on the results of skill exchange and feedback information.
[2429] Input: Feedback information and outcome data.
[2430] Output: Updated ratings and rankings data.
[2431] (Application example 1)
[2432] 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."
[2433] In conventional skill exchange systems, users have difficulty efficiently finding other users who share their interests and concerns, and it takes a lot of time to find an appropriate skill exchange partner. Furthermore, when exchanging skills, it is often unclear whether the abilities and needs of both parties match, which hinders efficient and effective skill improvement. Furthermore, there is a lack of systems that effectively utilize feedback and evaluations to objectively evaluate users' growth and skill improvement, which means users are unable to utilize feedback for further learning or skill improvement.
[2434] 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.
[2435] In this invention, the server includes: an input means for a user to input their abilities, interests, and fields of study; a means for storing the information input by the input means in a database; a means for searching for other users' abilities and available services based on the stored information; a means for displaying the search results; a means for submitting an application for an ability exchange to other users; a means for storing the application information in a database and notifying the target user; a means for proposing and agreeing to an ability exchange; a means for setting up and recording an ability exchange session; a means for inputting and storing feedback after the ability exchange session; a means for recording the ability results and updating the evaluation and ranking; a means for generating prompt sentences using a generative AI model when a user searches for the abilities of other users; and a means for recommending other users' abilities based on the generated prompt sentences. This allows users to efficiently find other users who match their interests and learning needs, making skill exchange more effective and efficient. Furthermore, by utilizing feedback and evaluation, a system can be realized that objectively evaluates a user's skill improvement and promotes growth.
[2436] "Ability" is a general term for the knowledge, skills, and experience that a user possesses.
[2437] "Interests" are areas or topics that a user is interested in and would like to learn more about.
[2438] The "area to learn" is a category of new knowledge or skills that the user wants to learn or acquire.
[2439] "Input means" is a general term for devices and systems that allow users to input their own information into a system.
[2440] A "database" is an information storage system for systematically storing and managing user information and skill information.
[2441] A "search tool" is a function or algorithm for finding information that matches certain criteria based on records in a database.
[2442] "Display means" refers to a device or interface that visually presents search results and registered information to the user.
[2443] An "application means" is a function or process that allows a user to propose the exchange of skills or abilities with other users.
[2444] A "notification mechanism" is a system for notifying target users of new information or changes in real time.
[2445] The "proposal means" is a function that allows the user to present the conditions and contents of the ability exchange.
[2446] An "agreement mechanism" is a process or function by which both parties reach an agreement on the terms of skill exchange.
[2447] "Session setting means" is a function for planning and starting conversations and activities for skill exchange.
[2448] "Recording Means" means a system or process for storing the content and progress of a Skill Exchange Session.
[2449] "Feedback means" is a system that allows users to provide evaluations and opinions to the other party after skill exchange.
[2450] The "evaluation means" is a function for quantitatively evaluating the improvement of a user's skills and abilities.
[2451] The "ranking update means" is a system for updating the relative ranking of users based on their skill exchange performance.
[2452] A "generative AI model" is an artificial intelligence that is trained to provide information based on generated text or prompts.
[2453] A "prompt" is a predefined piece of text generated by a generative AI model and used to elicit the information the user is seeking.
[2454] A "recommendation tool" is a system for selecting appropriate abilities from other users based on prompt sentences generated by a generative AI model.
[2455] An embodiment of the present invention is a skills exchange platform in the food delivery industry. This system allows users to share their skills, interests, and areas of study with other users and mutually improve their skills. A specific embodiment of the system is described below.
[2456] First, a user accesses the system using a smartphone. First, the user enters their abilities, interests, and the fields they wish to study. This information is entered through input fields in the smartphone application, and the entered information is sent to the server in real time. The server stores the information in a database and generates a user profile. This profile displays the user's abilities, interests, ratings, rank, etc.
[2457] Next, the user uses the search function. In the search function, the user enters keywords into the search bar to search for the abilities and services offered by other users. For example, by entering "efficient route planning" or "basic cooking skills," the user can find the relevant profile. The server searches the database for the relevant information and displays the results on the smartphone screen.
[2458] Users can apply for skill exchange with profiles they are interested in. For example, if a driver wants to learn "efficient route planning," they can apply to other users who have related skills. This application information is sent to the server and stored in a database. At the same time, a notification is sent to the target users.
[2459] Proposals and agreements for skill exchanges are made through the chat function. Users propose specific terms and content via text messages and exchange information until both parties reach an agreement. This exchange is recorded on the server, and even if an agreement is reached, it is saved in a form that can be viewed later.
[2460] After a specific date and time for the skills exchange is agreed upon, the session is conducted using video calls or chat functions. The smartphone application supports video calls and real-time chats, and logs of these sessions are also stored on the server. After the session ends, the user enters feedback and sends it to the server. The feedback is stored in a database and notified to the relevant user.
[2461] Furthermore, based on the feedback and ratings, the server will update the user's ratings and rankings, helping other users find suitable matches based on more reliable information.
[2462] Finally, the system uses a generative AI model to generate prompts when a user searches for other users' abilities. Based on these prompts, the server recommends other users' abilities that best suit the user. For example, if the generated prompt is "I want to learn about efficient route planning," the server will use this information to recommend users with the corresponding abilities.
[2463] Specific examples are shown below.
[2464] 1. Driver A enters that he / she wants to learn about "efficient route planning."
[2465] 2. The server searches the database for other users with the relevant capabilities and displays the results.
[2466] 3. Driver A is interested in learning the "basic cooking techniques" of a particular chef B.
[2467] 4. Driver A applies to Chef B for a skill exchange.
[2468] 5. Chef B agrees and the specific terms are agreed upon via chat.
[2469] 6. The two parties set up a video call session to learn.
[2470] 7. After the session, Driver A sends feedback to Chef B, which is saved in the system.
[2471] 8. The server updates the ratings and rankings based on this.
[2472] This will enable efficient and effective capacity development.
[2473] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[2474] Step 1:
[2475] A user accesses the system via their smartphone and inputs their abilities, interests, and desired fields of study. They enter the required information into the input fields and send it to the server, which stores this information in a database and creates a new user profile.
[2476] Input: User profile information (e.g., abilities, interests, areas of study)
[2477] Data processing: storing information in a database and creating profiles
[2478] Output: New user profile
[2479] Step 2:
[2480] Users use the system's search function to search for keywords for capabilities or services they are interested in. They enter the keywords in the search bar and send them to the server, which searches the database to retrieve the corresponding user profile and sends it to the device.
[2481] Input: Search keyword (e.g. "efficient route planning")
[2482] Data processing: database search, acquisition of relevant profiles
[2483] Output: Search results (list of matching user profiles)
[2484] Step 3:
[2485] Users apply for a skills exchange with a profile they are interested in. They click the Apply button, enter their details, and send them to the server. The server stores the application information in a database and sends a notification to the target users.
[2486] Input: Application information (e.g., target user ID, desired skill exchange details)
[2487] Data processing: saving application information, generating notifications
[2488] Output: Application notification, database update
[2489] Step 4:
[2490] The target users receive a notification and confirm the proposal for the exchange. They then use the chat function to propose and amend specific terms and content through messages. The server records these messages and updates the log until an agreement is reached.
[2491] Input: Proposal message, Correction message
[2492] Data processing: recording messages, updating logs
[2493] Output: Log of conditions agreed upon
[2494] Step 5:
[2495] After the date and time for the capability exchange is agreed upon, the session is conducted using a video call or chat function. The device records a log of the session and sends it to the server, which then stores the log in a database.
[2496] Input: Video call logs, chat logs
[2497] Data processing: Log recording, database storage
[2498] Output: Session log
[2499] Step 6:
[2500] After the session ends, users input feedback to each other. The feedback is entered and sent to the server, which stores it in a database and notifies the other user.
[2501] Input: Feedback information (e.g., ratings, comments)
[2502] Data processing: feedback storage, notification generation
[2503] Output: Feedback notification, database update
[2504] Step 7:
[2505] The server updates the user's ratings and rankings based on the collected feedback and ratings. It references the database, calculates new rating values, and updates the rankings. It then updates the user profile with the new rating information.
[2506] Input: Feedback data, existing evaluation data
[2507] Data processing: Calculation of evaluation value, updating of ranking
[2508] Output: Updated user profile
[2509] Step 8:
[2510] The next time a user searches for other users' abilities, the generative AI model is used to generate a prompt. The AI model generates a prompt based on the information the user enters when using the search function, and the server sends it to the database. The server then recommends other users' abilities based on the generated prompt.
[2511] Input: Search criteria, past search data
[2512] Data processing: Prompt generation using generative AI models, database search
[2513] Output: Recommended user profile
[2514] For example, if a user generates a prompt sentence such as "I want to learn about efficient route planning," the server will recommend relevant user profiles based on the keyword "efficient route planning." In this way, users can quickly find the best match for their next learning or skill improvement.
[2515] 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.
[2516] The "Skill Chat Service" of this invention is a platform for users to exchange their skills and knowledge with other users and mutually improve their skills. This system aims to maximize the effectiveness of skill exchange by combining functions for creating user profiles, skill search, skill exchange, feedback, evaluation, and ranking updates, as well as an emotion engine to recognize and analyze user emotions.
[2517] 1. Registration Process
[2518] Users fill out a form to learn about their skills, interests, and areas of interest. The device captures this information and sends it to the server, which stores it in a database and creates a user profile.
[2519] 2. Skill Search Processing
[2520] The user enters keywords of interest in the skill search bar and clicks the search button. The device sends the keywords to the server, which searches the database for the corresponding user profile. The search results are sent to the device and displayed to the user.
[2521] 3. Skill exchange request processing
[2522] A user selects the profile of another user who has a skill they are interested in and applies for a skill exchange. The device sends the application information to the server, which stores the application information in a database and sends a notification to the target user.
[2523] 4. Skill Exchange Agreement Processing
[2524] The user enters the terms and conditions of the skill exchange and the details of the transaction, and sends them to the server via their device. The target user agrees or proposes modifications, and the exchange continues until an agreement is reached. Once an agreement is reached, the server sends a notification.
[2525] 5. Skill Exchange Implementation Process
[2526] The user and the other user coordinate their schedules and set the date and time for the skill exchange session. The skill exchange session is conducted using devices that support video calls and chat functions. The server records the session log and sends notifications and reminders as necessary.
[2527] During the skill exchange session, an emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time. This recognized emotional information is used as real-time feedback to maximize the progress and effectiveness of the session.
[2528] 6. Feedback Processing
[2529] After the skill exchange session, the user enters their evaluation in a feedback form. The device sends the entered feedback to the server, which then stores it in a database. In addition, the emotion data collected by the emotion engine is also stored in the database and notified to the target user as part of the feedback.
[2530] 7. Skill Result Record Processing
[2531] The server accumulates the results of the skill exchange and feedback information in a database and updates the ratings and rankings. This rating and ranking update also takes into account the user's emotional information recognized by the emotion engine. The updated rating and ranking information is displayed to the user via their device.
[2532] Specific examples
[2533] 1. Person C registers that he / she wants to provide "cooking" and learn "guitar."
[2534] 2. Mr. D registers saying that he is good at "guitar" and wants to learn "photography."
[2535] 3. Person C searches for the skill "guitar" and finds Person D's profile.
[2536] 4. C applies for a "cooking and guitar skill exchange."
[2537] 5. Mr. D agrees to this and they exchange messages to define the specific terms.
[2538] 6. Both parties agree to set up a skills exchange session.
[2539] 7. The session is carried out, with C learning guitar from D and D learning cooking from C. During this time, the emotion engine analyzes the emotions of C and D in real time and uses this information to guide the session.
[2540] 8. After the session ends, participants provide feedback to each other, which is then saved on the server. The emotional data collected by the emotion engine is also saved and used as part of the evaluation.
[2541] 9. The server updates C and D's ratings based on their feedback and achievements and reflects them in their profiles.
[2542] This format also allows users to receive emotional feedback, giving them a deeper understanding of their own skill development and the quality of their session.
[2543] The processing flow will be explained below.
[2544] Embodiments of the invention combining emotion engines using specific examples
[2545] Registration process
[2546] Step 1:
[2547] Users fill out a form to learn about their skills, interests, and areas of interest.
[2548] Step 2:
[2549] The terminal temporarily stores the input information.
[2550] Step 3:
[2551] The user clicks the "Register" button.
[2552] Step 4:
[2553] The terminal transmits the input information to the server.
[2554] Step 5:
[2555] The server stores the received information in a database and creates a user profile.
[2556] Step 6:
[2557] The server sends a response confirming the completion of registration to the terminal.
[2558] Step 7:
[2559] The terminal displays a message to the user indicating that registration is complete.
[2560] Skill search process
[2561] Step 1:
[2562] A user enters a keyword of interest into the skill search bar.
[2563] Step 2:
[2564] The terminal temporarily stores the keyword.
[2565] Step 3:
[2566] The user clicks the Search button.
[2567] Step 4:
[2568] The terminal transmits the keyword to the server.
[2569] Step 5:
[2570] The server searches the database for user profiles that match the keywords.
[2571] Step 6:
[2572] The server sends the search results to the terminal.
[2573] Step 7:
[2574] The terminal displays the search results to the user in a list format.
[2575] Skill exchange request processing
[2576] Step 1:
[2577] Users can select and view profiles of other users who have skills that interest them.
[2578] Step 2:
[2579] The device will display the selected profile.
[2580] Step 3:
[2581] The user clicks the "Apply for Skill Exchange" button.
[2582] Step 4:
[2583] The terminal transmits application information for skill exchange to the server.
[2584] Step 5:
[2585] The server stores the application information in a database and sends notifications to the target users.
[2586] Skill Exchange Agreement Processing
[2587] Step 1:
[2588] The target user sees the notification and opens a skill exchange request.
[2589] Step 2:
[2590] The target user enters information into a form to enter their agreement or proposed amendment.
[2591] Step 3:
[2592] The terminal sends the suggestions or modifications to the server.
[2593] Step 4:
[2594] The server sends the suggestions or modifications to the requesting user.
[2595] Step 5:
[2596] The user checks the proposal or amendment and agrees or proposes amendments again.
[2597] Step 6:
[2598] The process of steps 3 to 5 above is repeated, and negotiations continue until an agreement is reached.
[2599] Step 7:
[2600] Once an agreement is reached, the server sends a notification to both parties that the agreement has been reached.
[2601] Skill exchange process
[2602] Step 1:
[2603] The user and the other user coordinate their schedules and set the date and time for the skill exchange session.
[2604] Step 2:
[2605] The device checks the session date and time and method (video call, chat, etc.).
[2606] Step 3:
[2607] As the session date and time approaches, the server will send reminder notifications.
[2608] Step 4:
[2609] The user and the other user join the session at the set date and time.
[2610] Step 5:
[2611] The device will support the session using video calling and chat functions.
[2612] Step 6:
[2613] During the session, the emotion engine operates, analyzing the user's facial expressions and voice to recognize emotional information in real time.
[2614] Step 7:
[2615] The server processes the recognized emotional information in real time and provides it as feedback to both parties.
[2616] Step 8:
[2617] Once the session is complete, the server records the session log and emotion data.
[2618] Feedback Processing
[2619] Step 1:
[2620] After the skill exchange session, the user enters their rating in the feedback form.
[2621] Step 2:
[2622] The terminal transmits the input feedback to the server.
[2623] Step 3:
[2624] The server stores the feedback in a database.
[2625] Step 4:
[2626] The server also stores the emotion data collected by the emotion engine along with the feedback and sends notifications to the target users.
[2627] Skill result recording processing
[2628] Step 1:
[2629] The server accumulates the results of the skill exchange and feedback information in a database.
[2630] Step 2:
[2631] The server takes into account the user's emotional information recognized by the emotion engine and updates the user's ratings and rankings using a rating and ranking algorithm.
[2632] Step 3:
[2633] Send updated ratings and ranking information to your device.
[2634] Step 4:
[2635] The device displays the latest ratings and ranking information to the user.
[2636] This specific processing flow enables more effective skill exchange between users, and maximizes user satisfaction and learning effectiveness through emotion analysis and evaluation.
[2637] Example 2
[2638] 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."
[2639] Conventional skill exchange platforms lack real-time feedback to improve the efficiency of skill exchange between users. They also lack the means to properly grasp users' emotional states and maximize the effectiveness of sessions. As a result, it is difficult to improve the user experience and the quality of skill exchange in a rational manner.
[2640] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[2641] In this invention, the server includes: an input means for a user to input their skills, interests, and fields of study; a means for saving the information input by the input means in a database; a means for searching for other users' skills and services that can be provided; a means for displaying the search results; a means for submitting skill exchange applications to other users; a means for saving the application information in a database and notifying the target user; a proposal and agreement means for reaching an agreement on the skill exchange; a means for setting up and recording a skill exchange session; a sentiment analysis means for automatically analyzing the user's sentiment; a means for providing feedback during the skill exchange session based on the sentiment information obtained by the sentiment analysis means; a means for inputting and saving feedback after the skill exchange session; and a means for recording skill results and updating ratings and rankings. This makes it possible to visualize the quality of skill exchange sessions between users in real time and provide effective feedback, thereby improving the quality of skill exchange.
[2642] A "user" is an individual or organization that uses this system to provide information about their skills, interests, areas of study, etc.
[2643] "Input means" refers to an interface through which users input information such as skills, interests, and areas of study, and includes web forms and mobile applications.
[2644] The "database" is a digital storage system for storing and managing information entered by users, information on skill exchange, feedback, emotional data, etc.
[2645] "Search means" refers to a function that allows users to search for other users' skills and services that they can provide, and includes keyword search and filtering functions.
[2646] "Display means" refers to an interface for visually presenting search results and other information to a user, and refers to a display device such as a monitor, smartphone, or tablet.
[2647] The "application means" is a function that allows a user to apply to exchange skills with other users, and includes a dedicated form and a me...
Claims
1. an input means for the user to input their skills, interests, and areas of study; means for storing the information input by the input means in a database; A way to search for other users' skills and services based on stored information; a means for displaying the search results; A means for applying for skill exchange with other users; A means for storing application information in a database and notifying target users; Proposal and agreement procedures for reaching a skills exchange agreement; A means to set up and record skills exchange sessions; A means to enter and store feedback after a skills exchange session; A way to record skill achievements and update ratings and rankings, A system including:
2. The system according to claim 1 , wherein the skill exchange session setting means includes a video call or chat function.
3. 2. The system according to claim 1, wherein the feedback means stores the feedback information in a database and notifies the target user.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A