System and method for predicting diverse future geometries using diffusion models

The system addresses LLMs' domain-specific challenges by using an autonomous agent with an LLM to generate and refine executable code, improving data operation efficiency and reducing manual effort.

DE102025112668A1Pending Publication Date: 2025-10-02ROBERT BOSCH GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE102025112668
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-02
Filing Date
2025-04-01
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Large language models (LLMs) struggle with domain-specific tasks due to insufficient understanding of organization-specific meanings and contexts, leading to incorrect data operations and analysis, and existing methods for prompting with domain-specific data are inefficient and require significant manual effort.

Method used

A system using a large language model (LLM) with an autonomous agent that includes an instance search engine, domain knowledge enhancer, and auto-iterative data analysis agent to generate executable software code, leveraging a data profiler, prompt manager, and executor to minimize human effort and improve code quality.

Benefits of technology

The system effectively generates domain-specific data operations with minimal human intervention, enhancing code quality and reducing manual effort by iteratively refining prompts and code execution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method for generating data comprises: receiving data indicating a request associated with a task representative of a domain, the task comprising generated executable software code; receiving data indicating one or more descriptions associated with the domain; receiving one or more instances associated with the data indicating the request response for an instance search engine that performs a search using the data indicating the request; using the instances and the data indicating descriptions to generate results comprising executable software code, the plurality of results being generated using a data profiler, a request manager using the data indicating one or more descriptions associated with the domain, and an executor configured to execute the executable software code;Outputting results associated with the executable software code, the results comprising one or more confidence ratings, and storing the one or more results in the database in response to a selection input;
Need to check novelty before this filing date? Find Prior Art

Description

Technical area

[0001] The present disclosure relates to machine learning networks, including those using a large language model. background

[0002] Domain-specific data operations encompass various activities, such as data transformation, processing, and analysis in specialized domains such as medicine, manufacturing, finance, sports, and more. Performing complex data operations can require a thorough understanding of specific data structures as well as comprehensive knowledge of the unique concepts and terminology relevant to each domain.

[0003] In recent years, pre-trained LLMs (large language models) have demonstrated strong capabilities in a wide range of data science and machine learning tasks, such as visualization, junior-level data analysis, classification, and model selection. Many research communities and companies have begun to explore human-LLM collaboration as the future of programming, as studies have shown that LLMs can save developers search efforts, improve productivity, and increase developer satisfaction.

[0004] Although they demonstrate robust capabilities in general-domain data operations tasks, LLMs can exhibit shortcomings when applied to domain-specific tasks. While extensive training data enables LLMs to grasp diverse concepts or terms, they may still be insufficient to understand meanings specific to particular organizations or nuanced contexts. For example, in the field of manufacturing, "cycle time" generally refers to the time from the beginning to the end of a process. It seems that many LLMs are familiar with this general concept. However, depending on the design of production procedures, calculating cycle time can be more complicated. Certain production lines lack sensors to accurately detect the beginning and end of a process, while some lines may deviate from parallel lines mid-production.The absence of such domain-specific knowledge can lead to LLMs producing incorrect data operations and analyses. This emphasizes the importance of customized solutions when using LLMs in a specialized domain.

[0005] A common practice among developers is to introduce domain-specific definitions each time they request LLMs to generate code. However, this approach can be both time-consuming and repetitive, as it requires constant management of the requests. Furthermore, it cannot guarantee the quality of the produced code, as LLMs lack the memory to retain the concepts they have been previously taught.

[0006] A significant amount of empirical research has demonstrated that LLMs can achieve better performance when prompted with fewer exemplars representing the target task. This can be conceptualized as few-trial prompting or contextual learning. When asked a question relevant to a domain-specific concept, LLMs are expected to produce better answers when shown a few exemplars of the implementation code compared to the situation where no exemplars are available. However, applying the few-trial prompting technique to domain-specific data analytics has many unsolved problems. For example, determining how to efficiently generate the exemplars can be problematic. Manual generation by data scientists is one solution, but it requires tremendous effort because domain concepts can be endless.Second, although data scientists leverage LLM's ability to generate exemplars, it may be difficult to minimize their efforts to perform prompt design and code iteration. Summary

[0007] A first embodiment discloses a method for generating data for machine learning (ML) models, comprising: receiving data indicating a query associated with a task representative of a domain, wherein the task comprises generated executable software code, receiving data indicating one or more descriptions associated with the domain, receiving one or more instances associated with the data indicating the query response for an instance search engine that performs a search using the data indicating the query, using both the one or more instances and the data indicating one or more descriptions associated with the domain in a large language model (LLM) to generate a plurality of results comprising executable software code, wherein the plurality of results are further processed using a data profiler, a prompt manager that processes the data,specifying one or more descriptions associated with the domain, and an executor configured to execute the executable software code, outputting a plurality of results associated with the executable software code, the plurality of results comprising one or more confidence ratings associated with the plurality of results, and storing the one or more results in the database in response to a selection input.

[0008] A second embodiment discloses a system comprising: a processor programmed to receive data indicative of a query associated with a task representative of a domain, wherein the task comprises generated executable software code, receiving data indicative of one or more descriptions associated with the domain, receiving one or more instances associated with the data indicative of the query in response to an instance search engine performing a search using the data indicative of the query, using both the one or more instances and the data indicative of one or more descriptions associated with the domain in a large language model (LLM) to generate a plurality of results comprising executable software code, wherein the plurality of results are further processed using a data profiler, a prompt manager that processes the data,specifying one or more descriptions associated with the domain, and an executor configured to execute the executable software code, outputting a plurality of results associated with the executable software code, the plurality of results comprising one or more confidence ratings associated with the plurality of results, and storing the one or more results in the database in response to a selection input.

[0009] A third embodiment discloses a method using a machine learning (ML) model, comprising the steps of: receiving data indicating a query associated with a task representative of a domain, wherein the task comprises generated executable software code; receiving data indicating one or more descriptions associated with the domain; receiving one or more instances associated with the data indicating the query response for an instance search engine that performs a search using the data indicating the query; using both the one or more instances and the data indicating one or more descriptions associated with the domain in a large language model (LLM) to generate a plurality of results comprising executable software code; wherein the plurality of results comprising the software code are further profiled using a data profiler;a prompt manager using the data specifying one or more descriptions associated with the domain, and an executor configured to execute the executable software code, outputting a plurality of results comprising the executable software code, the plurality of results comprising one or more confidence ratings associated with the plurality of results, and storing the one or more results in the database in response to a selection input. Short description of the drawings Fig. 1 shows a system for training a neural network according to one embodiment. Fig. 2 shows a computer-implemented method for training and using a neural network according to one embodiment. Fig. 3 shows a high-level overview of an exemplary embodiment of a frame. Fig. 4 shows one embodiment of a prompt structure of the system message and one embodiment of a full prompt. Fig. 5 shows a schematic representation of an interaction between a computer-controlled machine and a control system according to an embodiment. Fig. Figure 6 shows a schematic representation of the control system of Fig. 5, which is configured to control a vehicle, which may be a partially autonomous vehicle, a fully autonomous vehicle, a partially autonomous robot, or a fully autonomous robot, according to one embodiment. Fig. Figure 7 shows a schematic representation of the control system of Fig. 5, which is designed to control a production machine, such as a punching, cutting or drilling tool of a manufacturing system, e.g. part of a production line. Fig. Figure 8 shows a schematic representation of the control system of Fig. 5, which is designed to control a power tool, such as a drill or an electric screwdriver, which has an at least partially autonomous mode. Fig. Figure 9 shows a schematic representation of the control system of Fig. 5, which is designed to control an automated personal assistant. Fig. Figure 10 shows a schematic representation of the control system of Fig. 5, which is designed to control a monitoring system, such as an access control system or a supervisory system. Fig. Figure 11 shows a schematic representation of the control system of Fig. 5, which is designed to control an imaging system, for example an MRI device, an X-ray imaging device or an ultrasound device. Detailed description

[0010] Embodiments of the present disclosure are described herein. It should be understood, however, that the disclosed embodiments are merely examples, and other embodiments may take various and alternative forms. The figures are not necessarily to scale; some features may be exaggerated or minimized to show details of particular components. Specific structural and functional details disclosed herein are therefore not to be considered limiting, but merely as a representative basis for teaching those skilled in the art to variously employ the embodiments. As will be appreciated by those of ordinary skill in the art, various features illustrated and described with reference to any one of the figures may be combined with features illustrated in one or more other figures to produce embodiments not expressly illustrated or described.The combinations of features illustrated provide representative embodiments for typical applications. However, for particular applications or implementations, various combinations and modifications of the features consistent with the teachings of the present disclosure may be desired.

[0011] In this usage, "a," "an," and "the" refer to both singular and plural references unless the context clearly indicates otherwise. For example, "a processor" programmed to perform various functions refers to one processor programmed to perform each of the various functions, or to more than one processor collectively programmed to perform each of the various functions.

[0012] The embodiment disclosed below is an autonomous agent using LLM technology that can enable domain experts or data scientists (or others) to perform domain-specific data operation tasks with minimal human effort. Given a request and certain descriptions of domain knowledge from a domain expert, the exemplary embodiment can first enrich the domain knowledge description by generating multiple versions of the knowledge in a step-by-step pseudocode format. Next, the system can perform data analysis, following an iterative workflow: (1) request the LLM to write Python code; (2) execute the code; (3) request code modification if the code is not executable; (4) request the LLM to generate insights based on execution results.The workflow can have a tree structure, where multiple data analysis reports can be generated based on multiple versions of the domain knowledge description.

[0013] In one embodiment, the system may be an agent using LLM technology with a human in the loop to enable data scientists and domain experts to perform domain-specific data analysis. An autonomous agent using LLM technology may be capable of creating plans and using tools, such as calling APIs and executing programming code. The system architecture may include three modules, each of which can be considered a sub-agent: (1) an instance search engine; (2) a domain knowledge enhancer; and (3) an auto-iterative data analysis agent.

[0014] Reference is now made to the embodiments illustrated in the figures which may apply these teachings to a machine learning model or neural network. Fig. Figure 1 shows a system 100 for training a neural network, e.g., a deep neural network. The system 100 may include an input interface for accessing training data 102 for the neural network. For example, the input interface may be as shown in Fig. 1, the training data 102 can be accessed from a data storage interface 104. For example, the data storage interface 104 can be a memory or persistent storage interface, e.g., a hard disk or SSD interface, or an interface for a personal, local, or wide-area network, such as a Bluetooth, Zigbee, or Wi-Fi, or an Ethernet or fiber optic interface. The data storage 106 can be internal data storage of the system 100, such as a hard disk or SSD, but can also be external data storage, e.g., network-accessible data storage.

[0015] In some embodiments, the data storage 106 may further include a data representation 108 of an untrained version of the neural network, which the system 100 may access from the data storage 106. However, it should be understood that the training data 102 and the data representation 108 of the untrained neural network may also be accessed from another data storage, e.g., via another subsystem of the data storage interface 104. Each subsystem may be of a type described above for the data storage interface 104. In other embodiments, the data representation 108 of the untrained neural network may be generated internally by the system 100 based on design parameters for the neural network and may therefore not be explicitly stored in the data storage 106.The system 100 may further include a processor subsystem 110, which, during operation of the system 100, may be configured to provide an iterative function as a replacement for a stack of layers of the neural network to be trained. Respective layers of the stack of layers being replaced may have shared weights among each other and may receive as input an output of a previous layer or, for a first layer of the stack of layers, an initial activation and a portion of the input of the stack of layers. The processor subsystem 110 may further be configured to iteratively train the neural network using the training data 102. An iteration of the training by the processor subsystem 110 may include a forward propagation part and a backward propagation part.The processor subsystem 110 may be configured to perform the forward propagation portion, among other operations defining the forward propagation portion that may be performed, by determining an equilibrium point of the iterative function at which the iterative function converges to a fixed point, wherein determining the equilibrium point comprises using a numerical root-finding algorithm to find a root solution for the iterative function minus its input, and by providing the equilibrium point as a substitute for an output of the stack of layers in the neural network. The system 100 may further include an output interface for outputting a data representation 112 of the trained neural network; this data may also be referred to as trained model data 112. For example, as also shown in FIG. Fig. 1, the output interface may be formed by the data storage interface 104, which in these embodiments is an input / output (IO) interface, via which the trained model data 112 may be stored in the data storage 106. The data representation 108 defining the "untrained" neural network may, for example, be at least partially replaced during or after training by the data representation 112 of the trained neural network, in that the parameters of the neural network, such as weights, hyperparameters, and other types of neural network parameters, may be adjusted to reflect the training on the training data 102. This is also shown in Fig. 1 with reference numerals 108, 112, which refer to the same data recording in data storage 106. In other embodiments, data representation 112 may be stored separately from the data representation 108 defining the "untrained" neural network. In some embodiments, the output interface may be separate from data storage interface 104, but may generally be of a type as described above for data storage interface 104.

[0016] The structure of system 100 is an example of a system that can be used to train the machine learning model described herein. Additional structure for operating and training these machine learning models is described in Fig. 2 shown.

[0017] Fig. 2 shows a system 200 for implementing the machine learning models described herein. The system 200 can be implemented to predict various future geometries using a diffusion model as described herein. The system 200 can include at least one data processing system 202. The data processing system 202 can include at least one processor 204 operatively connected to a memory unit 208. The processor 204 can include one or more integrated circuits implementing the functionality of a CPU (central processing unit) 206. The CPU 206 can be a commercially available processing unit implementing an instruction set, such as one of the x86, ARM, Power, or MIPS instruction set families. During operation, the CPU 206 can execute stored program instructions retrieved from the memory unit 208.The stored program instructions may include software that controls the operation of the CPU 206 to perform the operation described herein. In some examples, the processor 204 may be a system on a chip (SoC) that integrates the functionality of the CPU 206, the memory unit 208, a network interface, and input / output interfaces into a single integrated device. The data processing system 202 may implement an operating system to manage various aspects of operation. While in . Fig. 2 a processor 204, a CPU 206 and a memory 208 are shown, more than one of these can of course be used in an overall system.

[0018] The storage unit 208 may include volatile memory and non-volatile memory for storing instructions and data. The non-volatile memory may include solid-state memory, such as NAND flash memory, magnetic and optical storage media, or any other suitable data storage device that retains data when the data processing system 202 is disabled or disconnected from power. The volatile memory may include static and dynamic random access memory (RAM) that stores program instructions and data. For example, the storage unit 208 may store a machine learning model 210 or algorithm, a training dataset 212 for the machine learning model 210, and raw source dataset 216.

[0019] The data processing system 202 may include a network interface device 222 configured to provide communication with external systems and devices. For example, the network interface device 222 may include a wired and / or wireless Ethernet interface according to the Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards. The network interface device 222 may include a cellular communication interface for communicating with a cellular network (e.g., 3G, 4G, 5G). The network interface device 222 may further be configured to provide a communication interface for an external network 224 or a cloud.

[0020] The external network 224 may be referred to as the World Wide Web or the Internet. The external network 224 may establish a standard communication protocol between computing devices. The external network 224 may enable information and data to be easily exchanged between computing devices and networks. One or more servers 230 may be in communication with the external network 224.

[0021] Data processing system 202 may include an input / output (I / O) interface 220, which may be configured to provide digital and / or analog inputs and outputs. I / O interface 220 is used to transfer information between internal storage and external input and / or output devices (e.g., HMI devices). I / O interface 220 may include dedicated circuitry or bus networks for transferring information to or between the processor(s) and storage. For example, I / O interface 220 may include digital I / O logic lines that can be read or set by the processor(s), handshake lines for overseeing data transfer over the I / O lines, timing and counting devices, and other known structures for providing such functions. Examples of input devices include a keyboard, a mouse, sensors, etc.Examples of output devices would be monitors, printers, speakers, etc. The I / O interface 220 may include additional serial interfaces for communication with external devices (e.g., a Universal Serial Bus (USB) interface).

[0022] The data processing system 202 may include a human-machine interface (HMI) device 218, which may include any device that enables the system 200 to receive control inputs. Examples of input devices would be human interface inputs such as keyboards, mice, touchscreens, voice input devices, and other similar devices. The data processing system 202 may include a display device 232. The data processing system 202 may include hardware and software for outputting graphic and text information to the display device 232. The display device 232 may include an electronic display screen, a projector, a printer, or other suitable device for displaying information to a user or operator.The data processing system 202 may be further configured to allow interaction with remote HMI and remote display devices via the network interface device 222.

[0023] System 200 may be implemented using one or more data processing systems. While the example shows a single data processing system 202 implementing all of the described features, it is contemplated that various features and functions may be separated and implemented by multiple, communicating data processing units. The specific system architecture selected will depend on a variety of factors.

[0024] The system 200 may implement a machine learning algorithm 210 configured to analyze the raw source data set 216. The raw source data set 216 may include raw or unprocessed sensor data that may represent an input data set for a machine learning system. The raw source data set 216 may include video, video segments, images, text-based information, audio or human speech, time series data (e.g., pressure sensor signal over time or time-stamped video data), and raw or partially processed sensor data (e.g., radar map of objects). With reference to Fig. Several different examples of inputs are shown and described in Figures 5-11. In some examples, the machine learning algorithm 210 may be a neural network algorithm (e.g., deep neural network) configured to perform a predetermined function. For example, in automotive applications, the neural network algorithm may be configured to identify traffic signs or pedestrians in images. The machine learning algorithm(s) 210 may include algorithms configured to run the models described herein.

[0025] The computer system 200 may store a training dataset 212 for the machine learning algorithm 210. The training dataset 212 may represent a set of previously created data for training the machine learning algorithm 210. The training dataset 212 may be used by the machine learning algorithm 210 to learn weighting factors associated with a neural network algorithm. The training dataset 212 may include a set of source data having corresponding outcomes or results that the machine learning algorithm 210 attempts to duplicate through the learning process. In this example, the training dataset 212 may include input images including an object (e.g., a road sign). The input images may include various scenarios in which the objects are identified.

[0026] The machine learning algorithm 210 may operate in a learning mode using the training dataset 212 as input. The machine learning algorithm 210 may be executed using the data from the training dataset 212 over a series of iterations. During each iteration, the machine learning algorithm 210 may update internal weighting factors based on the results obtained. For example, the machine learning algorithm 210 may compare output results (e.g., a reconstructed or augmented image if image data is the input) with those contained in the training dataset 212. Because the training dataset 212 includes the expected results, the machine learning algorithm 210 may determine when performance is acceptable. After the machine learning algorithm 210 has achieved a predetermined performance level (e.g.,Once the machine learning algorithm 210 has achieved a certain agreement (e.g., 100% agreement with the results associated with the training dataset 212) or convergence, the machine learning algorithm 210 may be executed using data not included in the training dataset 212. It should be understood that "convergence" in this disclosure may mean that a fixed (e.g., predetermined) number of iterations has occurred, or that the residue is sufficiently small (e.g., the change in the approximate probability over iterations changes by less than a threshold), or other convergence conditions. The trained machine learning algorithm 210 may be applied to new datasets to generate annotated data.

[0027] The machine learning algorithm 210 may be configured to identify a specific feature in the raw source data 216. The raw source data 216 may include a plurality of instances or an input data set for which supplementary results are desired. For example, the machine learning algorithm 210 may be configured to detect the presence of a road sign in video images and annotate the incidents. The machine learning algorithm 210 may be programmed to process the raw source data 216 to identify the presence of the specific features. The machine learning algorithm 210 may be configured to identify a feature in the raw source data 216 as a predetermined feature (e.g., a road sign). The raw source data 216 may be derived from a variety of sources. The raw source data 216 may be derived from a variety of sources.For example, the raw source data 216 may be actual input data collected by a machine learning system. The raw source data 216 may be machine-generated for testing the system. For example, the raw source data 216 may include raw video images from a camera. The raw source data 216 may include query input from a user or an automated source, such as a document.

[0028] Fig. Figure 3 shows a high-level overview of an exemplary embodiment of a framework. The system may include a search engine 301 or an exemplar search engine 301. Given a pool of potential exemplars and a target task, the system may compute textual similarity scores between each exemplar and the target task. Specifically, the system may encode the text of questions and reasoning chains using a pre-trained transformer model. The system may then compute the cosine similarity between the encoder outputs of the exemplars and the target task. This may provide similarity scores that represent how relevant each exemplar is to the downstream task. The system may select the top-k highest-scoring exemplars according to this similarity metric for use as the few-trial exemplars in our prompt.

[0029] The system 300 may also include domain knowledge enhancement 303. When a question or requirement for performing domain-specific data analysis is given, LLMS may require additional knowledge in the specific domain, such as an explanation of the definition of a data operation terminology or concrete instructions. Human experts can easily provide such additional information. However, human experts may be inexperienced with LLMS and lack knowledge of rapid technical methods such as CoT (Chain of Thought). Similar to Automatic CoT and Plan-and-Solve, the present embodiment may first dynamically enhance the domain knowledge provided by human experts and format it as step-by-step instructions. The enhancement may be based on the user input of domain knowledge (via user query) or may come from document retrieval, such asa user manual (in one example). Domain experts can modify the variants and then select one for the next step.

[0030] The system can also utilize original domain knowledge. The scalability indicator is a measurement that considers the ratio of the number of factories to the number of sales outlets. A higher scalability indicator means a manufacturer has greater ability to expand the market.

[0031] An example may include an improved version. The "Scalability Indicator" can be calculated using a metric derived from a ratio of the total number of production facilities (factories) to the total number of outlets (stores). It can serve as a measure of a manufacturing entity's ability to expand its market reach. A higher "Scalability Indicator" may mean that the manufacturer has greater production capacity relative to its retail presence. This can be interpreted to mean that the manufacturer has the potential to increase its outlets and expand its market without being limited by production capacity. For example, the system can calculate the total number of unique tracks (Track_ID) in 'df'1 (which can represent the total number of "factories").In step (2), the system can calculate the total number of unique races (Race_ID) in "df0" (this can represent the total number of "shops"). In step (3), the system can calculate the "Scalability Indicator" by dividing the total number of unique tracks by the total number of unique races.

[0032] DomainDA can be built on a framework, such as the ReAct framework, which the agent can iterate by generating reasoning trajectories and executing actions, following the steps "Thought:... Action:... Observation:..." The subagent 305 can consist of various modules. Some of the modules can include a data profiler 307, a prompt manager 309, and an executor 311.

[0033] The data profiler 307 can be used to provide contextual information about a data set. This can help prevent or mitigate hallucinations. Data summarization can greatly reduce the error rate for data visualization tasks. The system can extract table data properties such as the number of rows and columns, data types (e.g., integer, string, Boolean), general statistics (min, max, unique values), and multiple random rows.

[0034] The prompt manager 309 can organize the prompts, such as the objective, ReAct framework, browsed exemplars, domain knowledge, and questions. The initial prompt can have three main sections: (1) Preamble, which describes the background and objective of the task; (2) Data Profile, a detailed description of tables; (3) Exemplifications; (4) Domain knowledge and question.

[0035] An exemplar can refer to a specific instance or example within a dataset, representing a particular class or category. Exemplifications play a crucial role in various machine learning tasks, particularly supervised learning, where models are trained to recognize patterns or make predictions based on labeled data. For example, in a classification problem where the goal is to classify images of animals into different categories, such as "cat," "dog," or "bird," each image of a cat, dog, or bird would be considered an exemplar. These exemplars serve as the basis for the model to learn the distinguishing features or patterns associated with each class.Instances can also be used in unsupervised learning, where the task is to identify patterns or clusters in data without labeled examples. In this context, executors can represent individual data points or centroids of clusters, which helps summarize and understand the underlying structure of the data. Overall, executors are primitives in machine learning algorithms, as they provide the basis for learning and generalizing from data. An executor can also refer to a component responsible for performing inference tasks, where the model generates text based on prompts. Executors, in this context, would handle the computational workload of processing input data using the language model and producing the corresponding output.

[0036] Executor 311 may be an execution pipeline using the ReAct framework, where the LLM is requested to generate reasoning trajectories and actions. Environmental observations are returned to the LLM to generate the next response. In the system and method, in one embodiment, the action may be Python code execution, and the observation is the execution output of the error. Executor 311 may perform tasks as part of the job. While the ReAct framework is an example of an embodiment of a framework that may be used, other frameworks may also be used.

[0037] The system and method, in one embodiment, may have two modes. One mode may include an interactive mode. In the interactive mode, human users may be involved in at least one of the following activities: selecting instances, improving domain knowledge, and evaluating the results, thereby allowing human expertise to contribute to the data analysis process. The other mode may include an automatic mode. During the automatic mode, the agent can perform the workflows autonomously using language modeling techniques. Thus, no human interaction is necessary.

[0038] In one example, Emma might be a supervisor and data scientist. She might be responsible for monitoring the production line. She might notice that production on the final assembly line has recently declined, and she might want to review the cycle times of each station.

[0039] Emma can first collect some time series data that can be used in the analysis. After importing the data into the web app, she can provide input in the data context, e.g., "Each part has a unique part ID, it goes through the production line..." and specific information about the data she imported. For example, the specific information might be, "This file records the location and timestamp of each part as it passed through stations on a production line." This information can be used in the data profiler within the framework. A user interface can be associated with the system and procedure. Emma can enter the question, "Plot a bar chart of cycle times." She may have thought that adding an indicator for a target time would be helpful to identify stations that took longer than expected.Thus, she can add: "Display a bar chart of cycle times with a red horizontal line at 9.2 as the target time. Mark the stations above the target time in red." The system can begin searching for relevant analyses performed by other analysts. However, the system may not find a relevant analysis, so the default instance is used. The system can always have two manually created instances. Once the system has found relevant instances, users can review the question, code, execution results, insights, and comments from others. Users can select instances to use in the task. Upon selecting the instances, the system can search for internal documents related to questions posed by the user (e.g., Emma).It can only query a basic definition of cycle time—"Cycle time in manufacturing is the interval between an item reaching one station and the next." Recognizing the need for more comprehensive explanation of this concept, the user (e.g., Emma) may choose to expand on the information in the text area: "Enter the location results. Follow the steps below: 1. Collect stations and get all timestamps of parts on each station. 2. Calculate the intervals of each timestamp pair as cycle time for all stations; 3. Double check that all cycle times are greater than zero; otherwise the calculation is incorrect; 4. Remove outliers in cycle times using criteria such as two standard deviations from the median. 5. Return a list of cycle time objects, where each object includes the station ID, cycle time in seconds, timestamp, and subscriber type.

[0040] The user (e.g., Emma) may be able to select inputs through the "Improve Domain Knowledge" interface and receive three expanded versions. The user (e.g., Emma) can quickly review the entire version and determine that the first version is suitable. Emma can insert additional elements, such as the name of a presentation title, and click the "Confirm Edits and Run Analysis" input.

[0041] The user may wait for the results to appear. Different results tabs can be observed on the dashboard. Each tab can contain comprehensive information, including task status (e.g., successful, suspended, failed), self-assessed LLM score (range 0 to 1), visualizations (if applicable), code, and insights.

[0042] The user can carefully examine each result. Overall, she might determine that the first one most closely matched her expectations, especially because the diagram reflected her expected result and the code seemed correct. The user can rate the results as satisfactory (or not) across three key dimensions and then save them to the database.

[0043] Fig. 4 shows an embodiment of a prompt structure of a system message. Fig. 4 may include an example of a full request. As in Fig. As shown in Figure 4, there may be several different exemplars 403a, 403b, 403c used by the exemplar search engine. Each of the exemplars may include domain knowledge, a question, associated code, and various insights. The system may include prompts 401 to guide a user. The preamble, data profile, exemplars, domain knowledge, and question may be fed to the LLM to generate the prompt, searched exemplars, domain knowledge, and questions. The initial prompt may have three main sections: (1) Preamble, which describes the background and goal of the task; (2) Data profile, a detailed description of tables; (3) Exemplifiers; (4) Domain knowledge and question.

[0044] In one embodiment, the generated outputs can be stored as new instances for future reuse, thereby continuously enriching the pool of instances. These future instances can be stored in a database. The framework can comprise multiple workflows executable by the language modeling agent. The workflows can be selectively executed in a variety of modes. In an interactive mode, a human user or human users can be involved in at least one instance selection, improvement of domain knowledge, and evaluation of results. This allows human expertise to contribute to the data analysis process. In an automatic mode, the language modeling agent can perform the workflows autonomously.A web application that may be required in interactive mode, where a user can examine, select, and evaluate results generated by the framework. The data profile can briefly summarize metainformation regarding the task context and data. Along with a prompt manager that compiles information for LLM prompts and an iterative code execution pipeline, such a configuration would represent the use of the proposed invention.

[0045] The machine learning models described here can be used in many different applications, not only in the context of road sign image processing. Other applications where anomaly detection or classification can be used are described in Fig. 6-11. The structure used for training and using the machine learning models for these applications (and other applications) is shown in Fig. 5 exemplified. Fig. 5 shows a schematic representation of an interaction between a computer-controlled machine 500 and a control system 502. The computer-controlled machine 500 includes an actuator 504 and a sensor 506. The actuator 504 may include one or more actuators, and sensor 506 may include one or more sensors. The sensor 506 is configured to detect a state of the computer-controlled machine 500. The sensor 506 may be configured to encode the detected state into sensor signals 508 and transmit the sensor signals 508 to the control system 502. Non-limiting examples of the sensor 506 would be video, radar, LiDAR, ultrasonic, and motion sensors. In one implementation, the sensor 506 is an optical sensor configured to detect optical images of an environment proximate the computer-controlled machine 500.

[0046] The control system 502 is configured to receive sensor signals 508 from the computer-controlled machine 500. As explained below, the control system 502 may further be configured to calculate actuator control commands 510 depending on the sensor signals and to transmit the actuator control commands 510 to the actuator 504 of the computer-controlled machine 500.

[0047] As in Fig. 5, the control system 502 includes a receiving unit 512. The receiving unit 512 may be configured to receive the sensor signals 508 from the sensor 506 and to transform the sensor signals 508 into input signals x. In an alternative embodiment, the sensor signals 508 are received directly as input signals x without the receiving unit 512. Each input signal x may be a part of each sensor signal 508. The receiving unit 512 may be configured to process each sensor signal 508 to produce each input signal x. The input signal x may include data corresponding to an image recorded by the sensor 506.

[0048] The control system 502 includes a classifier 514. The classifier 514 may be configured to classify input signals x into one or more labels using a machine learning (ML) algorithm, such as a neural network described above. The classifier 514 is configured to be parameterized by parameters, such as those described above (e.g., parameter θ). Parameter θ may be stored in and provided by non-volatile storage 516. The classifier 514 is configured to determine output signals y based on input signals x. Each output signal y includes information that assigns one or more labels to each input signal x. The classifier 514 may transmit output signals y to the conversion unit 518. The conversion unit 518 is configured to convert output signals y into actuator control commands 510.The control system 502 is configured to transmit the actuator control commands 510 to the actuator 504, which is configured to actuate the computer-controlled machine 500 in response to the actuator control commands 510. In another embodiment, the actuator 504 is configured to actuate the computer-controlled machine 500 directly based on the output signals y.

[0049] Upon receipt of the actuator control commands 510 by the actuator 504, the actuator 504 is configured to perform an action corresponding to the associated actuator control command 510. The actuator 504 may include control logic configured to convert the actuator control commands 510 into a second actuator control command used to control the actuator 504. In one or more embodiments, the actuator control commands 510 may be used to control a display instead of or in addition to an actuator.

[0050] In another embodiment, the control system 502 includes the sensor 506 instead of or in addition to the computer-controlled machine 500 containing the sensor 506. The control system 502 may also include the actuator 504 instead of or in addition to the computer-controlled machine 500 containing the actuator 504.

[0051] As in Fig. 5, the control system 502 also includes a processor 520 and memory 522. The processor 520 may include one or more processors. The memory 522 may include one or more storage devices. The classifier 514 (e.g., machine learning algorithms such as those described above with respect to the pre-trained classifier 306) of one or more embodiments may be implemented by the control system 502, which includes the non-volatile storage 516, the processor 520, and the memory 522.

[0052] Non-volatile storage 516 may include one or more persistent data storage devices, such as a hard drive, an optical drive, a tape drive, a non-volatile solid-state device, cloud storage, or any other device capable of persistently storing information. Processor 520 may include one or more devices selected from high-performance computing (HPC) systems, including high-performance cores, microprocessors, microcontrollers, digital signal processors, microcomputers, central processing units, field-programmable gate arrays, programmable logic devices, state machines, logic circuits, analog circuits, digital circuits, or any other devices that manipulate (analog or digital) signals based on computer-executable instructions located in memory 522.The memory 522 may comprise a single memory device or a series of memory devices, including, but not limited to, random access memory (RAM), volatile memory, non-volatile memory, static random access memory (SRAM), dynamic random access memory (DRAM), flash memory, cache memory, or any other device capable of storing information.

[0053] The processor 520 may be configured to read into the memory 522 and execute computer-executable instructions located in the non-volatile storage 516 that implement one or more machine learning algorithms and / or methodologies of one or more embodiments. The non-volatile storage 516 may include one or more operating systems and applications. The non-volatile storage 516 may store compiled and / or interpreted computer programs created using a variety of programming languages ​​and / or technologies, including, among others, and either alone or in combination, Java, C, C++, C#, Objective-C, Fortran, Pascal, Java Script, Python, Perl, and PL / SQL.

[0054] When executed by processor 520, the computer-executable instructions of non-volatile storage 516 may cause control system 502 to implement one or more of the machine learning algorithms and / or methodologies disclosed herein. Non-volatile storage 516 may also include machine learning data (including data parameters) that support functions, features, and processes of one or more embodiments described herein.

[0055] The program code implementing the algorithms and / or methodologies described herein may be distributed individually or collectively in a variety of different forms as a program product. The program code may be distributed using a computer-readable storage medium having computer-readable program instructions thereon for causing a processor to perform aspects of one or more embodiments. Computer-readable storage media, which are inherently non-transitory, may include volatile and non-volatile, and removable and non-removable tangible media implemented in any method or technology for storing information, such as computer-readable instructions, data structures, program modules, or other data.Computer-readable storage media may further include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid-state storage technology, portable compact disc read-only memory (CD-ROM) or other optical storage, magnetic cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be read by a computer. Computer-readable program instructions may be downloaded from a computer-readable storage medium to a computer, other type of programmable data processing device, or other device, or over a network to an external computer or external storage device.

[0056] Computer-readable program instructions stored on a computer-readable medium may be used to instruct a computer, other types of programmable data processing equipment, or other devices to operate in a particular manner such that the instructions stored on the computer-readable medium produce an article of manufacture including instructions that implement the functions, acts, and / or operations specified in the flowcharts or diagrams. In certain alternative embodiments, the functions, acts, and / or operations specified in the flowcharts and diagrams may be reordered, processed serially, and / or processed concurrently in accordance with one or more embodiments.Additionally, any of the flowcharts and / or diagrams may include more or fewer nodes or blocks than those illustrated in accordance with one or more embodiments.

[0057] The processes, methods or algorithms may be implemented in whole or in part using suitable hardware components, such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), automatons, controllers or other hardware components or devices, or a combination of hardware, software and firmware components.

[0058] Fig. 6 shows a schematic representation of the control system 502 configured to control a vehicle 600, which may be an at least partially autonomous vehicle or an at least partially autonomous robot. The vehicle 600 includes an actuator 504 and a sensor 506. The sensor 506 may include one or more video sensors, cameras, radar sensors, ultrasonic sensors, LiDAR sensors, and / or position sensors (e.g., GPS). One or more of the one or more specific sensors may be integrated into the vehicle 600. [please translate 20 / 0070 / 3-6]. A non-limiting example of a software module would be a weather information software module configured to determine a current or future state of the weather in the vicinity of the vehicle 600 or another location.

[0059] The classifier 514 of the control system 502 of the vehicle 600 may be configured to detect objects in the vicinity of the vehicle 600 based on input signals x. In such an embodiment, the output signal y may include information characterizing the surroundings of objects of the vehicle 600. The actuator control command 510 may be determined based on this information. The actuator control command 510 may be used to avoid collisions with the detected objects.

[0060] In embodiments where the vehicle 600 is an at least partially autonomous vehicle, the actuator 504 may be implemented in a brake, a drive system, an engine, a powertrain, or a steering system of the vehicle 600. Actuator control commands 510 may be determined such that the actuator 504 is controlled such that the vehicle 600 avoids collisions with detected objects. Detected objects may also be classified according to what the classifier 514 considers them most likely to be, for example, pedestrians or trees. The actuator control commands 510 may be determined depending on the classification. In a scenario where an adversary attack could occur, the system described above may be further trained to better detect objects or to identify a change in lighting conditions or an angle for a sensor or camera on the vehicle 600.

[0061] In other embodiments where the vehicle 600 is an at least partially autonomous robot, the vehicle 600 may be a mobile robot configured to perform one or more functions, such as flying, swimming, diving, and walking. The mobile robot may be an at least partially autonomous lawnmower or an at least partially autonomous cleaning robot. In such embodiments, the actuator control command 510 may be determined such that a drive unit, a steering unit, and / or a braking unit of the mobile robot may be controlled such that the mobile robot can avoid collisions with identified objects.

[0062] In another embodiment, the vehicle 600 is an at least partially autonomous robot in the form of a gardening robot. In such an embodiment, the vehicle 600 may use an optical sensor as the sensor 506 to determine a condition of plants in an environment near the vehicle 600. The actuator 504 may be a nozzle configured to spray chemicals. Depending on an identified species and / or condition of the plants, the actuator control command 510 may be determined to cause the actuator 504 to spray the plants with an appropriate amount of appropriate chemicals and generate code for this based on an embodiment of the disclosure.

[0063] The vehicle 600 may be an at least partially autonomous robot in the form of a household appliance. Non-limiting examples of household appliances include a washing machine, a stove, an oven, a microwave, or a dishwasher. In such a vehicle 600, the sensor 506 may be an optical sensor configured to detect a condition of an object to be processed by the household appliance. For example, if the household appliance is a washing machine, the sensor 506 may detect a condition of the laundry in the washing machine. The actuator control command 510 may be determined based on the detected condition of the laundry.

[0064] Fig. Figure 7 shows a schematic representation of control system 502 configured to control a system 700 (e.g., manufacturing machine), such as a punch-cutting device, a cutting device, or a gun drill, of a manufacturing system 702, such as part of a production line. Control system 502 may be configured to control an actuator 504 configured to control system 700 (e.g., manufacturing machine).

[0065] The sensor 506 of the system 700 (e.g., manufacturing machine) may be an optical sensor configured to detect one or more characteristics of a piece of work 704. The classifier 514 may be configured to determine a state of the piece of work 704 from one or more of the detected characteristics. The actuator 504 may be configured to control the system 700 (e.g., the manufacturing machine) for a subsequent manufacturing step of the piece of work 704 depending on the determined state of the piece of work 704. The actuator 504 may be configured to control functions of the system 700 (e.g., manufacturing machine) at a next piece of work 106 of the system 700 (e.g., manufacturing machine) depending on the predicted state of the piece of work 704.

[0066] Fig. Figure 8 shows a schematic diagram of a control system 502 configured to control a power tool 800, such as a drill or a cordless screwdriver, having an at least partially autonomous mode. The control system 502 may be configured to control an actuator 504 configured to control the power tool 800.

[0067] The sensor 506 of the power tool 800 may be an optical sensor configured to detect one or more characteristics of the work surface 802 and / or the fastener 804 driven into the work surface 802. The classifier 514 may be configured to determine a condition of the work surface 802 and / or the fastener 804 relative to the work surface 802 from one or more of the detected characteristics. The condition may be that the fastener 804 is flush with the work surface 802. Alternatively, the condition may be the hardness of the work surface 802.The actuator 504 may be configured to control the power tool 800 such that the drive function of the power tool 800 is adjusted depending on the determined state of the fixture 804 relative to the work surface 802 or one or more sensed properties of the work surface 802. For example, the actuator 504 may stop the drive function when the state of the fixture 804 relative to the work surface 802 is flush. As another non-limiting example, the actuator 504 may apply more or less torque depending on the hardness of the work surface 802.

[0068] Fig. 9 shows a schematic representation of the control system 502 configured to control an automated personal assistant 900. The control system 502 may be configured to control the actuator 504 configured to control the automated personal assistant 900. The automated personal assistant 900 may be configured to control a household appliance, such as a washing machine, a stove, an oven, a microwave, or a dishwasher.

[0069] Sensor 506 may be an optical sensor and / or an audio sensor. The optical sensor may be configured to receive video images of gestures 904 from user 902. The audio sensor may be configured to receive a voice command from user 902.

[0070] The control system 502 of the automated personal assistant 900 may be configured to determine actuator control commands 510 configured to control the system 502. The control system 502 may be configured to determine actuator control commands 510 according to sensor signals 508 from the sensor 506. The automated personal assistant 900 is configured to transmit sensor signals 508 to the control system 502. The classifier 514 of the control system 502 may be configured to execute a gesture recognition algorithm to identify a gesture 904 of the user 902, to determine actuator control commands 510, and to transmit the actuator control commands 510 to the actuator 504. The classifier 514 may be configured to retrieve information from the non-volatile storage in response to the gesture 904 and output the retrieved information in a form suitable for receipt by the user 902.

[0071] Fig. Figure 10 shows a schematic representation of control system 502 configured to control a surveillance system 1000. Surveillance system 1000 may be configured to physically control access through a door 1002. Sensor 506 may be configured to detect a scene relevant to determining whether to grant access. Sensor 506 may be an optical sensor configured to generate and transmit image and / or video data. Such data may be used by control system 502 to detect a person's face.

[0072] The classifier 514 of the control system 502 of the surveillance system 1000 may be configured to interpret the image and / or video data by comparing it with identities of known individuals stored in the non-volatile storage 516 to thereby determine an individual's identity. The classifier 514 may be configured to generate an actuator control command 510 in response to the interpretation of the image and / or video data. The control system 502 is configured to transmit the actuator control command 510 to the actuator 504. In this embodiment, the actuator 504 may be configured to lock or unlock the door 1002 in response to the actuator control command 510. In other embodiments, non-physical, logical access control is also possible.

[0073] The surveillance system 1000 may also be an observation system. In such an embodiment, the sensor 506 may be an optical sensor configured to detect an observed scene, and the control system 502 is configured to control the display 1004. The classifier 514 is configured to determine a classification of a scene, e.g., whether the scene detected by the sensor 506 is suspicious. The control system 502 is configured to transmit an actuator control command 510 to the display 1004 in response to the classification. The display 1004 may be configured to adjust the displayed content in response to the actuator control command 510. For example, the display 1004 may highlight an object deemed suspicious by the classifier 514.Using an embodiment of the disclosed system, the observation system can predict objects that will appear at certain times in the future based on some code generated with the help of a domain expert.

[0074] Fig.11 shows a schematic representation of the control system 502, which is configured to control an imaging system 1100, for example, an MRI machine, an X-ray machine, or an ultrasound machine. The sensor 506 can be, for example, an imaging sensor. The classifier 514 can be configured to determine a classification of all or a portion of the acquired image. The classifier 514 can be configured to determine or select an actuator control command 510 in response to the classification obtained by the trained neural network. For example, the classifier 514 can interpret a region of an acquired image based on software code generated using documentation from a domain expert or a domain expert. In this case, the actuator control command 510 can be determined or selected to cause the display 1102 to display the imaging and generate code from an LLM.

[0075] Although exemplary embodiments are described above, these embodiments are not intended to describe all possible forms encompassed by the claims. The terms used in the specification are terms of description rather than limitation, and it is understood that various changes may be made without departing from the spirit and scope of the disclosure. As described above, the features of various embodiments may be combined to form further embodiments of the invention that may not be explicitly described or illustrated.Although various embodiments may have been described as providing advantages or being preferred over other embodiments or prior art implementations with respect to one or more desired characteristics, those of ordinary skill in the art will recognize that one or more features or characteristics may be compromised to achieve desired overall system attributes depending on the particular application and implementation. These attributes may include, but are not limited to, cost, strength, durability, life cycle cost, marketability, appearance, packaging, size, maintainability, weight, manufacturability, ease of assembly, etc.Accordingly, where embodiments are described as being less desirable than other embodiments or prior art implementations with respect to one or more characteristics, those embodiments are not outside the scope of the disclosure and may be desirable for certain applications.

Claims

[1] A method for generating data for machine learning or ML models, the method comprising: Receiving data indicating a request associated with a task representative of a domain, wherein the task comprises generated executable software code; Receiving data specifying one or more descriptions associated with the domain; Receiving one or more instances associated with the data specifying the query response for an instance search engine that performs a search using the data specifying the query; Using both the one or more instances and the data indicating one or more descriptions associated with the domain in a large language model LLM to generate a plurality of results comprising executable software code, the plurality of results being further generated using a data profiler, a prompt manager using the data indicating one or more descriptions associated with the domain, and an executor configured to execute the executable software code; Outputting a plurality of results associated with the executable software code, wherein the plurality of results comprises one or more confidence ratings associated with the plurality of results; and Storing the one or more results in the database in response to a selection input. [2] The method of claim 1, wherein the method comprises activating either an interactive mode or an automatic mode. [3] The method of claim 1, wherein the executable software code is written in one or more programming languages, including, but not limited to, Python. [4] The method of claim 1, wherein receiving data indicating one or more descriptions associated with the domain is derived either from user input or a manual including information missing from the LLM. [5] The method of claim 1, wherein the method comprises using an auto-debugger on the executable software code. [6] The method of claim 1, wherein the database is adapted to allow contributions from any user and to provide access to use for any user. [7] The method of claim 1, wherein the database is stored in a cloud-based service platform and / or an internal local server system, the cloud-based service platform being configured to provide scalable and distributed database services. [8] The method of claim 1, wherein the request manager uses a ReAct framework. [9] System comprising: a processor programmed to Receiving data indicating a request associated with a task representative of a domain, wherein the task comprises generated executable software code; Receiving data specifying one or more descriptions associated with the domain; Receiving one or more copies associated with the data, which specify the query in response to an instance search engine performing a search using the data specifying the query; Using both the one or more instances and the data indicating one or more descriptions associated with the domain in a large language model LLM to generate a plurality of results comprising executable software code, the plurality of results being further generated using a data profiler, a prompt manager using the data indicating one or more descriptions associated with the domain, and an executor configured to execute the executable software code; Outputting a plurality of results associated with the executable software code, the plurality of results comprising one or more confidence ratings associated with the plurality of results; and storing the one or more results in the database in response to a selection input. [10] The system of claim 9, wherein the prompt manager uses a ReAct framework. [11] The system of claim 9, wherein the system comprises an automatic mode and an interactive mode. [12] The system of claim 11, wherein the automatic mode is configured to operate the system autonomously and without human interaction. [13] The system of claim 11, wherein the interactive mode is configured to issue queries associated with selecting an instance or evaluating multiple results. [14] The system of claim 9, wherein the plurality of results are stored in the database as future instances accessible to the instance search engine. [15] The system of claim 9, wherein the method comprises using a data profiler configured to use data indicative of context information associated with the domain. [16] The system of claim 9, wherein the database is adapted to allow contributions from any user and to provide access to use for any user. [17] A method using a machine learning or ML model, the method comprising: Receiving data indicating a request associated with a task representative of a domain, the task comprising generated executable software code associated with the domain; Receiving data specifying one or more descriptions associated with the domain; Receiving one or more instances associated with the data specifying the query response for an instance search engine that performs a search using the data specifying the query; Using both the one or more instances and the data indicating one or more descriptions associated with the domain in a large language model LLM to generate a plurality of results comprising executable software code, wherein the plurality of results comprising the executable software code are further generated using a data profiler, a prompt manager using the data indicating one or more descriptions associated with the domain, and an executor configured to execute the executable software code; Outputting a plurality of results comprising the executable software code, wherein the plurality of results comprises one or more confidence ratings associated with the plurality of results; and Storing the one or more results in the database in response to a selection input. [18] The method of claim 17, wherein the method comprises receiving the data indicating one or more descriptions associated with the domain. [19] The method of claim 17, wherein the data profiler is configured to use tabular data indicating context information associated with the data specifying a query. [20] The method of claim 17, wherein the solicitation manager is configured to organize a preamble, a data profile, and the one or more instances.