Method for providing interactive communication agent service based on generative ai model
The AI model-based interactive communication agent service addresses inefficiencies and biases in customer response by using multiple answer models to provide accurate and efficient answers through company-specific data, enhancing customer interaction with chatbots and digital humans.
Patent Information
- Application Number
- PCT/KR2024/010725
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-24
- Filing Date
- 2024-07-24
- Publication Date
- 2025-01-30
AI Technical Summary
Companies face inefficiencies and biases in responding to customer inquiries and promoting products through manual chatbots, leading to unsatisfactory and slow responses.
A generic AI model-based interactive communication agent service that uses multiple answer models, including RAG and FAQ engines, to provide quick and accurate answers by leveraging company-specific data and user queries through a system that integrates with chatbots and digital humans.
The solution enables efficient and customized responses to customer inquiries, improving response times and accuracy while reducing human bias, by selectively using appropriate answer models based on query characteristics.
Smart Images

Figure KR2024010725_30012025_PF_FP_ABST
Abstract
Description
Method for Providing a Conversational Communication Agent Service Based on a Generative AI Model
[0001] The present invention relates to a method and system for providing answers to user questions using a generative AI (Artificial Intelligence) model.
[0002] With the recent rapid development of artificial intelligence (AI) technology, language models capable of natural conversations with people (e.g., ChatGPT) have emerged.
[0003] In this way, language models, unlike existing manually built chatbots that only provide limited responses, are demonstrating technological capabilities that enable natural communication similar to humans and provide fast and accurate information, thereby demonstrating innovation in the artificial intelligence market.
[0004] Meanwhile, companies have a need to provide and promote corporate information to customers through various channels such as corporate websites and corporate messengers, and are making great efforts to promptly respond to customers' requests and inquiries about the company.
[0005] Accordingly, companies are making significant efforts to individually respond to customer inquiries and promote themselves and their products and services.
[0006] However, this method wastes significant time and manpower and results in inefficient results. Furthermore, human subjectivity and bias in product promotion or inquiry response frequently result in unsatisfactory responses for users, and in some cases, prompt and satisfactory answers are not provided.
[0007] The present invention provides a method and system for providing an interactive communication agent service specialized for a company.
[0008] Furthermore, the present invention provides a method and system for providing an interactive communication agent service that can provide accurate and prompt answers to users' inquiries about a company.
[0009] According to the present invention, a service providing method in a generative AI model-based conversational communication agent service providing system includes the steps of receiving a user query from a user terminal in a state where a page linked to a company is provided on the user terminal, the step of specifying a specific company related to the user query using unique information linked to the user query, and the step of generating an answer to the user query using at least one of a plurality of different answer models based on characteristics of the user query, wherein at least one of the plurality of answer models is characterized in that it is a model that has been trained on the specific company using data related to the specific company before the user query is received.
[0010] In an embodiment, the page associated with the company includes a homepage of the specific company, and the user query is received through a chatbot provided by the specific company.
[0011] In an embodiment, the unique information includes code information that can identify the specific company included in the reception path information of the user query, and in the identifying step, the specific company is identified by using the code information included in the reception path information of the user query and company code matching information stored in a database of the service providing system.
[0012] In an embodiment, the plurality of answer models include a first answer model and a second answer model different from the first answer model, wherein the first answer model is a model that generates an answer through a process of performing learning using data related to the specific company and specifying correct answer data for the user query among data related to the specific company, and the second answer model is a model that generates an answer using data in which a plurality of questions related to the specific company and answers to each of the plurality of questions form a set.
[0013] In an embodiment, in the step of generating the answer, a Large Language Model (LLM) that receives an answer generated from at least one of the first answer model and the second answer model as a prompt is used to generate an answer to the user query, and the generated answer to the user query is transmitted to a channel through which the user query is received.
[0014] In an embodiment, the data related to the specific company includes at least one of a document uploaded to the system, a document collected from a server of the specific company, and a document collected from an external website (WEBSITE) related to the specific company, and the first answer model includes a RAG (Retrieval-Augmented Generation) model that performs specification of the correct answer data for the user query using the data related to the specific company.
[0015] In an embodiment, the RAG model is characterized in that it performs a passage search (PASSAGE SEARCH) to specify a portion of data related to the user query among data related to the specific company in order to specify the correct answer data.
[0016] In an embodiment, the RAG model is characterized in that, among the parts specified through the passage search, the location of the correct answer data for the user query is specified, and the part corresponding to the specified location among the parts specified through the passage search and the location information for the specified location are input as a prompt of the large language model.
[0017] In an embodiment, the method further comprises the steps of evaluating a first answer generated from the first answer model and a second answer generated from the second answer model, selecting one of the first answer and the second answer based on the evaluation result, and inputting one of the selected answers as a prompt of the large language model.
[0018] In an embodiment, the method further includes a step of generating a search query for deriving answers from the first answer model and the second answer model, respectively, by using the giant language model that receives the user query as a prompt, wherein the first answer of the first answer model and the second answer of the second answer model are answers generated by receiving the search query generated using the giant language model as an input.
[0019] In an embodiment, the search query is characterized in that it includes information included in at least one of a first category including keywords extracted from the user query, a second category including a paraphrased query having a similar meaning to the user query, and a third category including extended words extended from the meaning of the user query.
[0020] In an embodiment, the first answer model is characterized by including an Information Retriever and a Semantic Retriever, and a Re-Ranker model that calculates rankings for search results of the Information Retriever and search results of the Semantic Retriever.
[0021] In an embodiment, the user query is received through a virtual digital human learned using data related to the specific company, and an answer to the user query is output as speech of the virtual digital human.
[0022] A system for providing a generative AI model-based conversational communication agent service according to the present invention includes a storage unit storing at least one computer program code, and a control unit providing a generative AI model-based conversational communication agent service using the storage unit and the program code, wherein the control unit receives a user query from a user terminal in a state where a page associated with a company is provided on the user terminal, specifies a specific company related to the user query using unique information associated with the user query, and generates an answer to the user query using at least one of a plurality of different answer models based on characteristics of the user query, wherein at least one of the plurality of answer models is characterized in that it is a model that has been trained on the specific company using data associated with the specific company before the user query is received.
[0023] According to the present invention, a program stored in a computer-readable recording medium, which is executed by one or more processes in an electronic device, includes instructions for performing the steps of: receiving a user query from a user terminal in a state where a page associated with a company is provided on the user terminal; specifying a specific company related to the user query using unique information associated with the user query; and generating an answer to the user query using at least one of a plurality of different answer models based on characteristics of the user query, wherein at least one of the plurality of answer models is a model that has been trained on the specific company using data associated with the specific company before the user query is received.
[0024] As discussed above, the method and system for providing a conversational communication agent service based on a generative AI model according to the present invention can provide customers with quick and accurate answers to customer (or user) inquiries by using an answer model that has learned corporate data.
[0025] Furthermore, the method and system for providing a conversational communication agent service based on a generative AI model according to the present invention can provide more efficient and accurate answers to customers by selectively using an appropriate answer model among multiple answer models based on the characteristics of the customer's question, such as the intent of the question.
[0026] Furthermore, the method and system for providing a conversational communication agent service based on a generative AI model according to the present invention can provide customers with highly reliable, customized corporate answers by identifying the correct answer to a customer's inquiry from corporate data and inputting it into a large model to generate an answer.
[0027] Figures 1 and 2 are conceptual diagrams for explaining a conversational communication agent service based on a generative AI model provided in the present invention.
[0028] FIGS. 3, 4, and 5 are block diagrams illustrating a system for providing a conversational communication agent service based on a generative AI model according to the present invention.
[0029] Figures 6 and 7 are conceptual diagrams for explaining the process of a conversational communication agent service based on a generative AI model provided in the present invention.
[0030] Figure 8 is a flowchart illustrating a method for providing a conversational communication agent service based on a generative AI model according to the present invention.
[0031] Figure 9 is a conceptual diagram illustrating a method for providing an interactive communication agent service based on a generative AI model-based model in which learning for a specific company is performed in the present invention.
[0032] Figure 10 is a conceptual diagram for explaining a prompt input to a large language model according to the present invention.
[0033] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Regardless of the drawing numbers, identical or similar components will be given the same reference numbers, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" used for components in the following description are assigned or used interchangeably only for the convenience of writing the specification, and do not in themselves have distinct meanings or roles. In addition, when describing the embodiments disclosed in this specification, if it is determined that a specific description of a related known technology may obscure the gist of the embodiments disclosed in this specification, a detailed description thereof will be omitted. In addition, the attached drawings are only intended to facilitate easy understanding of the embodiments disclosed in this specification, and the technical ideas disclosed in this specification are not limited by the attached drawings, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and technical scope of the present invention.
[0034] Terms that include ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by these terms. These terms are used solely to distinguish one component from another.
[0035] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.
[0036] Singular expressions include plural expressions unless the context clearly indicates otherwise.
[0037] In this application, terms such as “include” or “have” are intended to specify the presence of a feature, number, step, operation, component, part or combination thereof described in the specification, but should be understood not to exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts or combinations thereof.
[0038] The present invention provides a method and system for providing an interactive communication agent service specialized for businesses, and provides a method and system for providing an interactive communication agent service capable of providing accurate and prompt answers to users' inquiries about businesses. The service provided according to the present invention may be provided in the form of Software as a Service (SaaS) for businesses that have purchased or subscribed to the service according to the present invention. Furthermore, the service according to the present invention may be provided for users (or customers) who have entered user queries about the businesses that have purchased the service according to the present invention.
[0039] FIGS. 1 and 2 are conceptual diagrams for explaining a service provided by a method and system for providing a generative AI model-based conversational communication agent service according to the present invention. FIGS. 3, 4, and 5 are block diagrams for explaining a system for providing a generative AI model-based conversational communication agent service according to the present invention, and FIGS. 6 and 7 are conceptual diagrams for explaining a process of a generative AI model-based conversational communication agent service provided in the present invention. FIG. 8 is a flowchart for explaining a method for providing a generative AI model-based conversational communication agent service according to the present invention, and FIG. 9 is a conceptual diagram for explaining a method for providing a conversational communication agent service based on a generative AI model-based model in which learning for a specific company has been performed in the present invention. FIG. 10 is a conceptual diagram for explaining a prompt input to a large language model according to the present invention.
[0040] The present invention can be configured to receive user queries from users (or customers) through various channels linked to a company and provide answers to the received user queries. As an example of various channels linked to a company, for example, a chatbot may be used.
[0041] As shown in Fig. 1, looking at an example of receiving a user query, the user query can be received through a chatbot (11) provided by a specific company.
[0042] At this time, the chatbot may be provided through a specific company's website or through various other channels. The present invention illustrates a chatbot provided on a website as an example.
[0043] Here, a chatbot can refer to a software application capable of natural conversation with humans. A chatbot can be understood as a computer program that simulates human conversation using artificial intelligence (AI) and natural language processing (NLP), understanding user queries and automatically responding.
[0044] To build these chatbots (or conversational AI systems), "prompt engineering" technology is utilized, which utilizes large (or even ultra-large) language models (Large Language Models, LLMs) to perform natural language processing tasks. For ease of explanation, this will be referred to as "Large Language Models" below.
[0045] Prompt Engineering refers to the task of designing (or configuring) appropriate prompts to obtain the desired results from a large language model.
[0046] Here, a prompt is an input value for generating a response (or answer or result) from a large language model. The prompt contains information related to instructions or commands for the large language model, and the large language model generates a response based on this.
[0047] Furthermore, Large Language Models (LLMs) are models trained on large-scale language data and are used to perform natural language processing tasks (e.g., machine translation, text summarization, automatic writing, question answering, etc.) through deep learning algorithms and statistical modeling.
[0048] For example, a large language model may include at least one of Generative Pre-trained Transformer (GPT), Bidirectional Encoder Representations from Transformers (BERT), and Language Model for Dialogue Applications (LaMDA).
[0049] The large language model used in the present invention can be understood as a model that receives an answer generated from an answer model that has learned corporate data as a prompt, generates an answer to a user query, and transmits the generated answer to the channel that received the user query.
[0050] Referring again to Figure 1, a user query can be received through a chatbot (11) provided through a specific company's homepage (10).
[0051] In the present invention, when a user query is received (11a, 11b) through a chatbot (11) provided by a specific company, at least one answer is generated using an answer model that has learned data from the specific company, and an answer (12a, 12b) to the user query can be provided using a large language model. Here, the chatbot (11) can be provided on the homepage (10) of the specific company, such as a city. Meanwhile, the following example describes an example in which the chatbot (11) is provided on the homepage (10), but the present invention is not limited thereto. That is, the chatbot (11) can be provided not only through the homepage (10), but also through any website, various SNS channels, various messenger platforms, etc. In addition, the chatbot (11) can also be provided on the metaverse. Here, any website can include various types of information providing sites, portal sites, etc. An information provider site is a site that can provide information on various companies. When a user queries about a specific company via a chatbot (11) or similar, the site can provide a response to the user's query. The companies whose information is provided on the site can be identified as those that have agreed to provide information to users.
[0052] The chatbot (11) can be provided to users through various routes, and for example, it can be installed (or plugged in) on the company's homepage (10) and provided to users who access the company's homepage. The company's administrator can access the administrator page of the system (1000) and perform a series of processes (e.g., inputting company homepage (10) information, chatbot (11) name, greeting, persona setting, color, icon, chatbot (11) screen location, size, and various other information input) to register the chatbot (11) on the company's homepage (10).
[0053] Meanwhile, users can access the chatbot (11) by accessing the corporate channel or website. For example, a user can access the chatbot (11) by selecting the chatbot (11) access icon provided on the website using a user terminal. Furthermore, the chatbot (11) interface can be constantly provided on the website.
[0054] If the system (1000) can identify a user who has accessed the chatbot (11), it can store the user's past conversation history, and if the user accesses the chatbot (11) again, it can provide the past conversation session to the chatbot (11). The chatbot (11) can also be configured to receive user information (name, affiliation, age, gender, email, phone number, etc.).
[0055] User queries and answers can be matched with user information and stored in the system (1000), and the system (1000) can continuously update user queries received from a specific company and their answers as company data by pairing them.
[0056] Meanwhile, in the present invention, a digital human trained using data related to a specific company can also receive user queries through the digital human.
[0057] A digital human can be understood as a virtual human created using digital technology (e.g., computer graphics, CG).
[0058] For example, as illustrated in FIG. 2, the present invention can provide an environment in which a digital human (13) displayed overlapping an area of a specific corporate homepage (10) can provide an answer to a user query while speaking.
[0059] In this way, the present invention can provide a service that provides answers to user questions using a generative AI (Artificial Intelligence) model.
[0060] Below, a more detailed description will be given of a system for providing a conversational communication agent service based on a generative AI model according to the present invention, together with the attached drawings.
[0061] Figure 3 is a conceptual diagram illustrating a system for providing a generative AI model-based interactive communication agent service according to the present invention. For convenience of explanation, the "generator-based AI model-based interactive communication agent service providing system (1000)" will be referred to as the "system (1000)" below. The system (1000) according to the present invention may also be understood as a platform.
[0062] As illustrated in FIG. 3, the agent service providing system (1000) according to the present invention may be configured to include at least one of a storage unit (100), a communication unit (200), an agent (Agent, 300), and a control unit (400).
[0063] The storage unit (100) is configured to include at least one memory, may also be referred to as a database (DB), and may be configured to store various information related to the present invention. In the present invention, the storage unit (100) may be provided in the agent service providing system (1000) itself. In addition, at least a portion of the storage unit (100) may be configured as a cloud server (or cloud storage). That is, the storage unit (100) may be sufficient as long as it is a space where data and commands required for the operation of the agent service providing system (1000) according to the present invention are stored, and it can be understood that there are no restrictions on the physical space.
[0064] The storage unit (100) may store corporate data (20) of various companies that use or subscribe to the system (1000) according to the present invention, or various companies that use or subscribe to the platform provided through the system (1000). The corporate data in the storage unit (100) may be stored and exist separately for each company.
[0065] The storage unit (100) may store various corporate data related to at least one company. For example, the corporate data may include at least one of various information posted on the company's website (e.g., data registered on the company's website), corporate public disclosures, corporate credit ratings, corporate recruitment information, the latest corporate news, interviews with the company's CEO, press releases, corporate-related reports, corporate service introductions, corporate product-related data, and corporate product user manuals. However, the aforementioned corporate data is merely an example, and the corporate data used to train the response model in the present invention is not limited in type.
[0066] As shown in the city of FIG. 3, corporate data (20) may be stored and exist in various repositories such as the corporate internal server, the corporate homepage, an external web, an external server, etc., and in the system (1000) according to the present invention, it may be collected through various methods and stored in the storage unit (100).
[0067] The system (1000) can collect external data stored in various repositories, categorize corporate data by company, and store it in the storage unit (100). In this case, the system (1000) can collect data related to the company among external data, using key data related to the company, such as the company name or the company's representative, as entities, and store the collected data as corporate data.
[0068] For example, the system (1000) can identify a company by extracting entities from external data. For example, the system (1000) can analyze news articles to extract company names and collect information about events or activities related to the company as company data. As another example, the system (1000) can analyze social media such as Twitter and Facebook to extract company names mentioned in social media, analyze public opinion, and collect the data as company data. As another example, the system (1000) can extract company names from public data datasets provided by the government or public institutions, analyze the extracted company names to identify a specific company, and collect the identified data as company data. As another example, the system (1000) can crawl news articles to collect articles related to a specific company, extract the company name through text analysis techniques, and based on the extracted company name, identify the company's major activities, stock price fluctuations, management changes, etc., and collect the data as company data. As another example, the system (1000) can crawl data from an electronic disclosure system such as DART, and can collect data such as financial statements, business reports, and audit reports provided by the DART system by crawling them. The system (1000) can analyze the collected data to evaluate the financial status, management performance, etc. of a company, and can collect the data as corporate data. For example, the system (1000) can analyze the recent quarterly performance of a specific company to compare indicators such as sales, operating profit, and net profit, and can predict future management prospects, and can store the data as corporate data.
[0069] As another example, the system (1000) can utilize overseas public disclosure data, collecting it by crawling the public disclosure data provided by the SEC (U.S. Securities and Exchange Commission) EDGAR system. The system (1000) can analyze financial statements, shareholder meeting reports, and other data from overseas companies to identify global market trends. For example, the system (1000) can analyze performance data from global competitors to assess a company's competitiveness, formulate strategies, and store the data as corporate data.
[0070] As another example, the system (1000) can crawl and collect corporate evaluation reports provided by securities firms and credit rating agencies, and analyze the collected evaluation reports to assess the company's credit rating, investment grade, and industry position. For example, changes in a specific company's credit rating can be analyzed to assess investment risk, and opinions on investment decisions can be stored as corporate data. The data discussed above can be stored separately for each company in the repository (1000).
[0071] Furthermore, the storage unit (100) may store data, commands, and program codes necessary for the operation of the system (1000). For example, the storage unit (100) may store learning data necessary for learning an answer model, commands implemented to train an answer model, and program codes necessary for providing a service according to the present invention.
[0072] The communication unit (200) can be connected to a server and devices, etc. via a wireless or wired network, and can be configured to receive or transmit overall data and information required for the system (1000).
[0073] Additionally, the communication unit (200) is communicatively connected to a user terminal and can receive a user query from the user terminal. For example, as illustrated in FIG. 1, the communication unit (200) can receive a user query (e.g., “What are your vision and goals?”, 11a) input from the user terminal.
[0074] Here, the user terminal may mean at least one of a mobile phone, a smart phone, a notebook computer, a laptop computer, a slate PC, a tablet PC, an ultrabook, a desktop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation device, and a wearable device (e.g., a smartwatch, a smart glass, or a head mounted display (HMD)).
[0075] Furthermore, the communication unit (200) can support various communication methods according to the communication standards of the communicating device.
[0076] For example, the communication unit (200) may be configured to communicate with at least one of a user terminal, a server, and a device (including a cloud server) using at least one of WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), WiMAX (World Interoperability for Microwave Access), HSDPA (High Speed Downlink Packet Access), HSUPA (High Speed Uplink Packet Access), LTE (Long Term Evolution), LTE-A (Long Term Evolution-Advanced), 5G (5th Generation Mobile Telecommunication), Bluetooth™, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra-Wideband), ZigBee, NFC (Near Field Communication), Wi-Fi Direct, and Wireless USB (Wireless Universal Serial Bus) technologies.
[0077] The agent (300) performs communication and interaction between the user terminal and the system (1000), and may include, for example, a chatbot that receives a user query from the user terminal or a digital human that converses with the user terminal (or the user). The agent (300), like a chatbot or a digital human, performs communication between the system (1000) and the user terminal, receives a user query, and transmits it to the answer generation unit (410) of the system (1000). Furthermore, the agent (300) may be configured to provide an answer generated by the answer generation unit (410) to the user terminal.
[0078] In the present invention, the agent (300) can be implemented in various forms and provide answers generated from the answer model to the user terminal. As illustrated in FIG. 1, the agent (300) can be implemented in the form of a chatbot and provide answers to user queries. For another example, as illustrated in FIG. 2, the agent (300) can provide answers to user queries in the form of a digital human (or virtual human, 13). In this case, the chatbot (11) or digital human (13) can be provided through various channels of the company, and as illustrated in FIGS. 1 and 2, can be provided on the company's homepage (10). In addition, the agent (300) is not particularly limited in its type as long as it can communicate with users, such as a messenger or AICC (AI (Artificial Intelligence) CONTACT CENTER), which is operated separately from the company's homepage (10).
[0079] Meanwhile, the control unit (400) according to the present invention can perform a series of processes related to the present invention and can play a role in controlling the overall operation of the agent service provision system (1000).
[0080] Specifically, the control unit (400) may process signals, data, information, etc. input or output through the components discussed above, or perform a series of data processing to provide or process appropriate information and functions to a user. The control unit (400) may also be understood as at least one processor, and the processor may mean a CPU or GPU.
[0081] The functions of the elements disclosed in the present invention may be implemented by circuits or processing circuits, including controllers, computers, processors, etc. For example, processors may be processing circuits or circuits because they themselves include transistors and other circuits.
[0082] Meanwhile, the data processing and functions handled by the system (1000) and control unit (400) according to the present invention may be implemented as computer programs, commands, or codes. It should be understood that the computer programs, commands, codes, etc. include software for programmable processors or firmware, such as commands for a processor or structural arrangements for fixed-function devices, gate arrays, or programmable logic devices.
[0083] A computer program may be stored in memory via any suitable transmission mechanism, such as a computer-readable storage medium, a computer program product, or the like. Furthermore, the transmission mechanism may be a signal configured to reliably transmit the computer program over the air or via an electrical connection.
[0084] Computer program instructions and codes provide logic and routines that enable the device to perform the methods of the present invention. The processor can read memory, load, and execute computer programs.
[0085] Meanwhile, when the control unit (400) receives a user's query, it can provide an answer corresponding to the user's query based on the corporate data of a specific company stored in the storage unit (100).
[0086] Hereinafter, a method for generating an answer to a user query in the system (1000) according to the present invention will be described in more detail. As illustrated in FIGS. 4 and 5 , the answer generation unit (410) according to the present invention may include multiple answer models (or multiple answer generation units, 411 and 412). The multiple answer models may be different answer models and may be configured as models that generate answers in different ways. The answer generation unit (410) according to the present invention may include at least one answer model that has been previously trained using corporate data.
[0087] Furthermore, the answer generation unit (410) may further include a large language model (413). The large language model may receive an answer generated from at least one of a plurality of answer models (411, 412) as a prompt and generate an answer to a user query.
[0088] In this way, the answer generation unit (410) can generate an answer to the user query using a large language model (413) that receives an answer generated from at least one of the first answer model (411) and the second answer model (412) as a prompt. Then, the answer to the generated user query can be transmitted to the channel that received the user query. At this time, the role of transmitting the answer to the user query to the channel that received the user query can be performed in collaboration between the communication unit (200) and the agent (300).
[0089] Meanwhile, the answer generation unit (410) of the present invention may be configured with a plurality of answer models (e.g., a first answer model (411), a second answer model (412)) and a macro language model (413) as individual models, as illustrated in FIG. 4. Furthermore, in contrast, as illustrated in FIG. 5, the macro language model (413) may also be configured to include a plurality of answer models (e.g., a first answer model (411) and a second answer model (412)). Furthermore, any one of the plurality of answer models may be the macro language model (413) itself.
[0090] Any one of the plurality of answer models according to the present invention (e.g., the first answer model (411)) may be a model that performs learning using data related to a company and generates an answer through a process of specifying correct answer data for a user query among data related to the company. Here, the company may be a specific company that has purchased or subscribed to a service according to the present invention.
[0091] In the present invention, the first answer model (411) may include a first model (411a), and the first model (411a) may be configured to search for text fragments (phrases or paragraphs, i.e., passages) highly relevant to the user query from corporate data of the company from which the user query was received. The first model (411a) may be configured to specify a portion (or phrase) related to the user query from the corporate data. The first model (411a) may perform a passage search (PASSAGE SEARCH) that specifies a portion related to the user query among data related to the specific company from which the user query was received. The first model (411a) may be a model that learns about corporate data before the user query is received.
[0092] Additionally, the first response model (411) may include a second model (411b). The second model (411b) may be configured to extract and analyze information from text data to provide relevant answers to user queries.
[0093] The second model (411b) can analyze a specific portion of the corporate data related to a user query identified from the first model (411a) to generate an answer to the user query. The second model (411b) can identify the location of the correct answer data for the user query among the portions identified through passage search. In this case, the second model (411b) can generate at least one of the portion corresponding to the specified location among the portions identified through passage search and the location information for the specified location as its answer. This answer from the second model (411b) can be input as a prompt for the large language model.
[0094] Meanwhile, the first answer model (411) may include a RAG (Retrieval-Augmented Generation) model (411), and the first model (411a) and the second model (411b) discussed above may be included in the RAG model (411). The RAG model (411) is a model that combines information retrieval and answer generation. In the present invention, the role of information retrieval may be performed by the first model (411a), and the role of answer generation may be performed by the second model (411b). The first answer model (411) and the RAG model (411) may be understood as the same model, and thus, the same drawing symbols may be used.
[0095] The RAG model (411) can perform a role of specifying the correct answer data for a user query by using data related to a specific company from which a user query has been received. The RAG model (411) can perform a passage search (PASSAGE SEARCH) to specify a part related to the user query among data related to a specific company from which a user query has been received in order to specify the correct answer data for the user query by including a first model (411a) and a second model (411b). In addition, the RAG model (411) can specify the location of the correct answer data for the user query among the parts specified through the passage search. In addition, the part corresponding to the specified location among the parts specified through the passage search and the location information for the specified location can be input as a prompt for the large language model (413).
[0096] Furthermore, another of the plurality of answer models according to the present invention (e.g., the second answer model (412)) may be a model that generates an answer using data in which a plurality of questions related to a company and answers to each of the plurality of questions form a set. Here, the company may be a specific company that has purchased or subscribed to the service according to the present invention. Here, the second answer model (412) may be configured as a FAQ (Frequently Asked Questions) engine. The FAQ engine (412) is an engine that automatically provides answers to frequently asked questions about a company for which a user query has been input, and can quickly and accurately answer users' repetitive and general questions. In the database, frequently asked questions may exist as standard queries, in which pairs of standard queries and corresponding answers are already registered.
[0097] The FAQ engine (412) can search for answers to user queries and provide answers using answers to standard queries (e.g., frequently asked questions or expected queries) built (registered) in the system (1000). The FAQ engine (412) can select standard queries and provide answers to standard queries by generating similar questions (queries) to user queries using paraphrasing techniques.
[0098] Below, based on the explanations discussed above, we will look more specifically at the process of generating answers to user queries, together with FIGS. 6 to 10.
[0099] First, as illustrated in FIG. 6, in the present invention, the company data required for learning the answer model and generating answers to user queries can be received through access to the system (1000) by the site manager (Ex: company manager) of the company using the service. The system (1000) can manage the company's data through the data management unit (420). The data management unit (420) can be included in the control unit (400). The data management unit (420) can receive data stored in the company's data storage (Ex: company's PC, server, cloud server, etc.) through the receiver (210) (S612), and the data management unit (420) can store the company's data in the storage unit (100) of the system (1000). The storage unit (100) can include a database (110) in which the company's data is stored, an IR (Information Retrieval) Index (120) for the company's data, and an ANN Index (130) for the company's data.
[0100] The IR Index (120) is data designed to retrieve answers (or information) to user queries from corporate data. When a user query is received, the answer generation unit (410) can use the IR Index (120) to retrieve documents or answers related to the user query. In the present invention, a detailed description of the IR Index (120) would detract from the essence of the invention, so the IR Index (120) is intended to be understood at a level of ordinary skill in the art.
[0101] The ANN (Approximate Nearest Neighbor) Index (130) is a data structure used to quickly and efficiently find items most similar to a user query from corporate data. It is particularly used to find nearby neighbors in high-dimensional data spaces, and enables complex indexing of various data types such as images, text, and audio. In the present invention, a detailed description of the ANN Index would detract from the essence of the invention, so the ANN Index is to be understood at a level of ordinary skill in the art.
[0102] In this way, in the present invention, when corporate data is received (or uploaded) to the system (1000), an IR Index (120) and an ANN Index (130) for the corporate data can be generated through analysis and preprocessing of the corporate data. In addition, the IR Index (120) and the ANN Index (130) can be used by the answer generation unit (410) to specify (or search) data related to a user query in order to generate an answer to the user query.
[0103] In this way, in a state where preprocessing of corporate data is performed, as illustrated in FIGS. 6 and 8, the process of receiving a user query from a user terminal (S810, S621), the process of specifying a specific company related to the received user query (S820), and the process of generating an answer to the received user query using at least one of a plurality of different answer models (S830) may be sequentially performed.
[0104] Here, in the process of receiving a user query from a user terminal (refer to UD in FIG. 6), as previously discussed, the user query may be received from a page linked to the company or various channels related to the company. The user query may be received through an agent (300), and as previously discussed, such an agent (300) may be implemented in the form of a chatbot.
[0105] At this time, the pages associated with the company may include the homepage of a specific company, the product sales page of a specific company, the shopping mall page, etc. The user query may be received through an agent (300) corresponding to a chatbot provided through the homepage of the specific company. Furthermore, as previously discussed, the agent (300) may provide answers to user queries in the form of a digital human (or virtual human). In addition, there are no major restrictions on the type of agent (300) as long as it is a channel through which users can communicate, such as a messenger or AICC (AI (Artificial Intelligence) CONTACT CENTER), which is operated separately from the company's homepage.
[0106] In this way, when a user query is received, a process of specifying a specific company related to the user query may be performed. The control unit (400) may use unique information associated with the user query to specify a specific company related to the user query. Multiple companies utilizing the service according to the present invention are registered in the system (1000), and the storage unit (100) may contain information on multiple companies registered in the system. Each company is specified based on unique information assigned to each company, and the database of the storage unit (100) may contain matching information in which companies and unique information of the companies are matched with each other. Meanwhile, a user query is received from a user terminal, and along with the user query, reception path information through which the user query was received is further received, and the reception path information may include unique information of the company that can specify the company. The unique information of the company may include code information that can specify the specific company included in the reception path information of the user query. Here, the code information may be understood as identification information that can specify or identify the company, such as the company's ID.
[0107] Here, the reception path information may include URL information where the user query was received, and the URL information may include unique information about the company. When code information is received along with the user query, the control unit (400) can use the received code information and matching information stored in the database to identify which company among multiple companies registered in the system the user query refers to. In addition, the control unit (400) can generate an answer dependent on the specified company in response to the user query. Once the answer is generated, the agent (300) can transmit the generated answer to the user terminal (UD) (S622).
[0108] Meanwhile, when a user query is received and a company is specified, the control unit (400) can generate a response using the company data of the specified company through the response generation unit (410). The control unit (400) can generate a response to the user query using at least one of a plurality of different response models (S830). As illustrated in FIG. 6, the agent (300) can transmit the received user query to the response generation unit (410).
[0109] Meanwhile, among the multiple answer models, which answer model will generate an answer to a user query can be determined based on various criteria. The control unit (400) can, based on any one of the various criteria, i) select any one of the multiple answer models to generate an answer, ii) generate answers using all of the multiple answer models and then select any one of the answer models, or iii) first generate an answer for any one of the multiple answer models and then, based on the accuracy of the generated answer, determine whether to generate an answer using the next model.
[0110] Here, various criteria can be determined based on the characteristics of the user query. The control unit (400) can select at least one answer model suitable for the characteristics of the user query from among multiple answer models, and generate an answer to the user query using the selected answer model.
[0111] Here, the characteristics of the user query may include the query intent corresponding to the user query, the query format according to the user query, etc., and the control unit (400) may analyze the characteristics of the user query to determine which answer model is appropriate for the intent, and select a specific answer model based on the determination result.
[0112] Here, the query format is whether the query according to the user query corresponds to HOW or WHY, and the control unit (400) may use the first answer model (411) or the large language model (413) if the query format according to the user query corresponds to HOW or WHY (ex: How did 42maru grow so quickly? Why is it moving its headquarters?), and otherwise may use the second answer model (412) model configured as a FAQ engine.
[0113] In addition, the control unit (400) can learn which answer model, when used, produces a high accuracy response based on the characteristics of the user query, and select a specific answer model that produces a high accuracy response value among multiple answer models. In this case, the control unit (400) can continuously learn which answer model produces a high accuracy response based on the characteristics of the user query by receiving user feedback on answers provided to the user terminal.
[0114] In addition, the control unit (400) can determine which answer model to use for each question category or appropriate answer format (EX: short answer / list / subjective, etc.) according to the question.
[0115] In the control unit (400), which answer model to select and in what order to generate answers from the answer models can be determined based on data obtained through deep learning-based learning.
[0116] As discussed above, in the present invention, based on various criteria according to the characteristics of a user query, i) one of the plurality of answer models is selected to generate an answer, ii) all of the plurality of answer models are used to generate answers, and then one of the answers is selected, or iii) an answer is generated first for one of the plurality of answer models, and then, depending on the accuracy of the generated answer, it is determined whether to generate an answer using the next model.
[0117] Meanwhile, in cases i) and iii), the control unit (400, or the answer generation unit (410)) may specify one answer model among the plurality of answer models to generate an answer with priority, and may verify the answer obtained from the one answer model, i.e., the result value. Then, if the result value corresponds to an appropriate answer corresponding to the user query as a result of the verification, the control unit (400) may specify an answer to the user query with the result value. Alternatively, if the result value is not an appropriate answer corresponding to the user query, the control unit (400) may generate an answer to the user query using a next-ranked answer model different from the answer model specified with priority among the plurality of answer models, and verify the generated answer, i.e., the result value. Then, if the answer of the next-ranked answer model corresponds to an appropriate answer corresponding to the user query as a result of the verification, it may be specified as the answer to the user query. Similarly, if the answer generated from the next-ranked answer model is not an appropriate answer corresponding to the user query, the remaining answer models may be used to generate the answer. Additionally, if there are no more answer models to generate answers, or if multiple answers have been obtained from at least two answer models, the control unit (400) can combine multiple answers, i.e., multiple result values, and use the combined result as the final answer corresponding to the user query. At this time, the control unit (400) can set different weights for the multiple result values based on various criteria, and can combine the multiple result values according to the weights to generate the final answer to the user query.
[0118] Meanwhile, the criteria for determining whether a response to a user query is appropriate can vary widely. This can involve determining whether the response generated from the response model, i.e., the resulting value, is appropriate based on the meaning, intent, and context of the user query, using natural language processing or deep learning technologies. Accordingly, the natural language processing or deep learning technologies utilized can vary widely, and this specification does not impose any specific limitations on them.
[0119] Meanwhile, in case ii), the control unit (400) can generate answers from multiple answer models, compare the generated answers, select a priority answer, and generate an answer to a user query. At this time, the priority answer may be determined based on the meaning, intent, and context of the user query, or based on various criteria such as accuracy, answer format, and question format.
[0120] As another example, the control unit (400) may select at least one answer model from among a plurality of answer models based on the type, category, or topic of the question corresponding to the user query.
[0121] Meanwhile, the system (1000) according to the present invention may further include a prompt management unit (430). The prompt management unit (430) may generate a prompt to be input to the macro language model (413), and may generate a prompt to be input to the macro language model (413).
[0122] The prompts input to the giant language model (4130) can be in different formats depending on the desired result value.
[0123] The prompt management unit (430) may include at least one of a query analysis unit (431), an answer generation unit (432), and an answer verification unit (433).
[0124] The query analysis unit (431) can input the user query and query prompt (710) into the large language model (413) using the user query, so that a query prompt for the user query is generated, as shown in FIG. 7.
[0125] The results obtained by inputting a user query and query prompt (710) into a large language model (413) may be referred to as search queries, expanded user queries, or expanded results. The search queries may be formatted or include content that allows each answer model to better understand the user query in order to generate or retrieve an answer to the user query.
[0126] In this way, the query analysis unit (431) can generate search queries to derive answers from the first answer model (411) and the second answer model (412), respectively, using a large language model (413) that receives a user query and a query prompt as input as a prompt.
[0127] In this case, the first answer of the first answer model (411) and the second answer of the second answer model (412) may be formed by answers generated by receiving the search query generated using the large language model (413) as input. Meanwhile, the query prompt may be formed in multiple formats that generate search queries corresponding to multiple categories, respectively. For example, the first category may be configured to include keywords extracted from the user query, the second category may be configured with similar user queries having a similar meaning to the user query, and the third category may include a third search query formed with an extended user query having an extended meaning from the user query.
[0128] In this way, the query analysis unit (431) according to the present invention can input the prompts into the large language model (413) so that the first search query, the second search query, and the third search query for the first to third categories are obtained. Meanwhile, in addition to the examples discussed above, the multiple categories can be configured in various ways.
[0129] Meanwhile, when the control unit (400) obtains the first search query, the second search query, and the third search query, it inputs at least some of them into the first answer model (411) or the second answer model (412), thereby obtaining an answer (or search result, result value) to the user query from at least one of the first answer model (411) and the second answer model (412).
[0130] Here, the first answer model (411) is a RAG model (411), as previously discussed in FIGS. 4 and 5, and the RAG model (411) can receive at least some of the first search query, the second search query, and the third search query as inputs to obtain an answer to the user query.
[0131] The first model (411a) constituting the RAG model (411) may include at least one of an Information Retriever (411a-1) and a Semantic Retriever (411a-2b), as illustrated in FIG. 7. The search results retrieved from each of the Information Retriever (411a-1) and the Semantic Retriever (411a-2b) may be input to a Re-Ranker (or Re-Ranker model, or rank calculation unit, 415). The Re-Ranker model (415) may compare the search results (or first search results) from the Information Retriever (411a-1) with the search results (or second search results) from the Semantic Retriever (411a-2b), and may identify a search result having a high similarity to the user query among the first search results and the second search results. And, among the first search result and the second search result, some search results having a high similarity to the user query can be processed as input to the second model (411b) of the RAG model (411).
[0132] More specifically, the Information Retriever (411a-1) of the first model (411a) may be input with an IR Search Query, which includes a first search query composed of keywords extracted from a user query, which is a first category, and a third search query composed of keywords expanded from the user query, as illustrated in FIG. 7. In this way, the Information Retriever (411a-1) is input with an IR Search Query composed only of the first search query and the third search query. In this case, the IR Search Query may not include a user query.
[0133] The Information Retriever (411a-1) of the first model (411a) can retrieve information corresponding to an IR Search Query using the IR Index (120). As previously discussed, the IR Search Result, which is the result retrieved by the Information Retriever (411a-1) (the first search result), can be input to the Re-Ranker (415) to calculate a ranking among the Semantic Search Result, which is the result retrieved by the Semantic Retriever (411a-2b) (the second search result).
[0134] Next, the Semantic Retriever (411a-2b) of the first model (411a) can receive a second search query, which is a second category and is composed of similar user queries having a similar meaning to the user query. The Semantic Retriever (411a-2b) can input the Semantic Search Query, which includes the second search query and the user query received from the user terminal, into the Query Encoder (411a-2a) of the first model (411a). The Query Encoder (411a-2a) can process the Semantic Search Query into a language that the Semantic Retriever (411a-2b) can understand. The Semantic Search Query can be input into the Semantic Retriever (411a-2b) via the Query Encoder (411a-2a). The Semantic Retriever (411a-2b) can use the ANN Index (130) to identify a portion of corporate data corresponding to a Semantic Search Query. The identified portion can be understood as a search result of the Semantic Retriever (411a-2b) (which can also be expressed as a second search result or a Semantic Search Result).
[0135] And, a specific part, i.e., the second search result, can be input to the Re-Ranker (415). The Re-Ranker (415) can receive the result retrieved from the Information Retriever (411a-1) (the first search result or IR Search Result) and the result retrieved from the Semantic Retriever (411a-2b) (the second search result or Semantic Search Result), and calculate a ranking between the first search result and the second search result. And, in the present invention, some search results having a high similarity to the user query among the first search result and the second search result can be processed as input to the second model (411b).
[0136] Meanwhile, if the second model (411b) generates an answer using at least one of the Semantic Search Result, which is a search result of the Semantic Retriever (411a-2b), and the IR Search Result, which is a search result of the Information Retriever (411a-1), the answer generation unit (432) of the prompt management unit (430) can generate an Answer Prompt to process the answer generated by the second model (411b) as an input to the large language model (413). The answer generated by the second model (411b) is input to the large language model (413), and further, information on a specific company can be input together. Meanwhile, if the control unit (400) obtains the first search query, the second search query, and the third search query discussed above, it can input at least some of them into the FAQ Engine, which is the second answer model (412), to obtain an answer (or search result, result value) to the user query. The second answer model (412) may be input with at least one of a second search query corresponding to a second category that includes a query that has been paraphrased to have a similar meaning to the user query, or a first search query composed of keywords extracted from the user query. The FAQ Engine, which is the second answer model (412), may search for and provide an answer to the user query using answers to standard queries (e.g., frequently asked questions or expected queries) based on the input search query.
[0137] Additionally, the response from the second response model, the FAQ Engine (412), can be input into the large language model (413) along with the user query to provide a more natural response to the user.
[0138] Meanwhile, as illustrated in FIGS. 7 and 10, the answer generation unit (432) can generate an Answer Prompt (a portion indicated by reference numeral 720) using the giant input model (413). The Answer Prompt generated by the answer generation unit (432) can be obtained by inputting the Answer Prompt format according to (a) or (b) of FIG. 10 into the giant input model (413) together with the answer generated by the second model (411b) or the answer generated by the FAQ Engine (412). The answer generation unit (432) extracts, from the large input model (413), the content to be included in the “{}” parentheses of the Answer Prompt format shown in (a) or (b) of FIG. 10, using at least one of the user query, the first answer, and the second answer, thereby extracting an Answer Prompt in which the content of the “{}” parentheses of the Answer Prompt format is filled with content related to the user query and a specific company.
[0139] For example, the Answer Prompt format can be configured to be filled in with the company name ({company name}, 1010), which is to configure the Answer Prompt so that the large language model generates answers only for a specific company using the company data of the specific company when generating the final answer. For example, the Answer Prompt format can include “You are a chatbot who only answer questions about a company called {company_name}. Consider all words about company (your company, this corporation, here, etc.) is talking about the company called {company_name}.” to specify the company name for which the answer is to be generated. If the company name of the specific company is “42MARU,” the large language model (413) can generate an Answer Prompt that includes “You are a chatbot who only answer questions about a company called 42MARU. Consider all words about company (your company, this corporation, here, etc.) is talking about the company called 42MARU.” based on the Answer Prompt format. Meanwhile, it goes without saying that symbols included in the format, for example, “{}”, can be transformed into various other symbols.
[0140] For example, the Answer Prompt format can be configured to be populated with a persona ({persona}, 1020), which sets the persona of the speaker who utters the final answer generated from the large language model. The persona can be specified at the request of the administrator or determined based on the characteristics of the company. For example, in the case of a company developing artificial intelligence technology, the persona can be set to “40s, PhD in engineering.” Furthermore, the persona can be set differently depending on the characteristics of the user who entered the user query. Unique information entered with the user query can include user information (e.g., ID, name, age, gender, etc.), and the large language model (413) can set a customized persona based on the user information.
[0141] The large language model (413) can generate answers that differ in at least one of the answer provision method, format, and speech style for each persona.
[0142] In addition, the Answer Prompt format may further include at least one of a date format ({current date}, 1030) that causes information to be generated for the date on which a user query was received or for another reference date, a format for defining an answer format ({first_answer_format}, 1040, see (a) of FIG. 10) when an answer is generated using the first answer of the first answer model (411), a format for defining an answer format ({second_answer_format}, 1090, see (b) of FIG. 10) when an answer is generated using the second answer of the second answer model (412), and a format for specifying information ({reference}, 1050) about data that is the basis of the answer among corporate data. The large language model (413) can fill {current date} (1030), {first_ _answer_format} (1040), {second_answer_format} (1090), {reference} (1050) with data based on a specific company, a user query for a specific company, a first answer generated from the first answer model (411), a second answer generated from the second answer model (412), and user information based on the formats listed above.
[0143] Meanwhile, if an answer is generated from a first answer model (411), for example, a second model (411b) included in the first answer model (411), the Answer Prompt format may include only {first_answer_format} (1040), as shown in (a) of FIG. 10, and if an answer is generated from a second answer model, for example, a FAQ Engine (412), the Answer Prompt format may include only {second answer_format} (1090), as shown in (b) of FIG. 10.
[0144] According to {first_answer_format}(1040), the result generated from the large language model (413) may generate information defined for a rule for generating an answer, such as, for example, “include the answer of the second model (411b) in the first sentence.”
[0145] According to {second_answer_format}(1090), the result generated from the large language model (413) may generate information defined for a rule for generating an answer, such as, for example, “Find the answer using only the information provided on the homepage.”
[0146] According to {second_answer_format}(1090), the result generated from the large language model (413) may generate information defined for a rule for generating an answer, such as, for example, “Find the answer using only the information provided on the homepage.”
[0147] In addition, the answer prompt format may include at least one format that allows information related to a user query to be filled in, for example, {keywords_query}(1060), {query}(1080) generated as a query prompt, and {passage_result}(1070) obtained through the first model (411a).
[0148] As discussed above, the answer generation unit (432) can input at least one of the first answer of the first answer model (411), the second answer of the second answer model (412), the user query, specific corporate information, and user information, together with the Answer Prompt format, into the large language model (413) to complete the Answer Prompt that must be defined when generating an answer to a user query based on the Answer Prompt format.
[0149] Meanwhile, the control unit (400) can, when answers are generated from multiple different answer models, evaluate the generated answers, select one answer that is appropriate as an answer to the user query, and input it into the large language model (413) along with the Answer Prompt format.
[0150] The control unit (400) can evaluate the first answer generated from the first answer model (411) and the second answer generated from the second answer model (412), and select either the first answer or the second answer based on the evaluation result. Finally, the selected answer can be input as a prompt for the large language model (413), thereby generating an answer to the user query.
[0151] Meanwhile, the answer generation unit (432) may include either {first_answer_format} (1040) or {second_answer_format} (1090) in the prompt format, depending on which model generated the selected answer. That is, the characteristics of the model that generated the answer may be defined in the prompt format.
[0152] Meanwhile, as illustrated in FIG. 7, when an Answer Prompt is generated through the answer generation unit (432) and the large language model (413), information (720) including at least two of a user query, an Answer Prompt, and a context is input as a prompt into the large language model (413), so that an answer (final answer, Answer, 730) to the user query can be obtained as an output of the large language model (413). At this time, the large language model (413) may further include an answer that is finally selected among answers generated from a plurality of answer generation models (e.g., a first answer model (411) and a second answer model (412)). Here, context includes at least one of a phrase (or paragraph, document,) containing the correct answer to the user query and its location information among the corporate data when the answer of the first answer model (411) is selected, and this may be information that serves as the basis for the answer generated in the second model (411b) of the first answer model.
[0153] Meanwhile, the large language model (413) can be configured to generate an answer to a user query using only the results derived from the first model (411a) and the second model (411b), which generate answers (or correct answers) to user queries based on corporate data. Accordingly, the system according to the present invention does not generate an answer to a user query based on data other than the results derived from the first model (411a) and the second model (411b) when generating an answer in the large language model (413), and thus can provide only accurate data regarding the company to the user.
[0154] Meanwhile, the answer (final answer, Answer, 730) to the user query obtained as the output of the large language model (413) can be configured in various ways depending on the data format of the answer derived from the first answer model (411) or the second answer model (412). The large language model (413) can generate the user answer in a format corresponding to a predefined rule depending on the data format of the answer derived from the first answer model (411) or the second answer model (412).
[0155] For example, if the answer to a user query (911, 921) is composed of text, as illustrated in (a) and (b) of FIG. 9, the giant answer model (413) may generate the user answer by including reference information (912b, 922b) that specifies the basis (or source) of the answer along with the answer.
[0156] Furthermore, although not shown, the giant answer model (413) can be generated using various formats such as tables, lists, numbering, images, videos, interactive, charts, graphs, block diagrams, text listings, sources, and links, depending on at least one of the user's requirements, the format and content of the answer, and the search results of Passage Retrieval (or Passage search).
[0157] For example, if a block diagram exists in the search results from Passage Retrieval (or Passage search), the giant answer model (413) can generate the answer in a block diagram format. Furthermore, if the user requests “show as a table,” the giant answer model (413) can generate the answer in a table format.
[0158] Meanwhile, the system according to the present invention can analyze user queries and provide reports tailored to specific companies. These reports can include various statistical information, such as user query rankings by period and the number of chatbot users.
[0159] Meanwhile, as illustrated in FIG. 6, the answer verification unit (433) can verify the answer of the large language model (413) using the second model (411b). For example, in the present invention, it can be confirmed whether the answer of the large language model includes an answer extracted from the second model (411b).
[0160] The prompt management unit (430) can compare the answer resulting from the second model (411b) with the answer of the large language model (413) for a user query, and can verify through the answer verification unit (433) whether the answer resulting from the second model (411b) is included in the answer of the large language model (413). For example, in response to the question “What is the capital of the Republic of Korea?”, if the second model (411b) outputs the answer “The Republic of Korea is one of the countries in East Asia and its capital is Seoul. (Answer: Seoul)” and the large language model (413) generates “The capital of the Republic of Korea is Seoul”, the answer verification unit (433) can verify the answer of the large language model (413) by checking whether “Seoul” is included in the answer of the large language model (413). The answer verification unit (433) can determine that the answer of the large language model (413) is accurate if the answer resulting from the second model (411b) is included in the answer of the large language model (413). Conversely, the answer verification unit (433) can determine that the answer of the large language model (413) is incorrect if the answer resulting from the second model (411b) is not included in the answer of the large language model (413). In this case, the answer of the large language model (413) can be regenerated.
[0161] As described above, the method and system for providing a conversational communication agent service based on a generative AI model according to the present invention can provide customers with quick and accurate answers to customer (or user) inquiries by using an answer model that has learned corporate data.
[0162] Furthermore, the method and system for providing a conversational communication agent service based on a generative AI model according to the present invention can provide more efficient and accurate answers to customers by selectively using an appropriate answer model among multiple answer models based on the characteristics of the customer's question, such as the intent of the question.
[0163] Furthermore, the method and system for providing a conversational communication agent service based on a generative AI model according to the present invention can provide customers with highly reliable, customized corporate answers by identifying the correct answer to a customer's inquiry from corporate data and inputting it into a large model to generate an answer.
[0164] Meanwhile, in the present invention, the term of the model may be named as engine or “unit”, or the term of the engine may be named as model or “unit”.
[0165] Meanwhile, the present invention discussed above can be implemented as a program that is executed by one or more processes on a computer and can be stored on a medium (or recording medium) that can be read by the computer.
[0166] Furthermore, the present invention discussed above can be implemented as computer-readable code or instructions on a program-recorded medium. In other words, the present invention can be provided in the form of a program.
[0167] Meanwhile, computer-readable media include all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include hard disk drives (HDDs), solid-state disk drives (SSDs), silicon disk drives (SDDs), ROMs, RAMs, CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices.
[0168] Furthermore, the computer-readable medium may include a storage device and may be a server or cloud storage device accessible via communication. In this case, the computer may download the program according to the present invention from the server or cloud storage device via wired or wireless communication.
[0169] Furthermore, in the present invention, the computer described above is an electronic device equipped with a processor, i.e., a CPU (Central Processing Unit), and there is no particular limitation on its type.
[0170] Meanwhile, the above detailed description should not be construed as limiting in any respect and should be considered illustrative. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the present invention are intended to be included within the scope of the present invention.
Claims
1. In a service provision method in a conversational communication agent service provision system based on a generative AI model, A step of receiving a user query from a user terminal while a page linked to a company is provided to the user terminal; A step of identifying a specific company related to the user query by using unique information linked to the user query; and A step of generating an answer to the user query using at least one of a plurality of different answer models based on the characteristics of the user query, A method for providing a generative AI model-based conversational communication agent service, characterized in that at least one of the plurality of response models is a model that has been trained for the specific company before the user query is received using data related to the specific company.
2. In paragraph 1, The page associated with the above company includes the homepage of the specific company, A method for providing a generative AI model-based conversational communication agent service, characterized in that the above user query is received through a chatbot provided by the specific company.
3. In paragraph 1, The above unique information is, Includes code information that can identify the specific company included in the receiving path information of the above user query, In the above specific step, A method for providing a generative AI model-based interactive communication agent service, characterized in that the specific company is identified by using the code information included in the reception path information of the user query and the company code matching information stored in the database of the service providing system.
4. In paragraph 1, The above multiple answer models include a first answer model and a second answer model different from the first answer model, The above first answer model is, A model that generates an answer through a process of identifying the correct answer data for the user query among the data related to the specific company by performing learning using data related to the specific company. The above second answer model is, A method for providing a generative AI model-based conversational communication agent service, characterized in that the model generates answers using data in which a plurality of questions related to the specific company and answers to each of the plurality of questions form a set.
5. In paragraph 4, In the step of generating the above answer, Generate an answer to the user query using a Large Language Model (LLM) that receives an answer generated from at least one of the first answer model and the second answer model as a prompt, A method for providing a generative AI model-based conversational communication agent service, characterized in that the answer to the generated user query is transmitted to the channel through which the user query was received.
6. In paragraph 5, The data related to the specific company includes at least one of data registered on the company's homepage, documents uploaded to the system, documents collected from the specific company's server, and documents collected from an external website (WEBSITE) related to the specific company. The above first answer model is, A method for providing a generative AI model-based conversational communication agent service, characterized in that it includes a RAG (Retrieval-Augmented Generation) model that performs specification of the correct answer data for the user query using data related to the specific company.
7. In paragraph 6, The above RAG model is, A method for providing a generative AI model-based conversational communication agent service, characterized in that a passage search is performed to specify a portion of data related to the user query among data related to the specific company in order to specify the above correct answer data.
8. In paragraph 7, The above RAG model is, Among the parts specified through the above passage search, the location of the correct answer data for the user query is specified, A method for providing a generative AI model-based conversational communication agent service, characterized in that a portion corresponding to the specified location among the portions specified through the above passage search and location information for the specified location are input as a prompt for the large language model.
9. In paragraph 5, A step of evaluating a first answer generated from the first answer model and a second answer generated from the second answer model; A step of selecting one of the first answer and the second answer based on the evaluation result; and A method for providing a generative AI model-based conversational communication agent service, characterized in that it further comprises a step of inputting one selected answer as a prompt of the giant language model.
10. In paragraph 4, Further comprising a step of generating a search query for deriving an answer from each of the first answer model and the second answer model by using the large language model that receives the user query as a prompt, A method for providing a conversational communication agent service based on a generative AI model, characterized in that the first answer of the first answer model and the second answer of the second answer model are answers generated by receiving the search query generated using the giant language model as input.
11. In paragraph 10, The above search query is, A first category including keywords extracted from the user query, A second category containing queries that have been paraphrased to have a similar meaning to the user query above, and A method for providing a generative AI model-based conversational communication agent service, characterized in that it includes information included in at least one category among the third categories including extended words extended from the meaning of the user query.
12. In paragraph 11, The above first answer model includes an Information Retriever and a Semantic Retriever, A method for providing a generative AI model-based conversational communication agent service, characterized in that it includes a Re-Ranker model that calculates rankings for search results of the first answer model and search results of the second answer model.
13. In paragraph 1, The above user query is received through a virtual digital human trained using data related to the specific company, A method for providing a generative AI model-based conversational communication agent service, characterized in that the answer to the user query is output as speech of the virtual digital human.
14. A storage unit storing at least one computer program code; and A control unit that provides a generative AI model-based conversational communication agent service using the above storage unit and program code, The above control unit, In a state where a page linked to a company is provided to a user terminal, a user query is received from the user terminal, Using the unique information associated with the user query, identify a specific company related to the user query, Based on the characteristics of the user query, an answer to the user query is generated using at least one of a plurality of different answer models, A system for providing a generative AI model-based conversational communication agent service, characterized in that at least one of the plurality of response models is a model that has been trained for the specific company before the user query is received using data related to the specific company.
15. A program that is executed by one or more processes in an electronic device and stored in a computer-readable recording medium, The above program is, A step of receiving a user query from a user terminal while a page linked to a company is provided to the user terminal; A step of identifying a specific company related to the user query by using unique information linked to the user query; and Includes commands for performing a step of generating an answer to the user query using at least one of a plurality of different answer models based on the characteristics of the user query, A program characterized in that at least one of the plurality of response models is a model that has been trained for the specific company before the user query is received using data related to the specific company.
Citation Information
Patent Citations
Dialog system and computer program thereof
JP2019197498A
Paper box with lid equipped with warm and cool function
KR1020220032423A
Packing pack sealing device
KR102171540B1
System for providing conversational artificial intelligence chatbot service optimized by non face-to-face civil affair administration
KR102262035B1
Machine Learning Tool for Navigating a Dialogue Flow
US20200126540A1