Travel plan generation method, apparatus and device, and computer storage medium
By analyzing users' multi-turn natural language dialogues through an intelligent travel planning system and dynamically coordinating tool call nodes from different domains, the system solves the problems of delays in travel planning generation and insufficient interactive expression in cross-domain task scenarios of existing systems, and achieves efficient generation of intelligent online travel plans.
Patent Information
- Application Number
- CN202511881889.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-12
- Publication Date
- 2026-03-03
AI Technical Summary
Existing online travel assistant systems have significant limitations when handling complex, multi-turn cross-domain task scenarios, especially in terms of cross-domain multi-turn dialogue, personalized recommendations, and delays in travel planning generation and interactive expression.
The intelligent travel planning system uses an intelligent agent layer module to analyze users' multi-turn natural language dialogues, dynamically coordinates tool call nodes in different fields, and generates intelligent travel plans by combining user profiles and preference models.
It enables dynamic coordination of different domains based on multi-turn natural language dialogues between users in cross-domain task scenarios, generating intelligent online travel plans and improving user experience.
Smart Images

Figure CN121597915A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of artificial intelligence, and in particular relates to a method, apparatus, device and computer storage medium for generating travel plans. Background Technology
[0002] With the rapid development of artificial intelligence technology, especially breakthroughs in intelligent agent technology and large language models, intelligent dialogue systems and personalized recommendation services have been widely used in online travel platforms. Intelligent and personalized online travel recommendation services have become the mainstream trend in the industry. Traditional travel service platforms mainly rely on the "search + filter" model, requiring users to plan and make decisions themselves from fragmented information, which is a cumbersome process.
[0003] Existing online travel assistant systems are typically built on rule engines or single machine learning models, which have significant limitations when handling complex, multi-turn, cross-domain tasks. They generally suffer from noticeable deficiencies in cross-domain multi-turn dialogue, personalized recommendations, travel plan generation delays, and interactive expression. Therefore, an "intelligent travel planning assistant" capable of understanding multi-turn natural language dialogue in cross-domain task scenarios and dynamically coordinating different domains to provide one-stop planning and booking services has become crucial for improving user experience. Summary of the Invention
[0004] This application provides a travel planning generation method, apparatus, device, and computer storage medium, which can dynamically coordinate different domains and generate intelligent online travel plans based on the user's multi-turn natural language dialogue in cross-domain task scenarios.
[0005] In a first aspect, embodiments of this application provide a travel plan generation method, applied to an intelligent travel planning system. The intelligent travel planning system includes a service layer module, an intelligent agent layer module, a component layer module, a tool layer module, and a data layer module. The method may include: The intelligent agent layer module collects user travel planning requests; Upon receiving a user's travel planning request, the context request information corresponding to the user's request is obtained from the component layer module. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data and determines at least one tool call node corresponding to each travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different fields. Through the intelligent agent layer module, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning data model events of different theme types in the service layer module, multiple travel planning request task data are executed. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained. The user profiles and user behavior analysis and preference models are generated based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information. The user profile is used to indicate the user's preferences. The travel planning data model events of different theme types are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is travel platform data from different sources and with different structures obtained by the data layer module. The intelligent agent layer module generates intelligent travel plans based on the processing results of multiple travel planning tasks.
[0006] In one embodiment, the aforementioned intelligent layer module includes a main intelligent agent, a dialogue management module, and multiple sub-intelligent agents, each corresponding to the processing of tasks in different business domains. Upon receiving a user's travel planning request, the system retrieves the context request information corresponding to the user's request from the component layer module, including: Upon receiving a user's travel planning request, the context request information corresponding to the user's request is obtained from the component layer module through the dialogue management module; The intelligent agent layer module parses the context request information corresponding to the acquired user travel planning requests to obtain multiple travel planning request task data and determine at least one tool invocation node corresponding to each travel planning request task data, including: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain the parsing result; Based on the user's travel planning request and the parsing results, the main intelligent agent determines multiple travel planning request task data and multiple target sub-intelligent agents. The multiple target sub-intelligent agents are the sub-intelligent agents that correspond to each travel planning request task data among the multiple sub-intelligent agents. Each target sub-agent determines at least one corresponding tool invocation node based on the travel planning request task data.
[0007] In one embodiment, the travel planning request task data mentioned above includes intent information, entity information, and constraint information. The intent information is used to indicate the user's behavioral intent, the entity information is used to indicate the entity objects in the travel planning, and the constraint information is used to indicate the limiting conditions in the user's travel planning request. Through the intelligent agent layer module, multiple tool call nodes in the tool layer module are invoked sequentially. Based on travel planning data model events of different theme types in the service layer module, multiple travel planning request tasks are executed. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained, including: For each target sub-agent, the following steps are performed: Multiple tool call nodes in the tool layer module are called sequentially; based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module; the constraint type judgment result is determined based on intent information, entity information, and constraint information; and the at least one recall result is deduplicated and merged using a preset priority strategy to obtain the travel planning task processing result. By combining user profiles and user behavior analysis and preference models, the processing results of travel planning tasks for all target sub-agents are summarized to obtain multiple travel planning task processing results.
[0008] In one embodiment, the aforementioned process of determining at least one corresponding tool invocation node based on travel planning request task data through each target sub-agent includes: Through each target sub-agent, an execution plan for the tool invocation node is generated based on the travel planning request task data. The execution plan for the tool invocation node includes at least one tool invocation node corresponding to the travel planning request task data, as well as the execution logic and dependencies between each tool invocation node. Through the intelligent agent layer module, multiple tool call nodes in the tool layer module are invoked sequentially. Based on travel planning data model events of different theme types in the service layer module, multiple travel planning request tasks are executed. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained, including: For each target sub-agent, the following steps are performed: Based on the execution logic and dependencies, at least one tool call node in the tool layer module corresponding to the travel planning request task data is called sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The constraint type judgment result is determined based on intent information, entity information, and constraint information. The at least one recall result is deduplicated and merged using a preset priority strategy to obtain the travel planning task processing result. By combining user profiles and user behavior analysis and preference models, the processing results of travel planning tasks for all target sub-agents are summarized to obtain multiple travel planning task processing results.
[0009] In one embodiment, the above-mentioned process involves sequentially invoking at least one tool call node in the tool layer module corresponding to the travel planning request task data based on execution logic and dependencies. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data with different theme types of travel planning data model events in the service layer module, including: When the input of the execution logic and dependency relationship indicates that the tool call node depends on the execution result of the previous tool call node, according to the first preset call rule, at least one tool call node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The first preset call rule is used to indicate the rule for serial calling of tool call nodes. When the execution logic and dependency relationship indicate that the execution results of each tool calling node are independent of each other, according to the second preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The second preset calling rule is used to indicate the rules for parallel calling of tool calling nodes. If the execution logic and dependency relationship do not indicate that the input of the current tool calling node depends on the execution result of the previous tool calling node, or that the execution results of each tool calling node are independent of each other, then according to the third preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in the different theme types of travel planning data model events in the service layer module. The third preset calling rule is used to indicate the rule of combining serial and parallel calling of tool calling nodes.
[0010] In one embodiment, the constraint type determination result mentioned above includes a first constraint type, a second constraint type, and a third constraint type. The first constraint type is a constraint type with semantic accuracy higher than a preset threshold, the second constraint type is a constraint type with semantic accuracy not higher than the preset threshold, and the third constraint type is a mixture of the first and second constraint types. The process sequentially calls multiple tool call nodes in the tool layer module. Based on the constraint type judgment result, it matches the travel planning request task data with different theme types of travel planning data model events in the service layer module to obtain at least one recall result, including: If the constraint type judgment result is the first constraint type, multiple tool call nodes in the tool layer module are called in sequence. Based on the travel planning request task data, structured queries are performed in different theme types of travel planning data model events in the service layer module, and filtered according to preset constraint conditions to obtain the first recall result. If the constraint type determination result is the second constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, semantic recall is performed in the travel planning data model events of different theme types in the service layer module using a vector search engine to obtain the second recall result.
[0011] If the constraint type judgment result is the third constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, structured queries are performed in the travel planning data model events of different theme types in the service layer module, and filtering is performed according to preset constraints. Semantic recall is performed based on the vector search engine to obtain the third recall result. The third recall result is the recall result obtained by deduplicating and merging the first and second recall results according to the preset strategy.
[0012] In one embodiment, the process of parsing the context request information corresponding to the acquired user travel planning request through the intelligent agent layer module to obtain multiple travel planning request task data, and determining at least one tool invocation node corresponding to each travel planning request task data, includes: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request, identifies and extracts intent information, entity information and constraint information, and decomposes the natural language dialogue in the context request information to obtain multiple slots. These slots are used to indicate multiple parameter information in the travel planning. Based on the preset slot inheritance rules and context request information, fill in and complete the information in multiple slots; When the information in multiple slots has been filled, multiple travel planning request task data are obtained based on the information in the multiple slots, and at least one tool call node corresponding to each travel planning request task data is determined based on the type of the multiple slots.
[0013] In one embodiment, before the aforementioned process of sequentially calling multiple tool call nodes in the tool layer module through the intelligent agent layer module, executing multiple travel planning request task data based on different topic types of travel planning data model events in the service layer module, and obtaining multiple travel planning task processing results by combining user profiles and user behavior analysis and preference models, the process further includes: The data layer module obtains users' historical travel booking data, users' historical browsing history, and travel platform evaluation information. Through the intelligent agent layer module, user profiles are constructed based on users' historical travel booking data, historical browsing records, and travel platform evaluation information, combined with contextual request information. Furthermore, user behavior analysis and preference models are constructed by weighted fusion of different ranking algorithms. After generating an intelligent travel plan based on the processing results of multiple travel planning tasks through the intelligent agent layer module, it also includes: The user profiles, user behavior analysis, and preference models are updated based on the smart travel planning.
[0014] In one embodiment, after generating an intelligent travel plan based on the processing results of multiple travel planning tasks through the intelligent agent layer module, the process further includes: Through the user interaction module, the itinerary information and / or itinerary map of the intelligent travel plan are dynamically displayed to the user through the image display component. The image display component is used to jump the display interface to the travel planning and booking interface when the user clicks. The itinerary information includes at least one of the following in the travel plan: transportation information, accommodation information, and attraction information. The itinerary map includes the itinerary route information and / or destination distribution information in the travel plan.
[0015] Secondly, embodiments of this application provide a travel planning generation device applied to an intelligent travel planning system. The intelligent travel planning system includes a service layer module, an intelligent agent layer module, a component layer module, a tool layer module, and a data layer module. The device may include: The data acquisition module is used to collect user travel planning requests through the intelligent agent layer module; The acquisition module is used to obtain the context request information corresponding to the user's request from the component layer module when a user's travel planning request is received. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. The parsing module is used to parse the context request information corresponding to the user's travel planning request obtained by the intelligent agent layer module, to obtain multiple travel planning request task data, and to determine at least one tool call node corresponding to each travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different fields. The execution module, through the intelligent agent layer module, sequentially calls multiple tool call nodes in the tool layer module. Based on different theme-type travel planning data model events in the service layer module, it executes multiple travel planning request tasks and, combined with user profiles and user behavior analysis and preference models, obtains multiple travel planning task processing results. The user profiles and user behavior analysis and preference models are generated based on users' historical travel booking data, users' historical browsing records, and travel platform evaluation information. The user profiles are used to indicate users' preferences. The different theme-type travel planning data model events are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is obtained from different sources and with different structures of travel platform data through the data layer module. The generation module is used to generate intelligent travel plans based on the processing results of multiple travel planning tasks through the intelligent agent layer module.
[0016] Thirdly, embodiments of this application provide an electronic device, the device comprising: processor; Memory used to store processor-executable instructions; The processor is configured to execute instructions to implement the travel planning generation method as shown in any of the embodiments of the first aspect.
[0017] Fourthly, embodiments of this application provide a computer storage medium on which a computer program is stored, which, when executed by a processor, implements the travel planning generation method as shown in any of the embodiments of the first aspect.
[0018] Fifthly, embodiments of this application also provide a computer program product comprising a computer program stored in a readable storage medium, wherein at least one processor of the device reads from the storage medium and executes the computer program, causing the device to perform a travel planning generation method as shown in any of the embodiments of the first aspect.
[0019] This application provides a travel planning generation method, apparatus, device, and computer storage medium. Upon receiving a user's travel planning request, the method obtains context request information from different rounds of user-generated travel plans from a component layer module. The intelligent agent layer module parses the obtained context request information to obtain multiple travel planning request task data corresponding to different domains, and determines at least one tool invocation node corresponding to each travel planning request task data. The intelligent agent layer module invokes the tool invocation node to execute the multiple travel planning request task data. Based on travel platform data from different sources and with different structures obtained through a data layer module, multiple travel planning task processing results are obtained. Finally, the intelligent agent layer module generates an intelligent travel plan based on the processing results of the multiple travel planning tasks.
[0020] By acquiring travel platform data from different sources and with different structures, as well as multiple travel planning request task data from different fields, through the data layer module, it is possible to dynamically coordinate different fields and generate intelligent online travel plans based on the user's multi-turn natural language dialogue in cross-domain task scenarios. Attached Figure Description
[0021] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0022] Figure 1 This is a schematic diagram of the architecture of an intelligent travel planning system provided in an embodiment of this application; Figure 2 This is a flowchart illustrating a travel planning generation method provided in an embodiment of this application; Figure 3 This is a schematic diagram of the architecture of another intelligent travel planning system provided in an embodiment of this application; Figure 4 This is a flowchart illustrating another travel planning generation method provided in an embodiment of this application; Figure 5 This is a flowchart illustrating another travel planning generation method provided in an embodiment of this application; Figure 6 This is a flowchart illustrating another travel planning generation method provided in an embodiment of this application; Figure 7 This is a schematic diagram illustrating a method for invoking a Tool according to an embodiment of this application; Figure 8 This is a flowchart illustrating another travel planning generation method provided in an embodiment of this application; Figure 9This is a flowchart illustrating another travel planning generation method provided in an embodiment of this application; Figure 10 This is a flowchart illustrating another travel planning generation method provided in an embodiment of this application; Figure 11 This is a schematic diagram of the structure of a travel planning generation device provided in an embodiment of this application; Figure 12 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0023] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0024] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.
[0025] As discussed in the background section, with the rapid development of artificial intelligence technology, especially breakthroughs in intelligent agent technology and large language models, intelligent dialogue systems and personalized recommendation services have been widely used in online travel platforms. Intelligent and personalized online travel recommendation services have become a mainstream trend in the industry. Traditional travel service platforms mainly rely on a "search + filter" model, requiring users to plan and make decisions themselves from fragmented information, a cumbersome process.
[0026] Existing online travel assistant systems are typically built on rule engines or single machine learning models, which have significant limitations when handling complex, multi-turn, cross-domain tasks. They generally suffer from noticeable deficiencies in cross-domain multi-turn dialogue, personalized recommendations, travel plan generation delays, and interactive expression. Therefore, an "intelligent travel planning assistant" capable of understanding multi-turn natural language dialogue in cross-domain task scenarios and dynamically coordinating different domains to provide one-stop planning and booking services has become crucial for improving user experience.
[0027] To address the problems existing in the prior art, this application provides a travel planning generation method, apparatus, device, and computer storage medium. Upon receiving a user's travel planning request, the method obtains context request information from different rounds of user-generated travel plans from a component layer module. The intelligent agent layer module parses the obtained context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data corresponding to different domains, and determines at least one tool invocation node corresponding to each travel planning request task data. The intelligent agent layer module invokes the tool invocation node to execute the multiple travel planning request task data. Based on travel platform data from different sources and with different structures obtained through a data layer module, multiple travel planning task processing results are obtained. Finally, the intelligent agent layer module generates an intelligent travel plan based on the processing results of the multiple travel planning tasks.
[0028] By acquiring travel platform data from different sources and with different structures, as well as multiple travel planning request task data from different fields, through the data layer module, it is possible to dynamically coordinate different fields and generate intelligent online travel plans based on the user's multi-turn natural language dialogue in cross-domain task scenarios.
[0029] The travel planning generation method provided in the embodiments of this application will be introduced first below.
[0030] Specifically, the travel planning generation method provided in this application embodiment can be based on Figure 1 The intelligent travel planning system shown is implemented. For example... Figure 1 As shown, the intelligent travel planning system 100 includes: Service layer module 110; Intelligent agent layer module 120; Component layer module 130; Tool layer module 140; and data layer module 150; The intelligent travel planning system 100 can adopt a layered hybrid communication architecture: the service layer module 110 can distribute requests to the agent layer through synchronous calls and return the processing status in real time through asynchronous event streams; the agent layer module 120 includes a main agent and multiple sub-agents, and can achieve loosely coupled collaboration between agents through message passing mechanism; agents call the capabilities of the tool layer module 140 through standardized interfaces, while the tool layer module 140 connects to the external heterogeneous data source of the data layer module 150 through the adapter pattern; all layer modules can access the unified infrastructure services provided by the component layer through client calls or software development kits (SDKs).
[0031] The intelligent travel planning system 100 can be used to perform the following operations: The intelligent agent layer module collects user travel planning requests; Upon receiving a user's travel planning request, the context request information corresponding to the user's request is obtained from the component layer module. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data and determines at least one tool call node corresponding to each travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different fields. Through the intelligent agent layer module, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning data model events of different theme types in the service layer module, multiple travel planning request task data are executed. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained. The user profiles and user behavior analysis and preference models are generated based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information. The user profile is used to indicate the user's preferences. The travel planning data model events of different theme types are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is travel platform data from different sources and with different structures obtained by the data layer module. The intelligent agent layer module generates intelligent travel plans based on the processing results of multiple travel planning tasks.
[0032] Based on the aforementioned travel planning generation system, the travel planning generation method provided in this application embodiment will be introduced first. For example... Figure 2As shown in the embodiments of this application, the travel planning generation method is applied to an intelligent travel planning system. The intelligent travel planning system includes a service layer module, an intelligent agent layer module, a component layer module, a tool layer module, and a data layer module, and includes the following steps: S201: Collect user travel planning requests through the intelligent agent layer module; S202: Upon receiving a user's travel planning request, obtain the context request information corresponding to the user's request from the component layer module. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. S203: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data and determines at least one tool call node corresponding to each travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different fields. S204: Through the intelligent agent layer module, multiple tool call nodes in the tool layer module are called sequentially. Based on the different theme types of travel planning data model events in the service layer module, multiple travel planning request task data are executed. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained. User profiles and user behavior analysis and preference models are generated based on users' historical travel booking data, users' historical browsing records, and travel platform evaluation information. User profiles are used to indicate users' preferences. The different theme types of travel planning data model events are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is obtained from different sources and with different structures of travel platform data through the data layer module. S205: Generates intelligent travel plans based on the processing results of multiple travel planning tasks through the intelligent body layer module.
[0033] The above describes a travel planning generation method, apparatus, device, and computer storage medium provided in this application embodiment. Upon receiving a user's travel planning request, the method obtains context request information from the component layer module, representing different rounds of the user's travel planning. The intelligent agent layer module parses the obtained context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data corresponding to different domains, and determines at least one tool invocation node corresponding to each travel planning request task data. The intelligent agent layer module invokes the tool invocation node to execute the multiple travel planning request task data. Based on travel platform data from different sources and with different structures obtained through the data layer module, multiple travel planning task processing results are obtained. Finally, the intelligent agent layer module generates an intelligent travel plan based on the processing results of the multiple travel planning tasks.
[0034] By acquiring travel platform data from different sources and with different structures, as well as multiple travel planning request task data from different fields, through the data layer module, it is possible to dynamically coordinate different fields and generate intelligent online travel plans based on the user's multi-turn natural language dialogue in cross-domain task scenarios.
[0035] In a specific embodiment, such as Figure 3 As shown, the intelligent travel planning system based on multi-agent systems includes a service layer 310, an agent layer 320, a component layer 330, a tool layer 340, and a data layer 350.
[0036] Service layer 310 is the entry point for interaction with the outside world. HTTP gateway 311 handles HTTP protocol communication between the system and the outside world, and is responsible for request access, protocol conversion, etc. Server 312 represents multi-agent services, including: "Event stream delivery" 313 responsible for pushing event data, "early stop mechanism" 314 controlling the early termination of the process, "heartbeat" 315 maintaining service liveness detection, "business parameter injection" 316 passing business information to the process, "anomaly debugging" 317 recording and troubleshooting anomalies, and "unified frame processing" 318 performing output standardization.
[0037] The Agent Layer 320 is the core of the Intelligent Travel Assistant (ITA) (i.e., the intelligent travel planning system). Based on a self-developed Multi-Agent System (MAS) architecture, it comprises three layers: RA, SA, and Tool. The Root Agent (RA) 321 acts as the overall coordinator, coordinating the sub-agents (SAs) 322 to execute tasks and providing responses such as "persona creation" and "backup replies." Sub-agents 322 include: TA324, HA325, TPA326, OA327, and Others328. Different SAs focus on a specific business domain and can utilize different Tools323 and knowledge bases to understand and process tasks within that domain, including: MCP server329, Agent as Tool3210, func3211, and API3212. The Dialogue Manager (DM) 323 provides the Root Agent 321 with dialogue understanding capabilities, enabling agents to understand dialogue context and supporting cross-domain multi-turn dialogues.
[0038] The component layer 330 provides basic support capabilities for intelligent agents, etc. Dialog ContextManager 331: Manages the dialogue context, allowing intelligent agents to understand the dialogue context and supporting cross-domain multi-turn dialogue. Memory 332: Builds user profiles and stores various data during system runtime, used for data caching, state recording, etc. SQL / Redis Database 333: Provides data storage and query capabilities; SQL is used for relational database operations, and Redis serves as a caching database to accelerate data access. Logger 334: Records system runtime logs for easy troubleshooting and process analysis. Event Generator 335: Generates events within the system for triggering processes and delivering notifications.
[0039] The tool layer 340 is a collection of callable functions, supporting various forms such as Python functions 341, API 342, Mcp Server 343, Agent as Tool 344, and LLM call 345.
[0040] The data layer 350 connects to various data providers, such as map service provider data 351, travel platform service provider data 352, local life data 353, travel data 354, travel guide data 355, general data 356, and mobile + scenic spot data 357, providing the system with rich business data to support the operation of upper-layer functions.
[0041] In S201, user travel planning requests are collected through the intelligent agent layer module. In one example, the main intelligent agent is the entry point of the entire intelligent travel planning system, and the user travel planning request is denoted as Query.
[0042] In S202, upon receiving a user's travel planning request, the context request information corresponding to the user's request is obtained from the component layer module. This context request information is derived from the natural language dialogue information generated by the user in different rounds based on the travel planning. In one example, the DM (Department Context) uniformly manages the dialogue context, which is decomposed into multiple fine-grained slots (such as departure point, destination, departure date, preference tags, etc.), and maintains the source for each slot (explicit user / historical dialogue / inference / system default). The RA / SA layers share the DM, and support cross-domain intent link tracking through slot inheritance rules and the Large Language Model (LLM) semantic verification process: for example, from "book a flight" to "book a hotel," the return direction and destination city can be deduced.
[0043] In S203, the intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data and determines at least one tool call node corresponding to each travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different domains.
[0044] In one example, the agent layer module receives user requests, denoted as Query, and is responsible for intent recognition and routing of the Query, sending it to the semantically most matching SA. If no matching SA is found, the RA (Agent Responsibility) is also responsible for generating a fallback response. Each SA focuses on a business domain, corresponding to different tool sets and knowledge bases, allowing for a more granular understanding and handling of tasks within that domain. For example, our ITA has the following SAs: Ticketing Agent (TA), Hotel Agent (HA), Order Agent (OA), and Travel Planning Agent (TPA). TA focuses on ticket booking, HA on hotel booking, OA on querying user orders, and TPA inherits the capabilities of TA and HA, focusing on travel planning. The Tools layer is a collection of tools (i.e., tool invocation nodes) that actually perform specific operations (implementing business logic). The Multi-Agent Layer (MAS) supports various tool types such as Mcp Server, Agent to Tool, Tool to Agent, and Python Function. For example, in our ITA, TA and HA can be invoked by TPA via Agent to Tool.
[0045] In one example, MAS adopts a three-layer architecture: RA-SA-Tools. RA acts as the central control layer, SA divides business functions, and Tools provides capabilities. This architecture features high cohesion, low coupling, strong scalability, and rapid response. ITAs developed based on MAS can quickly integrate new business scenarios by simply adding the corresponding business logic implementation at the Tool level, then adding the corresponding SA, and adding the SA definition to the RA.
[0046] In S204, the intelligent agent layer module sequentially calls multiple tool call nodes in the tool layer module. Based on different theme types of travel planning data model events in the service layer module, it executes multiple travel planning request task data. Combining user profiles and user behavior analysis and preference models, it obtains multiple travel planning task processing results. The user profiles and user behavior analysis and preference models are generated based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information. The user profile is used to indicate the user's preferences. The different theme types of travel planning data model events are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is obtained from different sources and with different structures of travel platform data through the data layer module.
[0047] In one example, when a user requests access to the system, the routing agent (RA) first distributes the task to the corresponding domain agent (SA) (such as the travel planning agent TPA) based on the intent and slot information identified by the unified dialogue management module. The TPA decomposes the complex task into multiple sub-tasks (such as querying flights, filtering hotels, and recommending attractions) according to task dependencies, and generates tool call instruction chains sequentially or in parallel. The agent then calls tool nodes in the tool layer module through standard interfaces. During tool execution, the system dynamically subscribes to the Travel Planning Data Model (TPDM) event stream through the message bus in the service layer module. After the tool layer returns the original candidate set, the agent triggers deep optimization of the user profile and preference model, finally obtaining the processing results of multiple travel planning tasks.
[0048] In one example, the core fields of the TPDM data protocol are defined as follows: Source indicates the data source, TrainTicket indicates the train ticket type, Train indicates train ticket data, Flight indicates flight data, Hotel indicates hotel data, and Attraction indicates attraction data.
[0049] Table 1: List of Data Sources Table 2: List of Train Ticket Types Table 3: Train Ticket Data List Table 4: List of Flight Ticket Data Table 5: Hotel Data List Table 6: List of Attractions In one example, multi-source heterogeneous data (i.e., raw data from travel platforms, which is obtained from different sources and with different structures through the data layer module) is accessed using an interface adapter pattern, connecting to data from multiple supplier platforms, as well as massive amounts of data on hotels, flight routes, attraction tickets, train tickets, etc. Each adapter is responsible for converting the raw data from that source into a unified TPDM. TPDM defines the data protocols for different scenarios such as ticketing, hotels, and travel.
[0050] In one example, incremental (change) data updates are implemented based on a message bus mechanism; data cleaning, deduplication, and conflict resolution employ a set of priority rules. For instance, deduplication can be based on supplier priority -> timestamp priority, and conflict resolution can be based on data reliability priority -> supplier priority -> price priority, etc. For high-frequency, variable-price ticketing (mainly air tickets), a two-layer caching + event-driven monitoring approach is used: a price snapshot layer and an aggregation cache layer. The price snapshot layer ensures second-level query performance and low latency, while the aggregation cache layer performs aggregation and deduplication. Price changes are updated differentially through event-driven mechanisms, updating only the changed portions to avoid full refreshes and supporting second-level query performance.
[0051] In one example, the multi-source heterogeneous data access process includes: 1. Pulling raw data (full or incremental) from the supplier; 2. Performing data cleaning: missing value imputation, time standardization, price unit unification, and currency conversion (e.g., cross-currency conversion); 3. Converting the raw data into a unified TPDM event format, publishing the events to the Kafka message bus, and distinguishing topics by entity type (tpdm.train, tpdm.flight, tpdm.hotel, tpdm.attraction); 4. Subscribing to the corresponding topic on the message bus; 5. Deduplicating and resolving conflicts for the same entity (e.g., the same flight, the same day, and the same flight number) based on priority rules and conflict priority rules, generating a single TPDM record; 6. Using a two-layer caching + event-driven monitoring approach for high-frequency variable-price ticketing (mainly air tickets).
[0052] In S205, the intelligent agent layer module generates an intelligent travel plan based on the processing results of multiple travel planning tasks. In one example, after each domain sub-agent completes its sub-task, it returns the processing results to the coordinating agent (usually the travel planning agent TPA or the main routing agent RA). The coordinating agent then performs logical consistency checks on the multi-source results, resolves potential conflicts, and invokes a global optimization tool to deeply integrate the aligned results, finally generating an integrated solution.
[0053] like Figure 4As shown, as an example, the intelligent layer module includes a main intelligent agent, a dialogue management module, and multiple sub-intelligent agents. These sub-intelligent agents correspond to the processing of tasks in different business domains. S202 may include: S2021: Upon receiving a user's travel planning request, the context request information corresponding to the user's request is obtained from the component layer module through the dialogue management module; Accordingly, S203 may include: S2031: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain the parsing result; S2032: The main intelligent agent determines multiple travel planning request task data and multiple target sub-intelligent agents based on the user's travel planning request and the parsing results. The multiple target sub-intelligent agents are the sub-intelligent agents that correspond to each travel planning request task data among the multiple sub-intelligent agents. S2033: Based on the travel planning request task data, determine at least one corresponding tool invocation node through each target sub-agent.
[0054] In S2021, upon receiving a user's travel planning request, the dialogue management module retrieves the context request information corresponding to the user's request from the component layer modules. In one example, upon receiving a user's travel planning request, the dialogue management module, acting as the core context governance hub, accurately retrieves and constructs the complete context information corresponding to the request from the component layer modules. When the service layer forwards the user's new query to the agent layer, the routing agent (RA) first calls the dialogue management module, passing in the session identifier (e.g., session_id) and user identifier (e.g., user_id) for this query. Based on these identifiers, the DM module quickly retrieves all historical dialogue records of the user's current session from the dialogue context storage of the component layer (usually implemented based on Redis or an in-memory database). Simultaneously, the DM module retrieves long-term profile data and historical itinerary data structures related to the user from the memory module.
[0055] In S2031, the intelligent agent layer module parses the context request information corresponding to the acquired user travel planning request to obtain the parsing result. In one example, the intelligent agent layer module receives context request information from the dialogue management module, which already includes historical slots, user profiles, and session memories. Based on this, the user query for the current round is parsed to obtain the parsing result. The parsed object can at least include user intent, target entity, constraints, and target domain.
[0056] In S2032, the main agent determines multiple travel planning request task data and multiple target sub-agents based on the user's travel planning request and the parsing results. The target sub-agents are the sub-agents corresponding to each travel planning request task data. In one example, the RA (Real Agent) breaks down the composite request into atomic, independently executable or sequentially executable sub-tasks based on the user intent, operation type, and constraint set explicitly stated in the parsing results. Each sub-task is encapsulated as a travel planning request task data object, such as Task A (flight query), Task B (hotel recommendation), Task C (itinerary generation), and Task D (budget allocation). The RA can select the most suitable target sub-agent for each task from the multiple sub-agents based on the task type and target domain. The matching strategy can include the task target domain, a list of task types that the sub-agent can handle, the current load of the sub-agent, and its historical performance. For example: Task A → Target sub-agent: Ticketing agent; Task B → Target sub-agent: Hotel agent; Task C → Target sub-agent: Travel planning agent; Task D → Target sub-agent: Travel planning agent.
[0057] In S2033, each target sub-agent determines at least one corresponding tool invocation node based on the travel planning request task data. In one example, each target sub-agent (such as the ticketing agent TA, hotel agent HA, and travel planning agent TPA) first performs deep analysis upon receiving task data to clarify the specific execution objectives and input parameters. Based on its internally predefined capability-tool mapping table or tool selection strategy model, the agent transforms the task requirements into invocation instructions for specific tool capabilities. The core actions to be completed are parsed out: for example, querying flights, which may be broken down into multiple sub-actions based on complexity, such as real-time flight search, price prediction, and flight sorting. The agent dynamically selects the most suitable tool invocation node based on task type, parameter characteristics, and real-time context. For example, for standardized tasks, it directly maps to preset tools; different tools are selected based on input parameters; complex tasks require multiple tools to work together. Based on the dependencies between tools, the agent constructs serial groups, parallel groups, and DAG calls. DAG calls are very flexible and can be flexibly scheduled according to dependencies—they can be parallel or serial. Finally, the tool invocation nodes are triggered sequentially or in parallel through a unified tool invocation node interface. Each tool call node returns a structured result after execution.
[0058] like Figure 5 As shown, as an example, the travel planning request task data includes intent information, entity information, and constraint information. Intent information indicates the user's behavioral intent, entity information indicates the entity objects in the travel plan, and constraint information indicates the limiting conditions in the user's travel planning request. S204 may include: S2041: For each target sub-agent, perform the following steps: sequentially call multiple tool call nodes in the tool layer module; based on the constraint type judgment result, match at least one recall result in the travel planning data model events of different theme types in the service layer module according to the travel planning request task data; the constraint type judgment result is determined based on intent information, entity information, and constraint information; combine the preset priority strategy to deduplicate and merge the at least one recall result to obtain the travel planning task processing result; S2042: Combine user profiles and user behavior analysis and preference models to summarize the processing results of travel planning tasks for all target sub-agents, and obtain multiple travel planning task processing results.
[0059] In S2041, each target sub-agent performs the following steps: Multiple tool call nodes in the tool layer module are invoked sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data with different theme types of travel planning data model events in the service layer module. The constraint type judgment result is determined based on intent information, entity information, and constraint information. A preset priority strategy is used to deduplicate and merge the at least one recall result to obtain the travel planning task processing result. In one example, after parsing the user's query intent and extracting entity and constraint information, the constraint type is determined, and then parallel recall is performed. Multiple recall results are deduplicated and merged according to recall confidence, priority definition, and other strategies to obtain the travel planning task processing result. The constraint type can include precise constraints, imprecise constraints, and mixed constraints.
[0060] In a specific embodiment, taking the Hotel Agent (HA) handling a task of "finding family-friendly hotels in Chengdu" as an example, the process is detailed as follows: Step 1: After parsing, HA obtains clear intent information (finding a hotel), entity information (Chengdu), and constraint information (price, date, family-friendly tag). Step 2: HA judges the constraint information and generates a constraint type judgment result, which is either a precise constraint, an imprecise constraint, or a mixed constraint. Step 3: HA sequentially (or according to dependencies) calls multiple tool nodes in the tool layer, with each type of recall possibly corresponding to one or more tool nodes. Step 4: After receiving the two recall results (list A and list B), HA performs deduplication and fusion according to a preset priority strategy. Step 5: HA encapsulates the fused list into a structured travel planning task processing result and returns it to the main agent.
[0061] In one example, the constraint type determination result includes a first constraint type, a second constraint type, and a third constraint type. The first constraint type is a constraint type with semantic accuracy higher than a preset threshold, the second constraint type is a constraint type with semantic accuracy not higher than the preset threshold, and the third constraint type is a mixture of the first and second constraint types. The process sequentially calls multiple tool call nodes in the tool layer module. Based on the constraint type judgment result, it matches the travel planning request task data with different theme types of travel planning data model events in the service layer module to obtain at least one recall result, including: If the constraint type judgment result is the first constraint type, multiple tool call nodes in the tool layer module are called in sequence. Based on the travel planning request task data, structured queries are performed in different theme types of travel planning data model events in the service layer module, and filtered according to preset constraint conditions to obtain the first recall result. If the constraint type determination result is the second constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, semantic recall is performed in the travel planning data model events of different theme types in the service layer module using a vector search engine to obtain the second recall result.
[0062] If the constraint type judgment result is the third constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, structured queries are performed in the travel planning data model events of different theme types in the service layer module, and filtering is performed according to preset constraints. Semantic recall is performed based on the vector search engine to obtain the third recall result. The third recall result is the recall result obtained by deduplicating and merging the first and second recall results according to the preset strategy.
[0063] In the specific embodiments described above, rule-based structured recall (precise constraints) and vector-based semantic recall (fuzzy constraints) are integrated, and the multi-path recall results are deduplicated and merged according to strategies such as recall confidence and priority definition. For example, for precise constraints (such as booking a flight from Beijing to Shanghai tomorrow, or booking a luxury hotel in Shanghai), a structured query is executed and filtered according to the constraint conditions. For non-precise constraints (such as booking a hotel suitable for children, or recommending some hiking spots in Beijing), the Milvus vector search engine is used in conjunction with multi-source heterogeneous data for semantic recall. The specific implementation process includes: 1. Parsing the user's query intent, entity and constraint extraction; 2. Determining the constraint type: precise constraint, non-precise constraint, mixed constraint; 3. Parallel recall: structured recall: SQL, ES, inverted index, rule filtering (strong filtering according to constraint conditions), semantic recall: Milvus vector retrieval; 4. Deduplicating and merging the multi-path recall results according to strategies such as recall confidence and priority definition.
[0064] In S2042, the processing results of travel planning tasks for all target sub-agents are summarized by combining user profiles and user behavior analysis and preference models, resulting in multiple travel planning task processing results. In a specific embodiment, travel planning task processing results from each sub-agent are collected, for example: from the ticketing agent (TA): a structured list of flight options, each option including flight number, time, price, cabin class, etc.; from the hotel agent (HA): a structured list of hotel options, each option including hotel ID, location, price, facilities, rating, etc.; and from the travel planning agent (TPA): a preliminary draft of daily attractions and activities.
[0065] Then, based on the user profile's price elasticity preferences (such as "more sensitive to hotel prices" or "more sensitive to flight punctuality"), adjustment suggestions are generated (such as "suggest choosing a later flight to save money for hotel upgrades"). The system checks for conflicts between recommendations from different agents and the user profile. For example, if a hotel recommends a "lively downtown hotel," but the user profile shows a "prefer for quiet," the system will flag this conflict and demote that hotel in subsequent rankings.
[0066] Using user behavior analysis and preference models, a "user preference fit score" is calculated for all types of candidate items (flights, hotels, attractions). This model takes user profiles (such as "family travel preference" and "price sensitivity") and real-time behavioral context (such as frequent clicks on "sea view room" in this search) as feature inputs. For example, a hotel offering "kids' meals" and "playgrounds" will receive a high score under the "family travel" profile. A flight arriving in the evening will receive a higher score for users whose profile indicates "dislike of waking up early" than a flight arriving in the early morning. After these steps, the coordinating agent outputs multiple optimized travel planning task processing results.
[0067] like Figure 6 As shown, as an example, S2033 may include: S20331: Through each target sub-agent, an execution plan for the tool calling node is generated based on the travel planning request task data. The execution plan for the tool calling node includes at least one tool calling node corresponding to the travel planning request task data, as well as the execution logic and dependencies between each tool calling node. Accordingly, S204 may include: S2043: For each target sub-agent, perform the following steps: Based on the execution logic and dependencies, sequentially call at least one tool call node in the tool layer module corresponding to the travel planning request task data. Based on the constraint type judgment result, match the travel planning request task data in different theme types of travel planning data model events in the service layer module to obtain at least one recall result. The constraint type judgment result is determined based on intent information, entity information, and constraint information. Combine the preset priority strategy to deduplicate and merge the at least one recall result to obtain the travel planning task processing result. S2044: Combine user profiles and user behavior analysis and preference models to summarize the processing results of travel planning tasks for all target sub-agents, and obtain multiple travel planning task processing results.
[0068] In S20241, each target sub-agent generates an execution plan for the tool invocation node based on the travel planning request task data. The execution plan for the tool invocation node includes at least one tool invocation node corresponding to the travel planning request task data, as well as the execution logic and dependencies between the tool invocation nodes.
[0069] In one example, such as Figure 7As shown, Tool calls can be predefined according to actual needs, supporting serial calls, parallel calls, and DAG calls between Tools. For example, a Tool group includes Tool 1 (T1), Tool 2 (T2), Tool 3 (T3)...Tool i (Ti). Serial Tool calls 710 are suitable for scenarios where "the input of the current Tool depends on the execution result of the previous Tool," and the entire Tool call process forms a sequential chain. Parallel Tool calls 720 are suitable for scenarios where "Tools execute independently," and the results are aggregated after all Tools execute in parallel. DAG calls 730 are suitable for more complex scenarios; when single serial or parallel calls cannot meet the requirements, DAG calls can be used. DAG calls are very flexible, allowing for flexible scheduling based on dependencies—they can be performed in parallel or serially.
[0070] In S2043, each target sub-agent performs the following steps: based on the execution logic and dependencies, at least one tool call node in the tool layer module corresponding to the travel planning request task data is called sequentially; based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module; the constraint type judgment result is determined based on intent information, entity information, and constraint information; and the at least one recall result is deduplicated and merged using a preset priority strategy to obtain the travel planning task processing result.
[0071] In one example, based on execution logic and dependencies, at least one tool call node in the tool layer module corresponding to the travel planning request task data is sequentially invoked. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module, including: When the input of the execution logic and dependency relationship indicates that the tool call node depends on the execution result of the previous tool call node, according to the first preset call rule, at least one tool call node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The first preset call rule is used to indicate the rule for serial calling of tool call nodes. When the execution logic and dependency relationship indicate that the execution results of each tool calling node are independent of each other, according to the second preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The second preset calling rule is used to indicate the rules for parallel calling of tool calling nodes. If the execution logic and dependency relationship do not indicate that the input of the current tool calling node depends on the execution result of the previous tool calling node, or that the execution results of each tool calling node are independent of each other, then according to the third preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in the different theme types of travel planning data model events in the service layer module. The third preset calling rule is used to indicate the rule of combining serial and parallel calling of tool calling nodes.
[0072] In the above embodiments, the first preset calling rule is used to indicate the rules for serial calling of the tool calling node; the second preset calling rule is used to indicate the rules for parallel calling of the tool calling node; and the third preset calling rule is used to indicate the rules for combining serial and parallel calling of the tool calling node.
[0073] In S2044, the processing results of the travel planning tasks corresponding to all target sub-agents are summarized by combining user profiles and user behavior analysis and preference models to obtain multiple travel planning task processing results. The specific implementation process of S2044 is the same as that of S2042, and will not be repeated here.
[0074] like Figure 8 As shown, as an example, S203 may include: S2034: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request, identifies and extracts intent information, entity information and constraint information, and decomposes the natural language dialogue in the context request information to obtain multiple slots. These multiple slots are used to indicate multiple parameter information in the travel planning. S2035: Fill in and complete the information in multiple slots according to the preset slot inheritance rules and context request information; S2036: When the information in multiple slots has been filled, obtain multiple travel planning request task data based on the information in the multiple slots, and determine at least one tool call node corresponding to each travel planning request task data based on the type of the multiple slots.
[0075] In S2031, the intelligent agent layer module parses the context request information corresponding to the user's travel planning request, identifying and extracting intent information, entity information, and constraint information. Based on the natural language dialogue in the context request information, multiple slots are decomposed, indicating various parameters in the travel planning. In one example, the DM (Dialogue Management) layer uniformly manages the dialogue context, which is decomposed into multiple fine-grained slots (such as departure point, destination, departure date, preference tags, etc.), and maintains the source for each slot (explicit user / historical dialogue / inference / system default). The RA / SA layers share the DM, supporting cross-domain intent link tracking through slot inheritance rules and LLM semantic verification processes: for example, from "booking a flight" to "booking a hotel," the return direction and destination city can be deduced. Upon receiving the user's travel planning request, the intelligent agent layer module performs deep parsing of the context request information from the dialogue management module. It identifies the core intent information, specific entity information, and various constraints in the user query. Intent information indicates the task's goal, entity information indicates the specific object of the operation, and constraint information indicates the boundaries and preferences of the execution result. Based on these recognition results, the system further decomposes the natural dialogue content into a set of structured, fine-grained slots. Each slot corresponds to an independent parameter dimension in travel planning, such as destination, travel date, budget, etc., and is accompanied by metadata such as the source, confidence level, and status of its value.
[0076] In S2032, after initial slot decomposition and extraction, the system intelligently fills and completes multiple identified slots based on preset slot inheritance rules and the context request information of the current dialogue. In one example, by traversing each slot, its current value status is checked: if the slot value has been explicitly provided by the user in this query, it is confirmed and marked as high confidence; if the slot value is empty or has ambiguous references, the inheritance mechanism is activated. The inheritance mechanism first searches for inheritable values from the recent dialogue history of the same session. For example, when the user mentions "that hotel," the system will automatically fill the corresponding "hotel name" and "hotel attribute" slots with the hotel name and attributes explicitly mentioned in the previous dialogue. If the values cannot be obtained from the recent history, the system further backtracks to the user's long-term profile and historical behavior data, such as using the user's frequently used departure cities or preferred flight cabin classes from past orders as default values for filling. In addition, the system performs logical reasoning to complete related slots. For example, when both "trip days" and "end date" are known, the "start date" can be automatically calculated. All slot values completed through inheritance or reasoning are marked with their source and corresponding confidence level, and confirmation may be initiated with the user in subsequent processes as needed. This improves dialogue efficiency while ensuring information accuracy, providing a solid data foundation for generating reliable and personalized travel plans.
[0077] In S2033, when all information in multiple slots has been filled, multiple travel planning request task data are generated based on the information in the multiple slots, and at least one tool invocation node corresponding to each travel planning request task data is determined based on the type of the multiple slots. In one example, when all information in multiple slots has been completely filled, the system enters the task generation and tool mapping stage. First, the agent layer module (usually a routing agent RA or a dedicated task planner) automatically synthesizes multiple structured travel planning request task data based on the filled slot set. Each task data corresponds to an independently executable task action, and its generation logic can be based on a preset task template and slot mapping relationship: for example, when the slot contains "departure point", "destination", and "departure date", the system will generate a "flight query" task data; when it contains "destination", "check-in date", and "check-out date", it will generate a "hotel query" task data. For complex composite requests, such as complete itinerary planning, the system will simultaneously generate multiple task data such as flight tickets, hotels, attraction recommendations, and route arrangements, and automatically analyze the logical dependencies between them. For example, hotel query needs to be executed after flight ticket query to determine the check-in time. Subsequently, the system determines at least one tool call node required to execute the task based on the slot type and business domain involved in each task data. This determination process relies on a predefined "task type-tool mapping table" and the real-time context. For example, a "flight query" task will be mapped to a "real-time flight search tool"; if a "price-sensitive" preference slot also exists, a "price prediction and comparison tool" will be added. The selection of tool nodes also considers the execution mode. For multiple tasks without dependencies, their corresponding tool nodes can be marked as parallel calls; for tasks with strong sequential dependencies, their tool nodes are organized into a serial call chain.
[0078] In one example, the specific implementation process of cross-domain continuous dialogue and generating efficient travel guides includes: 1. NLU parses user queries, identifies intent, and extracts entities and constraints (e.g., origin, destination, departure date, hard constraints, etc.). It decomposes the dialogue context into fine-grained slots, maintaining source metadata (explicit user input / historical profile / inference results / system defaults) and confidence levels for each slot.
[0079] 2. RA / SA share DM and adopt slot inheritance rules (e.g., explicit input > short-term session inference > long-term profile) to ensure that key information such as city, return direction, and date can be correctly transmitted and automatically completed when moving from "booking a flight" to "booking a hotel" or "arranging an itinerary", and record change history to support backtracking and explanation.
[0080] 3. Perform semantic contradiction detection and reasoning on key slots (e.g., semantic anomalies in "departure point = Beijing, destination = Beijing"), and trigger clarification or automatic correction suggestions when conflicts are found.
[0081] 4. When a slot is fully executing a task, the travel guide generation task is compiled into a DAG with dependency information; the scheduler performs topology sorting and automatically determines which nodes can be executed in parallel and triggers them concurrently; for sequential nodes, they are executed in the order of their dependencies.
[0082] 5. When searching for candidates, we integrate a massive amount of high-quality travel guides and real review tags, and vectorize user preferences and travel guide snippets to improve matching accuracy. We also combine user profiles to generate more personalized travel itineraries, ticket recommendations, and hotel recommendations.
[0083] 6. When adjusting travel itineraries multiple times, the system automatically links to the user's previous travel itinerary report and adjusts the adjusted parts of the travel itinerary according to the user's semantic granularity (such as adjusting the itinerary or changing the mode of travel).
[0084] In one example, by modeling the DAG (Directed Acyclic Graph), i.e., compiling the itinerary generation task into a DAG with dependency information; the scheduler performs topology sorting, automatically determining which nodes can be executed in parallel and triggering concurrently; and for sequential nodes, they are executed in the order of dependencies. This can significantly improve the latency of travel guide generation.
[0085] In one example, an intelligent planning engine could be designed that integrates a vast amount of high-quality travel guides with real user reviews and tags. On one hand, it extracts relevant information from these guides; on the other hand, it combines this with real user reviews and tags, employing natural language processing and data analysis techniques to understand users' personalized needs (such as "cultural tours," "natural scenery," and "historical sites"), and supports multi-turn dialogue to adjust the travel guide's outcome (e.g., "go hiking on the second day's itinerary"). Through multi-turn dialogue and interaction, the guide is optimized to provide a travel plan that better suits the user's preferences.
[0086] like Figure 9 As shown, as an example, the following may also be included before S204: S901: Obtain user's historical travel booking data, user's historical browsing history, and travel platform evaluation information through the data layer module; S902: Through the intelligent agent layer module, user profiles are constructed based on users' historical travel booking data, users' historical browsing records and travel platform evaluation information, combined with context request information. User behavior analysis and preference models are also constructed by weighted fusion of different ranking algorithms. Accordingly, following S205, it also includes: S903: Update user profiles, user behavior analysis, and preference models based on intelligent travel planning.
[0087] In the S901, the data layer module asynchronously acquires raw data needed to build user profiles and preference models from a multi-source, heterogeneous data environment. This includes users' historical travel booking data, browsing history, and travel platform reviews. Through configured interface adapters, this module collects users' historical travel booking data, fine-grained browsing history, and publicly available or authorized reviews from internal business databases, user behavior log systems, and third-party travel platform APIs. Historical booking data includes, but is not limited to, complete details of flight, hotel, and ticket orders. Browsing history covers user interactions within the platform, such as searches, clicks, and page dwell time. Reviews integrate user-generated ratings and text feedback. Before entering the processing pipeline, this raw data undergoes preliminary verification and anonymization to ensure its usability and compliance. It is then converted into a unified event format and published to the corresponding topic on the internal message bus for consumption by upstream real-time processing engines or batch analysis tasks. In S902, the intelligent agent layer module constructs user profiles based on users' historical travel booking data, browsing history, and travel platform reviews, combined with contextual request information. It also builds user behavior analysis and preference models by weighted fusion of different ranking algorithms. In one example, an online user profile is constructed by collecting multi-dimensional information such as users' historical booking / browsing / ratings, session context, and real-time context (current location, time period). MAS constructs a real-time computing system based on the user behavior analysis and preference model. By collecting users' historical booking data, browsing history, and review information, machine learning algorithms are used to generate user profiles in real time. These user profiles are then invoked as needed by SA in the personalized recommendation process. Simultaneously, interaction signals are fed back to the user feedback module in real time via event streams, creating a data loop that facilitates later updates to user profiles and model parameters.
[0088] In one example, ITA also supports one-click sorting of tickets by criteria such as "best price," "earliest departure time," and "evening departure"; and one-click reordering of hotels by criteria such as "high rating," "luxury," "value for money," and "family-friendly." Unlike traditional general recommendation models, it simplifies complex price comparison and filtering decisions into intelligent personalized recommendations and one-click selection.
[0089] In one example, the process of building a user profile and user behavior analysis and preference model includes: 1. Collecting multi-dimensional information such as user history booking / browsing / ratings, session context, and real-time context (current location, time period) to construct an online user profile. 2. Ranking: The rule engine ensures precise constraints and business controllability; learning ranking (LTR / neural network) captures implicit preferences and complex signals; weights can be dynamically adjusted according to scenarios (e.g., increasing price weight for "price priority"). 3. Weighted fusion of results from multiple ranking algorithms to obtain the final personalized relevance value of the "Query-Result". 4. Returning Top N candidates based on the final score and performing one-click re-ranking according to data type and predefined dimensions. 5. Feedback loop: Real-time feedback of user clicks, bookings, cancellations, and rating events updates the user profile and model parameters, improving the personalization effect of subsequent recommendations.
[0090] In S903, user profiles and user behavior analysis and preference models are updated based on intelligent travel planning. In one example, after the intelligent travel plan is generated and delivered to the user, the system initiates a real-time feedback learning loop, dynamically updating the user profiles and user behavior analysis and preference models based on the full-link data of this interaction.
[0091] like Figure 10 As shown, as an example, S205 may also include: S1001: Through the user interaction module, the itinerary information and / or itinerary map of the intelligent travel plan are dynamically displayed to the user through the image display component. The image display component is used to jump the display interface to the travel planning and booking interface when the user clicks. The itinerary information includes at least one of the transportation information, accommodation information and attraction information in the travel plan. The itinerary map includes the itinerary route information and / or destination distribution information in the travel plan.
[0092] In S1001, the user interaction module dynamically displays the itinerary information and / or itinerary map of the intelligent travel plan to the user through an image display component. This component redirects the user to the travel planning and booking interface upon receiving a click. The itinerary information includes at least one of the following: transportation, accommodation, and attractions. The itinerary map includes the travel route information and / or destination distribution information. In one example, by designing a unique itinerary information display and interaction, daily itinerary information can be dynamically displayed in an intuitive and clear card format. Flight tickets, hotels, attractions, and other information are all displayed in card format, and users can click to jump to the booking page with one click. Itinerary maps based on real-time data rendering can also be developed, clearly displaying daily routes and attraction distribution, and supporting one-click generation of shareable H5 long-image guides.
[0093] The above describes a specific implementation of a travel planning generation method provided in this application. Based on the travel planning generation method provided in the above embodiments, this application also provides a specific implementation of a travel planning generation device, as described in the following embodiments.
[0094] like Figure 11 As shown in the embodiment of this application, a travel planning generation device 1100 is provided and applied to an intelligent travel planning system. The intelligent travel planning system includes a service layer module, an intelligent agent layer module, a component layer module, a tool layer module, and a data layer module. The device 1100 includes: The data acquisition module 1101 is used to collect user travel planning requests through the intelligent agent layer module; The acquisition module 1102 is used to obtain the context request information corresponding to the user's request from the component layer module when the user's travel planning request is received. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. The parsing module 1103 is used to parse the context request information corresponding to the user's travel planning request obtained through the intelligent agent layer module, to obtain multiple travel planning request task data, and to determine at least one tool call node corresponding to each travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different fields. The execution module 1104 is used to sequentially call multiple tool call nodes in the tool layer module through the intelligent agent layer module. Based on the different theme types of travel planning data model events in the service layer module, it executes multiple travel planning request task data. Combined with user profiles and user behavior analysis and preference models, it obtains multiple travel planning task processing results. The user profiles and user behavior analysis and preference models are generated based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information. The user profile is used to indicate the user's preferences. The different theme types of travel planning data model events are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is travel platform data from different sources and with different structures obtained by the data layer module. The generation module 1105 is used to generate intelligent travel plans based on the processing results of multiple travel planning tasks through the intelligent agent layer module.
[0095] Thus, the travel planning generation device provided in this application, upon receiving a user's travel planning request, obtains context request information from the component layer module, representing different rounds of the user's travel planning. The intelligent agent layer module parses the obtained context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data corresponding to different domains, and determines at least one tool invocation node corresponding to each travel planning request task data. The intelligent agent layer module invokes the tool invocation node to execute the multiple travel planning request task data. Based on travel platform data from different sources and with different structures obtained through the data layer module, multiple travel planning task processing results are obtained. Finally, the intelligent agent layer module generates an intelligent travel plan based on the processing results of the multiple travel planning tasks.
[0096] By acquiring travel platform data from different sources and with different structures, as well as multiple travel planning request task data from different fields, through the data layer module, it is possible to dynamically coordinate different fields and generate intelligent online travel plans based on the user's multi-turn natural language dialogue in cross-domain task scenarios.
[0097] As another embodiment of this application, the above-described acquisition module 1102 may include: The acquisition unit is used to obtain the context request information corresponding to the user's request from the component layer module through the dialogue management module when a user's travel planning request is received. Accordingly, the acquisition module 1102 may include: The parsing unit is used to parse the context request information corresponding to the user's travel planning request obtained by the intelligent agent layer module, and obtain the parsing result; The first determining unit is used to determine multiple travel planning request task data and multiple target sub-intelligent agents through the main intelligent agent based on the user's travel planning request and the parsing result. The multiple target sub-intelligent agents are the sub-intelligent agents that correspond to each travel planning request task data among the multiple sub-intelligent agents. The second determining unit is used to determine at least one corresponding tool invocation node based on the travel planning request task data of each target sub-agent.
[0098] As another embodiment of this application, the execution module 1104 described above may include: The first execution unit is used to perform the following steps for each target sub-agent: sequentially call multiple tool call nodes in the tool layer module; based on the constraint type judgment result, match at least one recall result in the travel planning data model events of different theme types in the service layer module according to the travel planning request task data; the constraint type judgment result is determined based on intent information, entity information and constraint information; combine the preset priority strategy to deduplicate and merge the at least one recall result to obtain the travel planning task processing result. The first aggregation unit is used to aggregate the travel planning task processing results of all target sub-agents by combining user profiles and user behavior analysis and preference models, and obtain multiple travel planning task processing results.
[0099] As another embodiment of this application, the second determining unit described above can be specifically used for: Each target sub-agent generates an execution plan for a tool invocation node based on the travel planning request task data. The execution plan for each tool invocation node includes at least one tool invocation node corresponding to the travel planning request task data, as well as the execution logic and dependencies between the tool invocation nodes. Accordingly, the execution module 1104 may include: The second execution unit is used to perform the following steps for each target sub-agent: according to the execution logic and dependencies, it sequentially calls at least one tool call node in the tool layer module corresponding to the travel planning request task data; based on the constraint type judgment result, it matches the travel planning request task data in different theme types of travel planning data model events in the service layer module to obtain at least one recall result; the constraint type judgment result is determined based on intent information, entity information, and constraint information; and it combines a preset priority strategy to deduplicate and merge the at least one recall result to obtain the travel planning task processing result. The second aggregation unit is used to aggregate the travel planning task processing results of all target sub-agents by combining user profiles and user behavior analysis and preference models, and obtain multiple travel planning task processing results.
[0100] As another embodiment of this application, the second execution unit described above can be specifically used for: When the input of the execution logic and dependency relationship indicates that the tool call node depends on the execution result of the previous tool call node, according to the first preset call rule, at least one tool call node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The first preset call rule is used to indicate the rule for serial calling of tool call nodes. When the execution logic and dependency relationship indicate that the execution results of each tool calling node are independent of each other, according to the second preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The second preset calling rule is used to indicate the rules for parallel calling of tool calling nodes. If the execution logic and dependency relationship do not indicate that the input of the current tool calling node depends on the execution result of the previous tool calling node, or that the execution results of each tool calling node are independent of each other, then according to the third preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in the different theme types of travel planning data model events in the service layer module. The third preset calling rule is used to indicate the rule of combining serial and parallel calling of tool calling nodes.
[0101] As another embodiment of this application, the first execution unit described above can be specifically used for: If the constraint type judgment result is the first constraint type, multiple tool call nodes in the tool layer module are called in sequence. Based on the travel planning request task data, structured queries are performed in different theme types of travel planning data model events in the service layer module, and filtered according to preset constraint conditions to obtain the first recall result. If the constraint type determination result is the second constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, semantic recall is performed in the travel planning data model events of different theme types in the service layer module using a vector search engine to obtain the second recall result.
[0102] If the constraint type judgment result is the third constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, structured queries are performed in the travel planning data model events of different theme types in the service layer module, and filtering is performed according to preset constraints. Semantic recall is performed based on the vector search engine to obtain the third recall result. The third recall result is the recall result obtained by deduplicating and merging the first and second recall results according to the preset strategy.
[0103] As another embodiment of this application, the parsing module 1103 described above may include: The extraction unit is used to parse the context request information corresponding to the user's travel planning request obtained through the intelligent agent layer module, identify and extract intent information, entity information and constraint information, and decompose the natural language dialogue in the context request information to obtain multiple slots. The multiple slots are used to indicate multiple parameter information in the travel plan. The filling unit is used to fill and complete the information in multiple slots according to the preset slot inheritance rules and context request information. The determining unit is used to obtain multiple travel planning request task data based on the information in multiple slots when the information in multiple slots has been filled, and to determine at least one tool call node corresponding to each travel planning request task data according to the type of multiple slots.
[0104] As another embodiment of this application, the above-mentioned travel planning generation device 1100 may further include: The data acquisition module is used to acquire users' historical travel booking data, users' historical browsing records, and travel platform evaluation information through the data layer module; The user profile building module is used to build user profiles by combining the intelligent agent layer module with the user's historical travel booking data, historical browsing records and travel platform evaluation information, and context request information. It also builds user behavior analysis and preference models by weighted fusion of different ranking algorithms. The update module is used to update user profiles and user behavior analysis and preference models based on smart travel planning.
[0105] As another embodiment of this application, the above-mentioned travel planning generation device 1100 may further include: The interaction module is used to dynamically display the itinerary information and / or itinerary map of the intelligent travel plan to the user through the image display component. The image display component is used to jump the display interface to the travel planning and booking interface when the user clicks. The itinerary information includes at least one of the following in the travel plan: transportation information, accommodation information, and attraction information. The itinerary map includes the itinerary route information and / or destination distribution information in the travel plan.
[0106] Based on the travel planning generation method and apparatus provided in the above embodiments, this application also provides an electronic device 1200, such as... Figure 12 As shown: It includes a processor 1201, a memory 1202, and a computer program stored in the memory 1202 and executable on the processor 1201. When the computer program is executed by the processor 1201, it implements the various processes of the above-described travel planning generation method embodiment and achieves the same technical effect.
[0107] Specifically, the processor 1201 may include a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application. The memory 1202 may include a mass storage device for data or instructions. For example, and not limitingly, the memory 1202 may include a hard disk drive (HDD), a floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or a universal serial bus (USB) drive, or a combination of two or more of these. Where appropriate, the memory 1202 may include removable or non-removable (or fixed) media. Where appropriate, the memory 1202 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, the memory 1202 is a non-volatile solid-state memory.
[0108] In certain embodiments, the memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Thus, generally, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to one aspect of this application.
[0109] The processor 1201 implements any of the travel planning generation methods described in the above embodiments by reading and executing computer program instructions stored in the memory 1202.
[0110] In one example, the electronic device may also include a communication interface 1203 and a bus 1210. As an example, such as... Figure 12 As shown, the processor 1201, memory 1202, and communication interface 1203 are connected through bus 1210 and complete communication with each other.
[0111] The communication interface 1203 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0112] Bus 1210 includes hardware, software, or both, that couples components of an online data traffic metering device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 1210 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, any suitable bus or interconnect is contemplated herein.
[0113] This application also provides a computer-readable storage medium storing a computer program. When executed by a processor, the computer program implements the various processes of the above-described travel planning generation method embodiments and achieves the same technical effects. To avoid repetition, it will not be described again here. The computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc.
[0114] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0115] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0116] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0117] The flowcharts and / or block diagrams of methods, apparatuses, and computer program products according to embodiments of this application have described various aspects of this application. It should be understood that each block in the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executed via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowcharts and / or block diagrams. Such a processor may be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by dedicated hardware performing the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions. The above are merely specific embodiments of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the scope of the technology disclosed in this application, and such modifications or substitutions should be covered within the scope of protection of this application.
Claims
1. A method for generating travel plans, characterized in that, The method is applied to an intelligent travel planning system, which includes a service layer module, an intelligent agent layer module, a component layer module, a tool layer module, and a data layer module. The intelligent agent layer module collects user travel planning requests; Upon receiving the user's travel planning request, the context request information corresponding to the user's request is obtained from the component layer module. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain multiple travel planning request task data and determines at least one tool call node corresponding to each of the travel planning request task data. The multiple travel planning request task data correspond to travel planning requests in different fields. Through the intelligent agent layer module, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning data model events of different theme types in the service layer module, the multiple travel planning request task data are executed. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained. The user profiles and user behavior analysis and preference models are generated based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information. The user profiles are used to indicate the user's preferences. The different theme types of travel planning data model events are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is travel platform data from different sources and with different structures obtained by the data layer module. The intelligent agent layer module generates an intelligent travel plan based on the processing results of the multiple travel planning tasks.
2. The method according to claim 1, characterized in that, The intelligent layer module includes a main intelligent agent, a dialogue management module, and multiple sub-intelligent agents, each corresponding to the processing of tasks in different business domains. Upon receiving the user's travel planning request, the step of obtaining the context request information corresponding to the user's request from the component layer module includes: Upon receiving the user's travel planning request, the dialogue management module obtains the context request information corresponding to the user's request from the component layer module; The step of parsing the context request information corresponding to the user's travel planning request obtained through the intelligent agent layer module to obtain multiple travel planning request task data, and determining at least one tool invocation node corresponding to each of the travel planning request task data, includes: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request to obtain the parsing result. The main intelligent agent determines multiple travel planning request task data and multiple target sub-intelligent agents based on the user's travel planning request and the parsing result. The multiple target sub-intelligent agents are the sub-intelligent agents that correspond to each of the multiple travel planning request task data. Each target sub-agent determines at least one corresponding tool invocation node based on the travel planning request task data.
3. The method according to claim 2, characterized in that, The travel planning request task data includes intent information, entity information, and constraint information. The intent information is used to indicate the user's behavioral intent, the entity information is used to indicate the entity objects in the travel planning, and the constraint information is used to indicate the limiting conditions in the user's travel planning request. The process involves sequentially calling multiple tool call nodes in the tool layer module through the intelligent agent layer module, executing multiple travel planning request task data based on different theme-type travel planning data model events in the service layer module, and combining user profiles and user behavior analysis and preference models to obtain multiple travel planning task processing results, including: For each target sub-agent, the following steps are performed: Multiple tool invocation nodes in the tool layer module are invoked sequentially; based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module; the constraint type judgment result is determined based on the intent information, entity information, and constraint information; the at least one recall result is deduplicated and merged using a preset priority strategy to obtain the travel planning task processing result. By combining user profiles and user behavior analysis and preference models, the processing results of the travel planning tasks corresponding to all the target sub-agents are summarized to obtain multiple travel planning task processing results.
4. The method according to claim 3, characterized in that, The step of determining at least one corresponding tool invocation node based on the travel planning request task data through each of the target sub-agents includes: Each target sub-agent generates an execution plan for a tool invocation node based on the travel planning request task data. The execution plan for the tool invocation node includes at least one tool invocation node corresponding to the travel planning request task data, as well as the execution logic and dependencies between the tool invocation nodes. The process involves sequentially calling multiple tool call nodes in the tool layer module through the intelligent agent layer module, executing multiple travel planning request task data based on different theme-type travel planning data model events in the service layer module, and combining user profiles and user behavior analysis and preference models to obtain multiple travel planning task processing results, including: For each target sub-agent, the following steps are performed: Based on the execution logic and dependencies, at least one tool call node in the tool layer module corresponding to the travel planning request task data is sequentially invoked. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in different theme types of travel planning data model events in the service layer module. The constraint type judgment result is determined based on the intent information, entity information, and constraint information. The at least one recall result is then deduplicated and merged using a preset priority strategy to obtain the travel planning task processing result. By combining user profiles and user behavior analysis and preference models, the processing results of the travel planning tasks corresponding to all the target sub-agents are summarized to obtain multiple travel planning task processing results.
5. The method according to claim 4, characterized in that, According to the execution logic and dependencies, at least one tool call node in the tool layer module corresponding to the travel planning request task data is sequentially called. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data with different theme types of travel planning data model events in the service layer module, including: When the input of the execution logic and dependency relationship indicating tool calling node depends on the execution result of the previous tool calling node, according to the first preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in the different theme types of travel planning data model events in the service layer module. The first preset calling rule is used to indicate the rule for serial calling of tool calling nodes. When the execution logic and dependency relationship indicate that the execution results of each tool calling node are independent of each other, according to the second preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called in sequence. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in the different theme types of travel planning data model events in the service layer module. The second preset calling rule is used to indicate the rules for parallel calling of tool calling nodes. If the execution logic and dependency relationship do not indicate that the input of the current tool calling node depends on the execution result of the previous tool calling node, or that the execution results of each tool calling node are independent of each other, then according to the third preset calling rule, at least one tool calling node in the tool layer module corresponding to the travel planning request task data is called sequentially. Based on the constraint type judgment result, at least one recall result is obtained by matching the travel planning request task data in the travel planning data model events of different theme types in the service layer module. The third preset calling rule is used to indicate the rule of combining serial and parallel calling of tool calling nodes.
6. The method according to claim 5, characterized in that, The constraint type determination result includes a first constraint type, a second constraint type, and a third constraint type. The first constraint type is a constraint type with semantic accuracy higher than a preset threshold. The second constraint type is a constraint type with semantic accuracy not higher than a preset threshold. The third constraint type is a mixture of the first constraint type and the second constraint type. The process involves sequentially calling multiple tool call nodes in the tool layer module, and based on the constraint type judgment result, matching the travel planning request task data with different theme types of travel planning data model events in the service layer module to obtain at least one recall result, including: If the constraint type determination result is the first constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, structured queries are performed on the travel planning data model events of different theme types in the service layer module, and filtered according to preset constraint conditions to obtain the first recall result. If the constraint type determination result is the second constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, semantic recall is performed on the travel planning data model events of different theme types in the service layer module using a vector search engine to obtain the second recall result. If the constraint type determination result is the third constraint type, multiple tool call nodes in the tool layer module are called sequentially. Based on the travel planning request task data, structured queries are performed in the travel planning data model events of different theme types in the service layer module, and filtering is performed according to preset constraints. Semantic recall is performed based on the vector search engine to obtain the third recall result. The third recall result is the recall result obtained by deduplicating and merging the first recall result and the second recall result according to the preset strategy.
7. The method according to claim 6, characterized in that, The step of parsing the context request information corresponding to the user's travel planning request obtained through the intelligent agent layer module to obtain multiple travel planning request task data, and determining at least one tool invocation node corresponding to each of the travel planning request task data, includes: The intelligent agent layer module parses the context request information corresponding to the user's travel planning request, identifies and extracts intent information, entity information and constraint information, and decomposes the natural language dialogue in the context request information to obtain multiple slots, which are used to indicate multiple parameter information in the travel planning. Based on the preset slot inheritance rules and the context request information, the information in the multiple slots is filled and completed; When all the information in the multiple slots has been filled, multiple travel planning request task data are obtained based on the information in the multiple slots, and at least one tool call node corresponding to each of the multiple travel planning request task data is determined based on the type of the multiple slots.
8. The method according to claim 7, characterized in that, Before the step of sequentially calling multiple tool call nodes in the tool layer module through the intelligent agent layer module, executing multiple travel planning request task data based on different theme-type travel planning data model events in the service layer module, and obtaining multiple travel planning task processing results by combining user profiles and user behavior analysis and preference models, the process further includes: The data layer module obtains users' historical travel booking data, users' historical browsing history, and travel platform evaluation information. Through the intelligent agent layer module, a user profile is constructed based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information, combined with the context request information. A user behavior analysis and preference model is also constructed by weighted fusion of different ranking algorithms. After generating an intelligent travel plan based on the processing results of the multiple travel planning tasks through the intelligent agent layer module, the process further includes: The user profile and user behavior analysis and preference model are updated based on the intelligent travel plan.
9. The method according to claim 8, characterized in that, After generating an intelligent travel plan based on the processing results of the multiple travel planning tasks through the intelligent agent layer module, the process further includes: Through the user interaction module, the itinerary information and / or itinerary map of the intelligent travel plan are dynamically displayed to the user through the image display component. The image display component is used to jump the display interface to the travel planning and booking interface when the user clicks. The itinerary information includes at least one of the following in the travel plan: transportation information, accommodation information, and attraction information. The itinerary map includes the itinerary route information and / or destination distribution information in the travel plan.
10. A travel planning generation device, characterized in that, An apparatus for use in an intelligent travel planning system, the intelligent travel planning system comprising a service layer module, an intelligent agent layer module, a component layer module, a tool layer module, and a data layer module, the apparatus comprising: The data acquisition module is used to collect user travel planning requests through the intelligent agent layer module; The acquisition module is used to acquire context request information corresponding to the user's travel planning request from the component layer module when the user's travel planning request is received. The context request information is obtained based on the natural language dialogue information generated by the user in different rounds based on the travel planning. The parsing module is used to parse the context request information corresponding to the user's travel planning request obtained by the intelligent agent layer module, to obtain multiple travel planning request task data, and to determine at least one tool call node corresponding to each of the multiple travel planning request task data, wherein the multiple travel planning request task data correspond to travel planning requests in different fields. The execution module is used to sequentially call multiple tool call nodes in the tool layer module through the intelligent agent layer module, and execute multiple travel planning request task data based on different theme types of travel planning data model events in the service layer module. Combined with user profiles and user behavior analysis and preference models, multiple travel planning task processing results are obtained. The user profiles and user behavior analysis and preference models are generated based on the user's historical travel booking data, user's historical browsing records, and travel platform evaluation information. The user profiles are used to indicate the user's preferences. The different theme types of travel planning data model events are obtained by the service layer module after cleaning the travel platform's raw data and converting it into a preset travel planning data model event format. The travel platform's raw data is travel platform data from different sources and with different structures obtained by the data layer module. The generation module is used to generate intelligent travel plans based on the processing results of the multiple travel planning tasks through the intelligent agent layer module.
11. An electronic device, characterized in that, The device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the travel planning generation method as described in any one of claims 1-9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions that, when executed by a processor, implement the travel planning generation method as described in any one of claims 1-9.
13. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the travel planning generation method as described in any one of claims 1-9.