Information processing device, information processing system, information processing method, and program
Patent Information
- Application Number
- JP2020180718
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-11-29
- Filing Date
- 2020-10-28
- Publication Date
- 2025-02-26
- Estimated Expiration
- 2040-10-28
AI Technical Summary
【0007】 ボットを用いる上での利便性を向上できる。
Smart Images

Figure 0007635533000002 
Figure 0007635533000003 
Figure 0007635533000004
Abstract
Description
[Technical field]
[0001] The present invention relates to an information processing device, an information processing system, an information processing method, and a program. [Background technology]
[0002] Conventionally, a device such as a computer first performs pattern recognition on text, voice, or image input by a user via a network. Then, based on the results of the pattern recognition, the device such as a computer carries out conversations with the user, answers questions, controls devices, etc., in a manner known as a chatbot (sometimes simply called a "bot").
[0003] For example, in order to assist in the editing of a dialogue scenario used in a chatbot, a method is known in which information indicating which branch in the dialogue scenario has been selected and to what extent is displayed using characters, figures, etc. In this way, a method is known in which, when editing a dialogue scenario that changes depending on the flow, information corresponding to options can be viewed collectively (for example, see Patent Document 1, etc.). Summary of the Invention [Problem to be solved by the invention]
[0004] However, in the conventional method, in order to operate a bot on multiple pages of a site consisting of multiple pages, separate bots are installed on each page, or one bot is installed for the entire site. In the former case, managing the bots installed on each page is time-consuming. On the other hand, in the latter case, it may take time and effort for the user to arrive at the answer he or she desires. In other words, the convenience of using bots is often low.
[0005] The present invention has been made in consideration of the above problems, and aims to improve the convenience of using bots. [Means for solving the problem]
[0006] An information processing apparatus according to an embodiment of the present invention is an information processing apparatus connected to a user terminal that accepts input from a user, an input information acquisition unit that acquires input information input to the user terminal; a search unit that searches for response information to the input information; Response information to the input information Response message based on a response unit that responds to the user terminal; an access destination information acquisition unit that acquires an access destination that the user terminal accesses in order for the user terminal to accept the input of the input information by the user; before Scenario information that realizes dialogue according to the input information That is, The search unit Search scope by or the response section The information for narrowing down or switching the contents of the response from the A setting information storage unit that stores the setting information; The setting information stored in the setting information storage unit based on the access destination. The above settings information table From multiple scenario information To the above access destination handle 、 The search unit Search scope by or The response section What will be responded to? The search unit determines whether the search is or A modification unit for modifying the response; Equipped with. Effect of the Invention
[0007] This improves the convenience of using bots. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating an example of an overall configuration of a chatbot system according to an embodiment. [Diagram 2] FIG. 2 is a diagram illustrating an example of a hardware configuration of a user terminal according to an embodiment. [Diagram 3] FIG. 2 is a diagram illustrating an example of a hardware configuration of an administrator terminal according to an embodiment. [Figure 4] FIG. 2 is a diagram illustrating an example of a hardware configuration of a server device according to an embodiment. [Diagram 5] FIG. 11 is a diagram showing an example of a dialogue flow based on scenario information according to an embodiment. [Figure 6] FIG. 11 is a diagram illustrating an example of category information according to an embodiment. [Figure 7] FIG. 13 is a diagram illustrating an example of question-answer information according to one embodiment. [Figure 8] FIG. 11 is a diagram illustrating an example of inquiry history information according to an embodiment. [Figure 9] FIG. 11 is a diagram illustrating an example of dialogue history information according to an embodiment. [Figure 10] FIG. 2 is a diagram illustrating an example of a functional configuration of a chatbot system according to a first embodiment. [Figure 11] FIG. 2 is a diagram illustrating an example of the overall processing of a chatbot system according to the first embodiment. [Figure 12] 6A to 6C are diagrams illustrating an example of processing such as obtaining and changing an access destination according to the first embodiment; [Figure 13] FIG. 11 is a diagram showing an example in which the accessed page is a “product introduction” page according to the first embodiment. [Figure 14] FIG. 13 is a diagram showing an example in which the accessed page is a “new graduate recruitment” page according to the first embodiment. [Figure 15] FIG. 13 is a diagram showing an example in which the accessed page is a "career recruitment" page according to the first embodiment. [Figure 16] FIG. 11 is a diagram showing an example in which the accessed page is a "frequently asked questions" page according to the first embodiment. [Figure 17] FIG. 4 is a diagram showing an example of a registration screen for setting information according to the first embodiment; [Figure 18] FIG. 11 is a diagram illustrating an example of a functional configuration of a chatbot system according to a second embodiment. [Figure 19] FIG. 11 is a diagram illustrating an example of a calculation table according to the second embodiment. [Figure 20] FIG. 11 is a diagram illustrating an example of a setting information table according to the second embodiment. [Figure 21] 13 is a flowchart illustrating an example of a page type specification process according to the second embodiment. [Figure 22] FIG. 11 is a diagram showing an example of a code of a page according to the second embodiment. [Figure 23] FIG. 11 is a diagram illustrating an example of a page type table according to the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] <Overall configuration example> 1 is a diagram showing an example of the overall configuration of a chatbot system according to an embodiment. For example, a chatbot system 100, which is an example of an information processing system, has a system configuration including a server device 1, which is an example of an information processing device, and a user terminal 2. As shown in the figure, the chatbot system 100 may further include devices other than the server device 1 and the user terminal 2, such as an administrator terminal 3.
[0010] The server device 1 is an example of an information processing device that provides a chatbot service.
[0011] The user terminal 2 is an information processing device in which a user performs operations such as inputting a question in a chatbot service. A plurality of user terminals 2 may be connected. Also, the user terminal 2 does not have to be connected all the time.
[0012] The administrator terminal 3 is an information processing device through which an administrator or the like performs operations such as input in order to manage the server device 1 and the like.
[0013] The server device 1, the user terminal 2, and the administrator terminal 3 are connected to each other via, for example, a communication network 4 or the like.
[0014] For example, the communication network 4 is the Internet, etc. However, the communication network 4 may be a LAN (Local Area Network), a WAN (Wide Area Network), a short-distance communication network, or a combination thereof, which performs wired or wireless communication.
[0015] The server device 1 communicates with a user terminal 2, an administrator terminal 3, etc. For example, the server device 1 provides a so-called chatbot service that responds with a response message serving as an answer to input information indicating a question or the like entered by a user.
[0016] The server device 1 also provides services such as sending and receiving messages between multiple users, i.e., chat services. That is, the server device 1 provides instant message services and the like. Note that various services may be provided by multiple information processing devices. In the following, an example in which the server device 1 provides services by one information processing device will be described.
[0017] In the chatbot service, when a user inputs characters or a string of characters indicating a question or the like (hereinafter referred to as "input information") into the user terminal 2, the server device 1 acquires the input information from the user terminal 2 via the communication network 4 or the like. Next, the server device 1 searches for information that is an answer or the like to the question indicated by the input information (hereinafter referred to as "response information"). Then, based on the response information to the input information, the server device 1 generates a response message and responds to the user terminal 2 via the communication network 4 or the like. In this way, the response information to the input information is displayed to the user in the form of a message or the like on the user terminal 2. In this way, the user obtains an answer to his or her question by using the chatbot service.
[0018] Specifically, the respective devices and databases used to realize the chatbot service have, for example, the following hardware and data configurations.
[0019] <Example of a user device> 2 is a diagram showing an example of the hardware configuration of a user terminal according to an embodiment. For example, the user terminal 2 has a hardware configuration including a CPU (Central Processing Unit) 201, a ROM (Read Only Memory) 202, a RAM (Random Access Memory) 203, a memory 204, a communication I / F 205, an operation I / F 206, and a display device 207. The hardware included in the user terminal 2 is connected to each other, for example, by a bus. The hardware included in the user terminal 2 may be connected to other devices, etc., by wired or wireless communication.
[0020] The user terminal 2 is, for example, an information processing device such as a PC (Personal Computer), a smartphone, or a tablet.
[0021] The CPU 201 realizes the functions of a calculation unit, a control unit, etc. The CPU 201 is also an example of a control unit and a calculation unit.
[0022] The ROM 202 is a non-volatile semiconductor storage device or the like.
[0023] The RAM 203 is a storage device such as a volatile semiconductor memory device.
[0024] The memory 204 is an example of a main storage device. For example, the memory 204 stores information acquired via the communication network 4. The user terminal 2 may further include an auxiliary storage device such as a hard disk or an SSD (Solid State Drive). The ROM 202, the RAM 203, the memory 204, etc. realize the function of a storage unit. The ROM 202 or the RAM 203 may be included in the memory 204.
[0025] The communication I / F 205 realizes the functions of a communication unit, etc. For example, the communication I / F 205 is a connection terminal, a communication circuit, etc.
[0026] The operation I / F 206 realizes the functions of an input unit, etc. For example, the operation I / F 206 is an input device such as a button, a keyboard, a dial, a key, a touch panel, and a microphone.
[0027] The display device 207 realizes the function of an output unit. For example, the display device 207 is an output device such as a liquid crystal panel, an organic EL (Electroluminescence), or an inorganic EL. The display device 207 and the operation I / F 206 may be integrated into one device, such as a touch panel.
[0028] The program may be stored in, for example, an auxiliary storage device, etc., instead of in the ROM 202 and the memory 204. The program may be acquired via a network, etc.
[0029] <Example of administrator terminal> 3 is a diagram showing an example of a hardware configuration of an administrator terminal according to an embodiment. For example, the administrator terminal 3 has a hardware configuration including a CPU 301, a ROM 302, a RAM 303, a memory 304, a communication I / F 305, an operation I / F 306, and a display device 307. In the following, an example in which the administrator terminal 3 has the same hardware configuration as the user terminal 2 will be described, and overlapping descriptions will be omitted. For example, the CPU 301, the ROM 302, the RAM 303, the memory 304, the communication I / F 305, the operation I / F 306, and the display device 307 are the same as the above-mentioned CPU 201, the ROM 202, the RAM 203, the memory 204, the communication I / F 205, the operation I / F 206, and the display device 207, so descriptions will be omitted here. However, the administrator terminal 3 may have a hardware configuration different from that of the user terminal 2, the server device 1, and the like.
[0030] <Example of server device> 4 is a diagram showing an example of the hardware configuration of a server device according to an embodiment. For example, the server device 1 has a hardware configuration including a CPU 101, a ROM 102, a RAM 103, a memory 104, a communication I / F 105, an operation I / F 106, and a display device 107. In the following, an example in which the server device 1 has the same hardware configuration as the user terminal 2 will be described, and overlapping descriptions will be omitted. For example, the CPU 101, the ROM 102, the RAM 103, the memory 104, the communication I / F 105, the operation I / F 106, and the display device 107 are the same as the above-mentioned CPU 201, the ROM 202, the RAM 203, the memory 204, the communication I / F 205, the operation I / F 206, and the display device 207, so descriptions will be omitted here. However, the server device 1 may have a hardware configuration different from that of the user terminal 2, the administrator terminal 3, etc.
[0031] <Example of database (hereinafter referred to as "DB")> When a chatbot service is provided by the chatbot system 100, for example, the following DBs are built in advance in the server device 1. Below, an example will be described in which the server device 1 has a keyword DB, a synonym DB, a dialogue scenario DB, a category DB, a question-answer DB, an inquiry history DB, a dialogue history DB, and a contract information DB.
[0032] The keyword DB stores example characters that indicate the characteristics of questions and answers, so-called keywords. Note that a keyword may be a word, a phrase, or a sentence. The keyword DB may also store keywords related to things other than question-answer information.
[0033] For example, the server device 1 first breaks down the character string constituting the question into words. Next, the server device 1 searches for the keyword of the question by comparing each word with the words stored in the keyword DB. Next, the server device 1 searches for words matching the keyword from the character string of "question" in the question-answer DB, and searches for question-answer information corresponding to the question. In this way, the keyword DB is used to extract the keyword indicated by the question.
[0034] The synonym DB stores synonym information for keywords and the like. For example, the synonym information is information that associates character strings that are similar in meaning to each other. The character strings may be words, phrases, and sentences. Furthermore, character strings that are similar in meaning to each other are not limited to character strings that are similar in meaning. For example, character strings that are similar in meaning to each other may be character strings in which one can be inferred from the other, character strings in which one is a part of the other, or character strings that are used in similar situations. Furthermore, the synonym information may be defined arbitrarily depending on the usage environment.
[0035] The server device 1 first breaks down the character string constituting the question indicated by the input information into words. Next, the server device 1 checks each word against a synonym DB and extracts character strings that are synonyms. In this way, the server device 1 checks the words and synonyms of the words included in the question against a keyword DB or the like to estimate the keywords of the question.
[0036] The dialogue scenario DB stores scenario information for realizing a dialogue according to input information. For example, the scenario information is generated so as to realize a dialogue with a user according to a scenario input in advance to the dialogue scenario DB.
[0037] 5 is a diagram showing an example of a dialogue flow based on scenario information. For example, when input information for a user to ask a question is received, a response message that answers the question is returned in the following flow as envisioned by the scenario information.
[0038] <Example of dialogue flow based on scenario information> For example, scenario information is input in advance by an administrator into the chatbot system so that the flow will be as shown in the figure. The chatbot system then interacts with the user based on the scenario information. Specifically, scenario information, a database, a GUI (Graphical User Interface), etc. are set in advance in the chatbot system so that communication can be carried out in the flow as shown in the figure. The flow will be described in detail below.
[0039] In step S31, first, the chatbot system displays a selection menu on the user terminal 2 as a method for searching for questions. For example, the selection menu is a GUI that accepts an operation to have the user select one of three options: "Search all categories," "Search by selecting a category," and "Search by frequently asked questions." Note that the selection menu may display four or more options or two or less options.
[0040] When "Search all categories" is selected from the selection menu ("Search all categories" in the figure), the chatbot system proceeds to step S32. When "Search from frequently asked questions" is selected from the selection menu ("Select from frequently asked questions" in the figure), the chatbot system proceeds to step S37. When "Search by selecting from categories" is selected from the selection menu ("Select from categories" in the figure), the chatbot system proceeds to step S39.
[0041] In step S32, the chatbot system displays a message on the user terminal 2 prompting the user to input a question in text. The chatbot system also displays a GUI such as a text box on the user terminal 2 to accept an operation to input text that will be the question. Next, when a question is input ("Enter any question text" in the figure), the chatbot system proceeds to step S33.
[0042] In step S33, the chatbot system analyzes the character string indicating the question. Then, the chatbot system searches the question-answer DB to extract candidates that may be answers to the question (hereinafter simply referred to as "candidates"). Note that the chatbot system may obtain multiple candidates as a result of the search.
[0043] If the search in step S33 finds one candidate ("one candidate" in the figure), the chatbot system responds with the searched candidate as response information. If the search in step S33 finds two or more candidates ("two or more candidates" in the figure), the chatbot system proceeds to step S34. Alternatively, if the search in step S33 finds no candidate ("no candidate detected" in the figure), the chatbot system proceeds to step S36.
[0044] In step S34, the chatbot system displays on the user terminal 2 a GUI that allows the user to perform either an operation to select one of the multiple candidates or an operation to deselect all of the candidates.
[0045] In step S35, when an operation is performed to select one of the candidates ("select a candidate" in the figure), the chatbot system responds with the selected candidate as response information. On the other hand, when an operation is performed to select no selection ("no match found" in the figure), the chatbot system displays, for example, an apology message on the user terminal 2 indicating that it is not possible to display an answer to the question at this stage.
[0046] In step S36, the chatbot system displays a message of apology and a message prompting the user to search again on the user terminal 2, and then returns to step S31.
[0047] In step S37, the chatbot system refers to the inquiry history DB and extracts one or more questions (e.g., about three) that are frequently inquired about by other users, etc. Then, the chatbot system displays a list of the questions on the user terminal 2. Furthermore, the chatbot system displays a GUI on the user terminal 2 to allow the user to select other search methods.
[0048] In step S38, when a question is selected ("Select a frequently asked question" in the figure), the chatbot system responds by searching the question-answer database to find the answer to the selected question as response information. On the other hand, when another search method is selected in step S38 ("Select a different search method" in the figure), the chatbot system returns to step S31.
[0049] In step S39, the chatbot system displays a list of category names on the user terminal 2. Then, when an operation to select a category from the list of category names is performed ("Select Category" in the figure), the chatbot system proceeds to step S40.
[0050] In step S40, the chatbot system accepts an operation to input characters that will be a question. Next, when a question is input ("Enter any question characters" in the figure), the chatbot system acquires input information that indicates the question. Then, the chatbot system proceeds to step S41.
[0051] In step S41, the chatbot system searches the question-answer database to extract candidates. Next, if there is one candidate ("one answer" in the figure), the chatbot system responds with the searched candidate as response information. If there are two or more candidates ("two or more candidates" in the figure), the chatbot system proceeds to step S42. Otherwise, if no candidate can be detected ("no candidate detected" in the figure), the chatbot system proceeds to step S44.
[0052] In step S42, the chatbot system displays on the user terminal 2 a GUI that allows the user to perform either an operation to select one of the multiple candidates or an operation to deselect all of the candidates.
[0053] In step S43, when an operation is performed to select one of the candidates ("select a candidate" in the figure), the chatbot system responds with the selected candidate as response information. On the other hand, when an operation is performed to select no selection ("no match found" in the figure), the chatbot system displays, for example, an apology message on the user terminal 2 indicating that it is not possible to display an answer to the question at this stage.
[0054] In step S44, the chatbot system displays, on the user terminal 2, a message of apology and a message prompting the user to perform a search again, and then returns to step S31.
[0055] The scenario information is input, for example, assuming the above-mentioned dialogue flow. That is, the scenario information indicates the results of the administrator's settings of the types of GUIs used in the dialogue flow, the order in which messages and GUIs are output, and the like.
[0056] The category DB stores category information for classifying questions. For example, the category information is as follows:
[0057] 6 is a diagram showing an example of category information according to an embodiment. For example, as shown in the figure, the category information is information made up of an "ID", a "category name", and an "update date and time".
[0058] "Category name" indicates the category to which the question belongs.
[0059] "ID" indicates ID (Identification), that is, identification information for each category.
[0060] "Update date and time" indicates the date and time when each information was updated.
[0061] The question-answer DB stores information that associates questions with answers to the questions (hereinafter referred to as "question-answer information"). For example, the question-answer information is created in advance by an administrator or the like and stored in the question-answer DB. For example, the question-answer information is information such as the following:
[0062] 7 is a diagram showing an example of question-answer information according to an embodiment. For example, as shown in the figure, the question-answer information is information composed of an "ID," "question," "similar question," "answer," "category ID," and "update date and time."
[0063] "ID" indicates the ID, that is, the identification information of each question-and-answer piece of information.
[0064] "Question" indicates the content of the question.
[0065] "Similar Question" indicates a question having a similar content to the question entered in "Question".
[0066] "Answer" indicates the answer to the question.
[0067] "Category ID" indicates a category ID that can identify the category to which the question applies.
[0068] "Update date and time" indicates the date and time when each information was updated.
[0069] The inquiry history DB stores information indicating questions previously input by the user (hereinafter referred to as "inquiry history information"). For example, the inquiry history information is information such as the following.
[0070] 8 is a diagram showing an example of inquiry history information according to an embodiment. As shown in the figure, the inquiry history information is information consisting of "ID", "session ID", "ID of category linked to hit question", "ID of hit question", "user input", "feedback", and "date and time".
[0071] "ID" indicates an ID, that is, identification information of each piece of inquiry history information.
[0072] The "session ID" indicates identification information that can identify the dialogue session in which the question was asked.
[0073] The "category ID associated with the hit question" indicates the category ID that identifies the category to which the question belongs.
[0074] "Hit question ID" indicates the ID of the question.
[0075] "User Input" refers to the question entered by the user.
[0076] "Feedback" indicates whether or not the user has provided feedback on the answer to the question.
[0077] "Date and time" indicates the date and time when the conversation took place.
[0078] An interaction session is a set of interactions between a user terminal and a server device. For example, interactions that constitute the same interaction session are interactions that take place between the time when a screen used for interactions such as chat is launched and closed on the user terminal 2, or interactions that take place between the time when the screen is launched and closed due to a session timeout.
[0079] A session timeout occurs when no action is taken on the user terminal 2 within a preset period of time. A session timeout is a process for terminating a screen or the like used for interaction.
[0080] Note that the interactive session is not limited to the above example. For example, one interactive session may be from the input of a question to the input of a response, and then the user inputs feedback on the response. In this case, one interactive session is completed when feedback is obtained from the user.
[0081] The dialogue history DB stores information (hereinafter referred to as "dialogue history information") indicating the history of utterances input to the user terminal 2 and contents output by the server device 1 during dialogue between the user terminal and the server device. For example, the dialogue history information is information such as the following:
[0082] 9 is a diagram showing an example of dialogue history information according to an embodiment. As shown in the figure, the dialogue history information is information consisting of "ID", "session ID", "comment type", "comment content", "comment type ID", "content ID" and "date and time".
[0083] "ID" indicates an ID, that is, identification information of each piece of dialogue history information.
[0084] The "session ID" indicates an ID that can identify the interaction session in which the interaction took place.
[0085] "Message type" indicates the type of person who made the comment. Specifically, either "0" or "1" is entered in "Message type." "0" indicates that the comment was made by an administrator. On the other hand, "1" indicates that the comment was made by a user.
[0086] "Content of statement" indicates the content of what was said.
[0087] The "statement type ID" is input, for example, as "5-0," "5-1," and "5-2." Based on these inputs, the "statement type ID" indicates which of the "category," "question-answer information," and "scenario" the "statement content" corresponds to.
[0088] If the comment type is a scenario, the "content ID" indicates the comment set in the scenario. If the comment type is question-and-answer information, the "content ID" indicates the ID of the question-and-answer information. If the comment type is a category, the "content ID" indicates the comment that selects a category.
[0089] "Date and time" indicates the date and time when the conversation took place.
[0090] The contract information DB stores the contents of a contract that has been concluded in advance with a user. For example, information such as whether or not manned support is provided and the period during which support is provided is input in advance into the contract. In addition, the server device 1 may retain the acquired information on the contract, etc., in association with a tenant ID, etc.
[0091] The type and configuration of the DB are not limited to the above example. That is, the DB may be in another format. Also, the DB may be configured by storing data in a distributed manner in multiple devices. Furthermore, each DB is not essential. That is, as long as the data that can realize the scenario is available, the format of the DB, etc. is not important.
[0092] [First embodiment] <Function block diagram> 10 is a diagram showing an example of a functional configuration of the chatbot system according to the first embodiment. For example, the chatbot system 100 preferably has a functional configuration including an input information acquisition unit 1001, a search unit 1002, a response unit 1003, an access destination information acquisition unit 1004, a change unit 1005, and an extraction unit 1006. Each of the above functional configurations is realized, for example, by a program executed by the CPU 101 included in the server device 1. Note that at least a part of each of the above functional configurations may be realized by hardware.
[0093] The input information acquisition unit 1001 performs an input information acquisition procedure for acquiring input information input to the user terminal 2 .
[0094] The search unit 1002 performs a search procedure for searching for response information to input information.
[0095] The response unit 1003 performs a response procedure for returning response information to the user terminal 2 in response to the input information.
[0096] The input information acquisition unit 1001, search unit 1002, and response unit 1003 respond by outputting response information from the output unit 2002 to the input information input via the input unit 2001, thereby realizing a dialogue, i.e., a bot.
[0097] For example, the input information acquisition unit 1001 acquires input information from the user terminal 2 via the communication I / F 105 or the like. Furthermore, the search unit 1002 searches for response information to the input information via, for example, the CPU 101 or the like. Furthermore, the response unit 1003 responds with the response information via the communication I / F 105 or the like.
[0098] The access destination information acquisition unit 1004 performs an access destination information acquisition procedure for acquiring an access destination to be accessed by the user terminal 2. For example, the access destination information acquisition unit 1004 acquires the access destination of the user terminal 2 via the communication I / F 105 or the like.
[0099] Based on the access destination, the change unit 1005 performs a change procedure for changing the range of the search by the search unit 1002 or the response by the response unit 1003. For example, the change unit 1005 changes the search or response using the CPU 101 or the like.
[0100] The extraction unit 1006 performs an extraction procedure to extract keywords or synonyms of keywords of content indicated by a page accessed by the user terminal 2. For example, the extraction unit 1006 extracts keywords or synonyms by the CPU 101 or the like when the access destination information acquisition unit 1004 acquires an access destination.
[0101] The server device 1 may further have functions such as a calculation unit and a control unit, which are realized by a program executed by the CPU 101. The server device 1 may further have functions such as an input unit, an output unit, a storage unit, and a communication unit. Furthermore, the user terminal 2 may further have functions such as a calculation unit, a control unit, a storage unit, an input unit, an output unit, and a communication unit.
[0102] <Overall processing example> 11 is a diagram showing an example of the overall processing of the chatbot system according to the first embodiment. Hereinafter, a case where the server device 1 alone performs the processing for realizing the chatbot service will be described as an example.
[0103] In step S101, the input unit 2001 of the user terminal 2 accepts an operation to start a chatbot. For example, the input unit 2001 of the user terminal 2 accepts an operation to press a predetermined icon included in a web page to be displayed, an operation to start a dialogue application installed in the user terminal 2, or an operation to press a predetermined button of the dialogue application.
[0104] In step S102, the homepage 500 responds to the user terminal 2 with a request to start the chatbot. Specifically, an embed code is embedded in advance in the source code of the homepage 500. Then, in step S102, the user terminal 2 becomes ready to execute processing based on the embed code.
[0105] In step S103, the calculation unit of the user terminal 2 executes the embedded code.
[0106] In step S104, the communication unit of the user terminal 2 requests script data created in JavaScript (registered trademark) or the like based on the embedded code.
[0107] In step S105, the communication unit of the server device 1 transmits to the user terminal 2 the script data requested in step S104.
[0108] In step S106, the calculation unit of the user terminal 2 executes the script data.
[0109] In step S107, the communication unit of the user terminal 2 transmits to the server device 1 a content request for the chatbot and a tenant ID for identifying a subscriber (tenant) of the chatbot.
[0110] The tenant ID is information that is held in advance in the user terminal 2. The tenant ID may be held by a browser used in a chatbot, or may be held by an application that realizes a chat function.
[0111] In step S108, the calculation unit of the server device 1 acquires information such as a contract corresponding to the tenant ID from the contract information DB. Then, the calculation unit of the server device 1 judges the contract status, etc. based on the tenant ID. Below, an example will be described in which it is determined that the contract allows the use of the chatbot service.
[0112] In step S109, the server device 1 acquires the access destination and changes the display, for example, as follows.
[0113] 12 is a diagram showing an example of a process of obtaining and changing an access destination according to the first embodiment. The process as shown in the figure may be executed at a timing other than step S109. For example, the process as shown in the figure may be executed each time a page accessed from a user terminal changes or a request is made to a bot.
[0114] In step S901, the access destination information acquisition unit 1004 acquires the access destination of the user terminal.
[0115] <Example of access destination> The access destination is, for example, the file name of the page on which the bot is installed, the URL (Uniform Resource Locator) of the page, content information displayed as text or images on the page, the title of the page, any part of these, or a combination of these. In other words, the access destination is also the page from which the bot was called.
[0116] Specifically, the accessed page is information in a format such as "saiyo.html" etc. In this example, the accessed page is determined to be a page showing contents about "recruitment."
[0117] In order to determine what kind of content a page indicates based on the acquired access destination information, the page configuration, or information associating the acquired access destination information with the contents of the content, etc. is input in advance to the server device 1. Therefore, when the access destination information acquisition unit 1004 acquires the access destination information, it can grasp which page of multiple pages on which bots are installed the user terminal is accessing.
[0118] For example, the access destination may be the title of a page.
[0119] The title of a page is written in the source of the page (i.e., the source file for displaying the page, including information entered in the header or footer) in HTML (Hyper Text Markup Language) format. <title>···< / title> " is often written in the format. Therefore, in the above example, <title> The accessed destination may be obtained by analyzing the title indicated by the text entered in the " tag (the text entered in the "..." part in the above example). The page title is often a phrase that represents the content of the page, as it conveys the content of the page to the user. Therefore, by identifying the page title, it is possible to accurately identify the content of the page being accessed by the user terminal.< / title>
[0120] Like the page title, the file name or URL is often a word that represents the content of the page. Therefore, even if the file name or URL of the page is specified, it is possible to accurately specify the content of the page accessed by the user terminal.
[0121] As shown in the above example, the access destination may be information that can identify the content of the page accessed by the user terminal. Therefore, the access destination may be a result of inferring the content of the page by analyzing elements or source files in the page.
[0122] Specifically, in order to obtain the access destination, an analysis may first be performed based on content information such as text or images displayed by the page. For example, similar to the above-mentioned title, the text or images displayed on the page may be analyzed, and the most frequently appearing wording or content may be estimated to be the content indicated by the page.
[0123] For example, on a product introduction page on a manufacturer's homepage, the words "goods," "product," or similar words are often displayed in text or images. Therefore, the text or images displayed on the page may be analyzed to identify words that represent the content of the page. By analyzing the content information in this way, it is possible to accurately identify the content of the page accessed by the user terminal.
[0124] <Examples of keyword or synonym extraction> The extraction unit 1006 may extract keywords.
[0125] A keyword is a term that indicates the content displayed by a page accessed by a user terminal. For example, the keyword is extracted by analyzing content information such as text or images displayed by the page. Note that data and settings used for character recognition or object recognition are input in advance.
[0126] The keywords may be synonyms (sometimes called "similar words," "similar words," or "synonyms"). Specifically, a database for identifying synonyms (such as a thesaurus) is first constructed in advance in the server device 1. In this way, for example, "employment," "recruitment," and "recruiting" are recognized as phrases that refer to similar content.
[0127] When the access destination is acquired as described above, the server device 1 can grasp the content of the page accessed by the user terminal. Therefore, in subsequent processing such as search or response, the server device 1 can narrow down the processing to the same content as the access destination. Specifically, when a user is viewing a page introducing a "product," the user often inputs a question to the bot on the assumption that the question is about the "product." Therefore, when a user inputs a question such as "How do I request documentation?", the "documents" are often assumed to refer to documentation about the product.
[0128] For example, even if the question is asking about a time period such as "from when," a user using a user terminal accessing a page such as "product introduction" is likely to be asking about "when the product sales will start." On the other hand, even if the question is asking about the same time period such as "from when," a user using a user terminal accessing a page such as "recruitment information" is likely to be asking about "when the recruitment exam will start." In this way, even if the input is the same, the premise often differs depending on the access destination. Therefore, it is desirable for the server device 1 to narrow down such premise parts based on the access destination.
[0129] Note that the access destination may be acquired by combining a plurality of elements. For example, the URL, the keyword, and the content information may be analyzed separately, and the access destination may be determined by a majority vote of the analysis results.
[0130] In addition, a part of the information may be used to obtain the access destination. For example, when a page shows multiple images, the information to be used may be limited so that only the image with the largest image size is processed.
[0131] In step S902, the change unit 1005 acquires the setting information.
[0132] The setting information is information that indicates, for example, what range to search or how to respond in a change made at a later stage. For example, the setting information is set in advance by an administrator or the like.
[0133] Specifically, the setting information is information indicating whether to display or hide the bot. For example, depending on the page, the administrator may want to set the bot to be hidden. Therefore, the setting information is information that associates the page with whether to display or hide the bot, such as on what pages the bot should be displayed. With such setting information, the change unit 1005 can change the display or non-display of the bot for each page.
[0134] The setting information is information for narrowing down or switching the search range or the response content. The change unit 1005 narrows down or switches the DB used for the search, which is an example of the search range, based on the setting information.
[0135] For example, when the access destination is "recruitment," the setting information is information for switching the DB to be searched to a DB showing personnel-related contents, or the setting information is information for setting categories, etc., so that the contents extracted from the DB in the search are narrowed down to personnel-related contents.
[0136] With such setting information, it is possible to limit the content that is responded to, change the scenario, switch FAQs, or change the search conditions (which may be settings such as filters) based on the information of the accessed destination. When the search target is changed based on the setting information, the displayed and responded contents are output by narrowing down to the contents of the accessed destination.
[0137] Specifically, when a question such as "how to request information" is entered on a user terminal accessing a page such as "product introduction," the modification unit 1005 searches for "product" catalogs, etc., and does not extract search results for other materials used for "recruitment," etc., in the search, or, even if searched, excludes them from the search results so that they are not used in subsequent response or display processing, etc.
[0138] In step S903, the change unit 1005 refers to the item value of "display or non-display" corresponding to the setting information acquired in step S902. If the item value is "display", the change unit 1005 determines that the bot is to be displayed (YES in step S903) and proceeds to step S904. On the other hand, if the item value is "non-display", the change unit 1005 determines that the bot is not to be displayed (NO in step S903) and ends the process without performing step S904.
[0139] In step S904, the change unit 1005 changes the search or response. Specifically, the DB or the like is changed based on the setting information or the like. Thereafter, the process of the search or response is executed based on the setting changed in step S904. For example, the change unit 1005 makes the change as follows.
[0140] FIG. 13 is a diagram showing an example in which the accessed page is a "product introduction" page according to the first embodiment.
[0141] FIG. 14 is a diagram showing an example in which the accessed page is a "new graduate recruitment" page according to the first embodiment.
[0142] FIG. 15 is a diagram showing an example in which the accessed page is a "career recruitment" page according to the first embodiment.
[0143] FIG. 16 is a diagram showing an example in which the accessed page is a "frequently asked questions" page according to the first embodiment.
[0144] Below, we will explain an example where chatbots are installed on four pages: "Product Introduction," "New Graduate Recruitment," "Career Recruitment," and "Frequently Asked Questions," as shown in the figure.
[0145] When a user clicks on the chatbot icon displayed on each page, a chatbot screen is displayed based on the information registered in the setting information table as shown below (Table 1).
[0146] [Table 1] In the above (Table 1), "Applicable range" is an item that indicates the range of URLs to which the setting information should be applied, based on the set "URL." For example, if you set "Include sub-levels" as in the first line, and set "URL" to " / product / ," when the access destination is " / product / product_a / " or " / product / product_b / ," etc., it will be determined that the setting information in the first line should be applied, since these are sub-levels of " / product / ."
[0147] On the other hand, in the above (Table 1), for example, if "Scope" is set to "Does not include sub-hierarchies" as in the third line and "URL" is set to " / jobs / careers / ", the setting information in the third line will only be applied when the access destination is " / jobs / careers / ", and will not be applied to sub-hierarchies. Alternatively, a specific keyword may be set in "URL", and the setting information may be applied to access destinations that contain the keyword set in "URL". Also, in the above example, the URL is shown as a relative path, but it may also be set as an absolute path (for example, "http: / / xxx / faq / ").
[0148] For example, when a user clicks on the chatbot icon placed on the "Product A Information" page shown in FIG. 13, it is determined which setting information the URL of this page corresponds to. In this example, "https: / / xxx / product / product_a / " corresponds to a sub-hierarchy of the URL " / product / " on the first line of the setting information. Therefore, the setting information on the first line is applied to this example. Then, product scenario SC1 is displayed. Then, the "product" category, "product" FAQ master, and "product" thesaurus are applied to search for response information corresponding to the question entered by the user.
[0149] When a user clicks on the chatbot icon installed on the "New Graduate Recruitment" page shown in Figure 14, it is determined which setting information the URL of this page corresponds to. In this example, "https: / / xxx / jobs / newgraduate / " matches the URL " / jobs / newgraduate / " on the second line of the setting information. Therefore, the setting information on the second line is applied to this example. Then, new graduate recruitment scenario SC2 is displayed. Then, to search for response information corresponding to the question entered by the user, the "Recruitment" category, "Recruitment" FAQ master, "Recruitment" thesaurus, as well as the "Product" category, "Product" FAQ master, and "Product" thesaurus are applied.
[0150] When a user clicks on the chatbot icon installed on the "Career Recruitment" page shown in FIG. 15, it is determined which setting information the URL of this page corresponds to. In this example, "https: / / xxx / jobs / careers / " matches the URL " / jobs / new careers / " on the third line of the setting information. Therefore, the setting information on the third line is applied to this example. Then, the career recruitment scenario SC3 is displayed. Then, to search for response information corresponding to the question entered by the user, the "recruitment" category, the "recruitment" FAQ master, the "recruitment" thesaurus, as well as the "product" category, the "product" FAQ master, and the "product" thesaurus are applied.
[0151] When a user clicks on the chatbot icon located on the "Frequently Asked Questions" page shown in FIG. 15, it is determined which setting information the URL of this page corresponds to. In this example, "https: / / xxx / faq / " matches the URL " / faq / " on the fourth line of the setting information. Therefore, the setting information on the fourth line is applied to this example. Therefore, since the "Display on / off" item is set to "Hide" according to the setting information, the chatbot icon is not displayed on the "Frequently Asked Questions" page.
[0152] 17 is a diagram showing an example of a registration screen for setting information according to the first embodiment. When a registration operation is performed on the screen as shown in the figure, for example, a setting information table as shown in (Table 1) above is registered. In the figure, items shown in gray indicate that they are being selected.
[0153] For example, when each item is selected one by one as shown in the figure and the "Register" button is pressed, the setting information for one line shown above (Table 1) is set.
[0154] When the operation is performed as shown in the figure, the setting information in the second row in Table 1 above is generated.
[0155] For example, step S109 is performed as described above.
[0156] In step S110, the communication unit of the server device 1 transmits content information and the like to the user terminal 2 in order to carry out a dialogue by the bot.
[0157] In step S111, the output unit 2002 of the user terminal 2 displays content for conducting a dialogue with the bot.
[0158] In addition, there are cases where an administrator has set the chatbot system 100 to display an icon for an operation to start a chatbot service. In such a case ("When displaying an icon" in the figure), the chatbot system 100 proceeds to step S112. On the other hand, if the setting is not to display an icon, the chatbot system 100 proceeds to step S114.
[0159] In step S112, the user performs an operation of pressing an icon for starting a chatbot service, for example. Therefore, the input unit 2001 of the user terminal 2 accepts the operation of pressing the icon.
[0160] In step S113, the output unit 2002 of the user terminal 2 starts a dialogue with the chatbot based on the scenario, etc. Below, an example will be described in which the user selects a scenario and starts a dialogue. For example, any one of the screens shown in Fig. 13 to Fig. 16 is displayed on the user terminal 2 to start the dialogue.
[0161] In step S114, the user performs an operation to select a scenario. Specifically, as shown above (Table 1), multiple "scenario IDs" may be set. In such a case, the output unit 2002 of the user terminal 2 displays a GUI that allows the user to select one of the multiple scenarios.
[0162] In step S115, the input unit 2001 of the server device 1 accepts an operation to select a scenario to be performed in step S114. Then, the communication unit of the server device 1 notifies the server device 1 of the selected scenario.
[0163] In step S116, the control unit of the server device 1 specifies the content to be displayed in the dialogue in the scenario specified by the setting information.
[0164] For example, when the option "select from all categories" is selected in step S31, the content is specified to respond with the "category name" of the category set by the "category ID" in the setting information switched in step S109.
[0165] Furthermore, when the option "select from frequently asked questions" is selected in step S31, first, for example, the top five questions are extracted based on inquiry history information generated within a predetermined period.
[0166] Alternatively, for example, a scenario such as "Check internal telephone number" may be selected in step S114. In such a case, the content is specified so that a preset message such as "Please enter your name" is responded to.
[0167] In step S117, the communication unit of the server device 1 transmits the contents to be displayed.
[0168] In step S118, the output unit 2002 of the user terminal 2 displays the content etc. transmitted in step S117. Hereinafter, it is assumed that questions, searches, and responses are performed according to a scenario etc. determined in step S109 etc., as shown in FIG.
[0169] In step S119, the user inputs a question. Accordingly, in step S119, the input unit 2001 of the user terminal 2 accepts the input. Then, input information indicating the accepted question or the like is generated.
[0170] In step S 120 , the input information acquisition unit 1001 acquires input information from the user terminal 2 .
[0171] In step S121, the search unit 1002 searches for response information to the input information.
[0172] In step S122, the response unit 1003 responds with response information. Here, the response unit 1003 may respond with a response message that has been subjected to a predetermined process on the response information. In other words, the response unit 1003 may respond with a response message based on the response information.
[0173] In step S123, the output unit 2002 of the user terminal 2 displays an answer to the question, etc., based on the response information.
[0174] The processes of steps S119 to S123 may be repeated. After a response is received, that is, after step S123 is performed, the processes of steps S124 to S128 may be performed.
[0175] In step S124, the output unit 2002 of the user terminal 2 displays input items for investigating the degree of satisfaction. That is, the output unit 2002 of the user terminal 2 displays a questionnaire or the like in order to investigate the user's degree of satisfaction with the answers obtained in step S123, etc., and displays a GUI for prompting the user to input the degree of satisfaction.
[0176] In step S125, the user inputs the degree of satisfaction.
[0177] In step S126, the communication unit of the user terminal 2 notifies the server device 1 of the contents input in step S125, that is, the results of the questionnaire, etc.
[0178] In step S127, the storage unit of the server device 1 stores the details notified in step S126 or a history of the details of the dialogue, etc.
[0179] The server device 1 may perform statistical processing of the satisfaction level based on the content of the satisfaction level. Specifically, the server device 1 displays the satisfaction level in the dialogue by the chatbot during a predetermined period of time (for example, the user is prompted to input a satisfaction level such as "Satisfied", "Dissatisfied", "Not applicable", "Unknown", etc. in step S125) to the administrator, etc., using a graph, etc. When the results of such statistical processing of the satisfaction level are fed back, the administrator, etc., can know the satisfaction level objectively.
[0180] In step S128, the control unit of the user terminal 2 returns to, for example, step S112 or step S114. That is, the control unit of the user terminal 2 returns to a so-called initial screen of the chatbot. Note that in step S128, the chatbot system may terminate the chatbot.
[0181] As described above, when the processes such as search and response that are performed later are changed based on the access destination of the user terminal 2, it becomes possible to provide a response that matches the content assumed by the user.
[0182] On the other hand, if the same bot is used across multiple pages, searches or responses will be performed without any established assumptions based on the access destination, which may result in responses that do not match the user's question, making it less convenient for the user.
[0183] Therefore, if a bot is installed and configured separately for each page in order to respond accurately to user questions, each bot must be managed separately, which increases the management burden and reduces the convenience of using bots.
[0184] Compared to the above example, a configuration in which changes are made based on the access destination makes it easier to manage the bot and also makes it possible to respond appropriately to the user.
[0185] In addition, since a bot is not installed for each page, the effort of management can be reduced. Also, the effort or time required for a user to reach a desired answer can be reduced.
[0186] In this way, the convenience of using the bot can be improved.
[0187] [Second embodiment] In the chatbot system 100 according to the first embodiment, an administrator (or a user) had to set setting information for each page using a registration screen such as that shown in FIG. 17, which required a lot of work to set the setting information.
[0188] Therefore, in the second embodiment, a method for facilitating the setting of setting information in a chatbot system (information processing system) 100 in which the same chatbot is commonly used on multiple pages and the setting information is changed depending on the access destination of the user terminal 2 is described.
[0189] <Functional configuration> Fig. 18 is a diagram showing an example of the functional configuration of the chatbot system according to the second embodiment. As shown in Fig. 18, the chatbot system 100 according to the second embodiment has an information management unit 1801, a page type identification unit 1802, a setting information acquisition unit 1803, a storage unit 1810, and the like, in addition to the functional configuration of the chatbot system 100 according to the first embodiment described in Fig. 10.
[0190] The information management unit 1801 is realized by, for example, a program executed by the CPU 101 included in the server device 1, and stores and manages information such as a calculation table 1811 and a setting information table 1812 in a storage unit 1810 or the like.
[0191] Fig. 19 is a diagram showing an example of a calculation table according to the second embodiment. The information management unit 1801 stores and manages, for example, a calculation table 1811 as shown in Fig. 19 for each tenant (such as a chatbot subscriber) in the storage unit 1810 or the like. Note that the calculation table 1811 may be shared by a plurality of tenants. In the example of Fig. 19, the calculation table 1811 includes information such as "keyword", "tag type", "page type", and "number of stores" as items.
[0192] "Keyword" is a predetermined keyword extracted from the code (source code, HTML source, etc.) of the page (web page). "Tag type" is information indicating the type of tag in which the extracted keyword is written. Note that the example in FIG. 19 shows an example of tag type of a page written in HTML, but in the case of a language other than HTML, it is sufficient to register the tag type corresponding to that language. "Page type" is information indicating the page type that represents the content indicated by the page, and corresponds to "page type" in setting information table 1812 described later. "Score" is information indicating the score used to identify the page type in the page type identification process described later.
[0193] The same keyword "Solution" may be listed on a product page (page type "Product") or on an FAQ page (page type "FAQ"). In the example of FIG. 19, since the keyword "Solution" is more likely to be listed on a product page, the score for the page type "Product" is set higher than the score for the page type "FAQ".
[0194] As an example, the information management unit 1801 functions as a web server that provides a web page for setting a calculation table 1811 such as that shown in FIG. 19 to the administrator terminal 3, etc., and stores the calculation table 1811 set by the administrator, etc. in the memory unit 1810, etc.
[0195] As another example, the information management unit 1801 may generate a calculation table 1811 as shown in Fig. 19 by the learning effect of machine learning. Here, machine learning is a technology for making a computer acquire a learning ability like a human, and refers to a technology in which a computer autonomously generates an algorithm required for judgment such as data identification from learning data that is previously acquired, and applies this to new data to make predictions. The learning method for machine learning may be any of supervised learning, unsupervised learning, semi-supervised learning, reinforcement learning, and deep learning, or may be a combination of these learning methods, and any learning method for machine learning may be used.
[0196] 20 is a diagram showing an example of a setting information table according to the second embodiment. The information management unit 1801 stores and manages, for example, a setting information table 1812 as shown in FIG. 20 for each tenant in the storage unit 1810 or the like. Note that a single setting information table 1812 may be shared by a plurality of tenants. In the example of FIG. 20, the setting information table 1812 stores setting information 2012 such as "Display on / off", "Scenario ID", "Category ID", "FAQ master ID", and "Synonym ID" for each page type 2011. Note that each piece of information included in the setting information 2012 may be the same as each piece of information included in Table 1.
[0197] As an example, the information management unit 1801 functions as a web server that provides a web page for setting a setting information table 1812 such as that shown in FIG. 20 to the administrator terminal 3, etc., and stores the setting information table 1812 set by the administrator, etc. in the memory unit 1810, etc.
[0198] Returning now to FIG. 18, the explanation of the functional configuration of the chatbot system 100 will be continued.
[0199] The page type identification unit 1802 is realized by, for example, a program executed by the CPU 101 included in the server device 1, and executes a page type identification process for identifying the type of the page by using the keyword extracted from the page by the extraction unit 1006 and a calculation table 1811 as shown in Fig. 19. The page type identification process executed by the page type identification unit 1802 will be described later with reference to a flowchart.
[0200] The setting information acquisition unit 1803 is realized by, for example, a program executed by the CPU 101 included in the server device 1, and acquires setting information of the accessed page by using the accessed page type and a setting information table 1812 as shown in Fig. 20. For example, in step S902 of Fig. 12, when the page type of the accessed page is "products", the setting information acquisition unit 1803 acquires setting information 2012 corresponding to the page type "products" from the setting information table 1812 as shown in Fig. 20.
[0201] 12, the setting information acquiring unit 1803 may acquire the page type of the accessed page by using the page type table 1813 created in advance by the page type identifying unit 1802. As another example, the setting information acquiring unit 1803 may identify the page type of the accessed page by using the page type identifying unit 1802 in step S902 of FIG.
[0202] The storage unit 1810 is realized by, for example, the RAM 203, the memory 204, an auxiliary storage device (such as a storage device), and a program executed by the CPU 101, which are included in the server device 1. The storage unit 1810 stores, for example, a calculation table 1811, a setting information table 1812, and a page type table 1813 (described later).
[0203] The functional configuration of the chatbot system 100 shown in Fig. 18 is an example. For example, in Fig. 18, each functional configuration included in the server device 1 may be distributed among multiple information processing devices. For example, the storage unit 1810 may be realized by a storage server outside the server device 1, a cloud service, or the like.
[0204] <Processing flow> (Page type identification process) 21 is a flowchart showing an example of a page type specification process according to the second embodiment. This process shows an example of a page type specification process executed by the page type specification unit 1802 in response to an instruction from an administrator (or user) or the like, for example, before a homepage (page) is made public. Note that this process may also be executed by the page type specification unit 1802 in response to a request from the setting information acquisition unit 1803 in step S902 of FIG. 12.
[0205] In step S2101, the extraction unit 1006 acquires the code (source code, HTML source, or the like) of the page to be processed.
[0206] In step S2102, the extraction unit 1006 analyzes the sentences included in the acquired code to extract keywords. For example, the extraction unit 1006 uses a well-known natural language analysis method such as morphological analysis to decompose the acquired code into a plurality of words, and extracts keywords that are set in advance in the "keyword" field of the calculation table 1811 as shown in FIG. 19.
[0207] Fig. 22 is a diagram showing an example of a code of a page according to the second embodiment. The extraction unit 1006 extracts, for example, the keywords "Solution" and "Deshou ka" stored in the calculation table 1811 shown in Fig. 19 from the code 2201 shown in Fig. 22.
[0208] In step S2103, the page type identification unit 1802 refers to the calculation table 1811 and acquires the “page type” and the “score” for each keyword extracted by the extraction unit 1006.
[0209] For example, the page type specification unit 1802 refers to the calculation table 1811 for the keyword "solution" included in the code 2201 shown in FIG. 22, and acquires the following information. Tag Type <title> ··· 10 points for page type "Product".< / title> Tag Type <h1>··· 8 points for page type "Product" and 5 points for "FAQ". Tag Type< / h1> <h1> ··· 4 points for page type "Product" and 2 points for "FAQ". Tag Type < / h1> <h2>··· 6 items x 2 on the page type "Products", 3 items x 2 on the page type "FAQ".
[0210] In the same manner, the page type specifying unit 1802 acquires the following information regarding the keyword "deshou ka?": Tag Type< / h2> <h2> ··· 1 point for page type "FAQ".
[0211] In step S2104, the page type identification unit 1802 calculates the total score for each page type from the information acquired in step S2103. As a result, in the above example, the total score 2202 shown in Fig. 22 is calculated. In the example of Fig. 22, the total score for the page type "product" is 34 points, and the total score for the page type "FAQ" is 14 points.
[0212] In step S2105, the page type identification unit 1802 determines whether or not there are multiple page types acquired in step S2103. If there are multiple page types, the page type identification unit 1802 shifts the process to step S2106. On the other hand, if there are not multiple page types, the page type identification unit 1802 shifts the process to step S2106.
[0213] In step S2106, the page type identification unit 1802 identifies the page type with the highest total score among the multiple page types. For example, in the example of the total score 2202 shown in Fig. 22, the page type identification unit 1802 identifies the page type "product" with the highest total score.
[0214] On the other hand, in step S2107, the page type identification unit 1802 identifies the page type acquired in step S2103.
[0215] In step S2108, the page type specification unit 1802 associates the URL of the page to be processed with the specified page type, and registers them in a page type table 1813 as shown in FIG. 23, for example.
[0216] Fig. 23 is a diagram showing an example of a page type table according to the second embodiment. In the page type table 1813, for example, as shown in Fig. 23, the URLs of one or more pages (home pages) and the page types corresponding to each UEL are stored in association with each other. For example, the example in Fig. 23 shows that the page type identification unit 1802 identified the page type as "product" when the page type identification process described in Fig. 21 was executed for the page with the URL "https: / / xxx / product / ".
[0217] Through the above process, the page type identification unit 1802 can identify the page type of the page by using the keywords included in the page and the calculation table 1811 as shown in FIG.
[0218] Furthermore, the setting information acquisition unit 1803 can acquire setting information 2012 corresponding to the identified page type from a setting information table 1812 as shown in FIG.
[0219] As described above, according to the second embodiment, in a chatbot system (information processing system) 100 in which the same chatbot is commonly used on multiple pages and the setting information is changed depending on the access destination of the user terminal 2, it is possible to easily set the setting information.
[0220] For example, in the chatbot system 100 according to the first embodiment, an administrator (or a user) must set setting information for each page using a registration screen such as that shown in FIG. 17, which requires a lot of effort in setting the setting information.
[0221] On the other hand, in the chatbot system 100 according to the second embodiment, once a calculation table 1811 as shown in FIG. 19 and a setting information table 1812 as shown in FIG. 20 are registered or created, the setting information for each page can be easily set.
[0222] As described above, according to each embodiment of the present invention, it is possible to improve the convenience of using a bot.
[0223] <Other embodiments> In the information processing system, each procedure in the information processing method described above may be performed in parallel, distributed, or redundantly by a plurality of information processing devices, etc. Furthermore, the information processing system may be configured to utilize so-called cloud computing, etc.
[0224] In addition, each device does not have to be a single device. That is, each device may be a combination of multiple devices. The information processing system may further include devices other than the devices described above.
[0225] Furthermore, the information processing system and the information processing device may utilize AI (Artificial Intelligence), etc. For example, the information processing system and the information processing device may be configured to perform machine learning or the like in inputting characters, etc., to improve recognition accuracy.
[0226] All or part of the processes according to the present invention may be written in a computer language and realized by a program for causing a computer to execute the information processing method. In other words, the program is a computer program for causing a computer such as an information processing device or an information processing system to execute the information processing method.
[0227] Therefore, when the information processing method is executed based on the program, the arithmetic unit and the control unit of the computer perform calculations and control based on the program to execute each procedure, and the storage unit of the computer stores data used in the processing based on the program to execute each procedure.
[0228] The program may be distributed in a form recorded on a computer-readable storage medium, such as a magnetic tape, a flash memory, an optical disk, a magneto-optical disk, or a magnetic disk. The program may be distributed via a telecommunications line.
[0229] Although an example of the embodiment has been described above, the present invention is not limited to the above embodiment, and various modifications and improvements are possible within the scope of the present invention.
[0230] <Supplementary Information> Each function of each embodiment described above can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to execute each function by software, such as a processor implemented by an electronic circuit, and a device such as an ASIC (Application Specific Integrated Circuit), a DSP (digital signal processor), an FPGA (field programmable gate array), or a conventional circuit module designed to execute each function described above. [Explanation of symbols]
[0231] 1. Server device 2. User terminal 3. Administrator terminal 4. Communication Network 100 Chatbot System 500 Home Page 1001 Input information acquisition unit 1002 Search Department 1003 Response section 1004 Access destination information acquisition unit 1005 Changes 1006 Extraction part 1801 Information Management Department 1802 Page type specification part 1803 Configuration information acquisition unit 1810 Storage section [Prior art documents] [Patent documents]
[0232] [Patent Document 1] JP 2018-195298 A < / h2>
Claims
1. An information processing device connected to a user terminal that accepts input from a user, an input information acquisition unit that acquires input information input to the user terminal; a search unit that searches for response information to the input information; a response unit that responds to the input information with a response message based on the response information to the user terminal; an access destination information acquisition unit that acquires an access destination that the user terminal accesses in order for the user terminal to accept the input of the input information by the user; a setting information storage unit that stores a setting information table in which information for narrowing down or switching the range of a search by the search unit or the content of a response by the response unit, the setting information being scenario information for realizing a dialogue according to the input information, is associated with the access destination; a change unit that determines a range of search by the search unit or a content of a response by the response unit that corresponds to the access destination among a plurality of scenario information from the setting information table stored in the setting information storage unit based on the access destination, and changes the search by the search unit or the response by the response unit; Equipped Information processing device.
2. The access destination is information based on the file name of the page accessed by the user terminal, the URL of the page, the title of the page, the text displayed on the page, or the content information of the image displayed on the page, a part of these, or a combination of these. The information processing device according to claim 1 .
3. Analyzing the text or images to determine what the page shows The information processing device according to claim 2 .
4. The information processing device further includes an extracting unit that extracts a keyword or a synonym of the keyword of a content indicated by a page accessed by the user terminal. The information processing device according to claim 1 .
5. The change unit is Show or hide the bot, or narrow or switch the search or response content The information processing device according to claim 1 .
6. The change unit is Narrowing down or switching the database used by the search unit The information processing device according to claim 5 .
7. Based on the content changed by the change unit, Narrowing or switching the scope of the search by the search unit or the content of the response by the response unit The information processing device according to claim 1 .
8. An information processing system having a user terminal that accepts input from a user and one or more information processing devices connected to the user terminal, an input information acquisition unit that acquires input information input to the user terminal; a search unit that searches for response information to the input information; a response unit that responds to the input information with the response information to the user terminal; an access destination information acquisition unit that acquires an access destination that the user terminal accesses in order for the user terminal to accept the input of the input information by the user; a setting information storage unit that stores a setting information table in which information for narrowing down or switching the range of a search by the search unit or the content of a response by the response unit, the setting information being scenario information for realizing a dialogue according to the input information, is associated with the access destination; a change unit that determines a range of search by the search unit or a content of a response by the response unit that corresponds to the access destination among a plurality of scenario information from the setting information table stored in the setting information storage unit based on the access destination, and changes the search by the search unit or the response by the response unit; Equipped Information processing system.
9. An information processing method performed by an information processing device connected to a user terminal that accepts input from a user, comprising: an input information acquisition step in which an information processing device acquires input information input to the user terminal; a search step in which an information processing device searches for response information to the input information; a response step in which the information processing device responds to the input information by transmitting the response information to the user terminal; an access destination information acquisition step in which the information processing device acquires an access destination to be accessed by the user terminal in order for the user terminal to accept the input of the input information by the user; a change procedure in which the information processing device changes the search performed by the search procedure or the response performed by the response procedure based on the access destination; Including, the information processing device has a setting information storage unit configured to store a setting information table in which information for narrowing down or switching a search range by the search procedure or a response content by the response procedure, the setting information being scenario information for realizing a dialogue corresponding to the input information, is associated with the access destination; the change procedure determines, based on the access destination, a range of search by the search procedure or a content of response by the response procedure that corresponds to the access destination among a plurality of scenario information from the setting information table stored in the setting information storage unit, and changes the search by the search procedure or the response by the response procedure. Information processing methods.
10. A program for causing a computer to execute the information processing method according to claim 9.
Citation Information
Patent Citations
FAQ system
JP2013054413A
Interaction scenario display control program, interaction scenario display control method, and information processing apparatus
JP2018195298A
Obtaining responsive information from multiple corpora
WO2019010138A1
Interpretation device, interpretation method and interpretation program
WO2019142398A1