Intelligent monitoring of material flows
The use of a data-driven model for generating operation instructions addresses the challenge of managing material flows in chemical production environments, ensuring efficient and safe monitoring and control through natural language interaction.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-12
- Publication Date
- 2026-03-19
AI Technical Summary
Managing material flows in large-scale, distributed chemical production environments is challenging due to the complexity and safety requirements, necessitating efficient and reliable monitoring and control systems that integrate with high safety standards.
A method and apparatus utilizing a general-purpose data-driven model trained on unstructured natural language data to generate operation instructions for monitoring and controlling material flows, enabling interaction through natural language and ensuring reliable and safe operation.
Facilitates efficient, safe, and reliable handling of materials across supply chain operations by providing real-time, targeted insights and actions based on operations tracking data, enhancing operator interaction and ensuring valid information retrieval.
Smart Images

Figure EP2025076080_19032026_PF_FP_ABST
Abstract
Description
[0001] INTELLIGENT MONITORING OF MATERIAL FLOWS
[0002] TECHNICAL FIELD
[0003] The present disclosure relates to the intelligent monitoring of chemical products using large language models. Disclosed are methods, apparatuses, systems for monitoring and / or controlling material flows of a distributed chemical production environment to enhance handling of materials across supply chain operations.
[0004] TECHNICAL BACKGROUND
[0005] Distributed production environments, such as chemical production environments, are large scale networks producing multiple thousands of chemical products. Managing material or product flows from supply of input material for production of output material to providing of produced output material for further downstream production is challenging. Particularly the chemical environment has high safety standards and modern technologies allow for enhancing reliable and safe operation. However, utilizing modern technologies like natural language processing or large language models in such a safety critical environment requires technical implementations that comply with established high standards.
[0006] SUMMARY OF THE INVENTION
[0007] In one aspect disclosed is a method for monitoring and / or controlling a production environment, such as a chemical production environment, including distributed systems for tracking material flows of the production environment, such as a chemical production environment, the method comprising the steps: providing at least one user instruction and one or more instruction templates relating to monitoring and / or controlling of material flows; selecting one or more instruction template(s) based on the user instruction; generating based on the one or more selected instruction template(s) one or more instruction(s) including at least one task instruction related to the monitoring and / or controlling of material flows; generating at least one operation instruction for monitoring and / or controlling of material flow by providing the one or more generated instruction(s) to a general-purpose data-driven model, wherein the data-driven model is trained on unstructured natural language data and is configured to process natural language; providing the at least one operation instruction for monitoring and / or controlling the production environment, such as a chemical production environment.
[0008] In another aspect disclosed is an apparatus for monitoring and / or controlling a production environment, such as a chemical production environment, including distributed systems for tracking material flows of the production environment, such as a chemical production environment, the apparatus comprising: a template store configured to provide at least one user instruction and one or more instruction templates relating to monitoring and / or controlling of material flows; a selection engine configured to select one or more instruction templates based on the user instruction; an instruction engine configured to generate one or more instruction(s) including at least one task instruction related to the monitoring and / or controlling of material flows and configured to generate at least one operation instruction for monitoring and / or controlling of material flows by providing the one or more generated instruc- tion(s) to a general-purpose data-driven model, wherein the data-driven model is trained on unstructured natural language data and is configured to process natural language; monitoring and / or controlling engine configured to provide the at least one operation instruction for monitoring and / or controlling the production environment, such as a chemical production environment.
[0009] In another aspect disclosed is use of the operation instruction generated according to the methods disclosed herein or by the apparatuses disclosed herein for displaying monitoring and / or controlling instructions to an operator of the production environment, such as a chemical production environment, and / or at least one of the distributed systems for tracking material flows of the production environment, such as a chemical production environment, and / or for monitoring and / or controlling at least one of the distributed systems for tracking material flows of the production environment, such as a chemical production environment.
[0010] In another aspect disclosed is computer element with instructions, which when executed by a computing apparatus perform the steps according to the methods or as provided by the apparatuses disclosed herein.
[0011] EMBODIMENTS
[0012] Any disclosure and embodiments described herein relate to the methods, the apparatuses, the systems, the uses, the formulations, and the computer elements lined out above and below and vice versa. Advantageously, the benefits provided by any of the embodiments and examples equally apply to all other embodiments and examples.
[0013] In the following, embodiments of the present disclosure will be outlined by ways of embodiments and / or example. It is to be understood that the present disclosure is not limited to said embodiments and / or examples. All terms and definitions used herein are understood broadly and have their general meaning.
[0014] The methods, the apparatuses, the systems, the uses, and the computer elements disclosed herein provide an efficient, safe and reliable way for handling of materials across supply chain operations of a distributed production environment, such as a chemical production environment. Through simple and convenient interaction with a natural language enabled system, operations data of the distributed production environment can be made accessible in a targeted manner to operators monitoring and / or controlling the material flows. By feeding an interactive and data-driven interface in real time, the operators can retrieve any information deducible from operations tracking data, such as status information, operation instructions, aggregated monitoring indicators or the like, in a targeted manner and / or operation instructions may be provided. Moreover, by enabling the retrieval through natural language interactions and fully dependent on the operator input, the system allows for efficient and up-to-date insight retrieval based on the operations tracking data. Lastly, by using retrieval augmented generation mechanism in connection with enhanced instruction logics reliable and safe operation can be ensured. In other words, a reliable talk-to-data & documents functionality may be provided to operators, simplifying monitoring and / or controlling of material flows and ensuring valid plus traceable information retrieval.
[0015] Monitoring, controlling and / or tracking a production environment, such as a chemical production environment, including distributed systems for tracking material flows of the production environment may relate to any operation related to physical material flow and executed or to be executed in the production environment. Monitoring, controlling and / or tracking material flows of the distributed production environment may include monitor, controlling and / or tracking of input material flows to the distributed production environment, production of the distributed production environment, material flows, such as material transportation and / or storage, inside the distributed production environment and / or output material flows exiting the distributed production environment.
[0016] User instruction relating to monitoring and / or controlling of material flows may relate to any instruction in natural language or text relating to monitoring and / or controlling of material flows such as a question relating to monitoring and / or controlling of material flows as provided by a user. The user instruction may be pre-processed depending on the modality of the instruction. E.g. if the user instruction is provided in speech or audio modality the user instruction may be converted from speech to text. The user instruction may be provided by an operator of the distributed production environment. The user instruction may be embedded by mapping at least part of the user instruction in natural language to a numeric representation. The numeric representation may also be referred to as embedding.
[0017] Instruction or prompt template relating to monitoring and / or controlling of material flows may relate to any instruction in natural language or text relating to monitoring and / or controlling of material flows and / or to the generation of one or more operation instruction(s). The instruction or prompt template may include instruction(s) in natural language and placeholders to be inserted that may relate to the user instruction, to monitoring and / or controlling of material flows and / or to the generation of one or more operation instruction(s). The instruction or prompt template may include instruction® in natural language and placeholders to be inserted that may relate to data stored in one or more data storages such as data sink(s) e.g. operations tracking data.
[0018] Selecting one or more instruction template(s) based on the user instruction may include the selection of one or more predefined instruction template(s). The predefined instruction template(s) may be stored as text in natural language format and / or as numeric representations of the natural language version. The predefined instruction template(s) may be retrieved as text in natural language format and / or as embedding(s) in numerical format. The user instruction may be embedded by mapping of at least part of the user instruction in natural language to a numeric representation of at least part of the user instruction. The numeric representation may also be referred to as embedding. The instruction template(s) may relate to one or more instruction types. The instruction type may relate to identification of data, access to data, selection of machine-readable instructions and / or execution of machine-readable instruction. The instruction template(s) and / or the template instruction type(s) may be provided in natural language and / or as numeric representations of the natural language version. The instruction template(s) and / or the template instruction type(s) may be mapped in at least part from natural language or text to a numeric representation of at least part of the instruction template(s) and / or the template instruction type(s). In one embodiment for selection of the instruction template(s) the embedding of the user instruction and the embedding of the instruction template(s) and / or type(s) may be compared. The similarity between respective embeddings of the user instruction and the embedding of the instruction template(s) and / or type(s) may be determined. The similarity may be based on any similarity measure known in the art such as Euclidian od cos similarity measures. The embedded instruction template(s) with the lowest distance to the embedded user instruction may be selected. In another embodiment, instructions(s) may be generated including at least in part a task instruction to select one instruction template and / or the template instruction types based on the user instruction. The generated instruction(s) may be embedded by mapping in at least part from natural language or text to a numeric representation of at least part of the instruction(s). The generated instruction(s) or the embedded instruction(s) may be provided to the data-driven model, such as the general-purpose data driven model. The data-driven model, such as the general-purpose data driven model may be configured to provide the selected template instruction.
[0019] Task instruction related to the monitoring and / or controlling of material flows may relate to at least one task to be executed by the general-purpose data driven model. The task instruction may be provided as text in natural language format and / or as numeric representations of the natural language version. The task instruction may be retrieved as text in natural language format and / or as embedding(s) in numerical format. The task instruction may be embedded by mapping of at least part of the task instruction in natural language to a numeric representation of at least part of the task instruction. The task instruction may be included in the instruction template. The task instruction may be selected and inserted into the instruction template. The task instruction may be stored as text in natural language format and / or as numeric representations of the natural language version. The task instruction may be retrieved as text in natural language format and / or as embedding(s) in numerical format. The user instruction may be embedded by mapping of at least part of the user instruction in natural language to a numeric representation of at least part of the user instruction. The numeric representation may also be referred to as embedding. The task instruction may be provided in natural language and / or as numeric representations of the natural language version. The task instruction may be mapped in at least part from natural language or text to a numeric representation of at least part of the task instruction. In one embodiment for selection of the task instruction the embedding of the user instruction and the embedding of the task instruction may be compared. The similarity between respective embeddings of the user instruction and the embedding of the task instruction may be determined. The similarity may be based on any similarity measure known in the art such as Euclidian od cos similarity measures. The embedded task instruction with the lowest distance to the embedded user instruction may be selected. In another embodiment, instructions(s) may be generated including at least in part a task instruction to select one task instruction based on the user instruction. The generated instruction(s) may be embedded by mapping in at least part from natural language or text to a numeric representation of at least part of the instruction(s). The generated instruction(s) or the embedded instruction(s) may be provided to the data-driven model, such as the general-purpose data driven model. The data-driven model, such as the general-purpose data driven model, may be configured to provide the selected task instruction.
[0020] Generating based on the one or more selected instruction template(s) one or more instruction(s) including at least one task instruction related to the monitoring and / or controlling of material flows may relate to enriching the selected instruction template(s) with further data context. For example, the one or more selected instruction template(s) may include place holders to be inserted that may relate to enrichment data stored in one or more data storages such as data sink(s) e.g. operations tracking data. The enrichment data may relate to the user instruction, to monitoring and / or controlling of material flows and / or to the generation of one or more operation instruction(s).
[0021] Operation instruction for monitoring and / or controlling of material flow of distributed production environment may be generated by providing the one or more generated instruction(s) to a data-driven model configured to generate the at least one operation instructions. The data-driven model may include a general-purpose model trained at least on unstructured data. The General-purpose data-driven model may be a data-driven model trained on unstructured natural language data and configured to process natural language. The data-driven model, such as the general-purpose data driven model, may be configured to generate the at least one operation instructions. The data-driven model may include a general-purpose model trained at least on unstructured data.
[0022] The one or more instruction(s) may be provided to the data driven model together with configuration parameters for the data-driven model such as maximal token specification or authentication / authorization parameters. The data- driven model may be selected from one or more data-driven models e.g. based on a sensitivity and / or confidentiality level of the operations tracking data. The operation instruction(s) may be received from or provided by the data driven model.
[0023] If the operation instruction is an execution instruction, the operation instruction may relate to providing results to an machine-executable function to be executed, e.g. on function calling, and / or triggering execution of the machine-executable function, for monitoring and / or controlling of the distributed environment. If the operation instruction is an identification, access or selection instruction, the operation instruction may relate to displaying information to the user or to providing results to a subsequent instruction, template instruction and / or function to be executed.
[0024] The at least one operation instruction may trigger monitoring and / or controlling of the distributed environment by performing one or more machine-executable functions. For example, the operation instruction may trigger a transport resolution action such as transport of material. Further for example, the operation instruction may trigger a production resolution action such as communicating a change in production planning. Further for example, the operation instruction may trigger providing a monitoring signal or status information of the distributed environment to the operator. Further for example, the operation instruction may trigger providing a monitoring signal or status information of the distributed environment to the users of the systems for monitoring and / or tracking material flow. In one embodiment depending on the user instruction multiple instruction templates may be selected and / or processed sequentially. Selecting and / or processing sequentially may relate to different types of instruction(s) or instruction template(s). Based on the user interaction and a first instruction template a first operation instruction may be generated that may be configured to triggering selection of a second instruction template and generation of a second operation instruction. Sequentially may relate to the selection of instruction template(s) based on the user instruction and / or the generated operation instruction of the preceding selection and preceding generation process, wherein the generated operation instruction of any of the preceding generation processes may be used. Sequential selection and / or processing may at least in part include parallel selection and / or processing. Sequential selection and / or processing may at least in part include parallel selection and / or processing by one or more general purpose data driven model (s).
[0025] In another embodiment the instruction template(s) relate to identification of operations tracking data, retrieval of operations tracking data, selection of machine-readable monitoring and / or control instructions, execution of machine- readable monitoring and / or control instructions or combinations thereof. One or more instruction template(s) may be stored in a data base, such as embedded representation of the one or more instruction template(s) stored in at least one vector data base.
[0026] In another embodiment one or more instruction template(s) may be retrieved and / or selected based on the user interaction and / or the generated operation instruction of any or at least one preceding selection and preceding generation process e.g. as described above.
[0027] In another embodiment the instruction templates include at least one task instruction specifying the task to be executed by the data-driven model, at least one specification relating to operations tracking data stored including operations tracking data descriptions as metadata and / or at least one specification relating to machine-readable control and / or monitoring instructions stored including descriptions as metadata.
[0028] In another embodiment generating instructions includes providing at least part of the operation instructions generated by the data-driven model from one or more preceding instruction(s) to a subsequent instruction template. For example, multiple instruction templates may be selected and / or processed at least partially sequentially. For at least partial sequential processing at least part of the operation instructions generated by the data-driven model from one or more preceding instruction(s) may be provided to a subsequent instruction template. The subsequent instruction template may include one or more placeholder(s) to add, include or insert the operation instructions generated by the data- driven model from one or more preceding instruction(s).
[0029] In another embodiment one or more instruction template(s) include at least one task instruction related to the monitoring and / or controlling of material flows based on identification and / or retrieval of operations tracking data. The operations tracking data may be stored including operations tracking data description as metadata. The one or more instruction(s) may be generated in relation to or based on the operations tracking data description. The operations tracking data may be identified and / or retrieved based on the operation instruction(s) generated by the data-driven model from the instruction(s) generated in relation to or based on the operations tracking data description. For example, the instruction template type may relate to identification of operations tracking data and the instruction template may be selected based on the instruction template type relating to operations tracking data identification and / or retrieval. The operation instructions configured to or for operations tracking data retrieval and / or identification may be based on sequential selection and / or processing e.g. as described above. For example, the instruction template® configured for generating operating instruction® for retrieval may include place holders relating to operations tracking data description and / or key-value pairs which may be retrieved based on operating instruction® for identification.
[0030] In another embodiment one or more instruction template® include at least one task instruction related to the monitoring and / or controlling of material flows based on operations tracking data retrieval. The one or more instruction® may be generated in relation to or based on the operations tracking data retrieved. The operation instruction may be generated by the data-driven model from the instruction® generated based on the operations tracking data retrieved. The operation instructions configured to or for monitoring and / or controlling of material flows based on operations tracking data retrieval may be based on sequential selection and / or processing e.g. as described above based on identification and / or retrieval.
[0031] In another embodiment one or more instruction template® include at least one task instruction related to the monitoring and / or controlling of material flows based on at least one selected machine-readable monitoring and / or control instruction, wherein the one or more instruction® are generated based on the at least one selected machine-readable monitoring and / or control instruction, wherein the operation instruction is generated by the data-driven model from the instruction® generated based on the at least one selected machine-readable monitoring and / or control instruction. The operation instructions configured to or monitoring and / or controlling of material flows based on at least one selected machine-readable monitoring and / or control instruction may be based on sequential selection and / or processing e.g. as described above based on identification, retrieval and / or any other operation instruction generation based on identified and / or retrieved operations tracking data.
[0032] In another embodiment the at least one operation instruction is validated based on the generated operation instruction and a validation template. The validation template may include in natural language task instructions for the data- driven model to validate the operation instruction. The one or more instruction® may be generated based on the validation template. The one or more instruction® may be provided to the data-driven model for validating the generated operation instruction, wherein upon receipt of the response from the data-driven model a validated operation instruction is provided. The validation of operation instructions may be executed per operation instruction generated. The validation of operation instructions may be executed for one or more operation instructions generated e.g. in a sequential scheme with multiple operation instructions being generated. In another embodiment the at least one operation instruction is configured to display operations tracking data identified and / or retrieved and / or to trigger monitoring and / or controlling at least one of the of material flows.
[0033] In another embodiment the at least one operation instruction is configured to display machine-readable monitoring and / or control instructions selected and / or to execute machine-readable monitoring and / or control instructions.
[0034] In another embodiment the at least one operation instruction is provided to at least one of the distributed systems for tracking material flows for execution and / or the at least one operation instruction is to be executed to provide the result of the execution to at least one of the distributed systems for tracking material flows.
[0035] BRIEF DESCRIPTION OF DRAWINGS
[0036] In the following, the present disclosure is further described with reference to the enclosed figures:
[0037] Fig. 1 illustrates an example of an intelligent platform for monitoring and / or controlling material flows of a distributed chemical environment.
[0038] Fig. 2 illustrates an example method for processing and storing operations tracking data with operations tracking data descriptions usable for monitoring and / or controlling material flows of the distributed chemical production environment.
[0039] Fig. 3 illustrates an example apparatus for processing and storing operations tracking data with operations tracking data descriptions usable monitoring and / or controlling material flows of the distributed chemical production environment.
[0040] Fig. 4a illustrates an example method for monitoring and / or controlling material flows of the distributed chemical production environment.
[0041] Fig. 4b illustrates an example user interface including aggregated tracking data for different aggregation types and alerts triggering the generation of operation instructions.
[0042] Fig. 5 illustrates another example method for monitoring and / or controlling material flows of the distributed chemical production environment.
[0043] Fig. 6 illustrates another example apparatus for monitoring and / or controlling material flows of the distributed chemical production environment.
[0044] Fig. 7a illustrates an example of method steps chained by the prompts illustrated in Fig. 6. Fig. 7b illustrates example user interfaces for workflow execution.
[0045] Figs. 8-11 illustrate an example transformer architecture of a general-purpose model. Specifically, FIG. 8 illustrates an embodiment of training an embedding layer. FIG. 9A illustrates an embodiment of a transformer encoder architecture. FIG. 9B illustrates an embodiment of a transformer decoder architecture. FIG. 9C illustrates an embodiment of a transformer encoder-decoder architecture. FIG. 10 illustrates an embodiment of training and / or deploying the transformer encoder, the transformer decoder and / or the transformer encoder-decoder. FIG. 11 illustrates an embodiment of input embedding.
[0046] DESCRIPTION OF EMBODIMENTS
[0047] Fig. 1 illustrates an example of an intelligent platform for monitoring and / or controlling material flows of a distributed chemical environment.
[0048] In this example the production environment of a distributed chemical environment is used as a non limiting example. Other production environments include distributed discrete production environments or mixed environments.
[0049] The monitoring and / or controlling platform may encompass multiple computational layers including systems configured to monitor and / or track material flows of the distributed chemical production environment, operations tracking data pipelines from different systems monitoring material flow of the distributed chemical production environment, storages for operations tracking data, data processing layers configured to provide and / or perform services for data processing and equipment monitoring layers configured to provide and / or perform services for monitoring and / or controlling material flows of the distributed chemical production environment The monitoring and / or controlling platform may be implemented on a cloud infrastructure configured for distributed computing or cloud computing. "Cloud computing” may refer a model for enabling on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services). When distributed, cloud computing environments may be distributed internationally within an organization and / or across multiple organizations. In this example, the distributed cloud computing environment may contain the following computing resources: mobile device(s), operation equipment, applications, databases, data storages and server(s). The cloud computing environment may be deployed as public cloud, private cloud or hybrid cloud. A private cloud may be owned by an organization and only the members of the organization with proper access can use the private cloud, rendering the data in the private cloud at least confidential. In contrast, data stored in a public cloud may be open to anyone over the internet. The hybrid cloud may be a combination of both private and public clouds and may allow to keep some of the data confidential while other data may be publicly available.
[0050] The systems configured to monitor, control and / or track material flows of the distributed chemical production environment may be configured to monitor, control and / or track input material flows to the distributed chemical production environment, material production of the distributed chemical production environment, material flows, such as material transportation and / or storage, inside the distributed chemical production environment and / or output material flows exiting the distributed chemical production environment. Systems for input material tracking or configured to monitor, control and / or track input material may be configured to monitor, control and / or track input material flows to the distributed chemical production environment. Production systems may be configured to monitor, control and / or track produced intermediate materials and / or output materials. Warehouse systems may be configured to monitor, control and / or track stored input, intermediate and / or output materials. Transport systems may be configured to monitor, control and / or track input, intermediate and / or output material flows inside the distributed chemical production environment. Transport systems may be configured to monitor, control and / or track output material flows exiting the distributed chemical production environment.
[0051] The systems configured to monitor and / or track material flows may be configured to provide operations tracking data associated with the operations performed in relation to the distributed chemical production environment. Operations tracking data may relate to manufacturing, storing and / or transporting of materials. Operations tracking data may relate to one or more data points provided by one or more sensor(s), actor(s) and / or application (s) of one or more systems configured to monitor and / or track material flows. The operations tracking data may include unstructured data such as text or Natural language based text such as the text you are reading right now that may be provided by the user monitoring the operations through the end user device or the application running in relation to the system configured to monitor and / or track. The operations tracking data may include semi structured data such as machine-readable text data like key-value pairs in JSON format that may be provided by the application running in relation to the system configured to monitor and / or track. The operations tracking data may include structured data such as measurement data from sensors or actors monitoring and / or controlling the operations like manufacturing e.g. predefined key-value pairs with numerical values.
[0052] The operations tracking data may be provided to different type(s) of storages such as the local disk of the end user devices, data bases, data lakes, data warehouses or the like. The source storage may include any type of storage suitable for persistently or non-persistently storing data. Operations tracking data may be provided in structured format particularly relating to data acquired and provided by the systems configured to monitor and / or track material flows through applications, sensors and / or actors. Operations tracking data may be provided in structured format with defined data structure such as tables that may be stored, retrieved and / or manipulated using one or more standardized data base languages like SQL or SQL as a Service. Operations tracking data may be provided in unstructured or semi-structured format without or with semi defined data structure. Unstructured or semi-structured data may be transformed to structured data using data transformation techniques such as Natural Language Processing like embedding models configured to transform language or string data to numeric data and using pattern detection or clustering techniques such as K-nearest neighbor on the numeric data.
[0053] The operations tracking data may be provided to different type(s) of storages for different types of systems configured to monitor and / or track material flows. The operations tracking data may be stored in a distributed manner across different storages for different systems configured to monitor and / or track material flows. The operations tracking data may be distributed across different storages. For large infrastructures, such as manufacturing sites or warehouses, with distributed operation equipment, such as end user devices for operators, different manufacturing equipment, different robots and so, spread across the operation infrastructure analyzing operations tracking data of the distributed operation equipment is challenging. Moreover, maintenance or trouble shooting in case of operation equipment errors is cumbersome.
[0054] To enable an interactive monitoring and / or controlling system as disclosed herein, the operations tracking data may be provided from distributed source storages to intermediate storage(s). The intermediate storage(s) may include object, block and / or file storage. Since object storage allows for dynamic metadata handling associated with each data object, the intermediate storage may be configured as object storage storing operations tracking data in data objects including the data itself, index, and / or data catalogue or metadata.
[0055] The operations tracking data may be processed e.g. manipulated and / or transformed according to one or more data templates. The data templates may include pre-defined data structures and / or rules to process e.g. manipulate and / or transform raw operations tracking data as provided by the distributed systems configured to monitor and / or track material flows. The data template may depend on the systems configured to monitor and / or track material flows, the operations tracking data types and / or the type of operations process tracked by the systems configured to monitor and / or track material flows. Operations processes may include supply chain management processes such as procure / purchase-to-pay for providing input materials, order-to-cash for providing output material, planning and inventory for production and storage of materials, site logistics and transport management (TM) moving materials inside the distributed chemical production environment. The data template may be selected based on the systems configured to monitor and / or track material flows, the operations tracking data types and / or the type of operations process tracked by the systems configured to monitor and / or track material flows. The data template may be retrieved from a template store. The data template may be used to process e.g. manipulate and / or transform the raw operations tracking data as provided by the systems configured to monitor and / or track material flows. The raw or processed operations tracking data may further be processed e.g. transformed to a compressed and / or encoded data storage format such as Apache Parquet to enhance performance in handling complex data in bulks. The processed operations tracking data may be provided to sink storage(s) such as databases using different storage architectures configured for data marts, Online Analytical Processing (OLAP), Online Transaction Processing (OLTP), predictive analytics or the like. The selection of storage architecture such as block, object and / or file storage may depend on the latency and performance required for monitoring and / or controlling the distributed chemical production environment. For example, the storage architecture may be selected based on data size and / or data transactions per second. The operations tracking data stored in data sinks may be used for monitoring and / or controlling material flows of the distributed chemical production environment. To enable monitoring and / or controlling material flows of the distributed chemical production environment in a simple, reliable and robust manner, the methods, apparatuses, systems and uses disclosed herein are based on a three- prong approach:
[0056] 1) Simplification of operations tracking data retrieval by consolidating data in a way that enables interaction with the data in natural language (see e.g. Figs. 2 and 3).
[0057] 2) Robust and reliable data retrieval and processing by retrieval augmented generation using the data-driven model in connection with one or more knowledge data bases.
[0058] 3) Robust and reliable action execution based on the operations tracking data in a way that enables action execution in natural language (see e.g. Figs. 4 and 5).
[0059] Overall operators of the distributed chemical production environment can hence interact with the operations in an easy and fast manner. This allows operators to swiftly access the status of the operations and if deemed needed trigger action execution. For safety and security reasons the operator as the human user may provide inputs in natural language and the computing systems disclosed herein may respond in a human like manner in natural language. This way the monitoring and / or controlling of distributed chemical production environment can be enhanced.
[0060] Fig. 2 illustrates an example method for processing and storing operations tracking data with operations tracking data descriptions usable for monitoring and / or controlling material flows of the distributed chemical production environment.
[0061] One or more source identification(s) of one or more data source(s) storing operations tracking data and one or more sink identification(s) of one or more data sink(s) for storing processed operations tracking data may be provided.
[0062] The identification(s) of one or more data source(s) storing operations tracking data may relate at least to one or more connector(s), hostname(s), database(s), authentication information and / or authorization information. The identification (s) of one or more data source(s) storing operations tracking data may specify the storage location of operations tracking data e.g. per operations process, per system configured to monitor and / or track material flows such as per plant, per material type or the like. The identification(s) of one or more data source(s) storing operations tracking data may relate to one or more source schema(s) and / or source table(s). The identification(s) of one or more data source(s) storing operations tracking data may specify one or more source data packages to be transferred or provided to the sink storage(s).
[0063] The one or more sink identification(s) of one or more data sink(s) may relate at least to one or more connector(s), hostname(s), database(s), authentication information and / or authorization information. The one or more sink identifi- cation(s) of one or more data sink(s) may specify the destination location of processed operations tracking data e.g. per operations process, per system configured to monitor and / or track material flows such as per plant, per material type or the like. The one or more sink identification(s) of one or more data sink(s) may relate to one or more sink schema(s) and / or sink table(s).
[0064] A relationship between the identification(s) of one or more data source(s) storing operations tracking data and / or one or more sink identification(s) of one or more data sink(s) may be provided. The relationship may group one or more source schema(s) and / or source table(s) to one or more destination schema(s) and / or destination table(s).
[0065] The operations tracking data may include material identifiers, material names, batch identifiers, plant identifiers, material types such as own manufactured materials or raw materials, plant location, storage location, storage location key, stock type with respect to restricted or unrestricted use, time such as days in stored in stock, last transportation date, production date or the like.
[0066] The operations tracking data from one or more data source(s) related to the provided source identification(s) may be accessed and processed according to one or more data templates for storage on an intermediate storage. Data templates may be suitable for storing data in a common data structure. The data templates may include pre-defined data structures and / or rules for structuring the operations tracking data. The data templates may be stored in a template store and may be used to process raw operations tracking data as provided by the distributed systems configured to monitor and / or track material flows e.g. as described in the context of Fig. 1. The processed data may be staged and / or stored on an intermediate storage layer.
[0067] One or more instruction(s) including at least one task instruction to generate an operations tracking data description, one or more operations process types signifying operations domains and / or stages of operations processes may be generated and / or one or more metadata points, entries or values of the operations tracking data to be described may be generated. The task instruction may relate to a data package or sub-set(s) of the data package of the operations tracking data. The data package or sub-set(s) of the data package may relate to the stored data format, such as compressed or uncompressed formats or encoded or unencoded formats. The data package may include operations tracking data stored in a structured data format such as a table. The sub-set of the data package may relate to at least one element, e.g. at least one column, and / or at least one row, of the structured data format. The task instruction may include a text in natural language specifying the task to describe the data package or sub-set(s) of the data package. The one or more entries of the operations tracking data to be described may be generated based on or from the data package or sub-set(s) of the data package of the operations tracking data. For example, one or more metadata points, entries or values of the operations tracking data to be described may be retrieved from the intermediate storage. Further for example, one or more metadata points, entries or values data package or sub-set(s) of the data package of the operations tracking data to be described may be retrieved from the intermediate storage. The one or more instruction(s) may include at least one system instruction relating to the system context of the task instruction. For example, the system instruction may relate to a characteristic of the system performing the task. The one or more instruction(s) may be provided as prompt or instruction template. The prompt or instruction template may include instruction(s) in natural language and placeholders to be inserted for: the data package or sub-set(s) of the data package of the operations tracking data as provided by the identifi- cation(s) and / or the retrieved operations tracking data and / or one or more operations process types signifying operations domains and / or stages of operations processes may be generated and / or one or more metadata points, entries or values of the operations tracking data to be described as provided by the retrieved operations tracking data.
[0068] The operations tracking data description may be generated by providing the one or more instruction(s) to at least one data-driven model configured to generate the operations tracking data description. The data-driven model may include a general-purpose model trained at least on unstructured data. The one or more instruction(s) may be provided to a data driven model together with configuration parameters for the data-driven model such as maximal token specification or authentication / authorization parameters. The data-driven model may be selected from one or more data- driven models based on a sensitivity and / or confidentiality level of the operations tracking data. Further details of possible data-driven models and their selection are described for example in the context of Fig. 3 or Figs. 8-11 . The data-driven model may generate and / or provide operations tracking data descriptions for the operations tracking data and / or any subset thereof. For example, tables may be stored with metadata related to operations process type such as domain name purchase to pay or order to cash, operations process descriptions and / or column descriptions.
[0069] The description may be provided in natural language or text and stored as metadata in association with the operations tracking data. The operations tracking data description may be stored as metadata on the intermediate storage. The processed operations tracking data may be copied and / or stored to one or more data sink(s) related to the provided sink identification(s). The processing and the storing of the operations tracking data may be logged and stored in a documentation storage. Operations tracking data may be updated following the data templates used for the respective part of the operations tracking data and the updated data may be copied and / or stored to one or more data sink(s) related to the respective sink identification(s) provided with the update data.
[0070] Fig. 3 illustrates an example apparatus for processing and storing operations tracking data with operations tracking data descriptions usable monitoring and / or controlling material flows of the distributed chemical production environment. Agent or engine in the context of the disclosure includes any processing device.
[0071] The computing apparatus may be configured for storing operations tracking data and providing at least one prompt or instruction template for generating an operations tracking data description. In particular the computing apparatus is configured to perform the steps as e.g. described in the context of Fig. 2. The computing apparatus may include a processing apparatus communicatively coupled to one or more source storage(s), intermediate storage(s) and / or sink storage(s). The computing apparatus may be communicatively coupled to one or data driven model interfaces configured to access a data driven model and to provide the result of the processing by the data-driven model.
[0072] The processing apparatus may include an operations tracking data interface configured to provide one or more source identification(s) of one or more data source(s) with stored operations tracking data as e.g. described in the context of Fig. 2. The processing apparatus may include an operations tracking data interface configured to provide one or more sink identification(s) of one or more data sink(s) for storing operations tracking data as e.g. described in the context of Fig. 2.
[0073] The processing apparatus may include an operations tracking data staging interface configured to access the operations tracking data from one or more data source(s) related to the provided source identification(s) as e.g. described in the context of Fig. 2.
[0074] The processing apparatus may include an operations tracking data preparation interface configured to process the operations tracking data according to one or more data templates for storage on an intermediate storage as e.g. described in the context of Fig. 2.
[0075] The processing apparatus may include an instruction agent configured to generate one or more instruction(s) as e.g. described in the context of Fig. 2. For example the one or more instruction(s) may include at least one task instruction to generate an operations tracking data description and one or more metadata points, values and / or entries of the operations tracking data to be described. The processing apparatus may include an instruction agent configured to generate the operations tracking data description by providing the one or more instruction(s) to a data-driven model configured to generate the operations tracking data description as e.g. described in the context of Fig. 2.
[0076] The processing apparatus may include a write to storage interface configured to store the operations tracking data description as metadata of the processed operations tracking data on the intermediate storage as e.g. described in the context of Fig. 2. The processing apparatus may include a write to storage interface configured to copy the processed operations tracking data from the intermediate storage to one or more data sink(s). The processing apparatus may be configured to update the operations tracking data.
[0077] Fig. 4a illustrates an example method for monitoring and / or controlling material flows of the distributed chemical production environment.
[0078] The operations tracking data may be provided e.g. by the sink storage(s) as described above. The operations tracking data may be updated in regular update cycles e.g. to achieve nearly real-time availability of the operations tracking data according to the methods described in the context of Figs. 1-3. For example, after initial processing of operations tracking data provided by the distributed systems for monitoring and / or tracking material flows, the data templates including data structure and / or processing rules may be applied to (semi-)continuously ingested data provided by the distributed systems for monitoring and / or tracking material flows. This may include a pipeline of data transformation e.g. feature extraction, transformation such as cleansing, index creation and / or catalogue generation. The operations tracking data may be provided, e.g. by batch-wise Extract-Transform-Load (ETL) like SQL queries or replication, from data bases associated with the distributed systems for monitoring and / or tracking material flows. The operations tracking data may be provided, e.g. by streaming mechanisms, from loT devices associated with the distributed systems for monitoring and / or tracking material flows. The operations tracking data may be provided, e.g. by streaming, from applications, such as logs generated on running the applications, in association with the distributed systems for monitoring and / or tracking material flows. The operations tracking data may be provided, e.g. by upload mechanisms, from local storage(s) associated with the distributed systems for monitoring and / or tracking material flows. The processed operations tracking data may be stored on sink, such as object, storage(s) including data objects, indexes and catalogue.
[0079] The operations tracking data, such as processed and stored in object storage, may be provided for further analytics. For example, aggregate tracking data may be generated by aggregating the operations tracking data over time and / or the distributed systems for monitoring and / or tracking material flows. For example, the operations tracking data may be aggregated over plants, storage facilities, material types and so on. The operations tracking data may be aggregated to one or more aggregation types relating to material flows and or one or more stages of one or more operations processes. Examples include requests for providing output material (orders), quantity of material stored (inventory), day material stored (inventory) or the like. Examples of aggregated tracking data include requests to provide output materials in a time dependent manner, such as in a time boxed to a certain time interval (e.g. open rush orders), the total quantity of material stored by the distributed chemical production environment (e.g. non-moving stocks, Total Inventory Quantity, TIQ), the total days material is stored by the distributed chemical production environment (e.g. Days Inventory Valued, DIV), time required to perform sub-stages of the operations process e.g. from request receipt to providing output material, missing data points e.g. for inter company or customer related data fields or the like.
[0080] The aggregate tracking data may be provided to the operator monitoring and / or controlling the distributed chemical production environment. The aggregate tracking data may be provided for display to the operator. The aggregate tracking data may be provided on an interactive display to the operator. The interactive display may provide for different data views and filtering options. The aggregate tracking data may be provided for triggering alerts based on predefined or dynamically adjustable alert rules. The alerts may be signified by one or more thresholds and / or ranges defined per aggregation type. The alerts may relate to one or more alert types depending on the action to be triggered by the alert. The alerts may be provided to the operator monitoring and / or controlling the distributed chemical production environment. The alerts may be provided to the users of the distributed systems for monitoring and / or tracking material flows.
[0081] The alerts may be provided for generating one or more operation instructions for resolving the alert. The operation instructions may relate to pre-defined rules per aggregation type and / or alert type. For example, if quantity of material stored exceeds a pre-defined threshold, the alert may relate to triggering requests providing output material. For example, if quantity of material stored exceeds a pre-defined threshold, the alert may relate to triggering declare the material in stock as off-grade. The operation instructions may be generated dynamically based on human-machine interaction of the user or operator with a data agent and / or resolution agent as will be described in more detail below.
[0082] The one or more operation instructions may be provided for resolving the alert.
[0083] Fig. 4b illustrates an example user interface including aggregated tracking data for different aggregation types and alerts triggering the generation of operation instructions.
[0084] In the example of Fig. 4b the entry screen depicted on the top of the user interface illustrates aggregated key performance indicators such as number of requests time boxed, quantity of material stored in stock, days material is in stock. On clicking one of the panes of the key performance indicators a more detailed view of the aggregated tracking data may be provided for display. In the example, quantity of material stored in stock may be provided per material type, the age of the material stored in stock and one or more alerts triggered for specific material items. On clicking one of the alerts resolution options such as generate requests for material item or declare material item as off- grade may be provided. Based on the selection of options e.g. through use of the resolution agent, the operation instruction to resolve the alert may be triggered.
[0085] Fig. 5 illustrates another example method for monitoring and / or controlling material flows of the distributed chemical production environment.
[0086] A user instruction may be provided including natural language or text such as a question. The user instruction(s) may be provided by an operator of the distributed chemical production environment. The user instruction(s) may be provided by a web-interface configured to retrieve instruction(s) in natural language or text by an operator of the distributed chemical production environment. An example web-interface and examples of operator instructions are illustrated and described e.g. in the context of Fig. 7.
[0087] The user instruction may be routed for executing the method for monitoring and / or controlling material flows. The user instruction may be embedded as described e.g. in the context of Figs. 8 and 9. Embedding in this context may include a mapping of at least part of the user instruction in natural language to a numeric representation. The numeric representation may also be referred to as embedding.
[0088] Pre-defined routing information related to routing questions and / or routing classes may be provided. The pre-defined routing information may relate to natural language and or text related to the routing of the user instruction for executing the method for monitoring and / or controlling material flows. The pre-defined routing information may relate to question-and-class pairs. Classes may relate to routing classes with respect to the agent handling the user instruction such as free chat agent, Q&A agent, RAG agent, data agent and / or resolution agent. The pre-defined routing information may be embedded as described e.g. in the context of Figs. 8 and 9. Embedding in this context may include a mapping of at least part of the per-defined routing information in natural language to a numeric representation of at least part of the per-defined routing information. The numeric representation may also be referred to as embedding. The pre-defined information may relate to one or more question-and-class pairs. The embeddings of the pre-defined routing information may be stored in a vector data base.
[0089] The embedding of at least part of the user interaction may be provided for a similarity search amongst the embeddings of at least part of the pre-defined routing information. The embeddings of at least part of the pre-defined routing information with the highest similarity score may be determined and provided. The embedding may be mapped to natural language or text, if the similarity score reaches a pre-defined similarity level. The natural language corresponding to the embedding reaching the pre-defined similarity level may be provided to the user for selection as user instruction.
[0090] If no embedding reaches the pre-defined similarity level, one or more instructions to the data-driven model are generated. One or more classification templates relating to the routing of the question may be provided. The classification template may include the task instruction for classifying the user instruction with respect to multiple routing classes such as free chat agent, Q&A agent, RAG agent, data agent and / or resolution agent. The classification template may include the class definitions such as free chat agent, Q&A agent, RAG agent, data agent and / or resolution agent. The classification template may include system instructions to the data driven model relating to the output format to be generated by the data driven model. The classification template may include placeholder(s) such as for the user instruction provided. Instructions to the data-driven model may be generated based on the classification template. The instructions may be provided to the data-driven model for generation of a response relating to the routing or classification of the user instruction. The generated response relating to the routing or classification of the user instruction may be provided to the user interface. For example, the user instruction may be routed as follows:
[0091] Free chat agent
[0092] The routing to free chat agent may provide an interface to the data-driven model. This way the user may interact directly with the data driven model based on questions provided as user instructions.
[0093] Q&A agent
[0094] Pre-defined operations information related to the operations of the distributed chemical production environment may be provided. The pre-defined operations information may include natural language or text related to the operations of the distributed chemical production environment. The pre-defined operations information may be embedded as described e.g. in the context of Figs. 8 and 9. Embedding in this context may include a mapping of at least part of the user instruction in natural language to a numeric representation of at least part of the per-defined information related to the operations. The numeric representation may also be referred to as embedding. The pre-defined information may relate to one or more operation types such as question-and-class pairs, question-answer pairs, terminology definitions, or the like, and / or operations process types such as purchase-to-pay, order-to-cash, planning and inventory or the like. The embeddings of the pre-defined operations information may be stored in a vector data base.
[0095] The embedding of at least part of the user interaction may be provided for a similarity search amongst the embeddings of at least part of the pre-defined operations information. The embeddings of at least part of the pre-defined operations information with the highest similarity score may be determined and provided. The embedding may be mapped to natural language or text if the similarity score reaches a pre-defined similarity level. The natural language corresponding to the embedding reaching the pre-defined similarity level may be provided to the user as output in natural language. The output may further include a source identifier associate with the pre-defined operations information, such as a document the pre-defined operations information was found in.
[0096] RAG agent
[0097] If no embedding reaches the pre-defined similarity level, one or more instructions to the data-driven model are generated. One or more Q&A templates relating to the user instruction may be provided. The Q&A template may include the task instruction for providing an answer to the user instruction with respect to the provided pre-defined operations information. The Q&A template may include at least part of the retrieved embeddings closest to the pre-defined similarity level. The Q&A template may include system instructions to the data driven model relating to the output format to be generated by the data driven model. The Q&A template may include placeholder(s) such as for the embeddings or the equivalent natural language or text provided. Instructions to the data-driven model may be generated based on the Q&A template. The instructions may be provided to the data-driven model for generation of a response relating to the user instruction and the pre-defined operations information. The generated response relating to the user instruction may be provided to the user interface. This is only one possible implementation and further pre-defined information stored in vector data bases may be used such as question-and-answer pairs.
[0098] Data agent and / or resolution agent
[0099] One or more instruction templates relating to monitoring and / or controlling of material flows may be provided. The instruction templates may be configured for identifying operations tracking data, accessing operations tracking data, selecting machine-readable monitoring and / or controlling instructions and executing machine-readable monitoring and / or controlling instructions. The instruction templates may be stored in template store. The instruction templates may be based on natural language or text providing instruction(s) such as task instructions relating to identifying operations tracking data, accessing operations tracking data, selecting machine-readable monitoring and / or controlling instructions and executing machine-readable monitoring and / or controlling instructions.
[0100] One or more instruction (s) including at least one task instruction related to the monitoring and / or controlling of material flow based on access to operations tracking data may be provided. The task instruction may include the task for the data-driven model to generate an instruction for monitoring and / or controlling of material flow based on access to operations tracking data. The task instructions may include the task for the data-driven model to generate an instruction for identifying operations tracking data, accessing operations tracking data, selecting machine-readable monitoring and / or controlling instructions and executing machine-readable monitoring and / or controlling instructions.
[0101] The one or more instruction(s) may be generated based on template instructions as may be retrieved from a template store. The template instruction may be selected based on the user instruction- e.g. by way of similarity search based on embeddings as described above. The template instruction may include placeholders for including or merging further instructions into the template instruction. The one or more instruction(s) may be generated by including or merging the user instruction into the template instruction. The one or more instruction(s) may be generated by including or merging further information as specified by the template instruction to the template instruction.
[0102] For selection of the template instruction, the user instruction may be embedded as described e.g. in the context of Figs. 8 and 9. Embedding in this context may include a mapping of at least part of the user instruction in natural language to a numeric representation of at least part of the user instruction. The numeric representation may also be referred to as embedding. The template instructions may relate to one or more instruction types. The instruction type may relate to identification of data, access to data, selection of machine-readable instructions and / or execution of machine-readable instruction. The template instruction(s) and / or the template instruction type(s) may be provided in natural language and / or as numeric representations of the natural language version. The template instruction(s) and / or the template instruction type(s) may be mapped in at least part from natural language or text to a numeric representation of at least part of the template instruction(s) and / or the template instruction type(s).
[0103] For selection of the instruction template the embedding of the user instruction and the embedding of the instruction template(s) and / or type(s) may be compared. The similarity between respective embeddings of the user instruction and the embedding of the instruction template(s) and / or type(s) may be determined. The similarity may be based on any similarity measure known in the art such as Euclidian od cos similarity measures. The embedded template instruction with the lowest distance to the embedded user instruction may be selected.
[0104] Further for example, instructions(s) may be generated including the task instruction to select one template instruction, the user instruction, and / or the template instruction types. The generated instructions may be provided to the data-driven model, such as the general-purpose data driven model, configured to provide the selected template instruction.
[0105] These are only some possibilities for selecting the template instruction. Other possibilities may rely on simple string or semantic comparison. If no suitable template instruction can be found according to a pre-defined similarity measure, a signal may be sent to the web-interface for asking the operator to further specify the user instruction. The template instruction may relate to identifying operations tracking data. The template instruction for identifying data may relate to generating representation of stored or accessible operations tracking data. The template instruction for identifying data may include at least one task instruction for the data-driven model relating to the selection of data packages based on the data package identifier and / or the data package schema such as table identifiers and / or schemas. The template instruction may include one or more placeholders e.g. operations tracking data descriptions, operations tracking data examples and / or further pre-defined information context that may be retrieved from a vector database based on numerical embeddings as described above. The template instruction for identifying data may include one or more operations tracking data descriptions of stored operations tracking data. The operations tracking data may be stored including operations tracking data description as metadata as e.g. described in the context of Figs. 2 and 3. The template instruction for identifying data may include one or more data package descriptions for stored operations tracking data. The template instruction for identifying data may include task instruction relating to selection of operations tracking data based on the user instruction. The template instruction may relate to pre-defined information as retrieved from a vector data base based on a similarity search with the user instruction embedding e.g. as described above. The pre-defined information may relate to question-and-answer pairs relating user instructions and output expected for accessing and / or retrieving operations tracking data. The template instruction may relate to a user instruction history providing one or more user instructions from previous interactions. The template instruction for identifying data may include system instructions relating to the output structure e.g. as semi structured data in natural language or conditions to be fulfilled by the output such as the instruction to provide output in json format or the instruction to restrict selection to specified one or more operations tracking data descriptions of stored operations tracking data.
[0106] The template instruction may relate to accessing or retrieving operations tracking data. The template instruction for accessing or retrieving data may relate to the task instruction to the data-driven model to generate machine-readable instruction in database language format suitable to access operations tracking data. The template instruction for accessing or retrieving data may relate to the output provided by the data-driven model based on the template instruction for accessing or retrieving operations tracking data. The template instruction for accessing or retrieving data may relate to one or more operations tracking data descriptions of stored operations tracking data corresponding to the output provided by the data-driven model based on the template instruction for accessing or retrieving operations tracking data. The template instruction for accessing or retrieving data may relate to one or more examples of machine-readable instruction in database language format, such as sql, suitable to access operations tracking data. The template instruction for accessing data may include task instruction relating to generation of machine-readable instruction in database language format, such as sql, suitable to access operations tracking data based on the user instruction. The template instruction may relate to pre-defined information as retrieved from a vectors data base based on a similarity search with the user instruction embedding as described above. The pre-defined information may relate to question-and-answer pairs relating user instructions and output expected for accessing and / or retrieving operations tracking data. The template instruction may relate to a user instruction history providing one or more user instructions from previous interactions. The template instruction for accessing data may include system instructions relating to the output structure e.g. as semi structured data in data base language such as SQL query, guidance on output generation such as SQL query generation, or conditions to be fulfilled by the output such as limitation to specified one or more operations tracking data descriptions of stored operations tracking data.
[0107] The template instruction may relate to selecting machine-readable monitoring and / or controlling instructions. The template instruction for identifying data may include at least one task instruction relating to selection of a workflow associated with machine-readable monitoring and / or controlling instructions. The template instruction for selecting machine-readable monitoring and / or controlling instructions may include specification of available workflows. The template instruction for selecting machine-readable monitoring and / or controlling instructions may include specification of workflow descriptions e.g. in natural language. The template instruction for selecting machine-readable monitoring and / or controlling instructions may include task instruction relating to selection of workflow based on the user instruction. The template instruction for identifying data may include system instructions relating to the output structure e.g. as semi structured data in natural language or conditions to be fulfilled by the output such as the instruction to provide output in specific format or the instruction to restrict selection to specified one or more workflow descriptions of provided workflows.
[0108] The template instruction may relate to executing machine-readable monitoring and / or controlling instructions. The template instruction may include task instruction to extract attributes required for execution of machine-readable monitoring and / or controlling instructions. The template instruction may include selected specification of machine- readable monitoring and / or controlling instruction(s) corresponding to the output provided by the data-driven model based on the template instruction for selecting machine-readable monitoring and / or controlling instructions. The template instruction may include specification to include historic outputs, e.g. to instructions for identifying or accessing or retrieving operations tracking data. The template instruction for execution of machine-readable monitoring and / or controlling instructions may include task instruction relating to execution of workflow based on the user instruction. The template instruction for execution of machine-readable monitoring and / or controlling instructions may include system instructions relating to the output structure or conditions to be fulfilled by the output or the instruction to restrict execution to fully defined attribute sets.
[0109] At least one operation instruction for monitoring and / or controlling of distributed chemical production environment may be generated by providing the one or more generated instruction(s) to a data-driven model configured to generate the at least one operation instructions. The data-driven model may include a general-purpose model trained at least on unstructured data. The one or more instruction(s) may be provided to the data driven model together with configuration parameters for the data-driven model such as maximal token specification or authentication / authoriza- tion parameters. The data-driven model may be selected from one or more data-driven models based on a sensitivity and / or confidentiality level of the operations tracking data. Further details of possible data-driven models and their selection are described for example in the context of Fig. 3 or Figs. 8-11 .
[0110] The at least one operation instruction for monitoring and / or controlling of the distributed chemical production environment may be provided. The provided operation instruction may be validated. For validation a validation templates may be provided. The validation template may include in natural language task instructions for the data-driven model to validate the operation instruction. The validation template may include at least one placeholder for the operation instruction to be validated. The validation template may relate to rules to be checked on validation provided in natural language or text. The validation template may relate to correction instructions in case at least one error is found upon validation. The validation instruction may include system instructions relating to the output structure or conditions to be fulfilled by the output or the instruction to restrict execution to fully defined attribute sets. The validation template may depend on the type of operation instruction generated, which may depend on the task instruction provided to the data-driven model for operation instruction generation. Depending on the task instruction used for generation of the operation instruction the validation template may be selected. The validation template may be used to generate one or more instruction(s) to be provided to the data-driven model. Upon receipt of the response from the data-driven model a validated operation instruction may be provided.
[0111] If the operation instruction is an execution instruction, the operation instruction may relate to or include parsing results to the machine-executable function to be executed, e.g. on function calling, and / or triggering execution of the machine-executable function for monitoring and / or controlling of the distributed environment. If the operation instruction is an identification, access or selection instruction, the operation instruction may relate to displaying information to the user or to parsing results to a subsequent instruction or instruction template or function to be executed.
[0112] The at least one operation instruction may trigger monitoring and / or controlling of the distributed environment by performing one or more machine-executable functions. For example, the operation instruction may trigger a transport resolution action such as transport of material. Further for example, the operation instruction may trigger a production resolution action such as communicating a change in production planning. Further for example, the operation instruction may trigger providing a monitoring signal or status information of the distributed environment to the operator. Further for example, the operation instruction may trigger providing a monitoring signal or status information of the distributed environment to the users of the systems for monitoring and / or tracking material flow.
[0113] Fig. 6 illustrates example apparatus for monitoring and / or controlling materials including prompts for identifying operations tracking data, accessing operations tracking data, selecting machine-readable monitoring and / or controlling instructions and executing machine-readable monitoring and / or controlling instructions.
[0114] The computing apparatus is configured for monitoring and / or controlling material flows including prompts for identifying operations tracking data, accessing operations tracking data, selecting machine-readable monitoring and / or controlling instructions and executing machine-readable monitoring and / or controlling instructions, in particular to perform the steps as described in the context of Figs. 1-5. The computing apparatus may be communicatively coupled to a web-interface for user interaction. The computing apparatus may include a monitoring and / or controlling apparatus communicatively coupled to one or more sink storage(s) storing operations tracking data including descriptions of operations tracking data e.g. in natural language, template store(s) and / or systems. The computing apparatus may be communicatively coupled to one or data driven model interfaces configured to access the data driven model and to provide the result of the processing by the data-driven model.
[0115] The user interface may be configured to provide user instruction including natural language or text such as a question. The user instruction(s) may be provided by an operator of the distributed chemical production environment as described above e.g. in the context of Figs. 1, 5 and 6.
[0116] The computing apparatus may comprise a routing engine configured to route the user instruction for executing the method for monitoring and / or controlling material flows as described above e.g. in the context of Figs. 1-5. The routing engine may be configured to generate an embedding of the user instruction as described e.g. in the context of Figs. 8-11.
[0117] The computing apparatus may comprise a data base such as a vector data base configured to store and / or provide pre-defined routing information related to routing questions and / or routing classes as described above e.g. in the context of Figs. 1-5. The routing engine may be configured to execute a similarity search in connection with the predefined routing information as described e.g. in the context of Figs. 1-5. The computing apparatus may comprise a data base such as a vector data base configured to store and / or provide classification templates. The classification templates may include the class definitions such as free chat agent, Q&A agent, RAG agent, data agent and / or resolution agent. The routing engine may be configured to provide a classification and / or routing of the user instruction based on classification template selection and / or interaction with the data-driven model as described e.g. in the context of Figs. 1-5. The routing engine may be configured to route the user instruction based on the classification and / or routing result as described e.g. in the context of Figs. 1-5.
[0118] Free chat agent
[0119] The routing engine may be configured to route to a free chat agent configured to provide an interface to the data- driven model as described e.g. in the context of Figs. 1-5.
[0120] Q&A agent
[0121] The routing engine may be configured to route to a Q&A agent. The Q&A agent may be configured to provide predefined operations information related to the operations of the distributed chemical production environment as described e.g. in the context of Figs. 1-5. The pre-defined operations information may include natural language or text related to the operations of the distributed chemical production environment stored in a vector database as described e.g. in the context of Figs. 1-5. The routing engine may be configured to provide a response based on a similarity search relating to the user instruction and the pre-defined operations information as described e.g. in the context of Figs. 1-5. RAG agent
[0122] The routing engine may be configured to route to a RAG agent. The RAG agent may be configured to generate one or more instructions to the data-driven mode, provide the instructions to the data-driven model for generation of a response relating to the user instruction and the pre-defined operations information and provide the generated response to the user interface as described e.g. in the context of Figs. 1-5.
[0123] Data agent and / or resolution agent
[0124] The computing apparatus may comprise a selection engine configured to generate on one or more instruction(s) based on template instructions relating to monitoring and / or controlling of material flows as may be retrieved from a template store. The selection engine may be configured to select template instruction based on the user instruction. The selection engine may be configured to generate the one or more instruction(s) by embedding the user instruction and / or further information as specified by the template instruction into the template instruction. The selection engine may be configured to perform the steps as described in the context of Figs. 4a and b. The selection engine may be configured to provide the operation instructions to the web-interface, to the monitoring and / or controlling engine and / or to the retrieval engine.
[0125] The computing apparatus may comprise a retrieval engine configured to identify and / or retrieve operations tracking data based on template instructions as may be retrieved from a template store. The retrieval engine may be configured to identify operations tracking data by providing instruction(s) generated based on the instruction template for identification of operations tracking data to the data-driven model and by providing the operation instructions received from the data-driven model. The retrieval engine may be configured to parse at least part of the operation instructions to the instruction template for retrieval of operations tracking data. The retrieval engine may be configured to retrieve operations tracking data by providing instruction(s) generated based on the instruction template for retrieval of operations tracking data to the data-driven model and by providing the operation instructions received from the data-driven model. The retrieval engine may be configured to provide the operation instructions to the web-interface, to the selection engine and / or to the monitoring and / or controlling engine.
[0126] The computing apparatus may comprise a monitoring and / or controlling engine configured to select and / or execute machine-readable monitoring and / or controlling instructions based on template instructions as may be retrieved from a template store. The monitoring and / or controlling engine may be configured to select machine-readable monitoring and / or controlling instructions by providing instruction(s) generated based on the instruction template for selecting machine-readable monitoring and / or controlling instructions to the data-driven model and by providing the operation instructions received from the data-driven model. The monitoring and / or controlling engine may be configured to parse at least part of the operation instructions to the instruction template for executing monitoring and / or controlling instructions. The monitoring and / or controlling engine may be configured to execute machine-readable monitoring and / or controlling instructions by providing instruction(s) generated based on the instruction template for executing machine-readable monitoring and / or controlling instructions to the data-driven model and by providing and / or executing the operation instructions received from the data-driven model. The monitoring and / or controlling engine may be configured execute the operation instructions and to provide the result of such execution to the distributed systems configured to monitor and / or track material flows. The monitoring and / or controlling engine may be configured to provide the operation instructions to the distributed systems configured to monitor and / or track material flows for execution of the operation instructions.
[0127] The computing apparatus may comprise an instruction engine configured to provide the generated instructions from any of the selection engine, the retrieval engine and / or the monitoring and / or controlling engine to the data-driven model. The instruction engine may be configured to select one or more data-driven models based on execution performance like compute costs, time, and / or accuracy.
[0128] Fig. 7a illustrates an example of method steps chained by the prompts illustrated in Fig. 6.
[0129] The flows of Fig. 7a illustrate the computing flows and system behavior in relation to the inputs from and the outputs to the user. The first flow relates to identifying operations tracking data based on the prompt for identifying operations tracking data as provided by the user. The second flow relates to retrieving operations tracking data based on the prompt for retrieving operations tracking data as provided by the user. The third flow relates to workflow execution based on the prompt for workflow execution as provided by the user.
[0130] Fig. 7b illustrates example user interfaces for workflow execution.
[0131] The user interface may be a web interface accessing the services described in the context of Figs. 1 to 6. The user interface may be configured for interaction by the operator of the distributed chemical production environment and / or the distributed systems configured to monitor and / or track material flows in natural language. The operator of the distributed chemical production environment and / or the distributed systems configured to monitor and / or track material flows may pose questions in natural language or prompt. The user entry may be provided to the apparatus or methods for monitoring and / or controlling material flow e.g. as described in the context of Figs. 4-6. The apparatus or methods for monitoring and / or controlling material flow may use the user prompt as input to perform the steps of the methods or by the apparatus e.g. as described in the context of Figs. 4-6. Based on such processing of the user prompt the system may provide an output in natural language e.g. as illustrated in Fig. 7b. Depending on the prompt provided by the user the system may provide services for identifying operations tracking data, accessing operations tracking data, selecting machine-readable monitoring and / or controlling instructions and executing machine-readable monitoring and / or controlling instructions.
[0132] Figs. 8-11 illustrate an example transformer architecture of a general-purpose model. Fig. 8 illustrates an embodiment of training an embedding layer. The embedding layer may be obtained by training for example a continuous bag of words model (CBOW) or a skipgram model. The embedding layer may be suitable for generating embedded input data based on input data. Generating embedded input data may refer to embedding input data. Embedding input data may result in a representation associated with the input data. Thus, the embedded input 814 may be the representation associated with the input data. The input data may comprise one or more elements. The one or more elements may be represented by the input vector 806. In particular, the embedded input 814 and / or the input vector 806 may be machine-readable and / or processable by a processor. For this purpose, the embedded input 814 and / or the input vector 806 may be a tensor, in particular a first-rank tensor. Specifically, the input vector 806 may be a one hot vector or a summation of a plurality of one hot vectors. A one hot vector may be a vector with one entry unequal to zero. Examples for one hot vectors may be 808, 810 and 812. The entries unequal to zero in the one hot vector and / or in the input vector 806 may indicate the element. For example, a look up table may define the relation between the position of the entries unequal to zero and the element indicated by the one hot vector. The look up table may specify a plurality of different elements. The number of different elements may be equal to the number of entries in the one hot vector. The number of different elements may be referred to as vocabulary size. In an example, the elements may be represented by tokens and a sequence of elements may refer to at least a part of a sentence. The at least a part of the sentence may be represented by a plurality of tokens. A token may represent at least a part of the element and / or word. For example, where one element would be associated with only one word, words such as "embeddings", "embedding” or "embed” would constitute different elements. A first token may represent the stem "embed” and the endings, typically appearing in a plurality of word, may be represented by a second token, a third token and a fourth token. The second token, the third token and the fourth token may be used for representing other words such as "look”, "looking” or the like, preferably together with a fifth token representing the stem "look”. Ultimately, this tokenization of elements associated with a plurality of stems and a plurality of endings results in less tokens to be used for representing a plurality of elements and thus, uses less computational resources.
[0133] A look up table specifying a subset of the vocabulary size eg of the English language may comprise 10,000 words or more. The embedded input 814 may be a lower-dimensional representation than the input vector 806. For example, typical embedded inputs 814 may comprise some hundreds of different entries. Followingly, the embedded inputs 814 constitute a densified representation of one or more elements using less computational resources. More than that, the embedded input 814 may represent a relation between two or more elements. For example, the words "Italy” and "Germany” may be similar or may be more closely related since they both define european countries, whereas the word "embodiment” may be very different from the two respective words. The smaller the dot product between two embedded inputs 814 may be the more similar the two elements associated with the embedded inputs 814 may be. Hence, the embedded inputs 814 may represent one or more elements accurately and lead to accurate results based on processing the embedded inputs 814.
[0134] For transforming the input vector 806 into the embedded input 814, the embedding layer may comprise a number of neurons equal to the number of entries in the embedded input 814. Based on the embedded inputs 814, the output layer may generate the output vector 816. The output vector may be a vector and / or may indicate one or more elements. The output vector 816 may indicate one or more elements different from the input vector 806 and / or the one hot vectors associated with the input vector 806. For this purpose, the output layer may comprise a number of neurons equal to the number of entries of the input vector 806 and / or the output vector 816. The output layer may apply a softmax function to the embedded inputs 814. By doing so, the output vector may comprise the probabilities associated with the elements associated with the entries of the output vector 816 unequal to zero. Hence, from the output vector 816 one or more elements may be obtained with a corresponding probability. Where the input vector 806 may specify one or more sequence(s) of elements, the output vector 816 may specify one or more elements corresponding to the sequence(s) of elements specified by the input vector 806. In the example of FIG. 8, the element associated with vector 818 may correspond to the input vector with a probability of 71 %. Additional or alternative elements may correspond to the input vector as indicated by the output vector with lower probability. By defining a threshold to which the probability may be compared, the selection of the corresponding elements may be tailored to the needs of the user. The elements generated by the model comprising the embedding layer 802 and the output layer 804 may refer to the most probable elements indicated by the output vector 816. Hence, the model depicted in FIG. 8 may generate the element associated with the vector 818 with a confidence score of 71 %.
[0135] The model of FIG. 8 may be continuous bag of words (CBOW) model. The CBOW model may be trained based on a training data set comprising a plurality of input vectors and corresponding output vectors. As the training data set may not be labeled, the training of the CBOW model may be referred to as self-supervised. Before training of the CBOW model, the CBOW model may be initialized with random values assigned to the weights of the neurons. During the training of the CBOW model, the input vectors may be passed through the initialized embedding layer and the output layer and a loss may be determined by comparing the output vector obtained by passing the input vector 806 through the model to the output vector corresponding to the input vector 806 as specified by the training data set. Based on the determined loss, backpropagation may be applied to determine the gradients associated with the neurons of the embedding layer 802 and the output layer 804 to lower the loss. According to the determined gradients, the weights of the neurons may be updated by using a gradient descent algorithm. If a predetermined loss may be achieved by the CBOW model, the training may be terminated and a trained CBOW model may be obtained. From the trained CBOW model, the embedding layer 802 may be suitable for embedding input data comprising one or more elements. This embedding layer 802 may be used in other machine-learning architectures requiring an embedding layer 802 such as a transformer encoder, transformer decoder or transformer encoder decoder architecture as described within the context of FIG. 9A, FIG. 9B and FIG. 9C. For training these architectures, a trained embedding layer 802 may be required. Hence, a model such as a CBOW model may be trained prior to training the transformer encoder, transformer decoder or transformer encoder decoder architecture.
[0136] Fig. 9A illustrates an embodiment of a transformer encoder architecture.
[0137] The transformer encoder comprises an encoder input 978, one or more encoder blocks 974, 914 and an encoder output. The transformer encoder architecture may be derived from the transformer encoder-decoder architecture as known in the art and shown in FIG. 9C. In particular, the transformer encoder may be referred to as X-former. The transformer encoder architecture may correspond to the encoder architecture associated with the transformer encoder-decoder architecture with an additional encoder output instead of connecting the encoder block directly to the decoder of the transformer encoder-decoder architecture. A plurality of transformer encoder architectures are available in the art such as the bi-directional encoder representations from transformers (BERT).
[0138] The input data may be received at the encoder input 978. The input data may be contextualized chemical product data. The encoder input 978 may apply an input embedding 902. Applying the input embedding 902 may refer to passing the input data through an embedding layer eg as described within the context of FIG. 8. Applying the input embedding 902 to the contextualized chemical product data may result in embedded contextualized chemical product data.
[0139] The encoder input 978 may apply positional encoding 904. Applying positional encoding 904 may refer to adding a positional factor to the embedded input obtained via input embedding. Preferably, the input data may specify a sequence of elements. The positional factor Ppos may be indicative of the position of the elements within the sequence. For example, the positional factor Ppos may be obtained based on the following equation: where pos may refer to the position of the element within the sequence, I may refer to the dimension associated with the input embedding and d may refer to the dimension of the model, eg transformer decoder, transformer encoder or transformer encoder-decoder. This may be referred to as absolute positional embeddings. Alternatively, the positional encoding may be based on rotary positional embeddings (RoPE). Positional encoding is beneficial since it enables the processing of sequential data without requiring further dimensions indicating the position of each element. Followi ngly, the positional encoding 904 reduces the computational resources needed for embedding the input data. By passing the input data through the encoder input, the input data may be transformed into a second-rank tensor representing the sequence of elements. This second-rank tensor may be referred to as embedded input data. The embedded input data may be processed by the encoder block. The embedded input data may be provided to the layer normalization 908 by a residual connection. Multi-head self attention 906 may be applied to the embedded input data. Multi-head self attention 906 may comprise the two components multi-head and self-attention. Self-attention may be understood as being a filter applied to the embedded input data. By applying the filter to the embedded input data, the elements associated with the embedded input data contributing to the to be generated output data may be identified for generating the output data. Hence, the filter may represent the degree of contributing to the to be generated output data by the elements associated with the embedded input data. Applying the filter may be referred to as weighting the elements associated with the embedded input data. This is advantageous specifically regarding long sequences of elements. The filter may be learned and improved during the training by learning to identify the contribution of elements associated with the embedded input data. For example, in the partial sentence "I went to the bakery to buy a” the last word may be generated by the data-driven model such as the transformer encoder. The self attention may focus the transformer encoder to attend to the word "bakery” and "buy” mostly to generate the word "bread”. Self attention may refer to attention generated based on the input data. Hence, the filter may be determined based on the input data, preferably the embedded input data. The embedded input data may serve as query Q, key K and value V with respect to the self attention operation. The self attention may refer to attention based on the received input data. Hence, the filter may be calculated based on the following formula by inserting the respective tensors based on the embedded input data: where dk corresponds to the dimension of the key.
[0140] For improving the efficiency of the transformer encoder further, the multiple heads are used to apply the filter resulting in the multi-head self attention 906. Multi-head self attention 906 may comprise applying the filter to two or more parts of the embedded input data. Hence, the tensor may be split into two or more parts and the filter may be applied to the two or more parts separately by two or more heads according to the following equation:head i =Attention (QWiQ, KWiK, VWtVwith parameter matrices yQeRdxd£?, W,K€ jg>dxdvwhere I may refer to the number of heads, dy, dx and dQ may refer to the dimensions of the value, key and query.
[0141] The result of the two or more head may be concatenated according to the following equa- where yE^hdv*d and h may refer to the number of heads.
[0142] The embedded input data may be transformed via the multi-head self attention 906 into a context tensor. The context tensor may represent the sequence of elements and the relation between two or more elements of the input data. Transforming the embedded contextualized chemical product data may result in chemical product and environmental property data context tensor 622. Transforming the embedded contextualized chemical product data may result in chemical product data context tensor 620. Hence, the context tensor may be chemical product data context tensor 620 and / or chemical product and environmental property data context tensor 622. The context tensor may be a second rank tensor and / or may comprise one or more first rank tensor(s). After the multi-head self attention 906 layer normalization 908 may be applied based on the context tensor and / or the embedded input data from the residual connection. Applying layer normalization 908 may refer to normalizing the context tensor. Normalizing the context tensor may lower the values of the entries of the context tensor. This reduces the computational cost associated with processing the context tensor. Layer normalization 908 may be followed by passing the context tensor to a feed forward layer 910 again followed by layer normalization 912 based on the residual connection to the context tensor and / or the output of the feed forward layer 910. The feed forward layer 910 may be a feed-forward neural network. The feed-forward neural network may comprise of a plurality of fully connected neurons. Passing the context tensor through the feed-forward neural network may result in transforming the context tensor linearly. Additionally or alternatively, the neural network may comprise one or more activation functions such as a rectified linear unit (ReLU). Hence, the neural network may be configured for performing one or more non-linear operations to the context tensor and / or transforming the context tensor non-li nearly . After the context tensor has been transformed and / or normalized by the feed forward layer 910 and the layer normalization 912, the context tensor may be provided to one or more further encoder blocks 914. Having passed the context tensor through the feed forward layer 910 may adapt the context tensor for the processing by a further attention layer of the one or more further encoder blocks 914 for applying a self attention filter, preferably multi-head self attention 906. The context vector after being transformed by the layer normalization 912 and the feed forward layer 910 may be referred to as hidden state.
[0143] The encoder output 976 comprises of a linear layer 916 and a softmax layer 918. The linear layer 916 may transform the context vector into a logits vector. The linear layer may be fully-connected. The logits vector obtained by passing the context tensor through the linear layer 916 may be passed through the softmax layer 918. Passing the logits vector through the softmax layer 918 may refer to applying the softmax function to the logits vector. Applying the softmax function to the logits vector may result in a probability distribution of one or more elements corresponding to the sequence of elements in the input data. From the probability distribution based on predefined selection criteria, one or more elements may be chosen. The one or more chosen elements may be referred to as the one or more elements generated by the transformer encoder. The one or more generated elements may be provided to the encoder input for generating further one or more elements corresponding to the sequence of the input data and the one or more elements generated by the transformer encoder as described within the context of FIG. 10.
[0144] The output data from the encoder output 976 may be chemical product production and / or processing data. Hence, the result of transforming the chemical product data context tensor 620 may be chemical product production and / or processing data.
[0145] FIG. 9B illustrates an embodiment of a transformer decoder architecture. Input data, embedded input data, context tensor and / or output data may be as defined within the context of FIG. 9A.
[0146] The transformer decoder comprises a decoder input 984, one or more decoder blocks 980, 932 and a decoder output 992. The transformer decoder architecture may be derived from the transformer encoder-decoder architecture as known in the art and shown in FIG. 9C. The transformer decoder may be referred to as X-former. The transformer decoder architecture may correspond to the decoder architecture associated with the transformer encoder-decoder architecture independent of receiving one or more hidden states from the encoder of the transformer encoder-decoder. A plurality of transformer decoder architectures are available in the art such as the generalized pretrained transformers (GPT).
[0147] The decoder input 984 may apply input embedding 920 and positional encoding 922 analogous to analogous to the input embedding 902 and the positional encoding 904 as described within the context of FIG. 9A.
[0148] The decoder block 980 may comprise the layer normalizations 926, the masked multi-head self attention 924, the feed forward layers 928 and / or the layer normalization 930. The embedded input data resulting from passing the input data through the decoder input 984 may be provided to the layer normalization 926 via a residual connection. Further, masked multi-head self attention 924 may be applied to the embedded input data. Masked multi-head self attention 924 corresponds to the multi-head self attention 906 as described within the context of FIG. 9A with additionally masking a part of the embedded input data associated with elements later in the sequence than the element to be generated. Additionally or alternatively, the part of the input data associated with elements later in the sequence than the element to be generated may not be received and / or transformed into the embedded input data. Thus, the transformer decoder may be suitable for generating a subsequent element to a sequence, whereas the transformer encoder may be suitable for generating a missing element in within one sequence and / or between two or more sequences. Therefore, the transformer encoder may be configured for classification tasks. The transformer decoder may be configured for text generation.
[0149] Similar to the transformer encoder as described within the context of FIG. 9A, a context tensor may be generated by applying the masked multi-head self attention 924 and the layer normalization 926. The context tensor may be provided to the layer normalization 930 via a residual connection. Further, the feed forward layer 928 and the layer normalization 930 may be analogous to the feed forward layer 910 and the layer normalization 912 as described within the context of FIG. 9A. The context tensor may be provided to one or more further decoder blocks 932.
[0150] The decoder output 992 may comprise of a linear layer 934 and a softmax layer 936. The linear layer 934 and the softmax layer 936 may be analogous to the linear layer 916 and the softmax layer 918 as described within the context of FIG. 9A.
[0151] FIG. 9C illustrates an embodiment of a transformer encoder-decoder architecture. Input data, embedded input data, context tensor and / or output data may be as defined within the context of FIG. 9A.
[0152] The transformer encoder-decoder may comprise the encoder input 988, the one or more encoder blocks 986, 964, the decoder input 994, the decoder block 990 and the decoder output 992. The encoder input 988 may correspond to the encoder input 978 of FIG. 9A. The one or more encoder block 986, 964 may correspond to the one or more encoder blocks 974, 914 of FIG. 9A. The decoder input 994 may correspond to the decoder input 984 of FIG. 9B.
[0153] The decoder block 990 may comprise a masked multi-head self attention 970, a layer normalization 972, a feed forward layer 938 and a layer normalization 940 analogous to the masked multi-head self attention 924, the layer normalization 926, the feed forward layer 928 and the layer normalization 930 as described within the context of FIG. 9B. The decoder block 990 may further comprise a multi-head self attention 950 and a layer normalization 948. Analogous to the description of FIG. 9B, the context tensor may be obtained from the masked multi-head self attention 970 and the layer normalization 972. Multi-head self attention 950 analogous to the multi-head self attention 906 of FIG. 9A may be applied to the context vector obtained from the layer normalization 972 and the hidden states of the one or more encoder blocks 986, 964. Layer normalization 948 may be applied to the context vector obtained from the multi-head self attention 950 and the context vector obtained from the layer normalization 972 provided via a residual connection. The context vector resulting from the layer normalization 948 may be processed via the feed forward layer 938 and the layer normalization 940 analogous to the description of FIG. 9B. The context vector resulting from the layer normalization 940 may be provided to further decoder blocks 942 analogous to the decoder block 990. The context vector obtained from the one or more decoder blocks 990, 942 may be provided to the decoder output 992. The decoder output 992 may correspond to the decoder output 982 of FIG. 9B.
[0154] With the above-described architecture, the transformer encoder-decoder may receive and process input data at the encoder input 988 and the one or more encoder blocks 986, 964 and the decoder block 990 and the decoder output 992. Based on the input data, the transformer encoder-decoder may generate output data part by part or sequentially. The sequentially generated output data may be provided to and / or may be processed by the decoder input 994, the one or more decoder blocks 990, 942 and the decoder output 992. Preferably, a sequence may be provided to the encoder input 988 and after having generated at least a part of the output data, the decoder input 994 may be provided with at least the part of the elements of the output data already generated. By doing so, the next elements of the output data may be generated with a higher accuracy by taking the input data and the generated output data into account since more data is received by the transformer encoder-decoder may be received over time.
[0155] Because of the transformer encoder-decoder architecture, the transformer encoder-decoder may be configured for transforming a sequence into another representation of the sequence. An example for transforming one sequence into another representation may be translation of one sentence into another language. A plurality of transformer encoder-decoders are available in the art such as BART, T5 or the like.
[0156] In an embodiment, the layer normalization 908, 912 may be applied prior to the masked multi-head self attention 924, multi-head self attention 906 and / or the feed forward layer 910 in the transformer decoder, the transformer encoder and / or the transformer encoder-decoder. By doing so, the computational resources for applying the multi-head self attention 906 and / or the feed forward layer 910 to the embedded input data and / or the context tensor may be decreased as the entries of the respective tensors may be lower after normalization.
[0157] In an embodiment, the decoder output 992 may comprise of a classification neural network, further feedforward layers, convolutional layers, fully connected layers or the like. For example, the transformer encoderdecoder may be configured for choosing between a plurality of options. For this purpose, the transformer encoder-decoder may be provided with three different input data sets and may classify the context vectors obtained from the one or more decoder blocks 990 via one or more linear layers. Followingly, the architecture may be extended depending on the use case to be solved.
[0158] FIG. 10 illustrates an embodiment of training and / or deploying the transformer encoder, the transformer decoder and / or the transformer encoder-decoder.
[0159] The encoder / decoder / encoder-decoder architecture 1002 may correspond to the transformer decoder, the transformer encoder and / or the transformer encoder-decoder as describe within the context of FIG. 9A- FIG. 9C. Input data, embedded input data, context tensor and / or output data may be as defined within the context of FIG. 9A.
[0160] The output data generated by the encoder / decoder / encoder-decoder architecture 1002 may comprise of one or more elements, in particular a sequence of elements. The previously generated elements of the output data may be provided as input for generating the next element in the sequence of the output data.
[0161] In the example of FIG. 10, the input data may comprise of N elements, in particular input tokens. An input token may be a token dedicated to be inputted into a data-driven model such as the transformer decoder, the transformer encoder or the transformer encoder-decoder. The output data to be generated may comprise of M elements. The encoder / decoder / encoder-decoder architecture 1002 may generate one element of the output data based on receiving the input data and optionally previously generated elements of the output data at a timestep. Hence, for generating M elements M time steps are required. A time step comprises of providing input 1010, 1012, 1014 to the encoder / decoder / encoder-decoder architecture 1002 and receiving output data 1004, 1008, 1006 from the encoder / decoder / encoder-decoder architecture 1002. In a first timestep, the input 1010 may comprise of N input tokens. The N input tokens may be associated eg with N words, stems or endings. Preferably, the N input tokens may specify a question. One or more input tokens may specify the beginning of the sequence of tokens and / or the end of the sequence of tokens. The input 1010 may be processed by the encoder / decoder / encoder-decoder architecture 1002. Based on the input 1010 at least a part of the output data 1004 may be generated. The at least a part of the output data may comprise a first output token. In the next timestep, the generated first output token may be provided together with the input 1012. Specifically, where the input 1012 may be received by a transformer encoder-decoder the input tokens may be received at the encoder input 988 and the first output token may be received at the decoder input 994. Where the input 1012 may be received by the transformer encoder, the input 1012 may be received by the encoder input 978 and analogously regarding the transformer decoder and the decoder input 984. Based on the input 1012, the output data 1008 comprising the first output token and a second output token may be generated. Generating the output data 1008 based on the input 1012 may refer to generating the second token based on the first token and the N input tokens, wherein the first token may have been generated based on the N input tokens. This process may be repeated until the last token in the sequence of the output data 1006 may be generated. Preferably, the last token may be an end token. The end token may terminate the generation of a further output token.
[0162] Similarly, to the data processing during deployment of the encoder / decoder / encoder-decoder architecture 1002, the encoder / decoder / encoder-decoder architecture 1002 may be trained. The training data set may comprise a plurality of sequences comprising a plurality of elements. The sequences may be associated with the input data and / or the output data. Additionally or alternatively, the sequences may be independent of the input data and / or the output data. For example, where the input data and the output data may refer to chemical compositions represented via text, the training data set may comprise sequential text data independent of chemical compositions. In this example, the training data set may comprise sequences of words originating from a conversation. In an embodiment, the training data set may comprise at least partially input data sets and / or output data sets.
[0163] The training may be initialized by initializing the encoder / decoder / encoder-decoder architecture 1002. In an embodiment, the parameters associated with the encoder / decoder / encoder-decoder architecture 1002 may be initialized randomly. Additionally or alternatively, the input embedding of the encoder / decoder / encoder-de- coder architecture 1002 may be obtained by training a CBOW model or a skip gram model as described within the context of FIG. 8. The trained embedding layer may be used during training. The parameters associated with the embedding layer may be kept constant and / or may be updated after a predefined number of training epochs. By doing so, the number of parameters to be updated is lower enabling a faster and less computational resources-consuming training. Further, the accuracy associated with the embedding layer may be constant and / or may be increased by avoiding error compensation in relation to the just initialized encoder / de- coder / encoder-decoder architecture 1002.
[0164] During the training of the encoder / decoder / encoder-decoder architecture 1002, at least a part of the sequences of the training data set may be provided to the encoder / decoder / encoder-decoder architecture 1002 one by another and one or more elements may be generated based on the sequences of the training data set one by another. The elements generated based on the sequences may follow the elements of the parts of sequences the encoder / decoder / encoder-decoder architecture 1002 may have been provided with. The generated one or more elements may be compared to the one or more elements following the at least a part of the sequences provided to the encoder / decoder / encoder-decoder architecture 1002 as specified by the training data set. Hence, during the training the encoder / decoder / encoder-decoder architecture 1002 may generate a guess on the next element and the guess on the next element in a sequence may be compared to the ground truth specifying the actual next element according to the training data set. Based on the guess on the next element and the ground truth a loss may be determined. The loss may define the similarity between the guess on the next element and the ground truth. The loss may be determined by forming a vector dot product between the token associated with the one or more elements and the token associated with the ground truth. A loss unequal to zero may result in updating the parameters associated with encoder / decoder / encoder-decoder architecture 1002. Preferably the parameters associated with the encoder / decoder / encoder-decoder architecture 1002 may be independent of the embedding layer. For example, the parameters associated with the en- coder / decoder / encoder-decoder architecture 1002 may be weights of the neurons of the encoder / decoder / en- coder-decoder architecture 1002.
[0165] Based on the determined loss, backpropagation may be applied to determine the gradients associated with the parameters of the parameters associated with encoder / decoder / encoder-decoder architecture 1002 to lower the loss. According to the determined gradients, the parameters associated with the encoder / de- coder / encoder-decoder architecture 1002, preferably the weights of the neurons associated with the en- coder / decoder / encoder-decoder architecture 1002, may be updated by using a gradient descent algorithm.
[0166] The training data set may be unlabeled. The sequences of elements within the training data set may inherently comprise the ground truth for determining the loss with respect to the one or more elements generated during the training of the encoder / decoder / encoder-decoder architecture 1002. Hence, the encoder / decoder / encoder- decoder architecture 1002 may be trained self-supervised. This is advantageous since time and resources for creating a labeled training data set may be saved. Furthermore, this enables the usage of large training data sets associated with a size of several tera bytes. Consequently, the data-driven model may be accurate in generating elements of a sequence. In addition, the large training data set enables few shot predictions or even zero shot predictions. Hence, the data-driven models trained as described above are versatile contributing to saving resources needed for training and / or hosting a plurality of purpose-driven models such as CNNs. The training described above may be referred to as pretraining. The data-driven model may be configured for performing few shot or even zero shot predictions with respect to a plurality of use cases after pretraining. The performance of the data-driven model may be increased further by additional training referred to as finetuning.
[0167] FIG. 11 illustrates an embodiment of input embedding. Input data, embedded input data, context tensor and / or output data may be as defined within the context of FIG. 9A.
[0168] Where the sequence of elements associated with the input data, preferably comprised in the input data, may be of one type, the input embedding 902, 920, 952, 966 as described within the context of FIG. 9A - 2C may be used. For example, a type of input data may be text where the elements may be associated with at least a part of a word, a punctuation character, a start token specifying the beginning of one or more sequences associated with the input data and / or the end token. In another example, the input data may be at least partially numerical. Hence, the input data may comprise a plurality of numbers. Numerical input data may be for example tabular data. Tabular data may specify one or more rows and / or one or more columns. Hence, the tabular data may comprise one or more cells, wherein the cells may be associated with one or more numerical values.
[0169] Numerical input data may require a different embedding than text input data. Input embeddings for numerical input data may comprise a token embedding, a positional embedding, a column embedding, a row embedding or a combination thereof.
[0170] Applying a token embedding to one or more elements, in particular tokens associated with the input data may result in a machine-processable representation associated with the one or more elements, in particular tokens. Applying the token embedding to one or more elements may refer to passing the one or more elements through the embedding layer, e.g. as described within the context of FIG. 8. Hence, token embeddings may specify the one or more elements, in particular tokens in a machine-processable representation. For example, the token embedding may transform a numerical value into a vector. This is advantageous since this representation can be enriched by further information such as the position of the token within the sequence and / or within a table associated with the sequence of tokens. The positional embedding may be analogous to the positional embedding as described within the context of FIG. 8, FIG. 9A-2C. Where the input data may be tabular data, column embedding may be applied. Applying a column embedding to one or more elements, in particular tokens associated with the input data may result in a machine-processable representation specifying the location of the one or more elements within a table 1102, preferably within the columns of the table 1102. Applying the column embedding may refer to adding a column factor to the input data embedded via token embeddings, in particular the embedded input data. The column factor may be the same for elements associated with the same column and / or may differ between two or more elements associated with different columns. Analogous, row embeddings may be applied where the input data may be tabular data. Applying a row embedding to one or more elements, in particular tokens associated with the input data may result in a machine-processable representation specifying the location of the one or more elements within a table 1102, preferably within the rows of the table 1102. Applying the row embedding may refer to adding a column factor to the input data embedded via token embeddings, in particular the embedded input data. The row factor may be the same for elements associated with the same row and / or may differ between two or more elements associated with different rows.
[0171] In an embodiment, input data may be at least partially numerical and at least partially text. Hence, the input data may comprise two or more types of data. A type of data may refer to a modality. Followingly, different embeddings may be applied to the input data. To parts of the input data comprising text the input embedding referred to in FIG. 8, FIG. 9A-2C may be applied. To parts of the input data being numerical token embeddings, positional embeddings, column embeddings and row embeddings may be applied. Further, segment embeddings may be applied to the input data independent of the type of input data. The segment embedding may specify the type of input data one or more elements may be associated to. For example, if the input data comprises of text and numbers, the input data may comprise of two types of input data. Applying the segment embedding to the input data may refer to adding a segment factor to the input data, preferably the embedded input data and / or the input data after having applied the token embedding. The segment factor may specify the type of data associated with the one or more elements. The segment factor may be the same for one or more elements associated with the same type of input data and / or may differ between two or more elements associated with different types of input data.
[0172] Applying the token embedding, the positional embedding, the segment embedding, the column embedding, the row embedding, or a combination thereof may result in embedded input data and / or may be the output of any one of the encoder input 978, 984, 988 or decoder input 984, 994. The data obtained by applying the token embedding, the positional embedding, the segment embedding, the column embedding, the row embedding, or a combination thereof may be processed by the encoder block 974, 986, decoder block 980, 990, encoder output 976, decoder output 992, 982.
[0173] The present disclosure has been described in conjunction with preferred embodiments and examples as well. However, other variations can be understood and effected by those persons skilled in the art and practicing the claimed disclosure, from the studies of the drawings, this disclosure and the claims.
[0174] Any steps presented herein can be performed in any order. The methods disclosed herein are not limited to a specific order of these steps. It is also not required that the different steps are performed at a certain place or in a certain computing node of a distributed system, i.e. each of the steps may be performed at different computing nodes using different equipment / data processing.
[0175] As used herein ..determining" also includes ..initiating or causing to determine", "generating" also includes ..initiating and / or causing to generate" and "providing” also includes "initiating or causing to determine, generate, select, send and / or receive”. "Initiating or causing to perform an action” includes any processing signal that triggers a computing node or device to perform the respective action.
[0176] In the claims as well as in the description the word "comprising” does not exclude other elements or steps and the indefinite article "a” or "an” does not exclude a plurality. A single element or other unit may fulfill the functions of several entities or items recited in the claims. The mere fact that certain measures are recited in the mutual different dependent claims does not indicate that a combination of these measures cannot be used in an advantageous implementation. Jn the claims as well as in the description the word "comprising” or "including” or similar wording does not exclude other elements or steps and shall not be construed limiting to the elements or steps lined out. The indefinite article "a” or "an” does not exclude a plurality. A single element or other unit may fulfill the functions of several entities or items recited in the claims. The mere fact that certain measures are recited in the mutual different dependent claims does not indicate that a combination of these measures cannot be used in an advantageous implementation or further elements may be included.
[0177] Providing in the scope of this disclosure may include any interface configured to provide data. This may include an application programming interface, a human-machine interface such as a display and / or a software module interface. Providing may include communication of data or submission of data to the interface, in particular display to a user or use of the data by the receiving node, entity or interface.
[0178] Various units, circuits, entities, nodes or other computing components may be described as "configured to” perform a task or tasks. Configured to shall recite structure meaning "having circuitry that” performs the task or tasks on operation. The units, circuits, entities, nodes or other computing components can be configured to perform the task even when the unit / circuit / component is not operating. The units, circuits, entities, nodes or other computing components that form the structure corresponding to "configured to” may include hardware circuits and / or memory storing program instructions executable to implement the operation. The units, circuits, entities, nodes or other computing components may be described as performing a task or tasks, for convenience in the description. Such descriptions shall be interpreted as including the phrase "configured to.” Any recitation of "configured to” is expressly intended not to invoke 35 U.S.C. § 112(f) interpretation.
[0179] In general, the methods, apparatuses, systems, computer elements, engines, agents, nodes or other computing components described herein may include memory, software components and hardware components. The memory can include volatile memory such as static or dynamic random-access memory and / or nonvolatile memory such as optical or magnetic disk storage, flash memory, programmable read-only memories, etc. The hardware components may include any combination of combinatorial logic circuitry, clocked storage devices such as flops, registers, latches, etc., finite state machines, memory such as static random-access memory or embedded dynamic randomaccess memory, custom designed circuitry, programmable logic arrays, etc.
[0180] Moreover, any of the methods, method steps, processes and actions described or illustrated herein may be implemented using executable instructions in a general-purpose or special-purpose processor and stored on. A processor may be a processor of any suitable type, and is preferably a processor configured for parallel processing of at least a hundred or a at least a thousand threads in parallel, e.g. a graphical processing unit (GPU). For instance, the processor comprises at least a hundred or a at least a thousand parallel processing cores. In particular, the processor may comprise at least one (preferably at least a thousand) compute unified device architecture (CUDA) core(s), which may allow for using a graphical processing unit as the processor, which may increase computational efficiency. For instance, the processor may comprise at least one (e.g. at least a hundred) streaming multiprocessor cores, which may allow for increasing the data throughput. As a further example, the processor may comprise one or more (e.g. at least a hundred) tensor core(s). A tensor core may be specifically adapted to perform matrix operations and may allow to accelerate large matrix operations. A tensor core may be configured to perform mixed-precision matrix multiply and accumulate calculations in a single operation. For instance, a tensor core may perform mixed-precision floating- point matrix arithmetic, specifically utilizing FP16 (half-precision) inputs to produce either full-precision (FP32) or halfprecision (FP16) outputs. In the case of FP16 output, a tensor core may provide a performance boost by storing the intermediate accumulation results in FP32 format, thereby maintaining the precision necessary for accurate results. For example, a processor may comprise several thousand tensor cores, each capable of performing 64 floating point FMA (Fused M ulti ply-Add) operations per clock cycle. With these capabilities, such a GPU may allow for hundreds of TFLOPs (Tera Floating-Point Operations per Second) of performance in mixed-precision computations. Furthermore, a tensor core may support a variety of numerical formats, including IEEE standard half-precision, single-precision, and double-precision floating-point formats, as well as a range of integer formats.
[0181] A processor may be a processor of any suitable type, and is preferably a processor configured for parallel processing of at least a hundred or at least a thousand threads in parallel, e.g. a graphical processing unit (GPU). For instance, the processor comprises at least a hundred or a at least a thousand parallel processing cores. In particular, the processor may comprise at least one (preferably at least a thousand) compute unified device architecture (CUDA) core(s), which may allow for using a graphical processing unit as the processor, which may increase computational efficiency. For instance, the processor may comprise at least one (e.g. at least a hundred) streaming multiprocessor cores, which may allow for increasing the data throughput. As a further example, the processor may comprise one or more (e.g. at least a hundred) tensor core(s) and / or (e.g. at least a hundred) tensor processing units (TPUs) . A tensor core may be specifically adapted to perform matrix operations and may allow to accelerate large matrix operations. A tensor core may be configured to perform mixed-precision matrix multiply and accumulate calculations in a single operation. For instance, a tensor core may perform mixed-precision floating-point matrix arithmetic, specifically utilizing FP16 (half-precision) inputs to produce either full-precision (FP32) or half-precision (FP16) outputs. In the case of FP16 output, a tensor core may provide a performance boost by storing the intermediate accumulation results in FP32 format, thereby maintaining the precision necessary for accurate results. A tensor processing unit may be an application-specific integrated circuit (ASIC). It may comprise a matrix multiplication unit (MXU), which may be specifically adapted or configured for dense linear algebra operations. TPUs may be configured to handle large-scale matrix operations efficiently, which may provide high computational throughput for Al tasks. A TPU may be equipped with on-chip high-bandwidth memory (HBM), which may enhance the capability for the use of larger models and batch sizes. TPUs may be connected in groups called Pods, which may scale up workloads with minimal code changes. An MXU may be specifically configured for performing matrix multiplications. A TPU may comprise a tensor core.
[0182] For example, a processor may comprise several thousand tensor cores, each capable of performing 64 floating point FMA (Fused Multiply-Add) operations per clock cycle or (e.g. at least several hundred) tensor processing units (TPUs) being specifically configured for accelerating machine learning (ML) workloads, particularly for cloud-based applications. Additionally, Field-Programmable Gate Arrays (FPGAs) and Application-Specific Integrated Circuits (ASICs) may provide flexibility and performance benefits for specific Al tasks.. With these capabilities, such a GPU may allow for hundreds of TFLOPs (Tera Floating-Point Operations per Second) of performance in mixed-precision computations. Furthermore, a tensor core may support a variety of numerical formats, including IEEE standard halfprecision, single-precision, and double-precision floating-point formats, as well as a range of integer formats.
[0183] A processor may be a central processing units (CPU) configured with an advanced architecture, such as Intel's Xeon Scalable processors or AMD's EPYC series. A CPU may be configured for sequential processing and general-purpose computing. These CPUs may incorporate vector instruction sets, such as AVX-512, to accelerate mathematical computations that may e.g. enhance Al model training and inference. Furthermore, CPUs may integrate Al accelerators i.e. a CPU may be specifically configured for deep learning workloads.
[0184] The processor may be coupled to memory having a memory bandwidth of at least a hundred gigabytes per second, which may allow efficient handling of extensive data sets and may allow faster reading, processing, and writing compared to a general-purpose processor such as a computational processing unit.
[0185] The memory may be a high-capacity memory configured to manage the data-intensive nature of Al applications, providing necessary bandwidth and storage capacity for complex datasets. The memory may for instance be DDR4, DDR5, High Bandwidth Memory (HBM) and / or GDDR6X memory, which may improve data transfer rates and reduce latency. Such memory may enhance e.g. modeling and real-time sensor data for monitoring and control. Further, the memory may be operated with memory optimization techniques, such as caching and prefetching, which may enhance the execution speed of Al algorithms. Non-volatile Memory (NVM) technologies, including NAND Flash and 3D XPoint, may provide persistent storage solutions with high-speed access, which may enhance rapid data storage and retrieval for Al applications.
[0186] Any disclosure and embodiments described herein relate to the methods, the systems, apparatuses, devices, chemicals, materials, computer program elements lined out above and vice versa. Advantageously, the benefits provided by any of the embodiments and examples equally apply to all other embodiments and examples and vice versa. All terms and definitions used herein are understood broadly and have their general meaning.
Claims
42CLAIMS1 . A method for monitoring and / or controlling a production environment including distributed systems for tracking material flows of the production environment, the method comprising the steps: providing at least one user instruction and one or more instruction templates relating to monitoring and / or controlling of material flows; selecting one or more instruction template(s) based on the user instruction; generating based on the one or more selected instruction template(s) one or more instruction(s) including at least one task instruction related to the monitoring and / or controlling of material flows; generating at least one operation instruction for monitoring and / or controlling of material flow by providing the one or more generated instruction (s) to at least one general-purpose data-driven model, wherein the at least one data-driven model is trained on unstructured natural language data and is configured to process natural language; providing the at least one operation instruction for monitoring and / or controlling the production environment.
2. The method of claim 1 , wherein depending on the user instruction multiple instruction templates may be selected and / or processed sequentially.
3. The method of any of the preceding claims, wherein one or more instruction template(s) may be selected based on the user interaction and / or the generated operation instruction of at least one preceding selection and at least one preceding generation process.
4. The method of any of the preceding claims, wherein the instruction templates relate to identification of operations tracking data, retrieval of operations tracking data, selection of machine-readable monitoring and / or control instructions, execution of machine-readable monitoring and / or control instructions or combinations thereof.
5. The method of any of the preceding claims, wherein the instruction templates include at least one task instruction specifying the task to be executed by the general-purpose data-driven model, at least one specification relating to operations tracking data stored including operations tracking data descriptions as metadata and / or at least one specification relating to machine-readable control and / or monitoring instructions stored including descriptions as metadata.
6. The method of any of the preceding claims, wherein generating instructions includes providing at least part of the operation instructions generated by the general-purpose data-driven model from one or more preceding instruction(s) to a subsequent instruction template.
437. The method of any of the preceding claims, wherein one or more instruction template(s) include at least one task instruction related to the monitoring and / or controlling of material flows based on identification of operations tracking data, wherein the operations tracking data is stored including operations tracking data description as metadata, wherein the one or more instruction(s) are generated based on the operations tracking data description, wherein the operations tracking data is identified and / or retrieved based on the operation instruction generated by the general-purpose data-driven model from the instruction(s) generated based on the operations tracking data description.
8. The method of any of the preceding claims, wherein one or more instruction template(s) include at least one task instruction related to the monitoring and / or controlling of material flows based on operations tracking data retrieval, wherein the one or more instruction(s) are generated based on the operations tracking data retrieved, wherein the operation instruction is generated by the general-purpose data-driven model from the instruction® generated based on the operations tracking data retrieved.
9. The method of any of the preceding claims, wherein one or more instruction template(s) include at least one task instruction related to the monitoring and / or controlling of material flows based on at least one selected machine-readable monitoring and / or control instruction, wherein the one or more instruction(s) are generated based on the at least one selected machine-readable monitoring and / or control instruction, wherein the operation instruction is generated by the general-purpose data-driven model from the instruction(s) generated based on the at least one selected machine-readable monitoring and / or control instruction.
10. The method of any of the preceding claims, wherein the at least one operation instruction is validated based on the generated operation instruction and a validation template, wherein the validation template includes in natural language task instructions for the data-driven model to validate the operation instruction, wherein one or more instruction(s) are generated based on the validation template, wherein the one or more instruction(s) are provided to the general-purpose data-driven model for validating the generated operation instruction, wherein upon receipt of the response from the data-driven model a validated operation instruction is provided.11 . The method of any of the preceding claims, wherein the at least one operation instruction is configured to display operations tracking data identified and / or retrieved and / or to trigger monitoring and / or controlling at least one of the of material flows.
12. The method of any of the preceding claims, wherein the at least one operation instruction is configured to display machine-readable monitoring and / or control instructions selected and / or to execute machine-readable monitoring and / or control instructions.
13. The method of any of the preceding claims, wherein the at least one operation instruction is provided to at least one of the distributed systems for tracking material flows for execution and / or the at least one operation44 instruction is to be executed to provide the result of the execution to at least one of the distributed systems for tracking material flows.
14. An apparatus for monitoring and / or controlling a production environment including distributed systems for tracking material flows of the production environment, the apparatus comprising: a template store configured to provide at least one user instruction and one or more instruction templates relating to monitoring and / or controlling of material flows; a selection engine configured to select one or more instruction templates based on the user instruction; an instruction engine configured to generate one or more instruction(s) including at least one task instruction related to the monitoring and / or controlling of material flows and configured to generate at least one operation instruction for monitoring and / or controlling of material flows by providing the one or more generated instruction(s) to at least one general-purpose data-driven model configured to generate the at least one operation instructions, wherein the at least one data-driven model is trained on unstructured natural language data and is configured to process natural language; monitoring and / or controlling engine configured to provide the at least one operation instruction for monitoring and / or controlling the production environment.
15. Use of the operation instruction generated according to the methods of any of claims 1 to 13 or by the apparatus of claim 14 for displaying monitoring and / or controlling instructions to an operator of the production environment and / or at least one of the distributed systems for tracking material flows of the production environment and / or for monitoring and / or controlling at least one of the distributed systems for tracking material flows of the production environment.
Citation Information
Patent Citations
Method for controlling industrial production process data of SCADA (supervisory control and data acquisition) system based on AI (artificial intelligence)
CN117930755A
Method, System, and Computer Program Product for Communication with an Intelligent Industrial Assistant and Industrial Machine
US20210342401A1
Method for extracting instructions for monitoring and / or controlling a chemical plant from unstructured data
US20230087208A1
Monitoring and / or controlling equipment
WO2025223986A1