Natural Language Response Generation Using Constrained Templates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current search systems provide factual responses to queries in the form of lists rather than natural language sentences, which can be less user-friendly, especially in voice-based dialog systems where a grammatical answer is more desirable.
Innovation Solution
The system converts facts from a database into sentences by accessing candidate templates with constraints, selecting the most relevant template based on the query attributes, and filling in the fields with the corresponding information to generate a natural language response.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If search systems provide factual responses as lists of search results, then the information is complete and structured, but the user-friendliness and naturalness of the response deteriorates
Solution Approach 1:
The patent introduces an intermediary component (response generator with templates) between the database and the user interface. This intermediary transforms structured database facts into natural language sentences using predefined templates, thereby improving user-friendliness without significantly increasing system complexity.
Solution Approach 2:
The system uses template copying where predefined sentence templates are replicated and filled with specific data values. This allows natural language response generation without complex processing, as the structure is copied from templates and only the content variables need to be populated from the database.
2Ease of operation
If the system converts facts into natural language sentences, then the naturalness and user-friendliness of the response is improved, but the complexity of the sentence generation mechanism increases
Solution Approach 1:
The response generation mechanism is segmented into distinct components: template selection based on query type, constraint validation, and template filling. This segmentation allows each component to be independently managed and optimized, reducing overall system complexity while maintaining natural language generation capability.
Solution Approach 2:
The system changes parameters of the generation mechanism by using predefined templates with placeholders rather than generating sentences from scratch. The parameters (template structure, constraints, filling rules) are configured once and reused, reducing the complexity of the generation process while maintaining flexibility and naturalness.
3Adaptability or versatility
If multiple candidate templates with constraints are used to answer queries, then the adaptability to complex queries is improved, but the device complexity increases
Solution Approach 1:
The template system is designed with universality where a single template can handle multiple query types through parameter substitution. Templates are multi-functional, serving different query purposes by changing the filled values rather than requiring separate templates for each query type, thereby reducing template management complexity.
Solution Approach 2:
Templates and their constraints are prepared in advance (preliminary action) during system setup. This pre-processing of response structures means that during query execution, the system only needs to select and fill templates rather than generate structures dynamically, reducing runtime complexity while maintaining high adaptability to various query types.
Data Source
AI summary
A server receives a query identifying one or more attributes of an entity. The server accesses a set of candidate templates for answering the query based on the one or more attributes of the entity, each candidate template having one or more fields, wherein each field is associated with at least one constraint. The server obtains a set of information that answers the query and selects a template from the set of candidate templates, where the selected template has a maximum number of fields with constraints that are satisfied by the set of information. The server then generates a phrase by adding the set of information to the one or more fields of the selected template, such that the phrase comprises an answer to the query. Finally, the server communicates the phrase to a client device.


