A mesh data processing support system using natural language input

By generating substitute data with a common structure and testing program code on it, the method addresses data leakage concerns, facilitating efficient and secure mesh data processing in shared environments.

JP7790791B1Active Publication Date: 2025-12-23RESEARCH INSTITUTE OF SPATIOTEMPORAL BEHAVIOR CHAINS CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2025101307
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-06-17
Publication Date
2025-12-23
Estimated Expiration
2045-06-17

AI Technical Summary

Technical Problem

Existing technologies face challenges in generating program code for mesh data processing while ensuring data confidentiality, as mesh data may be leaked through language models in shared environments.

Method used

A method involving the generation of substitute data with a common data structure to mesh data, followed by program code generation and testing on this substitute data, preventing direct exposure of actual mesh data to the language model.

Benefits of technology

Enables efficient and secure generation of program code corresponding to user mesh data without leaking the data, ensuring reliability and convenience in a distributed mesh data platform.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007790791000001_ABST
    Figure 0007790791000001_ABST
Patent Text Reader

Abstract

By making it possible to efficiently generate program code without leaking user 6's mesh data to the outside, it is possible to achieve both reliability and convenience of services on the distributed mesh data platform. [Solution] The support device 1 has a control unit 11 which includes a substitute data generation command unit 113 which commands a language model to generate substitute data that has a data structure common to mesh data specified by a user 6, a code generation command unit 114 which commands the language model to generate program code that performs specified data processing on the substitute data, an execution result generation unit 119 which generates the execution result of the program code, a processing target designation unit 118 which designates specified processing target data from a group including substitute data and mesh data as data to be executed by the program code in the execution result generation unit 119, and a mesh data acquisition unit 121 which acquires the specified mesh data.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a support device for mesh data processing using natural language input. [Background technology]

[0002] Mesh data, defined as a grid of longitude and latitude on a map, is used to digitize information on maps or to obtain various statistical information about a region. In a distributed mesh data platform that stores and provides mesh data for multiple users on a mesh data server, users may wish to prevent their information from being leaked to other users.

[0003] Furthermore, if mesh data is provided on such a platform for a fee, a profitable system is required. Profitability can be increased by providing the results of various data processing operations on mesh data that meet the user's needs. However, data processing requires the execution of program code that corresponds to the processing operation.

[0004] Users who are not familiar with creating program code may find it difficult to create program code that corresponds to the content of the data processing they desire. By preparing program code that corresponds to the user's needs in advance, it is possible to provide convenience to such users.

[0005] However, it is difficult to prepare in advance all the program codes that meet the diverse needs of users. Therefore, there is a demand for a system that can generate program codes that meet the needs expressed by users in natural language and easily realize the processing that meets those diverse needs.

[0006] Regarding technology for generating program code according to requests expressed in natural language by a user, Patent Document 1 discloses a method for enhancing a language model, including various steps such as extracting a set of features related to components of source code data from blocks identified from executable code by parsing the blocks using abstract syntax tree data (AST data), revising the AST data by abstracting nodes of the AST data, updating the source code data based on the revised AST data, and generating a dataset of natural language and abstracted code features as training data based on the updated source code data to train the language model.

[0007] The technique described in Patent Document 1 can train a language model related to computer programming. [Prior art documents] [Patent documents]

[0008] [Patent Document 1] Japanese Patent Publication No. 2023-047318 Summary of the Invention [Problem to be solved by the invention]

[0009] However, when generating program code for processing mesh data using a language model, the program code must conform to the data structure. One possible procedure for generating such program code is to pass the mesh data to be processed to the language model. However, this procedure raises concerns that the mesh data may be leaked to other users through the language model.

[0010] The technology described in Patent Document 1 relates to a method for training a language model, but does not disclose a configuration for securely transferring data to the model. Therefore, in a shared environment where mesh data related to multiple users is stored, a means for generating code while ensuring data confidentiality is required.

[0011] The objective of the present invention is to achieve both reliability and convenience of services in a distributed mesh data platform by enabling efficient generation of program code corresponding to user mesh data without leaking the data to the outside. [Means for solving the problem]

[0012] As a result of intensive research into solving the above-mentioned problems, the inventors have found that the above-mentioned object can be achieved by a procedure of generating substitute data using a language model and then generating and testing program code using this substitute data, as well as other technical features. As a result, the inventors have completed the present invention.

[0013] One aspect of the present invention is a method for generating substitute data, the method comprising: a substitute data generation command unit that commands a language model to generate substitute data that has a data structure common to mesh data designated by a user; a code generation command unit that commands the language model to generate program code for performing specified data processing on the substitute data; an execution result generation unit that generates an execution result of the program code; a processing target designation unit that designates processing target data designated by the user from a group including the substitute data and the mesh data as data to be executed by the program code in the execution result generation unit; a mesh data acquisition unit that acquires the mesh data specified by the user; Equipped with A mesh data processing support device using natural language input is provided.

[0014] In this aspect, substitute data having a common data structure is generated based on a command from the substitute data generation command unit in the data structure of the mesh data to be processed in the data processing desired by the user.The code generation command unit then generates program code based on input data including this substitute data.This allows the code generation command unit to generate program code that is more responsive to the user's requests than if substitute data were not provided.This prevents the mesh data itself from being leaked via the language model.

[0015] Furthermore, in this aspect, the execution result generation unit generates execution results of the program code for the data to be processed specified by the processing target designation unit. This allows users to specify substitute data as the processing target and test the program code without using mesh data, which should be avoided from being leaked. This type of testing is suitable for a distributed processing configuration because the substitute data and program code can be stored and executed on a single node. Additionally, users can obtain execution results of data processing on mesh data using tested program code by simply changing the designation of the processing target.

[0016] As described above, this aspect provides a technical means that enables efficient generation of program code corresponding to a user's mesh data without leaking the data to the outside, thereby achieving both reliability and convenience of services in a distributed mesh data platform.

[0017] In addition, the present invention can take various other forms, such as those exemplified below. An form configured to provide a means for testing and editing generated program code without using production data. An form configured to allow use without the user being aware of the type of language model. An form configured to notify the user of an estimated time until a language model finishes processing. An form configured to display appropriate advertising content, etc. while the language model is processing. An form configured to provide language model scheduling according to the estimated processing time. An form configured to enable efficient generation of program code corresponding to user mesh data, without leaking the data to the outside, through implementation using an API. These forms, by adding their own unique configurations, contribute to providing technical means for supporting the satisfaction of user needs in providing data processing results, in order to increase profitability on a server storing mesh data related to multiple users. [Effects of the Invention]

[0018] As described above, the present invention enables efficient generation of program code corresponding to a user's mesh data without leaking the data to the outside, thereby achieving both reliability and convenience of services in a distributed mesh data platform. [Brief explanation of the drawings]

[0019] [Figure 1] FIG. 1 is a block diagram showing an example of the hardware and software configurations of a mesh data processing support system according to this embodiment. [Figure 2] FIG. 2 is an explanatory diagram showing how multiple program codes are deployed on a platform as individual applications. [Figure 3] FIG. 3 is an explanatory diagram showing the process of generating application code using a composite prompt. [Figure 4] FIG. 4 is an explanatory diagram showing the relationship between the number of tokens in a prompt and the expected waiting time. [Figure 5]FIG. 5 is a diagram showing the overall configuration of the mesh data processing support system. [Figure 6] FIG. 6 is a flowchart of the mesh data processing support program. [Figure 7] FIG. 7 is a flowchart of the mesh data processing support program. DETAILED DESCRIPTION OF THE INVENTION

[0020] First, although the following disclosure, diagrams, and / or claims may be described as being presented alone or in combination with one or more other aspects, the subject matter of the immediate disclosure is not intended to be so limited. That is, the immediate disclosure, diagrams, and claims are intended to encompass the various aspects described herein, each alone or in one or more combinations with each other. For example, even if the immediate disclosure describes and illustrates a first, second, and third embodiment in such a way that the first embodiment is described and illustrated specifically in conjunction with the second embodiment, or the second embodiment is described and illustrated only in conjunction with the third embodiment, the immediate disclosure and illustrations are not so limited and may include only the first embodiment, only the second embodiment, only the third embodiment, or one or more combinations of the first, second, and / or third embodiments, such as the first and second embodiments, the first and third embodiments, the second and third embodiments, or the first, second, and third embodiments.

[0021] The use of the phrase "or" in the text means a "non-exclusive" arrangement unless expressly specified otherwise. The use of the phrase "and / or" in the text means a "non-exclusive" arrangement as stipulated in the Japanese Industrial Standards (JIS) "Format and Preparation Method of Standard Sheets JIS Z 8301."

[0022] Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings. (Mesh Data Processing Support System S: Overview) As shown in Figure 1, the mesh data processing support system S uses a language model to generate substitute data with a structure similar to the mesh data of user 6, and then generates and tests program code based on this, thereby achieving highly accurate code generation while avoiding the risk of data leakage without using production data.

[0023] Here, "user 6" refers to an entity that processes mesh data using this system S, and includes, for example, companies, organizations, researchers, government agencies, and other entities that possess and manage mesh data and require its analysis and processing. User 6 also includes app developers.

[0024] "Mesh data" is structured data that divides geographic space or a target area into fixed units (grids, cells, blocks, etc.) and assigns collected and recorded attribute information to each unit. Generally, each unit is defined by a fixed latitude and longitude range, forming a grid-like system that comprehensively covers the entire country or a specific region. This mesh-based data structure allows for efficient statistical processing, visualization, comparative analysis, and other operations while maintaining spatial granularity. Mesh data can include a variety of numerical information acquired for each unit, such as population, age structure, occupational distribution, travel routes, land use, and weather information. This allows for geographic information analysis in multiple fields, including urban planning, disaster prevention, transportation, marketing, tourism, and medical policy.

[0025] The size and shape of the mesh can be adjusted depending on the application, enabling a wide range of applications, from grasping coarse-grained distribution trends to precise local analysis. Meshing is a means of balancing the confidentiality of personal information with analytical accuracy, particularly when grasping statistical trends while ensuring the anonymity of information. Mesh data may be, for example, first-order mesh (approximately 80 km per side), second-order mesh (approximately 10 km per side), third-order mesh (standard regional mesh, approximately 1 km per side), fourth-order mesh (approximately 500 m per side), fifth-order mesh (approximately 250 m per side), or higher-resolution meshes such as expanded 100 m, expanded 10 m, or expanded 1 m. These can be selected depending on the required analytical accuracy and the characteristics of the target area, and hierarchically combining multiple regional meshes of different granularities can increase the flexibility and efficiency of spatial analysis.

[0026] "Substitute data" is data that shares a data structure with mesh data. Specifically, substitute data is virtual data generated using values ​​different from the actual data being processed, while maintaining structural consistency with the mesh data, especially mesh data that requires confidentiality. Substitute data has the same field names, field structure, data types, number of rows, and format as mesh data, making it formally compatible with mesh data. However, its content is composed of anonymized, randomized, or synthetically generated values. This substitute data is used to generate and test program code using data with a similar structure, without directly transferring the user's production data to the language model. This allows program code generated based on substitute data to be applied to the production mesh data later. Since no production data is passed to external processing systems during the testing phase, this allows for highly practical development and evaluation work while avoiding the risk of information leaks. Substitute data is also prepared in the form of dummy data, sample data, template data, etc.

[0027] "Production data" refers to data to be processed that is based on the real world and is actually owned and managed by the user 6. This is mesh data that is actually the subject of analysis in production, and is used as the final input data in the mesh data processing support system S. Production data may include confidential real-world information, such as personal information, location information, statistical information, work history, and attribute information associated with geographic meshes.

[0028] A "language model" is a type of probabilistic model used in natural language processing, and is a model that probabilistically predicts how likely a given word or sentence is to occur in natural language. Specifically, a language model calculates the occurrence probability of a given word sequence or sentence, or compares the occurrence probabilities of multiple word sequences or sentences, making it possible to automatically generate the most likely word or sentence based on the context when predicting the next word or sentence.

[0029] "Natural language processing" enables computers to understand text and audio data written in natural language and execute processing appropriate to the purpose. Specifically, examples include morphological analysis, which breaks natural language down into "morphemes," the smallest components of the language, and assigns information such as parts of speech; syntactic analysis, which analyzes the grammatical structure of natural language to clarify the structure and meaning of a sentence; semantic analysis, which analyzes the meaning of natural language to understand the meaning of words and sentences and make logical judgments and inferences; contextual analysis, which understands natural language while taking into account the context before and after a sentence; and intent analysis, which extracts the intention of a speaker or writer from a conversation or sentence using natural language. "Natural language processing" processes natural language by combining processes such as morphological analysis, syntactic analysis, semantic analysis, contextual analysis, and intent analysis, enabling the generation of support information such as prompts to assist in the creation of program code, as well as machine translation, automatic summarization, question-answering systems, and speech recognition. Specifically, the intent and syntax of the natural language input by the user 6 are interpreted, and processing details such as statistical processing, aggregation, and visualization are identified, and appropriate coding instructions are sent to a generation AI equipped with a language model.

[0030] "Normalized into a unified data format" refers to converting information stored in different formats into a common format and organizing it uniformly when dealing with massive amounts of mesh data. While this can make it difficult to collect necessary information from multiple databases or handle information in different formats to create a language model for natural language processing, normalizing the data into a unified data format makes it easier to search and analyze the data. Furthermore, using normalized data as input for machine learning on mesh data improves processing efficiency and accuracy. "Normalization" is a processing method that organizes and structures data in database tables according to certain rules, eliminating data redundancy and maintaining data integrity and consistency. This makes it possible to generate substitute data with a common structure even across diverse data sources provided by different users, ensuring the reproducibility and reliability of code generation using language models.

[0031] (Mesh data processing support system S: support device 1, storage device 13) The mesh data processing support system S includes a support device 1. The support device 1 includes a storage device 13 that stores a mesh database 131, and a control unit 11. The mesh database 131 is a data collection that systematically stores mesh data obtained by dividing a geographical area into grid-like units, and various data associated with each mesh (demographics, industry classification, facility information, user attributes, etc.). The mesh database 131 functions as a source of data that is the subject of natural language processing and data processing code generation by the control unit 11.

[0032] The storage device 13 is a storage device for storing the mesh database 131, and operates while connected to the control unit 11. The storage device 13 may be configured with an HDD or SSD, or may be configured with a storage medium accessible via an external network. It is preferable that the storage device 13 be equipped with an access authority control and encryption mechanism, thereby enabling secure management and operation of mesh data.

[0033] (Mesh data processing support system S: support device 1: control unit 11) The control unit 11 executes mesh data processing using natural language input. Specifically, the control unit 11 includes a display providing unit 111, an input acquiring unit 112, a substitute data generation command unit 113, a code generation command unit 114, an execution result generating unit 119, a processing target specifying unit 118, and a mesh data acquiring unit 121.

[0034] The display providing unit 111 has an output control function for providing various output information generated in the support device 1 to the terminal 2 in a format that can be visually grasped and operated by the user 6. Specifically, the display providing unit 111 integrates the results of data processing obtained by the execution result generating unit 119, the program code generated by the code generation command unit 114, the waiting time estimate output by the processing time predicting unit 115, and auxiliary information (tutorial, advertisement, operation guide, etc.) by the content selecting unit 116, and executes processing to format the results into an appropriate display layout depending on the timing and importance before transmitting them to the terminal 2.

[0035] The display providing unit 111 also has a control function for switching between a number of display modes, such as table format, graph format, text format, code view, etc., depending on the data format and content of the data to be displayed. This allows the display providing unit 111 to display inputs given by the user 6 in natural language and corresponding output results in parallel, enabling an interface design that allows the user 6 to intuitively check causal relationships.

[0036] The input acquisition unit 112 receives processing instructions input in natural language by the user 6 and executes processing to appropriately pass them on to the subsequent processing system. The input is a command statement in natural language that specifies the analysis target and processing method, such as "Please perform cross-tabulation by age and region" or "Please perform statistical processing on mesh data within the specified range." The input acquisition unit 112 processes the input so that appropriate prompts are generated in the substitute data generation command unit 113 and the code generation command unit 114, taking into account the sentence structure and context.

[0037] The input acquisition unit 112 can also handle not only single commands but also multiple consecutive inputs and step-by-step input capture. This makes it possible to realize an interactive operation flow while maintaining the consistency of the entire input session. Furthermore, the input acquisition unit 112 can also provide real-time feedback on acquired input and execute confirmation response processing for ambiguous expressions.

[0038] The substitute data generation command unit 113 has a processing function of issuing appropriate commands to the language model to generate substitute data having a format consistent with the structure of the production data (production mesh data) specified by the user 6. Specifically, the substitute data generation command unit 113 analyzes the data structure of the production data held by the user 6, i.e., format information such as field names, data types, number of data, hierarchical structure, and geographical correspondence, and sends a prompt to the language model to generate substitute data having the same or a similar structure. In this case, the substitute data is anonymized data, random data, or meaningless dummy data that differs from the production data in order to safely perform code generation and operation verification processes while maintaining the confidentiality of the production data. Therefore, the substitute data generation command unit 113 does not simply output a template, but executes a process to derive substitute data that is structurally consistent with the production data to be processed.

[0039] Furthermore, substitute data generation command unit 113 has a function to adjust the description format and content of the prompt depending on the type of language model and response characteristics, thereby realizing stable generation of substitute data even under different language model environments.

[0040] The code generation command unit 114 executes a process of instructing the language model to generate program code for performing specified data processing on substitute data. Here, "program code for performing specified data processing" refers to code having the function of performing desired calculations, aggregations, conversions, visualizations, etc. on specific data (substitute data) based on processing content specified by the user 6 in natural language or the like. "Specified data processing" may include, for example, calculation of statistics, condition-based filtering, generation of cross-tabulation tables, data shaping for graph drawing, etc. The program code is automatically generated by the language model, and its structure is written in a language format, such as JavaScript or Python, that is compatible with the platform or application targeted by the user 6. In this embodiment, this code is tested to ensure its correct function on substitute data, thereby ensuring reliability when it is later substituted for production data and executed. As a result, the "program code for performing specified data processing" becomes a code fragment or script specialized for the target processing, dynamically generated in response to natural language input.

[0041] For example, as shown in the conceptual diagram of FIG. 2, the control unit 11 is configured to deploy multiple program codes generated based on natural language input from the user 6 as individual applications (app 1 to app 4) on the platform 51. The platform 51 accepts the application codes (app 1 to app 4) generated by the user 6 in natural language and makes them executable as individual applications. Specifically, the platform 51 is a physical and logical execution environment in which the application codes actually run, providing a virtualized environment in which multiple applications generated by the user 6 can be simultaneously deployed and operated. For example, in FIG. 3, an updated application (code) 86 is generated in cooperation with the AI ​​coding assistant API 84 and implemented and deployed on the platform 51. These applications perform specified data processing (statistical processing, formatting, visualization, etc.) on substitute data or production data. The user 6 can select and execute these applications according to their intended use, thereby achieving flexible data manipulation using natural language.

[0042] The execution result generation unit 119 executes processing to generate an execution result of the program code. The processing target designation unit 118 executes processing to designate processing target data designated by the user 6 from a group including substitute data and mesh data as data to be executed by the program code in the execution result generation unit 119. The mesh data acquisition unit 121 executes processing to acquire the mesh data designated by the user 6.

[0043] More specifically, the execution result generation unit 119 executes pre-generated program code on data designated as the processing target, generating output results. That is, the execution result generation unit 119 operates to verify whether the code generated in accordance with the natural language intent designated by the user 6 can correctly execute the desired processing. In particular, the execution result generation unit 119 supports both test execution using substitute data and actual execution using production mesh data, and can provide accurate processing results in real time in both cases. The output generated by the execution result generation unit 119 is provided to subsequent processing as input for result display, visualization processing, or re-editing.

[0044] The processing target designation unit 118 executes a process to select and designate data to be referenced when the execution result generation unit 119 executes the program code. Specifically, the processing unit 118 executes a process to explicitly designate which data is to be executed from a data group including substitute data and mesh data, based on instructions from the user 6. This allows the user 6 to flexibly perform tests using substitute data in the initial stage, and after confirming the validity of the operation, switch the processing target to the production data and perform actual processing. The processing target designation unit 118 provides intuitive operability by linking with the user interface, while enabling accurate data reference for the execution environment.

[0045] The mesh data acquisition unit 121 executes a process of acquiring mesh data specified by the user 6 from the storage device 13 or an external database. Specifically, the mesh data acquisition unit 121 reads mesh data corresponding to the target geographical area through a mesh database or external API connected to the control unit 11, and provides it as data to be processed. The acquired mesh data is used to generate substitute data, and is also used as the final target for calculation in this processing. The mesh data acquisition unit 121 may have a function for executing access control based on the authority of the user 6 and the target area to be processed, and may also have security functions such as preventing unauthorized access and ensuring confidentiality.

[0046] As described above, the support device 1 has a control unit 11 that includes a substitute data generation command unit 113 that commands a language model to generate substitute data that has a data structure common to mesh data specified by the user 6, a code generation command unit 114 that commands the language model to generate program code that performs specified data processing on the substitute data, an execution result generation unit 119 that generates the execution result of the program code, a processing target designation unit 118 that designates the processing target data specified by the user 6 from a group including substitute data and mesh data as data to be executed by the program code in the execution result generation unit 119, and a mesh data acquisition unit 121 that acquires the mesh data specified by the user 6.

[0047] This allows the assistance device 1 to efficiently generate program code for processing corresponding to the mesh data based on natural language input, without leaking the mesh data of the user 6 to the outside. The substitute data generation command unit 113 causes the language model to generate substitute data that has a data structure common to the mesh data specified by the user 6, thereby enabling a processing target that maintains structural compatibility without directly using highly confidential production data. The code generation command unit 114 commands the language model to generate program code corresponding to the processing content specified using the substitute data as the processing target, automatically obtaining code corresponding to the target processing based on the natural language input. This code is used by the execution result generation unit 119 to generate processing results for the substitute data. As a result, a test environment is created to verify whether the code can be applied to actual mesh data.

[0048] Furthermore, the processing target designation unit 118 allows flexible designation of either substitute data or mesh data as the target for program code execution, allowing the user 6 to easily switch between test and actual processing. The mesh data acquisition unit 121 also acquires the production mesh data that will ultimately be executed, enabling execution of actual processing using program code that has been tested. With this configuration, the support device 1 automates code generation and execution result acquisition while maintaining confidentiality in response to processing instructions in natural language from the user 6, achieving both convenience and security in data processing using mesh data. As a result, it is possible to achieve both reliability and convenience in services on the distributed mesh data platform.

[0049] Preferably, the code generation command unit 114 is capable of generating a prompt that combines a fixed prompt that is appropriate for the type of language model with processing content information that indicates the content of data processing provided by the user 6, and inputting this prompt into the language model. With this configuration, it is possible to obtain an output that is optimized for each different language model, thereby improving the stability of the generated program code and the accuracy of processing.

[0050] Fixed prompts consist of template-like input syntax and preambles that work effectively in a specific model. This allows the language model to improve the accuracy of interpreting input instructions and maintain consistency in output. On the other hand, processing content information is a natural language expression of specific data processing requests, such as "calculating the average value" or "cross-tabulating by attribute," and is dynamically generated based on input statements or selection operations obtained from the user interface.

[0051] The code generation command unit 114 creates a prompt that integrates these two pieces of information and sends it to the appropriate language model, thereby efficiently obtaining program code that matches the processing objective. This reduces variations in output quality due to differences in performance characteristics between language models and enables highly versatile system operation.

[0052] 3, the code generation command unit 114 receives an operation instruction in natural language from the user 6 and generates it as an instruction prompt 81. At the same time, it applies a fixed prompt (for stabilization) 82 selected according to the type of language model. The fixed prompt 82 includes a template syntax for improving output stability and consistency for a specific model, and is prepared in advance according to past evaluation results and the processing target.

[0053] Here, the instruction prompt 81 is an operation instruction written in natural language, which explicitly conveys the data processing content intended by the user 6 to the generation AI. For example, when creating table data, a prompt such as "Please insert a three-column table consisting of name, age, residential address, and residential mesh code. Please create sample data for five people" is used. This prompt specifically indicates the minimum structure and content for data generation, and serves to encourage the generation AI to produce clear output.

[0054] A typical prompt for the aggregation process is, "Please perform a cross-tabulation of age and residential mesh code and insert the table." This allows the generated table to be presented in an organized format that allows the correlation between target attributes to be visually confirmed. Furthermore, instructions related to statistical processing include advanced analysis requests such as, "Please perform an independence test on the cross-tabulation of age and residential mesh code, and output and insert the p-value surrounded by a box." It is also possible to issue instructions to add the test results to the data being analyzed.

[0055] Regarding visualization, there are several prompts for bar graphs, line graphs, and map drawing. For example, the prompt "Insert a bar graph showing age values ​​by name" suggests a visual representation that allows for comparison across categories. The prompt "Insert a line graph showing age values ​​by name" aims to visualize trends over time or over time. Furthermore, the prompt "Insert a map" can be followed by the instruction "Add a red rectangle on the map that corresponds to the residential mesh code" to enhance the visualization of spatial information.

[0056] These prompts enable a series of information processing operations, such as data generation, aggregation, analysis, and visualization, to be completed entirely in natural language, creating an environment in which users6 can intuitively perform advanced data processing, regardless of their expertise or programming skills.

[0057] The code generation command unit 114 integrates the instruction prompt 81, the fixed prompt 82, and, if necessary, edited existing application code 83 ("app (code)") to form a composite prompt that is input to the AI ​​coding assistant API 84. This composite prompt functions as a syntax that specifically and precisely conveys the content of the desired processing, correcting ambiguity in natural language and improving the quality of the output code.

[0058] The composite prompt thus formed is sent to an AI coding assistant API 84, and new application code is generated by a cloud-based generation AI 85. The generated code is output as an updated app (code) 86, and the user 6 checks its operating status and verifies in an evaluation module 87 whether the intended processing is being achieved. Based on the evaluation results, the prompt is modified again and the code is regenerated, thereby sequentially optimizing the application.

[0059] With this configuration, the code generation command unit 114 achieves optimal cooperation with the language model, while balancing the ability to respond to dynamic data processing requests with stable code quality. In particular, prompt design that takes into account the different response characteristics of each language model makes it possible to suppress variations in the generated results and provide a highly versatile automatic code generation environment.

[0060] (Mesh data processing support system S: support device 1: editing means providing unit 120) As shown in FIG. 1, the control unit 11 also includes an editing means providing unit 120 that provides a user interface for editing the execution results of program code that processes substitute data and the program code.

[0061] The editing means providing unit 120 executes processing to provide a user interface that supports the user 6 in intuitively and visually editing the program code that processes substitute data and checking the execution results. This user interface is designed to allow the user 6 to sequentially check and edit the contents of the generated program code through natural language input and selection operations. For example, the user interface includes an input field for correction instructions in natural language, an area for displaying the code structure, an area for visualizing the processing results, etc.

[0062] The editing means providing unit 120 also improves work efficiency when, as needed, changing syntax, adding or deleting processing targets, adjusting conditional expressions, etc., is performed on program code automatically generated by a language model. The editing means providing unit 120 also has a function that enables re-execution of edited code and immediate reflection of the results. This allows the user 6 to continuously check and correct the code until it meets their needs. Furthermore, the editing means providing unit 120 can incorporate support functions such as suggesting multiple code candidates and prompts, presenting a change history, and visually highlighting error locations. This makes it easy for users 6, even those without specialized programming knowledge, to adjust and optimize code.

[0063] (Mesh data processing support system S: support device 1: processing time prediction unit 115) The control unit 11 also includes a processing time prediction unit 115 that predicts the processing time for generation related to the substitute data generation command unit 113 or the code generation command unit 114 based on the number of tokens of the prompt input to the language model. Here, the "number of tokens" is the unit used when the language model interprets the input, and corresponds to the number of words, symbols, syntactic elements, etc. that make up the entire prompt. The processing time prediction unit 115 performs statistical analysis based on past generation results and model-specific response trends, and utilizes the correlation between the number of tokens of the input prompt and the time required for processing to construct a prediction model that predicts future processing times with high accuracy.

[0064] With this configuration, when the user 6 inputs a natural language instruction, the assistance device 1 can display in advance the processing time required to generate code or substitute data based on the instruction. This allows the user 6 to understand the waiting time until processing is complete, reducing operational stress and enabling adjustments to the work plan, as well as making decisions in advance, such as making corrections to prompts that require a long time. Furthermore, the prediction information obtained by the processing time prediction unit 115 can be applied to resource management within the system and scheduling of generation requests from multiple users, making it possible to maintain overall processing efficiency and responsiveness even under conditions where generation requests are concentrated.

[0065] Specifically, Figure 4 is an explanatory diagram visually illustrating the relationship between the number of tokens in a prompt sent to the AI ​​coding assistant and the expected waiting time until a response to that prompt is generated. In the figure, each rectangular block indicates the number of tokens in the sent prompt, with the corresponding expected waiting time written on the right. For example, the first block has 400 tokens, and generating a response to this prompt is expected to take approximately 10 seconds. The next prompt with 2500 tokens has a predicted waiting time of 25 seconds. The next prompt with 3435 tokens has a predicted waiting time of 30 seconds, and the next prompt with 2422 tokens has a predicted waiting time of 34 seconds. The assistance device 1 can utilize such processing time predictions based on the number of tokens to select content to display during waiting (e.g., advertisements, progress visualization, etc.) and to dynamically optimize the execution order management among multiple users 6.

[0066] (Mesh data processing support system S: support device 1: content selection unit 116) Furthermore, the control unit 11 includes a content selection unit 116 that selects content to be displayed during the waiting time until the generation process is completed, based on the processing time prediction result in the processing time prediction unit 115. Specifically, the control unit 11 inputs a prompt to the language model, and performs control processing to present optimal information, visual materials, advertisements, etc. to the user 6 while waiting for the generation of substitute data and program code.

[0067] This configuration makes it possible to convert the idle wait time while the user 6 waits for a response from the generation process into information provision and a valuable experience. For example, if the processing time is predicted to be about a few seconds, auxiliary information that can be viewed in a short time, such as an operation guide or hints, can be displayed, and if the processing time is expected to be more than several tens of seconds, relatively long content such as video advertisements, tutorials, or introductions to similar cases can be presented. This enables the content selection unit 116 to realize advertising revenue and guidance to related functions depending on the content displayed.

[0068] (Mesh data processing support system S: support device 1: generation processing management unit 117) Furthermore, the control unit 11 includes a generation processing management unit 117 that manages the execution order of generation processing using language models for multiple users 6 based on the processing time prediction results. That is, the generation processing management unit 117 has the function of appropriately managing the execution order of generation processing using language models for generation requests from multiple users 6 based on the predicted time required for each generation processing obtained by the processing time prediction unit 115. The generation processing management unit 117 compares and evaluates the number of tokens of each prompt, the characteristics of the processing content, and the predicted waiting time, and determines the order and priority of processing by applying a scheduling algorithm that takes into account the server load and responsiveness.

[0069] This configuration enables the support device 1 to efficiently return responses while avoiding collisions and bottlenecks in the generation process, even in an environment where multiple users 6 are present at the same time. For example, it is possible to increase the overall processing speed by prioritizing requests that can be responded to in a short time, and to flexibly adjust the processing order according to urgency and billing plans, thereby improving the fairness and profitability of the entire system.

[0070] Furthermore, the generation processing management unit 117 can optimally allocate resources to avoid bias or concentration of processing by referring to the request log and processing history of each user 6. This allows the assistance device 1 to maintain stable response performance even during peak times when the use of generation AI is concentrated.

[0071] (Mesh data processing support system S: support device 1: communication unit 14) The assistance device 1 equipped with the control unit 11 configured as described above has a communication unit 14. The communication unit 14 has a communication function for transmitting and receiving data between the assistance device 1 and an external device. Specifically, the communication unit 14 is connected to the terminal 2 and the server 3 via the Internet 4 so as to be able to communicate data. The communication unit 14 supports standard communication protocols such as HTTP and HTTPS, and realizes communication compatible with a variety of data formats, such as input instructions in natural language, notification of processing results, updated information on the user interface, and transmission and reception of prompts and generated codes.

[0072] The communication unit 14 is also adaptable to a cloud-based configuration that allows simultaneous access by multiple users 6, and is equipped with security functions including communication session management for each user 6 and establishment of a secure encrypted communication path. This allows the communication unit 14 to return the processing status and response results of the support device 1 to the user 6 connected to the terminal 2 in real time, and also enables stable execution of server-linked processing such as data synchronization with the system administrator via the server 3, log collection, and function updates.

[0073] (Mesh data processing support system S: support device 1: terminal 2) The communication unit 14 enables data communication between the support device 1 and the terminal 2 and the server 3 via the Internet 4. The terminal 2 is a user interface device that allows a user 6 to connect to the support device 1 via the Internet 4 and input data in natural language, check processing results, edit program code, and perform other operations. The terminal 2 is configured as a general information processing terminal, such as a personal computer, tablet terminal, or smartphone, and communicates data with the communication unit 14 of the support device 1 via a web browser or dedicated application. The user 6 can use the terminal 2 to send processing instructions to the support device 1 in natural language format, check the contents of substitute data and program code generated based on these instructions, and make corrections or re-executions as necessary. The terminal 2 also has the function of receiving and displaying, in real time, information such as predicted processing time, execution results, error notifications, and editing support information returned from the support device 1.

[0074] (Mesh data processing support system S: support device 1: server 3) The server 3 is connected to the assistance device 1 via the Internet 4 and functions as a computational resource that hosts the generative AI and related external services. Specifically, this corresponds to a cloud server on which the generative AI equipped with a large-scale language model such as ChatGPT runs, and a group of servers on which the accompanying prompt processing management mechanism, log analysis engine, user management system, etc. are implemented.

[0075] When the code generation command unit 114 or the substitute data generation command unit 113 in the assistance device 1 requires data generation processing based on a language model, this processing is transmitted to the server 3 via the communication unit 14, and a corresponding response is generated by the generation AI. The response output is returned to the assistance device 1 as program code, substitute data, or an intermediate result, and is reflected in the final processing result and user interface. In addition to processing by the generation AI, the server 3 preferably has operation management functions such as version management of the entire system, update distribution, access log collection and analysis, and fault monitoring. In other words, the server 3 is an external processing node that supports natural language processing, code generation, data maintenance management, etc., and, by cooperating with the assistance device 1, enables the realization of an advanced and flexible mesh data processing assistance service.

[0076] (Mesh Data Processing Support System S: Distributed Mesh Server) To efficiently process large amounts of mesh data, the support device 1 is preferably implemented as a distributed mesh data processing system consisting of multiple server devices, i.e., a distributed mesh data server. This configuration enables high parallel processing performance for a huge amount of mesh data, significantly improving the response speed and throughput of the entire data processing.

[0077] Specifically, the system distributes the processing calculations for each mesh across multiple servers, with each server performing parallel processing independently. Existing distributed computing techniques can be applied to divide the processing targets, such as hash partitioning using a hash function or range partitioning based on the range of data. For example, if each server is configured to correspond to a specific geographical area (region), it is effective to divide the mesh data by region and assign processing to each server.

[0078] Furthermore, this configuration assumes that multiple users 6 will use the system simultaneously, and it is essential to ensure access management and communication security to prevent data from being leaked to other users 6. For this reason, it is desirable for the distributed mesh data server to have an authenticated login process and access control mechanism for each user 6, and to perform appropriate data management. Furthermore, when sending and receiving data between servers, the use of communication encryption technologies such as symmetric key cryptography and public key cryptography can reduce the risk of communication content on the network being leaked to third parties.

[0079] In this way, by configuring the support device 1 as a mesh data server capable of distributed processing, it is possible to ensure both data security and privacy protection while ensuring processing performance and scalability. This is particularly effective in applications that require large-scale regional statistics or real-time processing of geographic information.

[0080] (Mesh Data Processing Support System S: Anonymization of Data Processing Results) The support device 1 may be configured to output the generated data processing results in anonymized form. This reduces the risk of personal information leaks even when a third party views the processing results. For example, it may be necessary to prevent a specific address from being inferred by an outside party from information processed based on mesh data. In response to this, the support device 1 can perform processing to control the granularity of the mesh based on a predetermined "k-anonymity" standard. K-anonymity refers to a state in which a specific item cannot be identified because at least k pieces of data (e.g., addresses) exist within a certain block (mesh).

[0081] Specifically, if a mesh contains fewer than k addresses, the support device 1 merges that mesh into a higher-level mesh that includes a larger area. As a result, all meshes contain at least k addresses. While a viewer of the processing results can see that "this mesh contains k or more addresses," it is difficult to identify which of those addresses is the target address, ensuring anonymity. This type of anonymization process is an effective means of balancing the protection of personal information and the utilization of information when visualizing and analyzing geographic information based on mesh data.

[0082] (Mesh Data Processing Support System S: Overall Configuration and Operation Overview) The overall configuration and operation of the mesh data processing support system S including the support device 1 configured as above will be described with reference to FIG.

[0083] Figure 5 shows the overall configuration of the mesh data processing support system S, systematically illustrating the processing flow from data collection to application provision. This system has a multi-layered structure, with the computer resources 74 at the lowest layer functionally linked to the processing groups at higher layers.

[0084] The lowest layer is the computing resources 74, which include physical computing and storage devices such as CPUs, GPUs, memory, and storage. Above these computing resources 74, the "platform, middleware, DB server, and file server" components 73 are implemented, and as the infrastructure software layer, they perform integrated management of the operating environment. Above the components 73, the data and API components 72 and the data lake 78 are provided, storing large amounts of mesh data and related information. The data lake 78 receives information automatically acquired from an external crawler 79 and also accepts data written from the application layer 71. Data is accessed via the WebAPI 77, enabling highly efficient data communication based on a unified protocol.

[0085] Apps 75 and app development apps 76 are located on the upper layer of the data lake 78, and these work in conjunction with a WebAPI 77 to provide functions such as acquiring, processing, and analyzing mesh data. The app development apps 76 are a group of tools provided for application developers (users 6), and have functions such as statistical processing, visualization, and automated code generation.

[0086] The deliverables of these applications are integrated into the application layer 71 and ultimately provided to the user 6. The application layer 71 integrates the UI / UX for data processing, operation support functions, code generation support functions using natural language input, etc., and allows the user 6 to operate them through his or her own device. Similarly, application developers can also use development support applications to implement new functions and user interfaces, thereby expanding the application group.

[0087] As described above, Fig. 5 visually represents the processing flow of the mesh data processing support system S across multiple layers, from data collection by the crawler 79 to the provision of services to the user 6 through the application. In contrast to this, Fig. 1 is a diagram showing in detail the internal configuration of the support device 1, which is positioned at the core of the mesh data processing support system S in Fig. 5. Specifically, the support device 1 has a control unit 11 capable of executing the application layer 71 that operates in cooperation with the data lake 78 and WebAPI 77 in Fig. 5. The control unit 11 has various modules that automatically generate and execute data processing code based on natural language input, manage output, etc.

[0088] For example, when the user 6 sends a processing instruction in natural language from the terminal 2, the input is received by the input acquisition unit 112, and a prompt for the language model (a generation AI implemented in the server 3) is generated by the substitute data generation command unit 113 and the code generation command unit 114. The obtained program code is controlled by the processing target designation unit 118 so that it is executed on the substitute data or the production data, and the processing is executed by the execution result generation unit 119. The output result is returned to the user 6 of the terminal 2 by the display providing unit 111. In this series of processes, the mesh data is acquired by the mesh data acquisition unit 121, and the mesh data is stored in the storage device 13 and the mesh database 131, which are linked to the mesh data in the data lake 78.

[0089] Furthermore, components such as the processing time prediction unit 115, content selection unit 116, and generation processing management unit 117 cooperate with external services via the WebAPI 77 to realize advanced processing support functions such as estimating processing load, displaying advertisements while waiting, and optimizing the order of requests from multiple users 6.

[0090] (Mesh data processing support program) Each of the units 111 to 121 in the control unit 11 may be configured as either hardware or software. When each of the units 111 to 121 is configured as software, the control unit 11 is configured to execute a mesh data processing support program that generates substitute data having a structure similar to the mesh data of the user 6 in a language model and generates and tests program code based on the substitute data.

[0091] 6 and 7, the mesh data processing support program includes an input acquisition process (S1) that receives an input instruction in natural language from the user 6 and passes it to an appropriate internal process; a processing target designation process (S2) that designates either substitute data or actual mesh data as the data to be executed in response to an operation by the user 6; a mesh data acquisition process (S3) that acquires actual mesh data of the geographical area designated by the user 6 from the storage device 13 or an external DB and provides it as the processing target; a substitute data generation command process (S4) that commands the language model to generate substitute data that is structurally consistent with the actual mesh data designated by the user 6; a code generation command process (S5) that causes the language model to generate program code applicable to the substitute data based on the data processing content designated by the user 6 in natural language; the processing steps include an execution result generation process (S6) that outputs an appropriate code execution result according to the input data (prompt tokens); a processing time prediction process (S7) that predicts the time required for processing (code generation, substitute data generation) based on the number of tokens of the prompt input to the language model; a content selection process (S8) that selects and presents content (hints, videos, advertisements, etc.) to be displayed to the user 6 according to the predicted waiting time; a generation process management process (S9) that adjusts the execution order of generation requests from multiple users 6 based on the waiting time, server load, etc.; an editing means provision process (S10) that provides a user interface that allows the generated program code and its execution results to be visibly and intuitively edited and checked; and a display provision process (S11) that returns and displays the generated code, execution results, waiting time, auxiliary information, etc. on the terminal 2, and is configured to be executed by the computer of the control unit 11.

[0092] The mesh data processing support program configured as described above may be distributed in a state recorded on a recording medium such as a CD-ROM or USB memory, or may be distributed via a two-way communication network or communication line such as the Internet or a one-way communication network such as television broadcasting.

[0093] To explain the mesh data processing support program in more detail, the input acquisition process (S1) is executed immediately after the mesh data processing support program is started. Its function is to acquire instructions or processing requests entered in natural language by the user 6, or operation information selected via a GUI or other means. In this process, the user 6 connected to the support device 1 via the terminal 2 can specify the scope of data to be processed, its purpose, output format, type of statistical processing, visualization requirements, etc., in natural language or in a fixed input format. The input acquisition process (S1) converts the input by the user 6 into an internal format that can be appropriately interpreted and organizes it as structured information for subsequent processing. For example, if an instruction is given such as "I want to create a cross-tabulation table based on age and region," it is recognized as an instruction related to cross-tabulation processing and saved as preprocessing information for generating substitute data or code generation.

[0094] The processing target designation process (S2) is responsible for selecting either substitute data or production data as the processing target based on user 6 operation or specified input. Substitute data is virtual data generated in a structurally consistent format to prevent the leakage of highly confidential production data, and is used for early code testing and verification. Production data, on the other hand, is real data based on an actual geographic area and is the target of final processing output. The processing target designation process (S2) is configured so that user 6 can select "test mode (substitute data)" or "actual execution mode (production data)" depending on their current purpose using the editing interface or command selection. Subsequent code generation and execution processing are performed based on the target data selected here. This allows user 6 to safely test during the development phase, confirm that there are no problems with the processing logic, and then smoothly transition to production processing while ensuring reliability.

[0095] The mesh data acquisition process (S3) is a process in the mesh data processing support program to acquire production data corresponding to the geographic area designated by the user 6 as the processing target, and provide it for subsequent processing. This process has the function of searching and extracting the necessary mesh data from the mesh database 131 stored in the storage device 13, or acquiring it via an external geographic information database or API service, based on the area information, coordinate range, or mesh code designated by the user 6 on the interface.

[0096] The acquired production data has a structure and accuracy that matches the specified processing content, and typically supports a variety of mesh granularities, from primary mesh (approximately 80 km) to expanded 1 m mesh. In this processing, the optimal mesh granularity is selected depending on the application, such as disaster prevention measures, urban planning, or movement analysis, and structured data is extracted, including attribute information (population, traffic, facility information, etc.) that corresponds to the selected range.

[0097] Furthermore, the mesh data acquisition process (S3) is configured to involve security controls such as authentication of access rights and log recording, so that only authorized users 6 can access the data. The acquired data is passed to the subsequent substitute data generation command process (S4) or code generation command process (S5) as the source of substitute data or the target for actual execution, depending on the execution mode set by the processing target designation process (S2).

[0098] The substitute data generation command process (S4) is a process that generates an appropriate prompt for the language model and commands the generation process to generate substitute data that is structurally consistent with the production data specified by the user 6. In this process, first, the structural attributes of the production data given as input, i.e., data item name, type, number of fields, number of records, hierarchical structure, format, etc., are extracted and analyzed. From the viewpoint of security and privacy, this structural information is processed without disclosing the specific values ​​of the production data.

[0099] Next, to ensure that the substitute data used for code generation is formally compatible with the production data, generation instructions written in natural language based on the structural information are formatted as a prompt. For example, instructions including column names, data types, and typical example values ​​are automatically generated in the format of "Please generate 10 pieces of dummy data with the following structure." This prompt is then sent to the generation AI (language model) implemented on Server 3, which outputs pseudo-generated data with consistent structure.

[0100] Although the generated substitute data has different content from the production mesh data, its structural consistency ensures that it can be used as a processing target in the subsequent code generation command process (S5). This makes it possible to thoroughly check operation during the development and testing stages while maintaining confidentiality. The substitute data obtained by this process can be switched with the production data using the processing target specification process (S2), and by linking it with the execution result generation process (S6), it is possible to build a safe and efficient code operation verification environment.

[0101] The code generation command process (S5) is a process in which, based on the data processing content specified in natural language by the user 6, program code for realizing this data processing content is automatically generated using a language model in a format that can be applied to substitute data. This process is designed to analyze the processing instruction in natural language entered by the user 6 (for example, "Please calculate the average age for each residential area mesh"), accurately grasp the intention, and then generate code that matches the structure of the target data.

[0102] Specifically, the entire prompt is constructed by extracting the input natural language instructions as processing content information and combining it with a fixed prompt that is preset according to the type of language model. This prompt contains natural language syntax that reflects the structure of the target substitute data (column names, data types, number of data items, etc.) and the processing content (aggregation, formatting, visualization, statistical analysis, etc.), and is in a format that can be appropriately interpreted by the generation AI.

[0103] The generated prompt is sent to a language model implemented on server 3, where a natural language processing algorithm is executed to output the specified processing content as executable code (e.g., Python, JavaScript, SQL, Excel macros, etc.). The output program code is intended to be executed on substitute data, and is constructed in a manner that maintains grammatical and structural integrity. The generated code is then verified for operation by the execution result generation process (S6).

[0104] Through this code generation command process (S5), the user 6 can intuitively obtain code that realizes complex data processing using natural language, without needing specialized programming knowledge. In addition, the generated code can be re-edited visually and interactively through the editing means provision process (S10), making it possible to achieve both high flexibility and operability in the entire system.

[0105] The execution result generation process (S6) is a process in which the program code generated in the code generation command process (S5) is executed on the specified data to be processed (substitute data or actual mesh data) and the output results are generated. This process corresponds to the step of verifying the operation of the generated program code on actual data, making it possible to confirm the validity of the code and the accuracy of the processing results.

[0106] In this process, the data (substitute data or production data) identified by the target specification process (S2) is first referenced as the target for code execution. Using substitute data makes it possible to verify the syntactic and functional validity of the code without the risk of information leakage, making it effective in the pre-verification and testing stages. On the other hand, using production data provides the final processing results, such as analytical output and visualization results based on the data to be used in actual operations.

[0107] It is preferable that the program code be executed in a virtual execution environment or sandbox environment provided within the control unit 11. This prevents the running code from communicating unnecessarily with entities outside the system, ensuring security and consistency of the process. The generated output is provided in a format appropriate for the processing purpose, such as numerical data, tabular data, graphs, map drawings, and statistical results. Furthermore, the execution result generation process (S6) can also be linked to a feedback mechanism that notifies errors and suggests corrections when the code does not function properly. In conjunction with the editing means provision process (S10), this supports the user 6 in an interactive cycle of correction and re-execution.

[0108] The processing time prediction process (S7) is a process for calculating in advance the expected time required for the corresponding generation process based on the content of the prompt input to the language model in the substitute data generation command process (S4) and the code generation command process (S5), particularly the number of tokens. The "number of tokens" here refers to the words, symbols, syntactic elements, etc. that make up the prompt, divided into the smallest units that the model can recognize, and is used as an index for quantitatively evaluating the processing load of the language model.

[0109] The processing time prediction process (S7) analyzes the correlation between the number of tokens of prompts recorded in past processing results and the corresponding generated processing time, and constructs a prediction model using statistical techniques or machine learning models. This makes it possible to quickly and accurately estimate the corresponding processing time for a newly input prompt based on the number of tokens. Through this prediction process, the assistance device 1 is configured to present the user 6 with an approximate waiting time required for the processing based on the instruction to be completed when the user 6 inputs an instruction in natural language. This allows the user 6 to understand in advance how much time to allocate while waiting for the processing to be completed, leading to improved operational efficiency and user experience. Furthermore, if it turns out that the predicted time is long, this can serve as a clue to encourage the user 6 to consider simplifying or modifying the input prompt.

[0110] Furthermore, the output of the processing time prediction process (S7) is not limited to being used simply as display information, but is linked to the subsequent content selection process (S8) and generation process management process (S9), which contributes to the selection of auxiliary content to be displayed on the user interface and the optimization of processing scheduling among multiple users.

[0111] The content selection process (S8) is a process for selecting appropriate content to be presented to the user 6 based on the waiting time predicted by the processing time prediction process (S7) and controlling its display. This process is designed to convert the time spent by the assistance device 1 inputting prompts to the language model and waiting for the generation of substitute data and program code into a useful and comfortable experience for the user 6.

[0112] Specifically, if the predicted waiting time is short (for example, within a few seconds), the system will present short advertising content as well as auxiliary information that can be understood in a short time, such as a system operation guide, simple hints, a progress bar, etc. On the other hand, if the predicted waiting time is relatively long (for example, more than 10 seconds), the system will be controlled to display high-value-added information that makes use of the time, such as a video tutorial, an introduction to related functions, presentation of similar cases, advertising content, etc.

[0113] In this way, the content selection process (S8) does not improve the responsiveness of the process itself, but rather actively utilizes the time lost in the standby state as an opportunity to provide information. Furthermore, the displayed content can be personalized based on the user 6's operation history, interest trends, and past standby behavior, achieving higher satisfaction and convenience. Furthermore, it can be linked to the operational strategy of the support device 1, such as advertising monetization and guidance to function expansion.

[0114] The generation process management process (S9) dynamically determines and optimizes the execution order of processes using language models for generation requests generated simultaneously from multiple users 6, taking into consideration the predicted time required for each processing request, the server load of the entire system, the resource usage status, the priority of users 6, etc. This process maintains the fairness and efficiency of processing in the assistance device 1, and makes it possible to provide stable response times to users 6.

[0115] Specifically, the predicted processing time for each request obtained by the processing time prediction process (S7) is compared with the current status of the execution environment, such as the utilization rate of the CPU, GPU, etc., the number of simultaneous accesses, and the length of the processing queue, which are managed within the system, and processing is assigned sequentially starting with the request with the highest priority based on a scheduling algorithm. Priority can be determined simply in order of shortest processing time, but it may also be possible to set priority to premium users, who are high-priority users6, or to prioritize processing requests with high urgency.

[0116] Furthermore, this process does not only determine the execution order, but also takes into consideration past processing results, average response times for each user 6, and biases in queue times, and is controlled to achieve load balancing and optimal use of processing resources without any sense of unfairness overall. Furthermore, the generation process management process (S9) also works in conjunction with auxiliary functions that reduce waiting stress for users 6 by notifying them in advance if a response delay to users 6 may occur and by presenting an estimate of processing time. In this way, the generation process management process (S9) makes it possible to control the natural language code generation and data generation processes so that they do not collide or stall in an environment where multiple users 6 exist.

[0117] The editing means provision process (S10) is a process that provides a user interface that allows the user 6 to visually and intuitively check and edit the generated program code and its execution results. This process visually displays the contents of the code that is automatically generated from input instructions in natural language, and creates an environment in which the user 6 can modify parts of the code and check and compare the execution results.

[0118] Specifically, the screen of the support device 1 is designed to have an area for displaying the generated code and a result confirmation area for simultaneously displaying the execution results of that code (tables, graphs, statistics, mesh diagrams, etc.), allowing the user 6 to view and operate both in parallel. This allows the user 6 to grasp in real time the impact that code modifications have on the results, facilitating optimization through trial and error. The interface also features a natural language re-instruction field, syntax highlighting of code blocks, error detection and highlighting functions, and more, allowing even users 6 who are unfamiliar with programming to visually identify errors and make corrections.

[0119] Furthermore, the editing means provision process (S10) can also include functions for history management, undo, prompt correction and retransmission, and code candidate variation suggestion, providing comprehensive support for the editing activities of the user 6. This creates an environment in which the entire editing and confirmation process, from the natural language instructions that are the starting point for code generation to the final completed code, can be managed and operated in an integrated manner. This makes the mesh data processing support system S not just a simple code automatic generation tool, but also has the functionality of an interactive development support device that helps the user 6 achieve their goals.

[0120] The display providing process (S11) is a process of returning the program code generated in the support device 1, the execution result of this program code, the predicted waiting time, and auxiliary information (hints, guides, related documents, etc.) to the terminal 2, which is the operation terminal of the user 6, and displaying them in an appropriate format. This process functions as an output interface for providing the results of a series of processes completed in the control unit 11 in a form that the user 6 can see, understand, and operate.

[0121] Specifically, the display provision process (S11) achieves highly usable information provision by comprehensively controlling the layout and presentation method of each piece of information on the screen. For example, the generated code is formatted and displayed in the code display area, and readability is ensured by syntax highlighting and folding functions. The execution results are presented in appropriate visualization means according to the processing content, such as table format, graph, or map display, allowing the user 6 to intuitively confirm the success or failure of the processing and its trends. In addition, the content of auxiliary content presented during waiting (advertisements, tutorials, related materials, etc.) is also displayed appropriately on the user interface through this process based on the predicted processing time.

[0122] It is desirable that the display provision process (S11) be configured to employ asynchronous communication and gradual information display in order to maintain real-time responsiveness. For example, if the code generation and execution results arrive at different times, the system can be designed to display each result immediately upon arrival, thereby minimizing the waiting time of the user 6. In addition, by providing input fields for feedback on the displayed results and re-entry instructions, the user 6 can continue working by repeatedly operating directly on the screen.

[0123] (Mesh data processing support method) Some or all of the steps in the mesh data processing support program may be configured by hardware. In other words, the support device 1 equipped with the control unit 11 may be configured to be able to execute the mesh data processing support method. Specifically, the mesh data processing support method includes an input acquisition process (S1) that receives an input instruction in natural language from the user 6 and passes it to an appropriate internal process; a processing target designation process (S2) that designates either substitute data or actual mesh data as the data to be executed in response to an operation by the user 6; a mesh data acquisition process (S3) that acquires actual mesh data for a geographical area designated by the user 6 from the storage device 13 or an external DB and provides it as the processing target; a substitute data generation command process (S4) that commands a language model to generate substitute data that is structurally consistent with the actual mesh data designated by the user 6; a code generation command process (S5) that causes the language model to generate program code applicable to the substitute data based on the data processing content designated by the user 6 in natural language; and a program code acquisition process (S6) that determines the content of the program code, the processing target (either substitute data or actual mesh data). The processing steps include an execution result generation process (S6) that outputs appropriate code execution results according to the input data (mesh data), a processing time prediction process (S7) that predicts the time required for processing (code generation, substitute data generation) based on the number of tokens of the prompt input to the language model, a content selection process (S8) that selects and presents content (hints, videos, advertisements, etc.) to be displayed to the user 6 according to the predicted waiting time, a generation process management process (S9) that adjusts the execution order of generation requests from multiple users 6 based on the waiting time, server load, etc., an editing means provision process (S10) that provides a user interface that allows the generated program code and its execution results to be visibly and intuitively edited and checked, and a display provision process (S11) that returns and displays the generated code, execution results, waiting time, auxiliary information, etc. on the terminal 2.

[0124] It should be noted that within the scope of the concept of the present invention, those skilled in the art may conceive of various modifications and alterations. Therefore, it is understood that such modifications and alterations fall within the scope of the present invention. For example, even if a person skilled in the art appropriately adds, deletes, or modifies components of the above-described embodiment, or adds, omits, or modifies the conditions of a process, such modifications are also included within the scope of the present invention as long as they maintain the gist of the present invention. [Explanation of symbols]

[0125] S System 1 Support equipment 2. Terminal 3 Server 11 Control section 13 Storage device 14 Communications Department 111 Display provision section 112 Input acquisition unit 113 Substitute Data Generation Command Unit 114 Code Generation Command 115 Processing time prediction unit 116 Content Selection Section 117 Generation Processing Management Unit 118 Processing target specification section 119 Execution result generation unit 120 Editorial Methods Department 121 Mesh data acquisition unit

Claims

1. a substitute data generation command unit that commands a language model to generate substitute data that has a data structure common to mesh data designated by a user; a code generation command unit that commands the language model to generate program code for performing specified data processing on the substitute data; an execution result generation unit that generates an execution result of the program code; a processing target designation unit that designates processing target data designated by the user from a group including the substitute data and the mesh data as data to be executed by the program code in the execution result generation unit; a mesh data acquisition unit that acquires the mesh data specified by the user; Equipped with A mesh data processing support device that uses natural language input.

2. 2. The support device according to claim 1, further comprising an editing means providing unit that provides a user interface for editing the execution result of the program code that processes the substitute data and the program code.

3. 2. The support device according to claim 1, wherein the code generation command unit inputs a prompt to the language model, the prompt including a fixed prompt corresponding to the type of the language model and processing content information indicating the content of the data processing.

4. 2. The assistance device according to claim 1, further comprising a processing time prediction unit that predicts a processing time for generation related to the substitute data generation command unit or the code generation command unit based on the number of tokens of a prompt input to a language model.

5. The support device according to claim 4 , further comprising a content selection unit that selects content to be displayed during a waiting time until the generation is completed, based on the predicted processing time.

6. The assistance device according to claim 4 , further comprising a generation process management unit that manages an execution order of generation processes using the language models for a plurality of users based on the predicted processing time.

Citation Information

Patent Citations

  • Test data generating system, test data generating method, and test data generating program

    JP2003295761A

  • Information extraction system, information extraction device, information extraction method, and program

    JP2025024701A

  • System

    JP2025058969A

  • Mesh generation system, computer implementation method, and computer program

    JP2025073470A

  • Synthesizing three-dimensional shapes using latent diffusion models in content generation systems and applications

    US20240005604A1