Apparatus and method for controlling and / or monitoring an agronomical resource
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- BASF DIGITAL FARMING GMBH
- Filing Date
- 2024-08-23
- Publication Date
- 2026-07-01
AI Technical Summary
Farmers face challenges in efficiently managing agronomical resources due to complex tools that require expert knowledge and extensive training to optimize resource performance.
A method and apparatus for controlling and monitoring agronomical resources using a computer-implemented system that authenticates users, generates encoded user identifiers, and utilizes a prediction device to provide optimized querying instructions based on user-specific data.
The system enables efficient management of agronomical resources by simplifying complex data retrieval, reducing the need for extensive training, and providing user-specific insights, thereby improving resource performance.
Smart Images

Figure EP2024073737_27022025_PF_FP_ABST
Abstract
Description
[0001] APPARATUS AND METHOD FOR CONTROLLING AND / OR MONITORING AN AGRONOMICAL RESOURCE
[0002] TECHNICAL FIELD
[0003] This disclosure relates to the technical field of agronomics. In particular the present disclosure relates to a method for controlling and / or monitoring an agronomical resource and to an agronomic assistant apparatus for controlling and / or monitoring an agronomical resource and to a method for training a prediction device.
[0004] TECHNICAL BACKGROUND
[0005] A farmer or user when controlling and / or monitoring an agronomical resource often faces the challenge that he / she does not know the exact condition of the resource and substantially all factors that may have impact to operate the resource with a high performance.
[0006] For agronomical resources like fields, tools such as field managing tools exist in order to make information about an agronomical resource available. However, such tools may be very complex and may need a lot of experience for optimizing the management of the agronomical resource. Often, for drawing the right conclusions for improving the performance of a resource a lot of experience may be necessary to find the right view of the many views provided by a management tool and a lot of training may be necessary.
[0007] The knowledge of how to improve the situation of an agronomical resource may be available but in complex tools expert knowledge may be necessary to find the right source of information.
[0008] SUMMARY
[0009] In view of the above, it may be an object of the present invention to provide an efficient management of an agronomical resource.
[0010] In an aspect the disclosure relates to a method for controlling and / or monitoring an agronomical resource, to an agronomical assistant apparatus for controlling and / or monitoring an agronomical resource and to a data structure.
[0011] The object of the present invention is solved with the subject matter of the independent claims, wherein further embodiments are incorporated in the dependent claims. It should be noted that the following described aspects and examples apply for the method as well as for the apparatus, and a method for training a prediction device.
[0012] In this disclosure, a method, in particular a computer implemented method, may be described. The method may be usable for controlling and / or monitoring an agronomical resource. The method may comprise authenticating a user for retrieving an identity, authorizing the user in order to get an access rule set for the user and getting the access rule set of the user for accessing a repository having user specific data associated with the agronomic resource.
[0013] The method further comprises encoding the identity of the user and the access rule set of the user for accessing the repository to an encoded user identifier and getting repository description data, wherein the repository description data comprise information about data retrievable from the repository by using the encoded user identifier.
[0014] The method also comprises receiving agronomical querying data associated with an agronomical query from the user, wherein the agronomical query is related to the agronomical resource and forwarding the agronomical querying data and the repository description data to a prediction device.
[0015] Furthermore, a querying instruction associated with the agronomical querying data is generated by the prediction device such, that the generated querying instruction and the agronomical querying data are linked by a predefined probability relation and such that the querying instruction comprises at least one request to the repository having the user specific data associated with the agronomic resource.
[0016] The method may be implemented as a computer implemented method to be run on a processor.
[0017] A program element may be disclosed, wherein the program element comprises program code which, when loaded to a processor is adapted to e to execute the described method.
[0018] Furthermore, a computer readable medium is provided, wherein the computer readable medium comprises program code which, when loaded to a processor, is adapted to execute the described method.
[0019] Furthermore, agronomic assistant apparatus for controlling and / or monitoring an agronomical resource is described an identification device which may support a user answering agronomical questions and using information owned by the user. The agronomic assistant apparatus may be used as a tool that may communicate with the user. The agronomic assistant apparatus comprises an identification device, an encoding device, a repository management device and a prediction device. Instead of the prediction device being integrated into the assistant apparatus, the assistant apparatus may have an interface connectable with a prediction device, e.g. with an external prediction device.
[0020] The identification device is adapted for authenticating a user for retrieving an identity, wherein the identification device is further adapted for authorizing the user in order to get an access rule set and for actually getting the access rule set of the user for accessing a repository having user specific data associated with the agronomic resource.
[0021] The encoding device is adapted for encoding the identity of the user and the access rule set of the user for accessing the repository to an encoded user identifier, e.g. an access token or an API key. The repository management device is adapted for getting repository description data, wherein the repository description data comprise information about data retrievable from the repository by using the encoded user identifier. The repository management device is further adapted for forwarding the agronomical querying data and the repository description data to the prediction device.
[0022] The prediction device may be adapted for generating a querying instruction associated with the agronomical querying data such, that the generated querying instruction and the agronomical querying data are linked by a predefined probability relation and such that the querying instruction comprises at least one request to the repository having the user specific data associated with the agronomic resource. The predefined probability relation may be set by a temperature parameter. In an example, the prediction device may be implemented as a separate device.
[0023] The apparatus may further allow for executing the request to the repository and provide a corresponding response via a data interface.
[0024] The identification device may allow for using personal and / or private data in combination with a prediction device. Thus, the prediction capability of the prediction device may be used in combination with private data.
[0025] A method for training a prediction device may be disclosed, the method comprising sending repository description data to a prediction device, wherein the repository description data comprise information about data retrievable from the repository by using the encoded user identifier. In an example, the training may comprise adding an additional data layer to the prediction device, wherein the additional data layer may comprise weights which may be adjusted during the training process. The weights may be used in addition to weights of the prediction device which may be left unchanged during the training process In another example weights of the prediction device may be adjusted during the training process and no additional data layer may be added. The weights may be adapted to the repository description data and allow for indicating data retrievable from the repository by using the encoded user identifier. In addition, or as an alternative, the training may comprise training for specific agricultural knowledge and / or an agronomical resource. The agricultural knowledge may be provided as structured or unstructured data. The training data may also comprise a list of repositories and / or tools that may be used by the prediction device. The training data may also comprise examples of situations for which specific tools and / or repositories may be used and how they may be used. This may comprise a syntax of how to formulate a query, e.g. of how to transfer a mathematical problem into a mathematical formula.
[0026] Any disclosure, embodiments and examples described herein relate to the methods, the systems, apparatuses, chemical products and computer elements lined out above and below. Advantageously, the benefits provided by any of the embodiments and examples equally apply to all other embodiments and examples.
[0027] EMBODIMENTS In the following, embodiments of the present disclosure will be outlined by ways of examples. It is to be understood that the present disclosure is not limited to said embodiments and / or examples.
[0028] In an embodiment the prediction device is a Large Language Model (LLM). A LLM uses a large number of data points in order to make good predictions and provide a good relationship between querying data and response data and / or querying instructions.
[0029] In another embodiment the encoded user identifier is a token. A token may combine user data and credentials and may provide a single text string that may be used without disclosing the real identity of the user.
[0030] In a further embodiment the agronomical resource is selected from the group of agronomical resources consisting of a farm, a field, a plant treatment product, a product registration and an application device, e.g. a spraying device for plant treatment products.
[0031] In yet another embodiment, the repository description data comprise a repository description selected from the group of repository description data consisting of an API (application programmable interface) description, a GQL (Graphical Querying Language) description and / or a CFD (Cross Farm Dashboard) description.
[0032] The repository description may be able to show the prediction device what information exists, without disclosing the information itself. The information may be user specific and / or private information, e.g. PI I (Personally Identifiable Information).
[0033] In another embodiment the repository having user specific data associated with the agronomic resource comprises structured data and / or unstructured data. Examples of repositories that may comprise structured data are Elastic Search, Open Search and / or RDBMS (Relational Database Management System) repositories. A folder having PDF- files may be named as unstructured repository as there is no common criteria to arrange the information with regard to the content.
[0034] In yet a further embodiment the repository may have user specific data associated with the agronomic resource comprises sensor data, geospatial information; map information and / or weather data.
[0035] In another embodiment the querying instruction comprises a request, e.g. POST, GET, to a tool, e.g. a math tool, and / or to a repository, e.g. a repository comprising domain specific data or product registration.
[0036] In yet another embodiment the agronomical query comprises a question about the number of fields of the user, about the state of at least one field of the user, about the crop of the field and / or about the yield.
[0037] User specific knowledge may be needed for answering such questions. In a further embodiment the querying instruction comprises a representation strategy, a file format and / or layout.
[0038] Information may be presented as natural language text it may also be represented by text to speech conversion. File formats may help generating a desired representation, e.g. a diagram, graph, JSON, xml, view of a dashboard, a vector file format like svg, pdf, tex. These file formats may include a hierarchy that may help to structure provided information. The information may be represented as graph and / or as a graphical chart.
[0039] In another embodiment the querying instruction comprises a workflow representing an intent of the user.
[0040] It may be possible to have a chain of instructions that may be executed in a defined order. In this way private data may be used without communicating the private data to the prediction device. The answer to a query may be generated based on the repository description data. Thus, the answer may always be newly generated based on the input data and substantially not retrieved from a preprocessed database. Thus, the query instruction may depend on the query data and temperature and may not comprise filtering and / or retrieving a data base.
[0041] In a further embodiment the method further comprises a loop, wherein the loop is executed until the querying instruction provides a response to the agronomical query from the user.
[0042] The loop may allow for getting information piece by piece. In an example the private data may be added as last action. In this way the disclosing of private information may be prevented. In an example, the prediction device may return an error message and / or an advice that the prediction device is not able to continue however the prediction device make a proposal which tool and / or repository to be used to continue. In another example the agronomical querying data may comprise an instruction, wherein the instruction may include a proposal which tool and / or repository to be used to continue in a case where the prediction device may not be able to provide a complete querying instruction in response to the agronomical querying data. Based on this instruction the prediction device may find an alternative tool and / or repository for continue the loop.
[0043] The assistant apparatus may be voice controlled and may prevent long training for a user of a user interface.
[0044] In a further embodiment repository description data comprise API data, address data, endpoint data, target data and / or master data.
[0045] BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In the following, the present disclosure is further described with reference to the enclosed figures. The same reference numbers in the drawings and this disclosure are intended to refer to the same or like elements, components, and / or parts. Fig. 1 shows a flow chart of a method for controlling and / or monitoring an agronomical resource.
[0047] Fig: 2 illustrates an example embodiment of a block diagram of an agronomical assistant apparatus.
[0048] Fig. 3 shows a detailed view of block diagram of Fig. 2.
[0049] Fig. 4 illustrates an example embodiment of a block diagram of an agronomical querying system.
[0050] Fig. 5 illustrates two message flow diagrams for an agronomic assistant apparatus.
[0051] Fig. 6 illustrates a message flow diagram for an agronomic assistant apparatus having an access component.
[0052] Fig. 7 illustrates a block diagram for an agronomical querying system.
[0053] FIG. 8 illustrates an embodiment of obtaining an embedding layer.
[0054] FIG. 9A illustrates an embodiment of a transformer encoder architecture.
[0055] FIG. 9B illustrates an embodiment of a transformer decoder architecture.
[0056] FIG. 9C illustrates an embodiment of a transformer encoder-decoder architecture.
[0057] FIG. 10 illustrates an embodiment of training and / or deploying the transformer encoder, the transformer decoder and / or the transformer encoder-decoder.
[0058] FIG. 11 illustrates an embodiment of input embedding.
[0059] DETAILED DESCRIPTION
[0060] The following embodiments are mere examples for implementing the method, the apparatus, the system, the data structure or apparatus disclosed herein and shall not be considered limiting.
[0061] Fig. 1 shows a flow chart of a method for controlling and / or monitoring an agronomical resource.
[0062] The method comprises in state 101 authenticating a user for retrieving an identity. The user 205 may be identified by logging in into an agronomic assistant apparatus 200, e.g. for entering agronomical querying data. In addition to identifying the user, the user may also be authorized in state 102. The authorization procedure may provide an access rule set 205” for the user 205.
[0063] This rule set may be associated with the user 205. The rule set may include rules that indicate permissions a user has in one or more tools and / or repositories 204. (State 103).
[0064] In this way by logging into the agronomic assistant apparatus 200, in particular into an identification device 201 , the identity of the user is known to the agronomic assistant apparatus 200 and credentials may be provided for the user 205. The agronomic assistant apparatus 200 gets the access rule set 205” of the user 205 for accessing the repository 204 having user specific data associated with the agronomic resource.
[0065] By encoding the identity of the user 205 and the access rule set 205” of the user for accessing the repository to an encoded user identifier 205’” or token 205”’ the identity of the user 205 gets hidden for external objects. Any Personal Identifiable Information (PH) of the user is hidden for external objects, outside of agronomic assistant apparatus 200. The encoding of the identity and generating a token may happen in state 104.
[0066] The agronomic assistant apparatus 200 gets in state 105 repository description data 204’ from the repository and / or a local storage in the agronomic assistant apparatus 200. The repository description data 204’ may comprise information about the data structure in the repository 204, the type of data provided and / or information about the access opportunities of how to access data in the repository 204, such as an API (Application Program Interface) description. This repository description data 204’ comprise information about data retrievable from the repository by using the encoded user identifier 205”'. In an example the repository description data may be tool description data and describe the capabilities of a specific tool and how to access the tool.
[0067] It is possible to communicate with repositories and / or access the data even they are outside of the influencing area of the agronomic assistant apparatus 200. Even external devices such as a prediction device 203 may be used without disclosing any PH information about the user 205.
[0068] In other words, by using encoded user identifier 205'" personal information of the user 205 in a repository 204 may be included in any action and / or prediction of the prediction device 203 without disclosing the personal PH information to the prediction device.
[0069] Agronomical querying data 205’ associated with an agronomical query from the user 205 wherein the agronomical query is related to the agronomical resource 220, e.g., a field and / or a farm is received from the user 205 in state 106. As this agronomical querying data 205' is received from the authenticated and / or authorized user this agronomical querying data 205’ can be associated to the user 205. Thus, the agronomic assistant apparatus 200 has knowledge about the user 205 and his or hers agronomical querying data 205’ and may dispatch them to the prediction device 203. In this way it may be prevented that the prediction device 203 need to handle PH data of the user 205.
[0070] After receiving the agronomical querying data 205' in the agronomic assistant apparatus 200 the agronomic assistant apparatus 200 forwards in state 107 the agronomical querying data 205' and the repository description data 204' to the prediction device 203.
[0071] In state 108 the prediction device 203 generates, a querying instruction 203' associated with the agronomical querying data 205' such, that the generated querying instruction and the agronomical querying data are linked by a predefined probability relation and such that the querying instruction 203' comprises at least one request to the repository having the user specific data associated with the agronomic resource.
[0072] In other words, the prediction device 203 generates a querying instruction 203’ or a set of querying instructions 203’ associated with the agronomical querying data 205’ such, that the certainty for the generated querying instruction 203’ and the agronomical querying data 205’ form a sequence is above a predefined certainty threshold; and such that the querying instruction comprises at least one request 207 to the repository 204 having the user specific data 205"” associated with the agronomic resource.
[0073] In an example, the certainty threshold may correspond to a temperature value or temperature parameter for a transformer device 203, e.g. an LLM.
[0074] In other words, the agronomical querying data 205' is structured in a way that when forwarded to and interpreted by the prediction device 203, the prediction device 203 generates a querying instruction 203' that can retrieve a response to the agronomical querying data 205' provided by the user. The agronomical querying data 205' are associated with the agronomical query of the user and allow the prediction device 203 to react to an intend of the user 205 asking the question about controlling and / or monitoring the agronomical resource (not shown in Fig. 2) to which the user specific data 205'"' are associated with.
[0075] If the prediction device 203 is realized by a transformer device and / or an LLM (Large Language Model) device querying data are tokenized. By receiving the agronomical querying data 205', for example in a tokenized form, the prediction device is adapted in such a way to predict a highly likely continuation of the agronomical querying data 205'.
[0076] The agronomic assistant apparatus 200 may be adapted in such a way to restructure, if necessary, the agronomical querying data 205' such that the prediction device 203 is substantially forced by its inner structure to respond with a querying instruction 203'and / or a set of querying instructions 203'. In this way the agronomic assistant apparatus 200
[0077] Fig: 2 illustrates an example embodiment of a block diagram of an agronomical assistant apparatus 200. The agronomical assistant apparatus 200 may be seen as a dispatching apparatus as the agronomical assistant apparatus 200 receives information from a user 205 and tries to forward received information as long as an appropriate response may be generated. The agronomical assistant apparatus 200 for controlling and / or monitoring an agronomical resource (the agronomical resource not shown in Fig. 2) comprises an input device 208a, an output device 208b, a prediction device connecting device 210 or an interface 210 to a prediction device 203 and a stacking device 209.
[0078] The input device 208a or input interface 208a is adapted for receiving agronomical querying data 205’ associated with an agronomical query from a user 205. The input device may be adapted for receiving different type of input data, such as natural language data, sound data and / or visual data. The input device 208a may be adapted to convert the received agronomical querying data 205' into a text-based stream.
[0079] The stacking device 209 is adapted for forming a stack 209” of agronomical querying data by enhancing the agronomical querying data 205’ with prompting data 209’ or prompt data 209’.
[0080] Generating a stack 209” of data may comprise repeating of the enhancement of data to an existing stack 209” and in this way forming historical stack data 209”’. Historical stack data 209’” may comprise a collection of past data and an additional data unit. Thus, historical stack data 209’” may comprise more data than stack data 209”. It may be a property of a prediction device 203 that the probability relation between the input data, e.g. the stack 209” of agronomical querying data and / or the historical stack 209’” of agronomical querying data, to an intended querying instruction data 203” is more probable the more content is included in the input data 209”, 209’”. In an example, the prompt data 209’ and / or stack data 209” may comprise an instruction indicating which tool and / or repository 204 to use and / or how to use it in cases where the prediction device 203 may not be able to provide a complete answer. Such incomplete answer and / or incomplete querying instruction of the prediction device 203 may generate a looped access to the prediction device 203.
[0081] Even if historical data may comprise a plurality of historic stack 209”' data in this text substantially only stack 209" data and historical stack 209”' data are differentiated irrespectively of how many times a method may be recalled or looped and how many generations of data are contained in a stack.
[0082] The prompting data 209' may comprise an indication for intended agronomical response data 203”' in response to the agronomical querying data 205'. In other words, by generating prompting data 209' the prediction device 203 may be influenced in a targeted way to a specific intended agronomical response data 203”' and may influence the response to the agronomical query. Thus, by designing the prompting data 209’ the prediction device 203 may be directed into the agronomical area in a data space inside the prediction device 203. In this way, specific agricultural knowledge may be triggered in the prediction device 203. The prediction device may be pre-trained with general and publicly available structured and / or unstructured data related to the agronomical area, e.g. by teaching the prediction device with videos about agronomical knowledge and / or respective transcripts of the videos. The influence may also include the format of the provided intended agronomical response data 203’”, e.g. whether textual and / or diagrammatical answer format may be more appropriate for a query. In an example the prompting data 209' may influence whether a response is provided as text base output or graphical output.
[0083] In another example it may also be possible to leave the output format open and use the most common format for a specific question type as suggested by the prediction device 203. An example for a graphical output may be a timing diagram showing different seasons and necessary treatment steps in a sequential order, e.g. as a Gantt-diagram and / or as a treatment program.
[0084] The prediction device connecting device 210 and / or prediction interface 210 is adapted for connecting and / or interfacing with a prediction device 203 and for forwarding the stack 209" of agronomical querying data to the prediction device 203 for generating agronomical response data 203". The prediction device connecting device 210 may also handle an access token and / or API key that authorizes the agronomical assistant apparatus 200 to use the prediction device 203.
[0085] The prediction device analyses the forwarded stack 209” of agronomical querying data and generates agronomical response data 203" linked to the forwarded stack 209” of agronomical querying data by a predefined probability relation. The prediction device 203 may be an LLM 203 which uses a temperature parameter to influence the predefined probability relationship.
[0086] The prediction device connecting device 210 and / or the prediction device interface 210 may be adapted for receiving the agronomical response data 203” from the prediction device 203. By the specific design of the prompt data 209’ the prediction device is instructed to indicate whether enough information is available for providing the intended agronomical response data 203'”.
[0087] The output device 208b is adapted for checking the received agronomical response data 203”
[0088] If the output device 208b realizes that the received agronomical response data 203” comprise querying instruction data 203' for at least one tool 204 and / or for at least one repository 204 the output device 208b triggers the stacking device 209 to invoke the at least one tool 204 and / or the at least one repository 204 and triggers the stacking device 209 to execute the querying instruction data 203', 207 on the at least one tool and / or on the at least one repository 204.
[0089] In this way the prediction device 203 may be adapted for instructing and / or controlling the agronomical assistant apparatus 200 to provide missing information and / or missing functionality. Missing information may be private data such as Pll information and / or special knowledge like special agronomical relationships between different plant treatment products, environmental parameter such as weather data, field data and / or application devices. The private repository 204 and / or Master Data (MD) may also comprise the information about controlling and / or monitoring an agronomical resource. Master data may be stored in a master database. The master database may comprise a product database, a weed database and / or a formulation database.
[0090] A master data database may store information about crop trait and / or crop characteristics, e.g. which crop trait is tolerant against which herbicide. The master database may also comprise information about varieties and variety characteristics. The master database may also comprise geolocation information e.g. which weeds are relevant for which region and / or for which country. In general, the master data database may store the agronomical knowledge. In an example the master data database may comprise structured and / or unstructured data.
[0091] The master database may also comprise regulatory data, i.e. which plant treatment product can be used under which conditions. The regulatory data may also be country specific. The master database may also comprise information about the type of formulation, e.g. use it with water or another liquid or apply a specific product in solid form.
[0092] An agronomical resource may be a field, a plant treatment product, an application device e.g. a spraying device and / or a seeding device. In order to control an application device for instance control data, e.g. an application map, may be generated that instructs the application device about the location and / or quantity to apply a plant treatment product.
[0093] The output device 208b is adapted for providing intended agronomical response data 203”’, which include the agronomical response data 203" and / or the result of executing the querying instruction data 203’ on the at least one tool and / or on the at least one repository 204. The intended agronomical response data 203'” may reflect the intent the user 205 had when providing agronomical querying data 205'.
[0094] In an example the intended agronomical response data 203'” may be converted into data for controlling and / or monitoring the agronomical resource, e.g. into control signals for an application device. The application device may be used to treat a field. The control data may be distributed via a CAN bus (Controller Area Network).
[0095] The result and / or output of executing the querying instruction data 203' on the at least one tool and / or on the at least one repository 204 may be used by the stacking device 209 to form an historical stack 209”' by enhancing the stack 209” of agronomical querying data which was the basis for generating querying instruction data 203' with the result of executing the querying instruction data 203' on the at least one tool 204 and / or on the at least one repository 204 and forwarding the historical stack 209'” of agronomical querying data again to the prediction device 203 for generating more complete agronomical response data 203”.
[0096] However, in cases where the result and / or output of executing the querying instruction data 203’ on the at least one tool and / or on the at least one repository 204 comprise private data, the private data may be prevented from being sent to the prediction device 203 and may be directly provided by the agronomical assistant apparatus 200 to the user 205 via output device 208b.
[0097] Building a stack 209” and / or historical stack 209”' of agronomical querying data and forward the stack to the prediction device 203 and interpreting the output of the prediction device 203 may be repeated until an end condition may be detected. The generation of an end condition may be injected into the prediction device 203 by forming specific prompt data 209'. In an example the end condition may be included in the prompt data 209' and / or stack data 209”. For instance, the end condition may be provided as a text stream and / or as a string. In an example, the end condition may be marked by a key word. In another example, the agronomical querying data may comprise an example for resolving an exemplary agronomical query.
[0098] Upon detecting the end condition and / or an end signal the intended agronomical response data 203”’ may be provided via the output device 208b. The output device 208b may be adapted to convert any structural information in a format that may be easy to understand by a user. In an example a JSON file may be difficult to be understood by a user. However, a text in natural language and / or a graphical representation may be easy to understand for a user.
[0099] The intended agronomical response data 203”’ include the agronomical response data 203" and / or the result of executing the querying instruction data 203’ on the at least one tool and / or on the at least one repository 204.
[0100] In other words, by controlling the at least one tool 204 and / or on the at least one repository 204 the agronomical assistant apparatus 200 may provide functionality that is missing in the prediction device 203. An example of a missing functionality is a mathematical operation. The prediction device 203 may be aware that mathematical operations exist, however due to the fact that it is a prediction device it may not have mathematical functionality included. Thus, the agronomical assistant apparatus 200 may transfer missing functionality to the agronomical assistant apparatus 200 and may instruct the agronomical assistant apparatus 200 to provide a result of a predefined operation.
[0101] In another example PH information and / or secret information may also not be available in the prediction device 203. In one embodiment the prediction device 203 may be trained by a fine-tuning operation to have such private information available. In a further embodiment the private information may be kept separately from the prediction device 203 and only description data 204' are provided to the prediction device 203. This description data 204' may teach the prediction device 203 what information is available in the agronomical assistant apparatus 200 and how this information may be accessed. The description data may comprise an interface description, an API (Application Program Interface) description and / or a data structure.
[0102] By informing the prediction device, e.g. in form of an historical stack 209”’of enhanced agronomical querying data, the prediction device may use the information from the repositories 204 without substantially accessing the information. In an example one repository 204 may be a field managing device. The field managing device may comprise a plurality of Pll data, a description of different views and / or actual environment data such as satellite data and / or weather data. In an example a field management tool 204 and / or a field management repository 204 may provide different views in form of dashboards, e.g. a cross farm dashboard (CFD). A dashboard may display a satellite photo of a field and may show different zone views of the field which indicate the different parameter of a field according to a predefined colour scheme. A filter may allow for filtering field specific information and display user specific details of a field. In an example, user specific details of a field may comprise the cycle of the treatment and / or a treatment history. In other words, a dashboard and / or field management device may be a collection of data and support a user 205 to retrieve the user specific information necessary for an analysis of the state of a field. However, in order to get a complete picture of a field the selection of different views and data collections may be necessary. The agronomic assistant apparatus 200 may be a support tool that helps the user 205 to compile the necessary information for a specific question a user 205 may have about a field and / or any other resource of the user.
[0103] A prediction device 203 may not have access to currently available data as the prediction device 203 may only benefit from historical data which it has been trained with. But the prediction device may use the agronomical assistant apparatus 200 in order to access the current information. The current information may be information that is valid at the time of making an inquiry.
[0104] The prediction device may also suggest a beneficial view for displaying intended agronomical response data 203”’ related to agronomical querying data 205’. The prediction device may be adapted to detect that a specific view may be beneficial by having learned that a specific view may get positive feedback from a user 205 in a specific situation of provided agronomical querying data 205'
[0105] In this way the agronomical assistant apparatus 200 may simplify the operation of a field management device by using positive past feedback for suggesting a specific view, e.g. a bar chart, a pie diagram etc., to an inexperienced user.
[0106] In an example the user 205 may ask the agronomical assistant apparatus 200 for the best treatment timing and the prediction device may suggest providing the intended agronomical response data 203”’ in form of a timing diagram instead of a pure textual output.
[0107] Fig. 3 shows a detailed view of block diagram of Fig. 2 and shows how private data is handled.
[0108] In particular the agronomic assistant apparatus 200 for controlling and / or monitoring an agronomical resource 220 is shown comprising an identification device 201, an encoding device 202, a repository management device 206 and a prediction device 203. The identification device 201 is adapted for authenticating a user 205 for retrieving an identity, wherein the identification device 201 is further adapted for authorizing the user 205 in order to get an access rule set 205" and for getting the access rule set 205” of the user for accessing a repository 204 having user specific data 205”” associated with the agronomic resource.
[0109] The encoding device 202 is adapted for encoding the identity of the user 205 and the access rule set 205” of the user for accessing the repository 204 to an encoded user identifier 205"', wherein the repository management device 206 is adapted for getting repository description data 204', wherein the repository description data 204' comprise information about data retrievable from the repository 204 by using the encoded user identifier 205'".
[0110] The repository management device 206 is further adapted for forwarding the agronomical querying data 205' and the repository description data 204’ to the prediction device 203, wherein the prediction device 203 is adapted for generating a querying instruction 203’ associated with the agronomical querying data 205’ such, that the generated querying instruction 203’ and the agronomical querying data 205’ are linked by a predefined probability relation, and such that the querying instruction 203’ comprises at least one request 207 to the repository 204 having the user specific data 205”” associated with the agronomic re-source.
[0111] Access to the user specific data 205”” is only possible with a token that may be protected from prediction device 203. In this way user specific data 205”" may be blocked from prediction device 203.
[0112] Fig. 4 illustrates an example embodiment of a block diagram of an agronomical querying system 600. Fig. 4 shows the agronomic assistant engine 200', the agronomic assistant device 200' and / or the agronomic assistant service 200'. The agronomic assistant engine 200' may be a processing device on an agronomic assistant apparatus 200.
[0113] Physical connections are not shown in Fig 4. However, physical connections may exist between the agronomic assistant engine 200', the prediction device 203 and the tools 204a and repositories 204b, 204c. The different devices are connected by physical connections and / or logical connections, e.g. VPN (Virtual Private Network). The agronomic assistant engine 200' may be organized like a hub and connects the prediction device 203, the farmer 205 or user 205, the tools 204a and repositories 204b, 204c.
[0114] If a question is received in the agronomic assistant engine 200' it is combined with prompting data 209' and forwarded to the prediction device 203. The prediction device 203 may generate the final question if the prediction device 203 may have all information and / or data available for generating the final intended agronomical response data 203"'. In an example the prompting data 209' may comprise an example for solving a specific agronomical problem and / or answer a specific agronomical query.
[0115] If the prediction device may not have all information the prediction device 203 responds to the agronomic assistant engine 200’ with a tool and / or repository which the prediction device may suggest to use in order to find the final intended agronomical response data 203"'. The agronomic assistant engine 200' may receive a strategy from the prediction device 203 in form of instructions. The agronomic assistant engine 200' may follow the instruction and invoke a corresponding tool 204a and / or repository 204b, 204c. The tool may be a mathematical tool 204a, a dictionary and / or a weather tool. The tool may provide functionality not available in the prediction device. Another example of a tool providing current information may be a market price retrieving tool, a stock exchange tool and / or a B2B platform where a user may be able to retrieve an actual market price for a yield and / or crop.
[0116] A possible question may also be to ask the agronomic assistant apparatus 200 to provide the quantity of an herbicide to be ordered for all fields of a user under the condition of current geospatial field maps.
[0117] The agronomic assistant apparatus 200 may also have access to at least one sensor, e.g. weather sensor, in order to determine the current condition at a field from the user. As an alternative or in addition a sensor repository 204 may exist where at least one sensor of the user 205 stores current sensor data. Such a repository may be an eventbased repository allowing for reconstructing a time series of the at least one sensor data. The sensor data may also comprise satellite data, drone data, remote sensing data, cab sensor data, LAI (Leaf area index) data, GAI (Green Area Index) data and / or ground based sensor data. The sensor data may support monitoring of the agronomical resource.
[0118] The repository 204b may be a domain specific repository 204b having local information available locally close to the agronomical resource which is to be controlled or monitored.
[0119] The repository 204c may be a private repository having PH information of a user 205 Private data may be data that are related to the user 205, e.g. the number of fields the user has, and / or data that describe the user 205 like a name or birthday.
[0120] In order to protect the private data from being accessed by the prediction device 203 in state “iO" the agronomic assistant engine 200' invokes the tool 204a and / or repository 204b, 204c as selected by the prediction device 203. In Fig. 4 the prediction device 203 chooses the PH specific data repository 204c. The prediction device 203 may be a monolithic device responding to the different tools 2004a and / or services 200’. The prediction device 203 may also be realized as separate devices, e.g. separate LLMs, which are individually allocated to the different tools and / or services and separated from another.
[0121] Fig. 4 shows that the Pll specific data repository 204c may comprise two parts. The PH specific data repository 204c may comprise a PH specific data tool 204c' or a Pll specific data component 204c'.
[0122] The PH specific data repository 204c may also comprise a PH database. The PH specific data tool 204c' may be integrated in the agronomic assistant apparatus 200. The PH specific data tool 204c' may handle the access to the PH database 204c" where actually the data are stored.
[0123] In general, a repository 204, 204c, 204b may comprise an access component 204c' and a database component 204c". The access component 204c’ may ensures authentication and / or authorization in order to allow for access to the database component 204c”. The access component 204c' may also distribute the description data 204' that may be ingested and / or fed into the prediction device 203. The access component 204c' may generate an access token in order to grant access to the database component 204c".
[0124] In an example, access component 204c' may form an access interface 204c' to the database component 204c". The access interface 204c' may be included in the agronomic assistant apparatus 200, whereas the database component 204c" may be a remote component, e.g. running on a server and / or in a cloud environment.
[0125] In state “11” the access component 204c’ forwards repository description data 204’, e.g. a database schema, as prompting data 209’, as stack 209” of agronomical querying data and / or as historical stack 209’” of agronomical querying data to the prediction device 203. Even if Fig. 4 suggests that access component 204c’ is in direct contact with the prediction device 203, the distribution of repository description data 204’ is made via stacking device 209, which may also be integrated into the agronomic assistant apparatus 200.
[0126] The prediction device 203 responses in state “i2” to the provision of the database schema 204’ with a database query 207 via the output device 208b, as shown in Fig. 2. In other words, when the prediction device 203 receives repository description data 204' the prediction device 203 uses the repository description data 204' and generates instructions 203', 207, if necessary for generating intended agronomical response data 203”'. The instructions 203', 207 cause in state “i3” the access component 204c' and / or the database interface component 204c' to request data from the database component 204c”, when the instructions 203', 207 are executed by the agronomic assistant apparatus 200, in particular by the agronomic assistant engine 200'.
[0127] Data, e.g. PH data, which are retrieved in state “i4" as a result of executing the querying instruction data 203' on the at least one tool 204, 204a and / or as a result of querying the at least one repository 204, 204b, 204c from the database component 204c” are provided in state “i5” to the agronomic assistant engine 200'. The agronomic assistant engine 200' either adds the results of executing the querying instruction data 203' on the at least one tool 204, 204a and / or on the at least one repository 204, 204b, 204c to the intended agronomical response data 203'” and provides the intended agronomical response data 203'" to the user 205. Or adds the results of executing the querying instruction data 203' on the at least one tool 204, 204a and / or on the at least one repository 204, 204b, 204c to stack of agronomical querying data 209" and continues the loop via the prediction device 203.
[0128] As long as no end condition is detected by the agronomic assistant engine 200’ in state “j” further prompting data 209’ may be generated and forwarded to the prediction device 203. In other words, as long as no end condition is detected, stack 209” of agronomical querying data and / or a historical stack 209'” of agronomical querying data is generated and provided to the prediction device 203. The feeding to the prediction device is repeated with additionally gathered data from the domain repository 204b and / or from the Pll repository 204c.
[0129] However, if an end condition is detected, the intended agronomical response data 203"' is generated and the intended agronomical response data 203'" is provided to the user 205.
[0130] The agronomic assistant apparatus 200 hides and / or encapsulates the complexity of a software tool 204 and / or repository, e.g. an agronomical software, by understanding the intent of the user 205, converting the intent into action and generating an output 203"' according to the intent. The agronomic assistant apparatus 200 uses a prediction device 203 or an LLM in the agricultural field.
[0131] Training time for learning how to operate the software may be prevented or reduced. The agronomic assistant apparatus 200 may continuously learn from the questions of a user and the preference from the user in displaying the output 203’". For the user specific preferences, a separate prediction device and / or LLM device may be provided which is separated from the main prediction device 203. The agronomic assistant apparatus 200 may comprise an artificial intelligence (Al) model and / or program code to understand in which situations different graphical presentations may be useful and, in this way, may also make proposals to a user. In one example the assistant may be an Al model trained to a specific technical subject such as agronomical knowledge. A specific training to a special technical subject may be achieved by fine-tuning a Large Language Model (LLM) to that specific technical subject.
[0132] The assistant 200 may run in a private environment but may have interfaces to different data sources, repositories 204 and / or tools 204. The data sources may comprise structured and / or unstructured data.
[0133] Structured data like a form may comprise key value pairs and may follow a hierarchical structure and / or an ontology In an example one of the data sources may be a semantic web. The structure may also be provided by annotations, metadata, labels and / or knowledge graphs.
[0134] Unstructured data may comprise scientific papers, electronic documents, blogs, images, videos, transcripts of videos and / or other voice recordings.
[0135] In an example the agronomic assistant apparatus 200 receives input data 205' and / or agronomical querying data 205' comprising an overall problem to be solved. The problem may be in the technical field of agricultural knowledge and / or agronomical knowledge. The agronomic assistant apparatus 200, e.g. a software module, is able to divide the overall problem to be solved in sub-problems and combination rules in order query different data sources 204, e.g. public data, private data, structured data and / or unstructured data, logical operators, mathematical operators. The agronomic assistant apparatus 200 may also be able to generate different output types and / or output formats, e.g. graphical and / or textual output 203”’. The agronomic assistant apparatus 200 may learn different repository description data and / or tool description data
[0136] 204, e.g. API structures and may generate appropriate queries in order to receive solutions to sub-problems for solving the overall problem.
[0137] A problem may be to provide the 5 most inefficient fields of a farmer 205. In order to solve this problem, sub-problems may be identified by the prediction device 203 such as how are inefficient fields defined in the agronomic context. The assistant may identify this question as an agronomical problem and routes the inquiry to a specialized agronomical database 204'.
[0138] The specialized agronomical database 204 may be trained by different color schemes of geospatial maps, e.g. biomass maps, and may derive from the color schemes a state of an agronomical resource, e.g. a field.
[0139] In an example a prediction device 203 and / or a private prediction device may be trained by fine-tuning to understand zone maps and in particular to understand a color schema of a zone map. In this way the private prediction device may assess a map with zones for different performance in the zones like potential expected yield.
[0140] In order to identify a specific number of results the agronomical assistant apparatus 200 may be able to understand that a mathematical problem is to be solved and may use an inquiry to a mathematical tool 204a and / or LLM model.
[0141] The order of the relevant operations may be identified, e.g. to ensure that in a first step all fields may be assessed and after this first step in a second step the relevant fields may be selected.
[0142] In other words, the intent may be converted into a querying strategy and / or in a querying program
[0143] The agronomic assistant apparatus 200 may allow for building a conversational interface for text and / or audio input for users 205, e.g. farmers, to access agronomical (ag) intelligence, e.g. agronomical tools and / or repositories 204 in a dynamic way, by allowing natural dialogues with the user 205. The agronomic assistant apparatus 200 may be used as an assistant to carry out analysis and tasks.
[0144] In one example field specific and / or farm specific insights to regional insights may be considered by accessing a respective tool 204 and / or repository 204. The repository and / or tool 204, e.g. a NoSQL database and / or a JSON based database like Elasticsearch or OpenSearch may allow for leveraging structured personalized data and / or structured usage data. A field and / or farm may also have private user related PH data.
[0145] Product usage guidelines may be stored in a repository 204 as structured domain data. Domain data may have a regional and / or country related context and thus may by substantially locally limited. Such product usage guidelines may be stored as Master data (MD) in a master database 204. Applicable regulatory assessments may be stored as unstructured domain data, e g. nutrition rules from regional governments.
[0146] Geospatial information may comprise multivariable data, i.e. metadata related to a geographic location. They may be stored as ISO XML data in a corresponding repository 204 and may include the biomass and / or soil quality at a specific geographic coordinate. Multivariable data may be used for multivariable optimization, e.g. for geospatial analysis or for automatic anomaly detection by detecting whether high yielding field zones show up as low potential zones in current biomass maps.
[0147] The agronomic assistant apparatus 200 may be used for command execution and / or action execution. In an example, notes may be taken on a field, particularly a digital representation of an agronomical field, through voice commands and speech to text conversion.
[0148] The agronomic assistant apparatus 200 may increase the efficiency of model development by supporting efficient development, validation, and data lifecycle management.
[0149] The agronomic assistant apparatus 200 may be integrated as an assistant and / or chat tool in one of the tools 204 and / or repositories. It may be used as human to machine interface allowing users 205 to query their data in natural language within the scope of agricultural resources like a farm, fields and crops.
[0150] The agronomic assistant apparatus 200 may add by the stacking functionality of the stacking device 209 memory to a prediction device 203 and / or to a tool 204 or repository 204 for remembering context from a current and / or previous conversation.
[0151] The agronomic assistant apparatus 200 may comprise a fine-tuned LLM and / or leverage from a fine-tuned LLM portion of the prediction device 203 to extend the scope of a tool 204 and / or of a repository 204. The agronomic assistant apparatus 200 may learn to use an agent, e.g. a Python program code, to carry out specific tasks intended by the users 205. On command and / or on its own motion the agronomic assistant apparatus 200 may be instructed by the prediction device 203 to produce graphs and charts in response to user queries 205'. Using geospatial information may allow for geospatial analysis. Instructed by the prediction device 203 the agronomic assistant apparatus 200 may choose between multiple data sources 204 to answer a query 205'. By its self-learning functionality the agronomic assistant apparatus 200 may learn to extract knowledge from nutrition regulations for one region and make it available to a user 205 in an appropriate format.
[0152] The agronomic assistant apparatus 200 in combination with the prediction device 203 may allow for extending local agronomical knowledge to new crops and / or new countries or domains, e.g. derive agronomical knowledge for tomatoes in Romania even no experiments have been made in this domain. Fig. 5 illustrates two message flow diagrams for an agronomic assistant apparatus 200
[0153] Message flow diagram 610 shows a case where the prediction device 203 is able to generate the final answer or the intended agronomical response data 203”' to agronomical querying data without the involvement of any tool and / or repository 204. This may be the case if prediction device 203 is a pre-trained model and / or a fine-tuned model with regard to agronomical knowledge.
[0154] Message flow diagram 620 shows a case where the prediction device 203 has knowledge about available tools 204, 204a, 204b, 204c accessible via the agronomic assistant apparatus 200. Information retrieved from the tool 204a and / or from the repository 204b, 204c is blocked from being distributed to the prediction device 203. After the prediction device 203 informs the agronomic assistant apparatus 200 about the way how to retrieve desired information, the agronomic assistant apparatus 200 handles the information without sending it back to the prediction device 203.
[0155] Fig. 6 illustrates a message flow diagram for an agronomic assistant apparatus 200 having an access component 204c1.
[0156] Message flow diagram 630 shows a case where agronomical querying data 205’, query data 205’ and / or a query 205’ from a user 250 is assessed by an agronomic assistant apparatus 200, in particular by an agronomic assistant engine 200’ inside the agronomic assistant apparatus 200. The agronomic assistant apparatus 200 adds prompting data 209’ to the query data 205’ and forms a stack 209” of accumulated prompting 209’ and query data 205’. This stack 209” of accumulated data may be forwarded to the prediction device 203 which may realize by forming a probability relation with the stack 209” of agronomical querying data that an additional tool 204 and / or additional data from a repository 204 may be necessary in order to form a complete response.
[0157] For retrieving the missing information, the prediction device 203 may send querying instruction data 203' and / or agronomical response data 203" comprising an indication for the chosen tool 204 and / or for the chosen repository 204 to the agronomic assistant engine 200'. The indication may be instructions on how to initiate the tool 204 and / or repository 204 for returning the desired information.
[0158] The agronomic assistant engine 200' may realize that a special authorization procedure may be required in order to access the required data. For example, the required data may comprise PH data of the user and therefore authentication and / or authorization may be necessary.
[0159] The PH Tool 204c' or access component 204c' may be used for accessing PH data. For granting access to the PH information the user 205 may be authenticated and / or authorized in the agronomic assistant engine 200’. The agronomic assistant engine 200’ may have information about access privileges of a user 205 and about ways how a particular tool 204 and / or a particular repository 204 is accessed. The agronomic assistant engine 200’ may forward information about the chosen tool 204 and / or about the repository 204 to the access component 204c' of the tool 204, 204c and / or of the repository 204, 204c. Agronomic assistant engine 200' may also invoke the access component 204c' of the tool 204, 204c and / or of the repository 204, 204c.
[0160] The access component 204c’ may generate at state 631 a stack 209" of agronomical querying data and / or an historical stack 209” of agronomical querying data with prompting data 209', with repository description data 204' and / or with tool description data 204', e.g. API description data or schema of a database or tool. The description data 204’ may be generated to prevent private data and / or PI I data being included in the stack 209" and / or historical stack 209” and is sent towards the prediction device 203. The prevention of private information being sent to the prediction device may increase the security as no private data may be flooded in the prediction device 203.
[0161] By sending the stack 209” and / or historical stack 209” of query data to the prediction device 203 the prediction device 203 may be triggered to generate query data and / or a repository query and / or a repo query for the repository 204 and / or the tool 204. The query data are sent to access component 204c’ and by considering the access rights of the user 205 the query is sent to the database component 204c". The access privilege may be controlled by using access token in order to ensure that only authorized and / or authenticated user 205 may get access to the private information in database component 204c”.
[0162] As shown in Fig. 6 the PI I data of private database 204c" is passed around the prediction device 203 without ingesting private information in the prediction device 203 despite the fact that the prediction device 203 controls the access to the repository 204c. In this way a high security level may be guaranteed for private user data even by using a publicly accessible component such as the prediction device 203. As a prediction device may be time consuming to be trained it may be necessary to use the publicly available prediction device 203. The high amount of trained data makes the prediction device 203 useful for handling general publicly available knowledge, e g. by leveraging from the fact that prediction device 203 may know a good way of representing a specific type of information in a user accepted way.
[0163] The retrieved private data and / or PI I data and or any derived data may be provided to the user 205 as intended agronomical response data 203'" and / or final answer. The intended agronomical response data 203'" may be formatted in a way that meets the intention of the user 205 for the data.
[0164] Fig. 7 illustrates a block diagram for an agronomical querying system 600.
[0165] The input device 208a may comprise a user interface to receive a digital voice stream generated from the speech of a user. The speech is converted into a text with a speech to text converter. It is also possible to use a translation engine to convert any language into English. It may be possible that a prediction device 203 is trained for words in English language and thus the prediction may be easier if English text is provided. For translating the text, the prediction device may also be used. The prediction device 203 may comprise a generative Al LLM module that is connected with a structured agronomic master data database. This structured agronomic master data database may comprise specific agronomical knowledge which may be added to a prediction device 203 by fine-tuning the prediction device. The data retrieved from the master data database may be used for strategic considerations with regard to an agronomical resource. E.g. the master data database comprises information about how to treat an underperforming field in order to increase the performance. In an example the structured agronomic master data database may anonymously be accessed.
[0166] The prediction device 203 may also comprise a LLM transformer to database (DB) query module.
[0167] The LLM transformer to DB query module may control the access to private data and / or to PH data. The query module is connected to aggregated agricultural (AG) user and field and AG situation data. The aggregated AG user and field and AG situation data are generated from other data sources 204 and converted in fast searchable format, e.g. Elasticsearch, wherein Elasticsearch may use unstructured data. The aggregated AG user and field and AG situation data may form a meta-database and may comprise data relating to the agronomical resource which is to be monitored and / or to be controlled and the relation of the resource data to the user 205.
[0168] The aggregated AG user and field and AG situation data comprise structured user, farm, field data and may be user specific. In a separate database the aggregated AG user and field and AG situation data may be able to access structured AG model result data and may be user specific. The structured user, farm, field data and structured AG model result data may be stored in separate databases and / or separate storage areas.
[0169] The generative Al LLM module and the LLM transformer to DB query module may use at least partially the agronomical assistant apparatus 200 which may generate requests to the repositories 204 in a looped way by repetitively forming a stack 209” and / or historical stack 209”' of agronomical querying data. Fig. 7a shows that in an example the prediction device 203 may comprise separate prediction devices, e.g. the generative Al LLM module and the LLM transformer to DB query module.
[0170] The agronomical assistant apparatus 200 may return the intended agronomical response data 203'” in text form. However, the prediction device 203 may also suggest an appropriate way for outputting the generated data. Output device 208b may also comprise a rendering engine which uses the prediction device 203 in order to convert the intended agronomical response data 203"' into speech, into a graphical format and / or into natural language.
[0171] The querying instruction 203' may be provided as an output vector 816.
[0172] FIG. 8 illustrates an embodiment of obtaining an embedding layer. The embedding layer may be obtained by training for example a continuous bag of words model (CBOW) or a skip-gram 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.
[0173] Thus, the embedded input 814 may be the representation associated with the input data.
[0174] The input data may comprise a 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 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.
[0175] A look up table specifying a subset of the vocabulary size e.g. 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.
[0176] 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. 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 %.
[0177] 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.
[0178] 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 machinelearning 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
[0179] FIG. 9A illustrates an embodiment of a transformer encoder architecture. 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).
[0180] 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.
[0181] 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.
[0182] 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 pposmay be indicative of the position of the elements within the sequence. For example, the positional factor pposmay 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, e.g. 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: corresponds to the dimension of the key.
[0183] 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, KWtK, VWiV) with parameter matrices .Q WiKE ~RdxdkWiVE Mdxdvwhere I may refer to the number of heads, dy, d and dQ may refer to the dimensions of the value, key and query.
[0184] The result of the two or more head may be concatenated according to the following equation: MultiHead(Q, K, V) = Concat(head 1, . . . , headh) W° may refer to the number of heads. 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 attribute 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 attribute 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.
[0185] 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. The output data from the encoder output 976 may be chemical product production and / or processing data.
[0186] Hence, the result of transforming the chemical product data context tensor 620 may be chemical product production and / or processing data.
[0187] 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.
[0188] 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.
[0189] 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).
[0190] 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.
[0191] 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.
[0192] 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.
[0193] 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.
[0194] 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.
[0195] 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.
[0196] 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.
[0197] 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.
[0198] 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.
[0199] 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.
[0200] 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.
[0201] 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
[0202] FIG. 10 illustrates an embodiment of training and / or deploying the transformer encoder, the transformer decoder and / or the transformer encoder-decoder.
[0203] 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.
[0204] 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. 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 e.g. 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.
[0205] 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.
[0206] 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.
[0207] 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.
[0208] 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.
[0209] 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.
[0210] 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.
[0211] 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.
[0212] 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.
[0213] 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.
[0214] 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.
[0215] The positional embedding may be analogous to the positional embedding as described within the context of FIG. 8, FIG. 9A-9C. 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 1 102. 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 1 102, 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.
[0216] In an embodiment, input data may be at least partially numerical and at least partially text.
[0217] Hence, the input data may comprise two or more types of data. A type of data may refer to a modality. Follow- ingly, 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-9C 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.
[0218] 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.
[0219] 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 invention, from the studies of the drawings, this disclosure and the claims. 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.
[0220] 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.
[0221] In 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.
[0222] 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 entity.
[0223] Any disclosure and embodiments described herein relate to methods, 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.
[0224] All terms and definitions used herein are understood broadly and have their general meaning.
[0225] Reference numerals
[0226] 200 agronomic assistant apparatus
[0227] 201 identification device;
[0228] 202 encoding device;
[0229] 203 prediction device;
[0230] 203' querying instruction
[0231] 204 repository
[0232] 204' repository description data
[0233] 205 user
[0234] 205’ agronomical querying data
[0235] 205” access rule set
[0236] 205”’ encoded user identifier;
[0237] 205”” user specific data associated with an agronomic resource;
[0238] 206 repository management device;
[0239] 207 request
[0240] 208 output device
[0241] 209 memory device (chat history), agent prompt
[0242] 209’ condensed query
[0243] 220 agronomical resource
Claims
Claims:1 . Method for controlling and / or monitoring an agronomical resource, comprising: authenticating a user (205) for retrieving an identity; authorizing the user in order to get an access rule set for the user; getting the access rule set of the user for accessing a repository having user specific data associated with the agronomic resource; encoding the identity of the user and the access rule set of the user for accessing the repository to an encoded user identifier (205"'); getting repository description data (204'); wherein the repository description data comprise information about data retrievable from the repository by using the encoded user identifier (205’”); receiving agronomical querying data associated with an agronomical query from the user; wherein the agronomical query is related to the agronomical resource; forwarding the agronomical querying data (205’) and the repository description data (204’) to a prediction device (203); generating, by the prediction device, a querying instruction (203’) associated with the agronomical querying data such, that the generated querying instruction and the agronomical querying data are linked by a predefined probability relation; and such that the querying instruction comprises at least one request to the repository having the user specific data associated with the agronomic resource.2 Method of claim 1 , wherein the prediction device (203) is an LLM.3 Method of claim 1 or 2, wherein the encoded user identifier (205"') is a token.
4. Method of one of claims 1 to 3, wherein the agronomical resource (202) is selected from the group of agronomical resources (202) consisting of: a farm; a field; a plant treatment product; a product registration; an application device5. Method of one of claims 1 to 4, wherein the repository description data comprise a repository description selected from the group of repository description data (204’) consisting of: an API description; a GQL description;a CFD description6. Method of one of claims 1 to 5, wherein the repository (204) having user specific data associated with the agronomic resource (220) comprises structured data and / or unstructured data.
7. Method of one of claims 1 to 6, wherein the repository (204) having user specific data associated with the agronomic resource comprises sensor data, geospatial information; map information and / or weather data.
8. Method of one of claims 1 to 7, wherein the querying instruction (203’) comprises a request to a tool.
9. Method of one of claims 1 to 8, wherein the agronomical query (205') comprises a question about the number of fields of the user, about the state of at least one field of the user, about the crop of the field and / or about the yield.
10. Method of one of claims 1 to 9, wherein the querying instruction (203’) comprises a representation strategy and / or layout.
11. Method of one of claims 1 to 10, wherein the querying instruction (203’) comprises a workflow representing an intent of the user.
12. Method of one of claims 1 to 11, further comprising a loop, wherein the loop is executed until the querying instruction provides a response to the agronomical query (205’) from the user (205);13. Method of one of claims 1 to 12, wherein repository description data (204') comprises: API data; address data (endpoint); target data; master data.
14. Agronomic assistant apparatus (200) for controlling and / or monitoring an agronomical resource (205”'), an identification device (201); an encoding device (202); a repository management device (206); a prediction device (203); wherein the identification device (201) is adapted for authenticating a user (205) for retrieving an identity; wherein the identification device (201) is further adapted for authorizing the user (205) in order to get an access rule set (205”); andfor getting the access rule set (205") of the user for accessing a repository (204) having user specific data (205"") associated with the agronomic resource (220); wherein the encoding device (202) is adapted for encoding the identity of the user (205) and the access rule set (205") of the user for accessing the repository (204) to an encoded user identifier (205'”); wherein the repository management device (206) is adapted for getting repository description data (204’); wherein the repository description data (204') comprise information about data retrievable from the repository (204) by using the encoded user identifier (205'”); wherein the repository management device (206) is further adapted for forwarding the agronomical querying data (205') and the repository description data (204') to the prediction device (203); wherein the prediction device (203) is adapted for generating a querying instruction (203') associated with the agronomical querying data (205’) such, that the generated querying instruction (203’) and the agronomical querying data (205’) are linked by a predefined probability relation; and such that the querying instruction (203’) comprises at least one request (207) to the repository (204) having the user specific data (205””) associated with the agronomic resource.
15. Method for training a prediction device (203), comprising: sending repository description data to a prediction device; wherein the repository description data comprise information about data retrievable from a repository by using an encoded user identifier.