EP4490607A1 - Verfahren und computerprogramm zur automatisierten erzeugung von kommunikationsschnittstellen in algorithmen aus dem bereich der künstlichen intelligenz - Google Patents

Verfahren und computerprogramm zur automatisierten erzeugung von kommunikationsschnittstellen in algorithmen aus dem bereich der künstlichen intelligenz

Info

Publication number
EP4490607A1
EP4490607A1 EP23719674.6A EP23719674A EP4490607A1 EP 4490607 A1 EP4490607 A1 EP 4490607A1 EP 23719674 A EP23719674 A EP 23719674A EP 4490607 A1 EP4490607 A1 EP 4490607A1
Authority
EP
European Patent Office
Prior art keywords
source text
communication interface
computer program
semantic
library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP23719674.6A
Other languages
English (en)
French (fr)
Inventor
Andreas Wahl
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Mobility GmbH
Original Assignee
Siemens Mobility GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Mobility GmbH filed Critical Siemens Mobility GmbH
Publication of EP4490607A1 publication Critical patent/EP4490607A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven

Definitions

  • the invention relates to a method and a computer program for producing a further computer program product based on a source text of artificial intelligence algorithms.
  • Specialized software tools have become known for developing algorithms and procedures in the field of artificial intelligence. These software tools, such as “Jupyter Notebooks” (see also https://jupyter.org/), are suitable for supporting iterative and exploratory work by so-called data scientists during the development of artificial intelligence algorithms.
  • Providing a communication interface generator for generating at least one communication interface d. Analyzing the source text using the source text analysis component for the presence of the semantic annotations in the source text and passing the logic sequences from the library, which are clearly linked to the existing semantic annotations in the source text, to the communication interface generator; e. Reading out the transferred logic sequences that are clearly linked to the existing semantic annotations in the source text by the communication interface generator and f. Generating communication interfaces using the communication interface generator based on the read out logic sequences; G. Embedding the generated communication interfaces into the computer program product to be manufactured.
  • the method according to the invention is a computer-implemented method.
  • a source text provided with semantic annotations i.e. a source text with at least one source text construct, which is marked with at least one semantic annotation from the library of semantic annotations, is used as input and from this, in particular dynamically at runtime, a computer program product, especially an API product.
  • a computer program product generated in this way includes communication interfaces for embedding the artificial intelligence algorithms of the source text, including the artificial intelligence algorithms, into applications or processes.
  • the process is used in the development of the 202208051 Post-registration version Applications or processes used for the automated generation of the communication interfaces and for embedding the artificial intelligence algorithms called by the communication interfaces into the generated computer program product.
  • a computer program product according to the invention for producing a further computer program product comprises instructions which, when the program is executed by a suitable computer, cause it to carry out the method according to the invention.
  • the computer for executing the computer program product according to the invention can be a terminal or a server.
  • Computer program products can also be referred to simply as computer programs.
  • “manufacture” can also be referred to synonymously as “create” or “generate”.
  • the method thus causes the creation of a computer program product based on a source code of artificial intelligence algorithms.
  • the corresponding computer program product according to the invention serves analogously to create a further computer program product.
  • the “further” computer program product refers to the computer program product produced or created when carrying out the method according to the invention.
  • the term computer program is referred to below when the computer program product is meant for the production or creation of the (further) computer program product to be created or manufactured.
  • the computer program product produced or created using this computer program when carrying out the method according to the invention is, however, referred to as a computer program product.
  • Post-registration version refers to computer program products that, for example, access the communication interfaces of the generated computer program product.
  • the source text is read in by the computer program according to the invention to produce a computer program product and is also executed according to an embodiment of the invention.
  • the source text remains untouched. No lines of code relating in particular to the communication interfaces are added and written into the source code. Rather, the semantic annotations serve as a kind of jump label, which can be referenced with the communication interfaces created and the marked source text constructs can be addressed.
  • no communication interfaces may be defined in the source code.
  • the computer program comprises in particular - a library of semantic annotations comprising - semantic annotations for marking source text constructs of the source text of artificial intelligence algorithms; - Logic sequences clearly linked to the semantic annotations for generating communication interfaces and for embedding the marked source text constructs in the computer program product to be produced; - a source code analysis component, suitably designed 202208051 Post-registration version - for analyzing the source text for the presence of semantic annotations in the source text; - for the transfer of the at least one logic sequence from the library, which is clearly linked to the at least one existing semantic annotation in the source text, to the communication interface generator - a communication interface generator, suitably designed - for reading out the at least one transferred one the logic sequence linked to at least one existing semantic annotation in the source text; - to generate at least one communication interface based on the read logic sequence.
  • the at least one communication interface is preferably generated as a standardized programming interface, English Application Programming Interface (API for short), for example as a “REST” interface, using the communication interface generator and according to method step g. embedded in the computer program product, which if necessary according to method step h. provided.
  • the communication interface generator is designed accordingly.
  • the provided library of semantic annotations includes at least one semantic annotation and at least 202208051 Post-registration version a logic flow that is clearly linked to the at least one semantic annotation.
  • the library of semantic annotations provided includes any number of semantic annotations and logic sequences clearly linked to them.
  • Each semantic annotation therefore has a logical sequence that is clearly linked to it.
  • the plural is mainly used below in connection with the at least one semantic annotation and the at least one logic sequence that is clearly linked to it.
  • Semantic annotations are predefined markings with which certain parts of the source text, the so-called source text constructs, in particular certain functions and function parameters or input or output variables or results of the artificial intelligence algorithms, are marked or, in particular, can be marked subsequently. Accordingly, they can also be referred to as semantic source code annotations.
  • Each of these markings has a predetermined logic sequence that determines when and how the marked source code constructs are called.
  • Each logic sequence therefore includes a predetermined rule for generating a communication interface and thus for further processing, in particular for execution, and embedding the source text constructs of the artificial intelligence algorithms marked with the semantic annotations in the generated computer program product.
  • the semantic annotations and the logic sequences associated with them serve two different purposes: On the one hand, they indicate for which parts of the source text communication interfaces, in particular APIs, should be created. On the other hand, they indicate which information should be exchanged as a request and response via these communication interfaces.
  • 202208051 Post-registration version Semantic annotations hide all the technical details of the communication interfaces to be generated: The respective source text markings only capture the semantic meaning of the annotated source text constructs and do not allow any conclusions to be drawn about the communication interfaces to be generated.
  • a source text analysis component for analyzing the source text for the presence of the semantic annotations from the library in the source text and a communication interface generator for generating at least one communication interface.
  • the source code analysis component is responsible for accessing the library. This component examines the source code passed to it for the presence of markings with the semantic annotations that are stored in the library. To do this, the source text can first be searched for markings with semantic annotations and these can be compared with the semantic annotations stored in the library.
  • the logic sequences assigned to the recognized semantic annotations and clearly linked to them are then transferred from the library to the communication interface generator.
  • selected source text constructs relating to certain artificial intelligence algorithms are annotated, i.e. marked with the semantic annotations according to the library, which means that the input or output of values to or from the Algorithms are determined by the predefined logic sequences that are clearly linked to the semantic annotations.
  • the algorithm developer especially the data scientist, knows best about the algorithms and how they should be called. However, he does not have to worry about the specific design of the communication interfaces for accessing the algorithms. This is done automatically by the computer program according to the invention.
  • a further advantage of the invention is that no additional, specialized software developer is required to create and configure the communication interfaces. Process step a.
  • the computer program for producing a computer program product can accordingly have an input interface which is suitable for: - reading the source text of artificial intelligence algorithms comprising the semantic annotations for marking source text constructs of the source text of artificial intelligence algorithms in the source text; - Passing the read source code to the source code analysis component.
  • method step d. includes: d. Analyzing the source text using the source text analysis component for the presence of semantic annotations in the source text and passing on the logic processes from the 202208051 Post-registration version of the library, which is clearly linked to the existing semantic annotations in the source code, and transfer of the configuration templates from the library, which are clearly linked to the passed logic sequences, to the communication interface generator; and wherein method step e. includes: e.
  • the generation and provision of at least one configuration interface for configuring the configuration parameters of the at least one transferred logic sequence by means of the communication interface generator based on the at least one read-out logic sequence and based on the at least one read-out configuration template serves in particular to modify the configuration parameters of the with the one read out 202208051 Post-login configuration template clearly linked, read logic flow dynamically at runtime.
  • a modification can include a change or adjustment and, if necessary, an expansion, deletion or addition to the configuration parameters of the logic processes. The modification can be carried out manually by a user or can be carried out automatically via the configuration interface using other computer program products.
  • the configuration parameters of the read logic sequence that is clearly linked to the read configuration template can be read out via the configuration interface provided and made available to the user for manual modification, for example via a web application, in particular output on a screen, for example in a representation of a form .
  • the modifications are determined, for example, by changing predefined values.
  • the modifications made, for example by the user or another computer program product, are recorded and transmitted to the communication interface generator using the configuration interface.
  • the modifications transferred via the configuration interface are read out by the communication interface generator and the logic sequence read out from the library is modified by the communication interface generator based on the modifications read out.
  • There is now a logic sequence in the communication interface generator which can have modified configuration parameters compared to the original logic sequence from the library.
  • method step ee comprises. henceforth: ee. Receiving modifications of at least one configuration parameter of the at least one read-out logic sequence by the communication interface generator via the configuration interface and modifying the at least one configuration parameter of the at least one read-out logic sequence by the communication interface generator.
  • method step f. further comprises: f. Generating at least one communication interface by means of the communication interface generator based on the at least one read and modified logic sequence.
  • the communication interfaces subsequently created and provided are also modified through modifications to the logic processes.
  • a communication interface that has been created can no longer be modified from the outside. Only internal processes, such as a running counter, can adjust parameters.
  • the computer program product generated according to the invention includes all communication interfaces, but according to one embodiment is provided without configuration interfaces. API products can thus be made available to a user “as a service” without them themselves 202208051 having to configure post-registration registration. It is not necessary to embed the generated configuration interface into the computer program product.
  • the logic sequences from the library can be preset with standard values (default) so that communication interfaces can be created and provided without modifications.
  • the parameters are advantageously configured during the runtime of the method according to the invention or during the runtime of the computer program product according to the invention.
  • the generation of the communication interface and, if applicable, the configuration interface in accordance with the corresponding method steps also preferably takes place during the runtime of the method according to the invention or at the runtime of the computer program according to the invention. All other method steps, such as analyzing the source text or embedding the generated communication interfaces in the computer program product, also take place at runtime of the computer program according to the invention.
  • the library of, if necessary, any and/or any number of semantic annotations can be expanded. This can also be done during the duration of the process, but in any case before process step d. take place. Accordingly, process step d.
  • Extension, deletion or change, in particular addition or adaptation, of the contents of the library of semantic annotations provided thus includes the extension, deletion or change, in particular addition or adaptation, of the semantic annotations, i.e. the expressions for marking the source text constructs as such with the logic flows clearly linked to the semantic annotations and, if applicable, the configuration templates that are clearly linked to the logic flows.
  • the contents of the library of semantic annotations can be read out via the input interface provided and made available to the user for manual expansion, deletion or modification, for example via a web application, in particular on a screen.
  • the additions, deletions or changes made, for example by the user or another computer program product, are recorded and written back into the library using the input interface.
  • the input interface can also be used to expand, delete or change the source text, in particular read in using the input interface, and in particular to add, delete or adapt semantic annotations of source text constructs.
  • the input interface is designed accordingly.
  • a further developed computer program for producing a computer program product accordingly includes an input interface for expansion, deletion or change, 202208051 Post-registration version, in particular supplementing or adapting the contents of the library provided and/or for marking at least one source text construct of the source text with at least one semantic annotation from the library.
  • the communication interfaces created make it possible to transfer inputs, for example values, to the artificial intelligence algorithms, for example also via a network, or to output corresponding values from the artificial intelligence algorithms, for example also via a network.
  • the source text constructs of the artificial intelligence algorithms of the source text marked with the semantic annotations from the library each describe at least one algorithm for the regulation, control or diagnosis of technical devices or systems.
  • the at least one generated and provided communication interface serves to embed, for example for execution and access via a network, the at least one source text construct marked with the at least one semantic annotation of the artificial intelligence algorithms of the source text comprising the artificial intelligence algorithms of the control , control, diagnosis or monitoring and/or simulation of technical devices such as machines or systems.
  • the provided source text of artificial intelligence algorithms comprising at least one semantic annotation of at least one source text construct, is first passed on to the source text analysis component using an input interface.
  • a correspondingly developed computer program includes an input interface for reading in the source text and for passing the source text to the source text analysis component.
  • the input interface is designed to be suitable for reading in a source text of artificial intelligence algorithms comprising semantic annotations as expressions for marking source text constructs of the source text of artificial intelligence algorithms in the source text.
  • the input interface is designed to be suitable for transferring the source text to the source text analysis component.
  • the communication interfaces can be easily controlled by omitting or adding semantic annotations.
  • the resulting API product can therefore be ideally tailored to the user’s requirements.
  • Reusability of the generated API products in different contexts The semantic annotations can be configured with parameters as required. This configuration only takes place during runtime of the API product via a configuration interface provided for this purpose. This makes it possible for the same source code to be used in different contexts, e.g. for different users and/or projects, since it can be dynamically adapted to the applicable requirements during execution.
  • Expandability The library of semantic annotations used by the invention can also be supplemented with any additional annotations.
  • This extension mechanism also allows the present invention to be used in foreign application areas outside of the production of artificial intelligence algorithms and methods, if suitable semantic annotations are created for this purpose. Since the source text markings of the semantic annotations do not contain any information about the communication interfaces to be created, it is with them 202208051 Post-registration version Help also possible to map already annotated source text to other communication interfaces at a later point in time. This increases the future-proofing and flexibility of the API products created with the present invention, as any technology migrations can be carried out later without the involvement of the original authors.
  • the computer program product generated represents the immediate process product according to the method according to the invention, as well as the product which is produced using the computer program according to the invention to produce a further computer program product. It may be stored on a disk.
  • the invention allows numerous embodiments. It is explained in more detail using the following figure, in which an example embodiment is shown.
  • the figure shows a schematic overview of the invention.
  • a library 1 with any number of semantic annotations SA 1 ... SA n (with n a natural number greater than 1) is provided.
  • Each of the semantic annotations SA 1 ... SA n represents an expression for marking a source text construct of a source text using artificial intelligence algorithms.
  • SA n - shown here under the same entry in the library - are a configuration template KV 1 ... KV n and a logic sequence LA 1 ... LA n , in which the annotated source text construct is embedded at runtime.
  • a source code analysis component 2 a communication interface generator 3 and a 202208051 Post-registration version communication interface provision component 4 provided.
  • the arrows between the modules indicate their connections to each other. According to the arrow from Library 1 to Code Analysis Component 2, Code Analysis Component 2 uses the library.
  • the source code analysis component 2 uses the communication interface provision component 4 and the communication interface generator 3, which is illustrated with the corresponding arrows between the modules mentioned.
  • the communication interface generator 3 is used by the communication interface provisioning component 4.
  • source code constructs of the source code are marked by artificial intelligence algorithms.
  • This source text is read in and analyzed for the presence of corresponding semantic annotations in the library using the source text analysis component 2. If source text constructs marked with semantic annotations from the library are identified in the source text, communication interfaces are generated by means of the communication interface generator 3 based on the logic sequences clearly linked to the identified semantic annotations and provided by means of the communication interface provision component 4. This will be outlined in more detail below using a greatly simplified example implementation. 202208051 Post-registration version First, a source code is generated using artificial intelligence algorithms, for example by a data scientist, whose algorithms are converted into an API product.
  • the following information is recorded in the example: i. Marker to be used in the source code; ⁇ Example: @InteractivePrediction to denote a prediction function; ii. Logic flow in which the annotated source code construct is embedded at runtime; ⁇ Example: Logic flow in which a prediction function annotated with @InteractivePrediction is embedded: ⁇ Validation of the user request, 202208051 Post-registration version ⁇ Execution of the annotated prediction function, ⁇ Persistent storage of the prediction result to enable later traceability, ⁇ Sending the prediction result as a response to the user; iii.
  • Configuration template that contains the definitions of all configuration parameters with which the logic flow can be dynamically modified at runtime depending on requirements;
  • This example implementation of the invention is written in the Python programming language. It is suitable for creating API products from Python source code that has been created with any Python libraries available on the market in the area of data analysis and artificial intelligence. This covers the relevant use cases in the areas of data analysis and artificial intelligence. The semantic annotations are implemented using so-called Python decorators.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

Die Erfindung betrifft ein Computerprogramm zur Herstellung eines weiteren Computerprogrammprodukts sowie ein Verfahren zur Herstellung eines weiteren Computerprogrammprodukts ausgehend von einem Quelltext von Algorithmen der künstlichen Intelligenz umfassend folgende Verfahrensschritte: a) Bereitstellen einer Bibliothek von semantischen Annotationen, umfassend: - semantische Annotationen zur Markierung von Quelltext-Konstrukten des Quelltexts von Algorithmen der künstlichen Intelligenz; - mit den semantischen Annotationen eindeutig verknüpfte Logik-Abläufe zur Erzeugung von Kommunikationsschnittstellen und zur Einbettung der markierten Quelltext-Konstrukte; b) Bereitstellen einer Quelltext-Analyse-Komponente zur Analyse des Quelltexts auf das Vorliegen von den semantischen Annotationen im Quelltext; c) Bereitstellen eines Kommunikationsschnittstellen-Generators zur Erzeugung wenigstens einer Kommunikationsschnittstelle; d) Analysieren des Quelltexts mittels der Quelltext-Analyse-Komponente auf das Vorliegen von wenigstens einer semantischen Annotation im Quelltext und Übergeben von dem wenigstens einen Logik-Ablauf aus der Bibliothek, der mit der wenigstens einen vorliegenden semantischen Annotation im Quelltext eindeutig verknüpft ist, an den Kommunikationsschnittstellen-Generator; e) Auslesen des wenigstens einen übergebenen, mit der wenigstens einen vorliegenden semantischen Annotation im Quelltext verknüpften Logik-Ablaufs durch den Kommunikationsschnittstellen-Generator und f) Erzeugen von wenigstens einer Kommunikationsschnittstelle mittels des Kommunikationsschnittstellen-Generators auf Basis des wenigstens einen Logik-Ablaufs; g) Einbetten der wenigstens einen erzeugten Kommunikationsschnittstelle in das Computerprogrammprodukt.

Description

202208051 Nachanmeldefassung Beschreibung Verfahren und Computerprogramm zur automatisierten Erzeugung von Kommunikationsschnittstellen in Algorithmen aus dem Bereich der künstlichen Intelligenz Die Erfindung betrifft ein Verfahren und ein Computerprogramm zur Herstellung eines weiteren Computerprogrammprodukts ausgehend von einem Quelltext von Algorithmen der künstlichen Intelligenz. Es sind spezialisierte Software-Werkzeuge bekannt geworden, um Algorithmen und Verfahren aus dem Bereich der künstlichen Intelligenz zu entwickeln. Diese Software-Werkzeuge, wie beispielsweise „Jupyter Notebooks“ (siehe auch https://jupyter.org/), sind geeignet, ein iteratives und exploratives Arbeiten von sogenannten Data Scientists während der Entwicklung der Algorithmen der künstlichen Intelligenz zu unterstützen. Sie sind jedoch nicht geeignet, die entwickelten Algorithmen und Verfahren in Produkte zu überführen, die an Kunden ausgeliefert werden können, da zum einen diese Software-Werkzeuge nicht die Möglichkeit bieten, technologie-agnostische Schnittstellen bereitzustellen, mit denen die Algorithmen und Verfahren direkt in Kunden- Applikationen und -Prozesse eingebunden werden können. Zum anderen kann der Quelltext der Algorithmen und Verfahren nicht vor dem Kunden verborgen werden. Es ist daher bislang gängige Praxis, den Quelltext der prototypischen Implementierung umzuarbeiten, um ein für den Kunden nutzbares Produkt zu erhalten. Dabei werden zunächst alle Quelltext-Abhängigkeiten zu den genannten Software- Werkzeugen entfernt und Kommunikationsschnittstellen, wie z.B. sogenannte „REST“-Schnittstellen, in den Quelltext hinzugefügt, mit welchen die Algorithmen und Verfahren über Netzwerke als sogenannte API (Application Programming Interface) angesprochen werden können. Anschließend können 202208051 Nachanmeldefassung dem Kunden die Algorithmen und Verfahren über die hinzugefügten Kommunikationsschnittstellen zur Ausführung zur Verfügung gestellt werden, z.B. für den Zugriff über das Internet. Der Kunde kann dadurch die Ausführung der Algorithmen und Verfahren über diese Schnittstellen anstoßen und die Ergebnisse konsumieren, hat jedoch keine Möglichkeit den zugrundeliegenden Quelltext einzusehen. Das Erstellen und Hinzufügen der Kommunikationsschnittstellen erfordert dabei ein tiefes Verständnis für die Kommunikationsschnittstellen als solche sowie für sich daraus ergebende Implikationen, wie z.B. die Validierung von Eingaben, die über ein Netzwerk erfolgen. Daher übernehmen typischerweise Software-Entwickler die beschriebene Überführung der prototypischen Implementierung durch Data Scientists in ein für Kunden nutzbares Produkt. Der Erfindung liegt die Aufgabe zugrunde, die Entwicklung von Produkten mit Algorithmen und Verfahren aus dem Bereich der künstlichen Intelligenz, die direkt in beliebige Kunden- Applikationen und -Prozesse eingebunden werden können, zu vereinfachen. Gelöst wird die Aufgabe durch die Gegenstände der unabhängigen Patentansprüche. Weiterbildungen und Ausgestaltungen der Erfindung finden sich in den Merkmalen der abhängigen Patentansprüche wieder. Ein erfindungsgemäßes Verfahren zur Herstellung eines Computerprogrammprodukts ausgehend von einem Quelltext von Algorithmen der künstlichen Intelligenz umfasst folgende Verfahrensschritte: a. Bereitstellen einer Bibliothek von semantischen Annotationen, umfassend: - semantische Annotationen zur Markierung von Quelltext-Konstrukten des Quelltexts von Algorithmen der künstlichen Intelligenz; 202208051 Nachanmeldefassung - mit den semantischen Annotationen eindeutig verknüpfte Logik-Abläufe zur Erzeugung von Kommunikationsschnittstellen und zur Einbettung markierter Quelltext-Konstrukte in das herzustellende Computerprogrammprodukt; b. Bereitstellen einer Quelltext-Analyse-Komponente zur Analyse des Quelltexts auf das Vorliegen von den semantischen Annotationen im Quelltext; c. Bereitstellen eines Kommunikationsschnittstellen- Generators zur Erzeugung wenigstens einer Kommunikationsschnittstelle; d. Analysieren des Quelltexts mittels der Quelltext- Analyse-Komponente auf das Vorliegen von den semantischen Annotationen im Quelltext und Übergeben von den Logik-Abläufen aus der Bibliothek, die mit den vorliegenden semantischen Annotationen im Quelltext eindeutig verknüpft sind, an den Kommunikationsschnittstellen-Generator; e. Auslesen der übergebenen, mit den vorliegenden semantischen Annotationen im Quelltext eindeutig verknüpften Logik-Abläufen durch den Kommunikationsschnittstellen-Generator und f. Erzeugen von Kommunikationsschnittstellen mittels des Kommunikationsschnittstellen-Generators auf Basis der ausgelesenen Logik-Abläufe; g. Einbetten der erzeugten Kommunikationsschnittstellen in das herzustellende Computerprogrammprodukt. Bei dem erfindungsgemäßen Verfahren handelt es sich um ein computerimplementiertes Verfahren. Wenigstens eine semantische Annotation im Quelltext liegt vor, wenn wenigstens ein Quelltext-Konstrukt des Quelltexts von Algorithmen der künstlichen Intelligenz mit wenigstens einer semantischen Annotation markiert ist. Bei der Analyse 202208051 Nachanmeldefassung des Quelltexts gemäß Verfahrensschritt d. wird daher analysiert, ob wenigstens ein Quelltext-Konstrukt des Quelltexts mit einer semantischen Annotation aus der Bibliothek versehen ist. Liegt wenigstens eine semantische Annotation im Quelltext vor, wird gemäß Verfahrensschritt d. der Logik-Ablauf aus der Bibliothek, der mit der wenigstens einen im Quelltext vorliegenden semantischen Annotation eindeutig verknüpft ist, an den Kommunikationsschnittstellen- Generator übergeben. Dieser wenigstens eine übergebene Logik- Ablauf wird gemäß Verfahrensschritt e. vom Kommunikationsschnittstellen-Generator ausgelesen und daraufhin wenigstens eine Kommunikationsschnittstelle mittels des Kommunikationsschnittstellen-Generators auf Basis dieses wenigstens einen ausgelesenen Logik-Abläufe gemäß Verfahrensschritt f. erzeugt. Diese wenigstens eine erzeugte Kommunikationsschnittstelle wird daraufhin gemäß Verfahrensschritt h. in das herzustellende Computerprogrammprodukt eingebettet. Die in das hergestellte Computerprogrammprodukt eingebetteten Kommunikationsschnittstellen dienen zum Aufruf der mit den semantischen Annotationen markierten Quelltext-Konstrukte und somit zum Aufruf der durch die markierten Quelltext- Konstrukte repräsentierten Algorithmen der künstlichen Intelligenz. Gemäß der Erfindung wird ein mit semantischen Annotationen versehener Quelltext, also ein Quelltext mit wenigstens einem Quelltext-Konstrukt, welches mit wenigstens einer semantischen Annotation aus der Bibliothek von semantischen Annotationen markiert ist, als Eingabe verwendet und daraus, insbesondere dynamisch zur Laufzeit, ein Computerprogrammprodukt, insbesondere ein API-Produkt, generiert. Ein so erzeugtes Computerprogrammprodukt umfasst Kommunikationsschnittstellen zur Einbettung der Algorithmen der künstlichen Intelligenz des Quelltexts umfassend die Algorithmen der künstlichen Intelligenz in Applikationen oder Prozesse. Das Verfahren wird bei der Entwicklung der 202208051 Nachanmeldefassung Applikationen oder Prozesse zur automatisierten Generierung der Kommunikationsschnittstellen und zur Einbettung der durch die Kommunikationsschnittstellen aufgerufenen Algorithmen der künstlichen Intelligenz in das erzeugte Computerprogrammprodukt verwendet. Ein erfindungsgemäßes Computerprogrammprodukt zur Herstellung eines weiteren Computerprogrammprodukts umfasst Befehle, die bei der Ausführung des Programms durch einen geeigneten Computer dieses veranlassen, das erfindungsgemäße Verfahren auszuführen. Der Computer zur Ausführung des erfindungsgemäßen Computerprogrammprodukts kann ein Endgerät oder ein Server sein. Computerprogrammprodukte können auch nur als Computerprogramme bezeichnet werden. „Herstellen“ kann im Zusammenhang mit der Erfindung synonym auch als „Erstellen“ oder als „Erzeugen“ bezeichnet werden. Das Verfahren bewirkt somit die Erstellung eines Computerprogrammprodukts ausgehend von einem Quelltext von Algorithmen der künstlichen Intelligenz. Das entsprechende erfindungsgemäße Computerprogrammprodukt dient analog zur Erstellung eines weiteren Computerprogrammprodukts. Das „weitere“ Computerprogrammprodukt betrifft in diesem Sinne somit das bei Ausführung des erfindungsgemäßen Verfahrens hergestellte bzw. erstellte Computerprogrammprodukt. Zur besseren Unterscheidung wird nachfolgend vom Computerprogramm gesprochen, wenn das Computerprogrammprodukt zur Herstellung bzw. Erstellung des zu erstellenden bzw. herzustellenden (weiteren) Computerprogrammprodukts gemeint ist. Das mittels dieses Computerprogramms bei Ausführung des erfindungsgemäßen Verfahrens hergestellte bzw. erstellte Computerprogrammprodukt wird hingegen als Computerprogrammprodukt bezeichnet. Als „andere“ Computerprogrammprodukte werden dritte 202208051 Nachanmeldefassung Computerprogrammprodukte bezeichnet, die beispielsweise auf die Kommunikationsschnittstellen des erzeugten Computerprogrammprodukts zugreifen. Der Quelltext wird dabei vom erfindungsgemäßen Computerprogramm zur Herstellung eines Computerprogrammprodukts eingelesen und gemäß einer Ausführungsform der Erfindung auch ausgeführt. Bei der Ausführung des erfindungsgemäßen Verfahrens verbleibt der Quelltext unberührt. Es werden keine Codezeilen betreffend insbesondere die Kommunikationsschnittstellen ergänzt und in den Quelltext geschrieben. Vielmehr dienen die semantischen Annotationen als eine Art Sprungmarke, welche mit den erzeugten Kommunikationsschnittstellen referenziert und die markierten Quelltext-Konstrukte angesprochen werden können. Beim Start des Verfahrens kann gegebenenfalls noch keine Kommunikationsschnittstellen im Quelltext definiert sein. Nach Abschluss des Verfahrens können sämtliche Kommunikationsschnittstellen zu den mit semantischen Annotationen markierten Quelltext-Konstrukten in einem Computerprogrammprodukt einem Nutzer bereitgestellt werden. Das erfindungsgemäße Computerprogramm umfasst insbesondere - Eine Bibliothek von semantischen Annotationen umfassend - semantische Annotationen zur Markierung von Quelltext-Konstrukten des Quelltexts von Algorithmen der künstlichen Intelligenz; - mit den semantischen Annotationen eindeutig verknüpfte Logik-Abläufe zur Erzeugung von Kommunikationsschnittstellen und zur Einbettung der markierten Quelltext-Konstrukte in das herzustellende Computerprogrammprodukt; - eine Quelltext-Analyse-Komponente, geeignet ausgebildet 202208051 Nachanmeldefassung - zur Analyse des Quelltexts auf das Vorliegen von den semantischen Annotationen im Quelltext; - zur Übergabe von dem wenigstens einen Logik- Ablauf aus der Bibliothek, der mit der wenigstens einen vorliegenden semantischen Annotation im Quelltext eindeutig verknüpft ist, an den Kommunikationsschnittstellen- Generator - ein Kommunikationsschnittstellen-Generator, geeignet ausgebildet - zum Auslesen des wenigstens einen übergebenen, mit der wenigstens einen vorliegenden semantischen Annotation im Quelltext verknüpften Logik-Ablaufs; - zur Erzeugung wenigstens einer Kommunikationsschnittstelle auf Basis des ausgelesenen Logik-Ablaufs. Es kann darüber hinaus geeignet ausgebildet sein - zum Einbetten der wenigstens einen erzeugten Kommunikationsschnittstelle in das herzustellende Computerprogrammprodukt. Bevorzugt wird gemäß Verfahrensschritt f. die wenigstens eine Kommunikationsschnittstelle als standardisierte Programmierschnittstelle, englisch Application Programming Interface (kurz API), beispielsweise als „REST“- Schnittstelle, mittels des Kommunikationsschnittstellen- Generators erzeugt und gemäß Verfahrensschritt g. in das Computerprogrammprodukt eingebettet, welches gegebenenfalls gemäß Verfahrensschritt h. bereitgestellt wird. Der Kommunikationsschnittstellen-Generator ist entsprechend geeignet ausgebildet ist. Die bereitgestellte Bibliothek von semantischen Annotationen umfasst wenigstens eine semantische Annotation und wenigstens 202208051 Nachanmeldefassung einen mit der wenigstens einen semantischen Annotation eindeutig verknüpften Logik-Ablauf. Insbesondere umfasst die bereitgestellte Bibliothek von semantischen Annotationen beliebige und beliebig viele semantischen Annotationen und mit diesen jeweils eindeutig verknüpfte Logik-Abläufe. Zu jeder semantischen Annotation liegt somit ein mit ihr eindeutig verknüpfter Logik-Ablauf vor. Nachfolgend wird der Übersichtlichkeit wegen hauptsächlich der Plural im Zusammenhang mit der wenigstens einen semantischen Annotation und des wenigstens einen mit dieser eindeutig verknüpften Logik-Ablaufs verwendet. Semantische Annotationen sind vordefinierte Markierungen, mit denen bestimmte Teile des Quelltextes, die sogenannten Quelltext-Konstrukte, insbesondere bestimmte Funktionen und Funktionsparameter oder Ein- oder Ausgangsgrößen oder Ergebnisse der Algorithmen der künstlichen Intelligenz, markiert sind bzw. insbesondere nachträglich markiert werden können. Entsprechend können sie auch als semantische Quelltext-Annotationen bezeichnet werden. Zu jeder dieser Markierungen gehört ein vorgegebener Logik-Ablauf, der festlegt, wann und wie die markierten Quelltext-Konstrukte aufgerufen werden. Jeder Logik-Ablauf umfasst somit eine vorgegebene Vorschrift zur Erzeugung einer Kommunikationsschnittstelle und damit zur Weiterverarbeitung, insbesondere zur Ausführung, und Einbettung der mit den semantischen Annotationen markierten Quelltext-Konstrukten der Algorithmen der künstlichen Intelligenz im erzeugten Computerprogrammprodukt. Die semantischen Annotationen und die mit diesen verknüpften Logik-Abläufe erfüllen zwei verschiedene Zwecke: Zum einen zeigen sie an, für welche Teile des Quelltextes Kommunikationsschnittstellen, insbesondere APIs, erzeugt werden sollen. Zum anderen zeigen sie an, welche Informationen als Anfrage und Antwort über diese Kommunikationsschnittstellen ausgetauscht werden sollen. 202208051 Nachanmeldefassung Semantische Annotationen verbergen dabei alle technischen Details der zu generierenden Kommunikationsschnittstellen: Die jeweiligen Quelltext-Markierungen erfassen nur die semantische Bedeutung der annotierten Quelltext-Konstrukte und lassen keine Rückschlüsse auf die zu generierenden Kommunikationsschnittstellen zu. Neben der Bibliothek werden gemäß dem Verfahren eine Quelltext-Analyse-Komponente zur Analyse des Quelltexts auf das Vorliegen von den semantischen Annotationen aus der Bibliothek im Quelltext sowie ein Kommunikationsschnittstellen-Generator zur Erzeugung wenigstens einer Kommunikationsschnittstelle bereitgestellt. Für die Zugriffe auf die Bibliothek ist die Quelltext- Analyse-Komponente verantwortlich. Diese Komponente untersucht den ihr übergebenen Quelltext auf das Vorliegen von Markierungen mit den semantischen Annotationen, die in der Bibliothek hinterlegt sind. Dazu kann der Quelltext zunächst nach Markierungen mit semantischen Annotationen durchsucht und diese mit den in der Bibliothek hinterlegten semantischen Annotationen verglichen werden. Hier kann auch von Erfassen von semantischen Annotationen im Quelltext und von Erkennen von den in der Bibliothek bereitgestellten semantischen Annotationen gesprochen werden. Anschließend werden die den erkannten semantischen Annotationen zugeordneten und eindeutig mit diesen verknüpften Logik-Abläufe aus der Bibliothek an den Kommunikationsschnittstellen-Generator übergeben. Daraufhin erzeugt der Kommunikationsschnittstellen-Generator auf Basis und somit nach der Vorschrift dieser Logik-Abläufe alle benötigten Kommunikationsschnittstellen. Dazu werden nach einem vorgegebenen Algorithmus die Informationen aus den Logik-Abläufen ausgelesen und verarbeitet. Die Logik-Abläufe umfassen jeweils alle hinreichenden Vorgaben und Parameter, um eine Kommunikationsschnittstelle erzeugen zu können. 202208051 Nachanmeldefassung Schließlich werden die erzeugten Kommunikationsschnittstellen in das Computerprogrammprodukt eingebettet. Dies erfolgt gemäß einer ersten Weiterbildung mittels einer Kommunikationsschnittstellen-Bereitstellungskomponente. Das erzeugte Computerprogrammprodukt wird weitergebildet mittels der Kommunikationsschnittstellen-Bereitstellungskomponente bereitgestellt, um auf die erzeugten Kommunikationsschnittstellen und über diese auf die Algorithmen der künstlichen Intelligenz, insbesondere über ein Netzwerk, zugreifen zu können. Die Kommunikationsschnittstellen-Bereitstellungskomponente ist verantwortlich, dass die erzeugten Kommunikationsschnittstellen über ein Netzwerk zugreifbar gemacht werden und ermöglicht somit den Zugriff auf die mit den semantischen Annotationen markierten Quelltext- Konstrukte. Das Verfahren umfasst entsprechend der genannten Weiterbildung - zumindest dem Verfahrensschritt f. voranstehend folgenden Verfahrensschritt: o Bereitstellen einer Kommunikationsschnittstellen- Bereitstellungskomponente; - im Verfahrensschritt f. folgendes zusätzliches Merkmal: o Übergeben der erzeugten Kommunikationsschnittstellen an die Kommunikationsschnittstellen- Bereitstellungskomponente; - wobei Verfahrensschritt g. umfasst: g. Einbetten der übergebenen Kommunikationsschnittstellen in das Computerprogrammprodukt durch die Kommunikationsschnittstellen- Bereitstellungskomponente; - dem Verfahrensschritt g. nachfolgend: 202208051 Nachanmeldefassung h. Bereitstellen des erzeugten Computerprogrammprodukts umfassend die wenigstens eine erzeugte Kommunikationsschnittstelle durch die Kommunikationsschnittstellen- Bereitstellungskomponente. Ein weitergebildetes Computerprogramm zur Herstellung eines Computerprogrammprodukts umfasst entsprechend eine Kommunikationsschnittstellen-Bereitstellungskomponente, welche geeignet ausgebildet ist zum Bereitstellen des erzeugten Computerprogrammprodukts durch die Kommunikationsschnittstellen-Bereitstellungskomponente, wobei der Kommunikationsschnittstellen-Generator fürderhin geeignet ausgebildet ist zum Übergeben des erzeugten Computerprogrammprodukts an die Kommunikationsschnittstellen- Bereitstellungskomponente. Alle vom Kommunikationsschnittstellen-Generator erzeugten Kommunikationsschnittstellen werden der Kommunikationsschnittstellen-Bereitstellungskomponente übergeben und in das Computerprogrammprodukt, beispielsweise eine Web-Anwendung, eingebettet, so dass die Gesamtheit aller Kommunikationsschnittstellen in einem Computerprogrammprodukt zum Zugriff durch einen Nutzer zur Verfügung gestellt wird. Damit sind die erzeugten Kommunikationsschnittstellen auch zum Zugriff durch weitere, andere Computerprogrammprodukte wie Applikationen oder Prozesse bereitgestellt. Die Kommunikationsschnittstellen-Bereitstellungskomponente ist entsprechend geeignet ausgebildet, die übergebenen Kommunikationsschnittstellen in das Computerprogrammprodukt einzubetten und das Computerprogrammprodukt bereitzustellen. Das erzeugte Computerprogrammprodukt ist weitergebildet eine Webanwendung. Eine Webanwendung (Webapplikation oder auch kurz Web-App) ist ein Anwendungsprogramm, das auf einem entfernten Server gespeichert und über das Internet über eine Browser-Schnittstelle bereitgestellt wird. Die 202208051 Nachanmeldefassung Kommunikationsschnittstellen-Bereitstellungskomponente ist entsprechend geeignet, das erzeugte Computerprogrammprodukt über eine Browser-Schnittstelle bereitzustellen. Eine weitere Weiterbildung des erfindungsgemäßen Verfahrens besteht darin, dass zumindest dem Verfahrensschritt d. vorangeht: - Markieren von wenigstens einem Quelltext- Konstrukt des Quelltexts mit wenigstens einer semantischen Annotation aus der Bibliothek. Dieser Verfahrensschritt kann natürlich bereits dem Verfahrensschritt a vorangehen. Die Markierung des Quelltexts mit semantischen Annotationen gemäß der Bibliothek kann manuell erfolgen, beispielsweise durch einen Data-Scientist. Beim Erstellen des Quelltexts oder auch nachträglich, also nach Erstellen des Quelltexts, werden ausgewählte Quelltext- Konstrukte betreffend bestimmte Algorithmen der künstlichen Intelligenz, annotiert, also mit den semantischen Annotationen gemäß der Bibliothek markiert, womit die Ein- oder Ausgabe von Werten an oder von den Algorithmen durch die vordefinierten, mit den semantischen Annotationen eindeutig verknüpften Logik-Abläufe festgelegt wird. Der Entwickler, insbesondere der Data-Scientist, der Algorithmen weiß am besten über die Algorithmen und wie diese aufgerufen werden sollen Bescheid. Über die konkrete Ausgestaltung der Kommunikationsschnittstellen zum Aufruf auf die Algorithmen muss er sich hingegen keine Gedanken machen. Diese erfolgt automatisiert durch das erfindungsgemäße Computerprogramm. Ein weiterer Vorteil der Erfindung besteht also darin, dass zur Erstellung und Konfiguration der Kommunikationsschnittstellen kein zusätzlicher, spezialisierter Software-Entwickler benötigt wird. Dem Verfahrensschritt a. kann weitergebildet vorangestellt sein: 202208051 Nachanmeldefassung - Bereitstellen eines Quelltexts mit Algorithmen der künstlichen Intelligenz umfassend wenigstens eine semantische Annotation wenigstens eines Quelltext- Konstrukts des Quelltexts; - Bereitstellen einer Eingangsschnittstelle zum Einlesen des Quelltexts und zum Übergeben des Quelltexts an die Quelltext- Analyse-Komponente; - Übergeben des durch die Eingangsschnittstelle eingelesenen Quelltexts an die Quelltext-Analyse- Komponente. Das Computerprogramm zur Herstellung eines Computerprogrammprodukts kann entsprechend eine Eingangsschnittstelle aufweisen, welche geeignet ausgebildet ist zum: - Einlesen des Quelltexts von Algorithmen der künstlichen Intelligenz umfassend die semantischen Annotationen zur Markierung von Quelltext-Konstrukten des Quelltexts von Algorithmen der künstlichen Intelligenz im Quelltext; - Übergeben des eigelesenen Quelltexts an die Quelltext- Analyse-Komponente. Gemäß einer weiteren Weiterbildung umfasst die gemäß Verfahrensschritt a. bereitgestellte Bibliothek von semantischen Annotationen fürderhin wenigstens eine mit wenigstens einem Logik-Ablauf eindeutig verknüpfte Konfigurations-Vorlage, die Definitionen von Konfigurationsparametern zur Modifizierung zumindest der Konfigurationsparameter des Logik-Ablaufs umfasst, wobei der Verfahrensschritt d. umfasst: d. Analysieren des Quelltexts mittels der Quelltext- Analyse-Komponente auf das Vorliegen von semantischen Annotationen im Quelltext und Übergeben von den Logik-Abläufen aus der 202208051 Nachanmeldefassung Bibliothek, die mit den vorliegenden semantischen Annotationen im Quelltext eindeutig verknüpft sind, und Übergeben von den Konfigurations-Vorlagen aus der Bibliothek, die mit den übergebenen Logik- Abläufen eindeutig verknüpft sind, an den Kommunikationsschnittstellen-Generator; und wobei Verfahrensschritt e. umfasst: e. Auslesen der übergebenen, mit den vorliegenden semantischen Annotationen im Quelltext eindeutig verknüpften Logik-Abläufe durch den Kommunikationsschnittstellen-Generator und Auslesen der übergebenen, mit den übergebenen Logik-Abläufen eindeutig verknüpften Konfigurations-Vorlagen durch den Kommunikationsschnittstellen-Generator; wobei dem Verfahrensschritt e. nachfolgt und dem Verfahrensschritt f. vorangeht: ee. Erzeugen von Konfigurationsschnittstellen mittels des Kommunikationsschnittstellen- Generators auf Basis der ausgelesenen Logik-Abläufe und auf Basis der mit den ausgelesenen Logik-Abläufen eindeutig verknüpften, ausgelesenen Konfigurations- Vorlagen und Bereitstellen der erzeugten Konfigurationsschnittstellen zur Modifizierung zumindest der Konfigurationsparameter der Logik- Abläufe. Das Erzeugen und Bereitstellen von wenigstens einer Konfigurationsschnittstelle zur Konfiguration der Konfigurationsparameter des wenigstens einen übergebenen Logik-Ablaufs mittels des Kommunikationsschnittstellen- Generators auf Basis des wenigstens einen ausgelesenen Logik- Ablaufs und auf Basis der wenigstens einen ausgelesenen Konfigurations-Vorlage dient insbesondere der Modifizierung der Konfigurationsparameter des mit der ausgelesenen 202208051 Nachanmeldefassung Konfigurations-Vorlage eindeutig verknüpften, ausgelesenen Logik-Ablaufs dynamisch zur Laufzeit. Eine Modifikation kann eine Änderung oder Anpassung sowie gegebenenfalls eine Erweiterung, Löschung oder Ergänzung der Konfigurationsparameter der Logik-Abläufe umfassen. Die Modifikation kann durch einen Nutzer manuell ausgeführt werden oder über die Konfigurationsschnittstelle durch weitere, andere Computerprogrammprodukte automatisiert erfolgen. Dazu können weitergebildet die Konfigurationsparameter des mit der ausgelesenen Konfigurations-Vorlage eindeutig verknüpften, ausgelesenen Logik-Ablaufs über die bereitgestellte Konfigurationsschnittstelle ausgelesen und dem Nutzer zur manuellen Modifikation bereitgestellt werden, beispielsweise über eine Webanwendung, insbesondere auf einem Bildschirm ausgegeben, beispielsweise in einer Darstellung eines Formulars. Beispielsweise durch Änderung von vorbelegten Werten werden die Modifikationen festgelegt. Die, beispielsweise vom Nutzer oder einem anderen Computerprogrammprodukt, vorgenommenen Modifikationen werden erfasst und mittels der Konfigurationsschnittstelle an den Kommunikationsschnittstellen-Generator übermittelt. Die über die Konfigurationsschnittstelle übergebenen Modifikationen werden vom Kommunikationsschnittstellen-Generator ausgelesen und der aus der Bibliothek ausgelesene Logik-Ablauf durch den Kommunikationsschnittstellen-Generator auf Basis der ausgelesenen Modifikationen modifiziert. Nun liegt im Kommunikationsschnittstellen-Generator ein Logik-Ablauf vor, welcher im Vergleich zum ursprünglichen Logik-Ablauf aus der Bibliothek modifizierte Konfigurationsparameter aufweisen kann. 202208051 Nachanmeldefassung Anschließend werden auf Basis des modifizierten Logik-Ablaufs die Kommunikationsschnittstellen mittels des Kommunikationsschnittstellen-Generators erzeugt. Gemäß einer weiteren Weiterbildung der Erfindung umfasst Verfahrensschritt ee. daher fürderhin: ee. Empfangen von Modifikationen zumindest eines Konfigurationsparameters des wenigstens einen ausgelesenen Logik-Ablaufs durch den Kommunikationsschnittstellen-Generator über die Konfigurationsschnittstelle und Modifizieren des zumindest einen Konfigurationsparameters des wenigstens einen ausgelesenen Logik-Ablaufs durch den Kommunikationsschnittstellen-Generator. Und Verfahrensschritt f. umfasst weitergebildet somit: f. Erzeugen von wenigstens einer Kommunikationsschnittstelle mittels des Kommunikationsschnittstellen-Generators auf Basis des wenigstens einen ausgelesenen und modifizierten Logik-Ablaufs. Vor dem Erzeugen der Kommunikationsschnittstellen können somit jeweilige Kommunikationsschnittstellen erzeugt und bereitgestellt werden und über diese die Logik-Abläufe modifiziert werden. Durch Modifikationen an den Logik-Abläufe sind auch die anschließend erzeugten und bereitgestellten Kommunikationsschnittstellen modifiziert. Eine erzeugte Kommunikationsschnittstelle ist von außen nicht mehr modifizierbar. Lediglich interne Abläufe, wie beispielsweise ein hochlaufender Zähler, können Parameter anpassen. Das erfindungsgemäß erzeugte Computerprogrammprodukt umfasst sämtliche Kommunikationsschnittstellen, wird aber gemäß einer Ausgestaltungsform ohne Konfigurationsschnittstellen bereitgestellt. API-Produkte können so einem Nutzer „as a service“ zur Verfügung gestellt werden, ohne diese selbst 202208051 Nachanmeldefassung konfigurieren zu müssen. Ein Einbetten der erzeugten Konfigurationsschnittstelle in das Computerprogrammprodukt ist nicht erforderlich. Die Logik-Abläufe aus der Bibliothek können mit Standardwerten (default) vorbelegt sein, so dass auch ohne Modifikationen Kommunikationsschnittstellen erzeugt und bereitgestellt werden können. Die Konfiguration der Parameter erfolgt vorteilhaft zur Laufzeit des erfindungsgemäßen Verfahrens bzw. zur Laufzeit des erfindungsgemäßen Computerprogrammprodukts. Auch die Erzeugung der Kommunikationsschnittstelle sowie gegebenenfalls der Konfigurationsschnittstelle gemäß den entsprechenden Verfahrensschritten erfolgt bevorzugt zur Laufzeit des erfindungsgemäßen Verfahrens bzw. zur Laufzeit des erfindungsgemäßen Computerprogramms. Sämtliche andere Verfahrensschritte, wie das Analysieren des Quelltexts oder das Einbetten der erzeugten Kommunikationsschnittstellen in das Computerprogrammprodukt erfolgen insbesondere ebenfalls zur Laufzeit des erfindungsgemäßen Computerprogramms. Nach einer weiteren Weiterbildung der Erfindung ist die Bibliothek von, gegebenenfalls beliebigen und/oder beliebig vielen, semantischen Annotationen erweiterbar. Dies kann ebenfalls zur Laufzeit des Verfahrens, jedoch jedenfalls vor dem Verfahrensschritt d. erfolgen. Entsprechend kann dem Verfahrensschritt d. vorangehen: - Bereitstellen einer Eingabeschnittstelle zur Erweiterung, Löschung oder Änderung von Inhalten der bereitgestellten Bibliothek von semantischen Annotationen; 202208051 Nachanmeldefassung - Erweitern, Löschen oder Ändern von Inhalten der bereitgestellten Bibliothek von semantischen Annotationen. Erweiterung, Löschung oder Änderung, insbesondere Ergänzung oder Anpassung, der Inhalte der bereitgestellten Bibliothek von semantischen Annotationen umfasst somit die Erweiterung, Löschung oder Änderung, insbesondere Ergänzung oder Anpassung, der semantischen Annotationen, also der Ausdrücke zur Markierung der Quelltext-Konstrukte als solche, der mit den semantischen Annotationen eindeutig verknüpften Logik- Abläufe sowie gegebenenfalls der mit den Logik-Abläufen eindeutig verknüpften Konfigurations-Vorlagen. Dazu können die Inhalte der Bibliothek von semantischen Annotationen über die bereitgestellte Eingabeschnittstelle ausgelesen und dem Nutzer zur manuellen Erweiterung, Löschung oder Änderung bereitgestellt werden, beispielsweise über eine Webanwendung, insbesondere auf einem Bildschirm ausgegeben werden. Die, beispielsweise vom Nutzer oder einem anderen Computerprogrammprodukt, vorgenommenen Erweiterungen, Löschungen oder Änderungen werden erfasst und mittels der Eingabeschnittstelle in die Bibliothek zurückgeschrieben werden. Mit der Eingangsschnittstelle lässt sich weitergebildet auch der, insbesondere mittels der Eingangsschnittstelle eingelesene, Quelltext erweitern, löschen oder ändern, insbesondere semantische Annotationen von Quelltext- Konstrukten ergänzen, löschen oder anpassen. Die Eingabeschnittstelle ist entsprechend geeignet ausgebildet. Ein weitergebildetes Computerprogramm zur Herstellung eines Computerprogrammprodukts umfasst entsprechend eine Eingabeschnittstelle zur Erweiterung, Löschung oder Änderung, 202208051 Nachanmeldefassung insbesondere Ergänzung oder Anpassung der Inhalte der bereitgestellten Bibliothek und/oder zur Markierung von wenigstens einem Quelltext-Konstrukt des Quelltexts mit wenigstens einer semantischen Annotation aus der Bibliothek. Die erzeugten Kommunikationsschnittstellen ermöglichen es, Eingaben, z.B. Werte, an die Algorithmen der künstlichen Intelligenz, beispielsweise auch über ein bzw. aus einem Netzwerk, zu übergeben oder entsprechende Wert aus den Algorithmen der künstlichen Intelligenz, beispielsweise auch über ein Netzwerk, auszugeben. Dabei beschreiben weitergebildet die mit den semantischen Annotationen aus der Bibliothek markierten Quelltext- Konstrukte der Algorithmen der künstlichen Intelligenz des Quelltexts jeweils wenigstens einen Algorithmus zur Regelung, Steuerung oder Diagnose von technischen Geräten oder Anlagen. Entsprechend dient die wenigstens eine erzeugte und bereitgestellte Kommunikationsschnittstelle zur Einbettung, beispielsweise zur Ausführung und zum Zugriff über ein Netzwerk, des wenigstens einen mit der wenigstens einen semantischen Annotation markierten Quelltext-Konstrukts der Algorithmen der künstlichen Intelligenz des Quelltexts umfassend die Algorithmen der künstlichen Intelligenz der Regelung, Steuerung, Diagnose oder Überwachung und/oder Simulation von technischen Geräten, wie Maschinen, oder Anlagen. Der bereitgestellte Quelltext von Algorithmen der künstlichen Intelligenz umfassend wenigstens eine semantische Annotation wenigstens eines Quelltext-Konstrukts wird weitergebildet zunächst mittels einer Eingangsschnittstelle an die Quelltext-Analysekomponente übergeben. Ein entsprechend weitergebildetes Computerprogramm umfasst eine Eingangsschnittstelle zum Einlesen des Quelltexts und zum Übergeben des Quelltexts an die Quelltext-Analyse-Komponente. 202208051 Nachanmeldefassung Die Eingangsschnittstelle ist geeignet ausgebildet zum Einlesen eines Quelltexts von Algorithmen der künstlichen Intelligenz umfassend semantische Annotationen als Ausdrücke zur Markierung von Quelltext-Konstrukten des Quelltexts von Algorithmen der künstlichen Intelligenz im Quelltext. Darüber hinaus ist die Eingangsschnittstelle geeignet ausgebildet zur Übergabe des Quelltexts an die Quelltext-Analysekomponente. Die Erfindung hat viele Vorteile. So können prototypisch implementierte Algorithmen und Verfahren aus dem Bereich der Künstlichen Intelligenz mit der Erfindung sehr einfach und kosteneffizient in Produkte überführt werden, die direkt in beliebige Kunden-Applikationen und -Prozesse eingebunden werden können, ohne dem Kunden jedoch direkten Zugriff auf das geistige Eigentum an den Algorithmen und Verfahren zu ermöglichen. Verschiedene Facetten der vorliegenden Erfindung tragen zu einer stark gesteigerten Kosteneffizienz im Rahmen der Produktivierung von Algorithmen und Verfahren aus dem Bereich der Künstlichen Intelligenz bei: Self-Service-Angebot für Data Scientists: Die relevanten Teile des Quelltexts von Algorithmen und Verfahren aus dem Bereich Künstliche Intelligenz bleiben nahezu vollständig unangetastet, anstatt wie bisher üblich komplett umgearbeitet zu werden. Die semantischen Annotationen sind ein sehr leichtes Konzept, das auch direkt von den Data Scientists selbst angewendet werden kann. Somit entfällt das bei vergleichbaren Ansätzen notwendige Involvieren von Software- Entwicklern bei der Produktivierung. Dadurch wird signifikant Zeit gespart, da sich außer den ursprünglichen Autoren niemand in den Quelltext einarbeiten muss. Auch der Koordinationsaufwand zwischen Data Scientists und Software- Entwicklern entfällt. 202208051 Nachanmeldefassung Inkrementelle Produktivierung von existierendem Quelltext: Semantische Annotationen können nach und nach hinzugefügt werden, um je nach Bedarf weitere Kommunikationsschnittstellen generieren zu lassen. Alle Teile des Quelltexts, die nicht annotiert sind, werden zunächst nicht berücksichtigt. Auf diese Weise ist eine inkrementelle Produktivierung von existierendem Quelltext sehr leicht möglich. Die Kommunikationsschnittstellen können einfach durch das Weglassen oder Hinzufügen semantischer Annotationen kontrolliert werden. Das entstehende API-Produkt kann somit ideal auf die Anforderungen des Nutzers zugeschnitten werden. Wiederverwendbarkeit der generierten API-Produkte in unterschiedlichen Kontexten: Die semantischen Annotationen können je nach Bedarf mit Parametern konfiguriert werden. Diese Konfiguration erfolgt erst zur Laufzeit des API- Produkts über eine dafür vorgesehene Konfigurationsschnittstelle. Das ermöglicht es, dass derselbe Quelltext in unterschiedlichen Einsatzkontexten, z.B. für unterschiedliche Nutzer und/oder Projekte, verwendet werden kann, da er bei seiner Ausführung dynamisch auf die jeweils geltenden Anforderungen angepasst werden kann. Erweiterbarkeit: Die von der Erfindung verwendete Bibliothek von semantischen Annotationen kann darüber hinaus noch um beliebige zusätzliche Annotationen ergänzt werden. Dadurch sind API-Produkte, die mit der vorliegenden Erfindung erstellt worden sind, besonders wartungsfreundlich, da neue Funktionen bei Bedarf einfach hinzugefügt werden können. Dieser Erweiterungsmechanismus erlaubt es zudem, die vorliegende Erfindung auch in fremden Anwendungsbereichen außerhalb der Produktivierung von Algorithmen und Verfahren der Künstlichen Intelligenz einzusetzen, wenn dafür geeignete semantische Annotationen erstellt werden. Da die Quelltext-Markierungen der semantischen Annotationen keinerlei Informationen über die zu erzeugenden Kommunikationsschnittstellen enthalten, ist es mit ihrer 202208051 Nachanmeldefassung Hilfe auch möglich, bereits annotierten Quelltext zu einem späteren Zeitpunkt auf andere Kommunikationsschnittstellen abzubilden. Dies steigert die Zukunftssicherheit und Flexibilität der API-Produkte, die mit der vorliegenden Erfindung erstellt worden sind, da etwaige Technologie- Migrationen später ohne Mitwirkung der ursprünglichen Autoren durchgeführt werden können. Das erzeugte Computerprogrammprodukt stellt das unmittelbare Verfahrensprodukt gemäß dem erfindungsgemäßen Verfahren dar, sowie das Erzeugnis, welches mittels des erfindungsgemäßen Computerprogramms zur Herstellung eines weiteren Computerprogrammprodukts hergestellt ist. Es kann auf einem Datenträger gespeichert sein. Die Erfindung lässt zahlreiche Ausführungsformen zu. Sie wird anhand der nachfolgenden Figur näher erläutert, in der ein Ausgestaltungsbeispiel dargestellt ist. Die Figur zeigt schematisch eine Übersicht über die Erfindung. Eine Bibliothek 1 mit einer beliebigen Vielzahl an semantischen Annotationen SA1 … SAn (mit n einer natürlichen Zahl größer 1) wird bereitgestellt. Jede der semantischen Annotationen SA1 … SAn stellt einen Ausdruck zur Markierung eines Quelltext-Konstrukts eines Quelltexts mit Algorithmen der Künstlichen Intelligenz dar. Mit jeder der semantischen Annotationen SA1 … SAn eindeutig verknüpft – hier unter demselben Eintrag in der Bibliothek dargestellt - sind eine Konfigurations-Vorlage KV1 … KVn sowie ein Logik-Ablauf LA1 … LAn, in den das annotierte Quelltext-Konstrukt zur Laufzeit eingebettet wird. Darüber hinaus wird eine Quelltext-Analyse-Komponente 2, ein Kommunikationsschnittstellen-Generator 3 und eine 202208051 Nachanmeldefassung Kommunikationsschnittstellen-Bereitstellungskomponente 4 bereitgestellt. Die Pfeile zwischen den Modulen kennzeichnen deren Verbindungen untereinander. Gemäß dem Pfeil von der Bibliothek 1 zur Quelltext-Analyse-Komponente 2 verwendet die Quelltext-Analyse Komponente 2 die Bibliothek. Analog verwendet die Quelltext-Analyse-Komponente 2 die Kommunikationsschnittstellen-Bereitstellungskomponente 4 sowie den Kommunikationsschnittstellen-Generator 3, was mit den entsprechenden Pfeilen zwischen den genannten Modulen veranschaulicht ist. Gleichermaßen wird der Kommunikationsschnittstellen-Generator 3 von der Kommunikationsschnittstellen-Bereitstellungskomponente 4 verwendet. Mit den als Ausdrücke in der Bibliothek 1 bereitgestellten semantischen Annotationen werden Quelltext-Konstrukte des Quelltexts von Algorithmen der künstlichen Intelligenz markiert. Dieser Quelltext wird eingelesen und auf das Vorliegen von entsprechenden semantischen Annotationen der Bibliothek mittels der Quelltext-Analyse-Komponente 2 analysiert. Werden mit semantischen Annotationen aus der Bibliothek markierte Quelltext-Konstrukte im Quelltext identifiziert, werden Kommunikationsschnittstellen mittels des Kommunikationsschnittstellen-Generators 3 auf Basis des mit den identifizierten semantischen Annotationen eindeutig verknüpften Logik-Abläufe erzeugt und mittels der Kommunikationsschnittstellen-Bereitstellungskomponente 4 bereitgestellt. Dies soll nachfolgend anhand einer stark vereinfachten Beispielimplementierung näher skizziert werden. 202208051 Nachanmeldefassung Zunächst wird ein Quelltext mit Algorithmen der künstlichen Intelligenz erzeugt, beispielsweise von einem Data-Scientist, deren Algorithmen in ein API-Produkt überführt werden. Hier ein Quelltext mit zwei Funktionen in der Programmiersprache Python: def training_alorithm() step1() step2() def prediction_algorithm() step1() step2() Während oder nach der Erstellung des Algorithmus fügt der Data Scientist zwei semantische Annotationen @Training und @InteractivePrediction hinzu, um zu markieren, dass es sich bei der Funktion training_algorithm() um das Training eines analytischen Modells und bei der Funktion prediction_algorithm() um die interaktive Erzeugung von Vorhersagen durch das Modell handelt. In diesem oder im nächsten Schritt fügt er deklarative Typ- Definitionen für den Informationsaustausch zwischen API und Nutzer hinzu. Auch diese versieht er mit entsprechenden Annotationen @TrainingData, @PredictionRequest, @PredictionResponse, um anzuzeigen, wann welche Informationen vom Nutzer angefragt werden sollen und wie das API-Produkt antworten soll. Der Quelltext lautet nun wie folgt: @Training def training_alorithm(data) step1() step2() @InteractivePrediction def prediction_algorithm(data) 202208051 Nachanmeldefassung step1() step2() @TrainingData def TrainInput: observations: List[float] @PredictionRequest class Input: parameter1: str parameter1: str @PredictionResult class Output: result: str Anschließend wird der Quelltet ausgeführt. Auf Basis aller eingefügten semantischen Annotationen werden bei der Ausführung des annotierten Quelltexts nun automatisch Kommunikationsschnittstellen für Training und Vorhersage erzeugt, über die der Nutzer die beiden annotierten Funktionen über ein Netzwerk ansprechen kann. Zusätzlich werden weitere standardisierte Schnittstellen generiert, mit denen das API-Produkt dynamisch konfiguriert und sein Lebenszyklus überwacht werden kann. Für jede semantische Annotation werden im Beispiel folgende Informationen erfasst: i. Im Quelltext zu verwendende Markierung; ^ Beispiel: @InteractivePrediction, um zu eine Vorhersage-Funktion zu kennzeichnen; ii. Logik-Ablauf, in den das annotierte Quelltext- Konstrukt zur Laufzeit eingebettet wird; ^ Beispiel: Logik-Ablauf in den eine mit @InteractivePrediction annotierte Vorhersage- Funktion eingebettet wird: ^ Validierung der Nutzeranfrage, 202208051 Nachanmeldefassung ^ Ausführen der annotierten Vorhersage- Funktion, ^ Persistentes Ablegen des Vorhersage- Ergebnisses, um spätere Nachvollziehbarkeit zu ermöglichen, ^ Versenden des Vorhersage-Ergebnisses als Antwort an den Nutzer; iii. Konfigurations-Vorlage, welche die Definitionen aller Konfigurationsparameter enthält, mit denen der Logik- Ablauf je nach Anforderungen zur Laufzeit dynamisch modifiziert werden kann; ^ Beispiel: Um das API-Produkt an bestimmte Bedürfnisse anzupassen, kann beispielsweise für eine mit @InteractivePrediction annotierte Vorhersage-Funktion festgelegt werden, wie oft der Nutzer diese in einem bestimmten Zeitraum aufrufen darf. Diese Beispiel Implementierung der Erfindung ist in der Programmiersprache Python geschrieben. Sie eignet sich dazu, API-Produkte aus Python-Quelltext zu erzeugen, der mit beliebigen am Markt verfügbaren Python-Bibliotheken im Bereich Datenanalyse und Künstlicher Intelligenz erstellt worden ist. Damit werden die einschlägigen Anwendungsfälle im Bereich Datenanalyse und Künstlicher Intelligenz abgedeckt. Die semantischen Annotationen werden mit Hilfe von sogenannten Python Dekoratoren umgesetzt. Folgende Typen von semantischen Annotationen sind aktuell verfügbar: - Definition von Kommunikationsschnittstellen: o Benutzerdefinierte Initialisierung des API-Produkts o Training von analytischen Modellen o Interaktive Erzeugung von Vorhersagen o Asynchrone Erzeugung von Vorhersagen o Starten von Stapelverarbeitungsjobs o Starten von Datenstromverarbeitungsjobs 202208051 Nachanmeldefassung o Verarbeiten von Kundenrückmeldungen zu vorher getroffenen Vorhersagen - Definition von auszutauschenden Informationen: o Definition des Schemas von allgemeinen Konfigurationsparametern o Definition des Schemas von Anfragen für Vorhersagen o Definition des Schemas von Antworten auf Anfragen für Vorhersagen o Definition des Schemas von Hyperparametern für analytische Modelle o Definition des Schemas von Trainingsdaten für analytische Modelle o Definition des Schemas von Nutzerrückmeldungen zu vorher getroffenen Vorhersagen Als Kommunikations-Schnittstelle kommt beispielsweise REST zum Einsatz. Diese Schnittstellen folgen dem OpenAPI-Standard und sind somit selbstbeschreibend. Über öffentlich verfügbare Quelltext-Generatoren können Nutzer die resultierenden API- Produkte in zahlreiche Applikationen und Prozesse integrieren.

Claims

202208051 Nachanmeldefassung Patentansprüche 1. Computerimplementiertes Verfahren zur Herstellung eines Computerprogrammprodukts ausgehend von einem Quelltext von Algorithmen der künstlichen Intelligenz mit wenigstens einem mit wenigstens einer semantischen Annotation markierten Quelltext-Konstrukt umfassend folgende Verfahrensschritte: a. Bereitstellen einer Bibliothek (1) von semantischen Annotationen, umfassend: - semantische Annotationen (SA1 … SAn) zur Markierung von Quelltext-Konstrukten des Quelltexts von Algorithmen der künstlichen Intelligenz; - mit den semantischen Annotationen (SA1 … SAn) eindeutig verknüpfte Logik-Abläufe (LA1 … LAn) zur Erzeugung von Kommunikationsschnittstellen und zur Einbettung von markierten Quelltext- Konstrukten; b. Bereitstellen einer Quelltext-Analyse-Komponente (2) zur Analyse des Quelltexts auf das Vorliegen von den semantischen Annotationen (SA1 … SAn) im Quelltext; c. Bereitstellen eines Kommunikationsschnittstellen- Generators (3) zur Erzeugung wenigstens einer Kommunikationsschnittstelle; d. Analysieren des Quelltexts mittels der Quelltext- Analyse-Komponente (2) auf das Vorliegen von wenigstens einer semantischen Annotation (SA1 … SAn) im Quelltext und Übergeben des wenigstens einen Logik-Ablaufs aus der Bibliothek (1), der mit der wenigstens einen vorliegenden semantischen Annotation (SA1 … SAn) im Quelltext eindeutig verknüpft ist, an den Kommunikationsschnittstellen- Generator (3); 202208051 Nachanmeldefassung e. Auslesen des wenigstens einen übergebenen, mit der wenigstens einen vorliegenden semantischen Annotation (SA1 … SAn) im Quelltext verknüpften Logik-Ablaufs (LA1 … LAn) durch den Kommunikationsschnittstellen-Generator (3) und f. Erzeugen von wenigstens einer Kommunikationsschnittstelle mittels des Kommunikationsschnittstellen-Generators (3) auf Basis des wenigstens einen ausgelesenen Logik- Ablaufs (LA1 … LAn); g. Einbetten der wenigstens einen erzeugten Kommunikationsschnittstelle in das Computerprogrammprodukt. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass dem Verfahrensschritt a. vorausgeht: - Markieren wenigstens eines Quelltext- Konstrukts im Quelltext der Algorithmen der künstlichen Intelligenz mit wenigstens einer semantischen Annotation (SA1 … SAn) aus der Bibliothek (1) von semantischen Annotationen. 3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass es zusätzlich folgende Verfahrensschritte umfasst, die Verfahrensschritt e. vorangehen: cc. Bereitstellen einer Kommunikationsschnittstellen- Bereitstellungskomponente (4); wobei in Verfahrensschritt f. die wenigstens eine, vom Kommunikationsschnittstellen-Generator (3) erzeugte Kommunikationsschnittstelle an die Kommunikationsschnittstellen-Bereitstellungskomponente (4) übergeben wird, 202208051 Nachanmeldefassung wobei Verfahrensschritt g. durch die Kommunikationsschnittstellen-Bereitstellungskomponente (4) ausgeführt wird, und wobei dem Verfahrensschritt g. nachfolgt: h.Bereitstellen des erzeugten Computerprogrammprodukts durch die Kommunikationsschnittstellen- Bereitstellungskomponente (4). 4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die gemäß Verfahrensschritt a. bereitgestellte Bibliothek (1) von semantischen Annotationen wenigstens eine mit wenigstens einem Logik-Ablauf (LA1 … LAn) eindeutig verknüpfte Konfigurations-Vorlage (KV1 … KVn) umfasst, die Definitionen von Konfigurationsparametern zur Modifizierung des Logik-Ablaufs (LA1 … LAn) umfasst, wobei die Verfahrensschritte d. und e. zusätzlich umfassen: d. Übergeben wenigstens einer Konfigurations-Vorlage (KV1 … KVn) aus der Bibliothek (1), die mit dem wenigstens einen übergebenen Logik-Ablauf (LA1 … LAn) eindeutig verknüpft ist, an den Kommunikationsschnittstellen-Generator (3); e. Auslesen der wenigstens einen übergebenen, mit dem wenigstens einen übergebenen Logik-Ablauf (LA1 … LAn) eindeutig verknüpften Konfigurations-Vorlage (KV1 … KVn) durch den Kommunikationsschnittstellen- Generator (3); wobei dem Verfahrensschritt e. nachfolgt und dem Verfahrensschritt f. vorangeht: ee. Erzeugen von wenigstens einer Konfigurationsschnittstelle mittels des Kommunikationsschnittstellen-Generators (3) auf Basis des wenigstens einen ausgelesenen Logik- Ablaufs (LA1 … LAn) und auf Basis der wenigstens einen ausgelesenen Konfigurations-Vorlage (KV1 … 202208051 Nachanmeldefassung KVn) und Bereitstellen der wenigstens einen erzeugten Konfigurationsschnittstelle zur Modifizierung des wenigstens einen ausgelesenen Logik-Ablaufs (LA1 … LAn). 5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass Verfahrensschritt ee. zusätzlich umfasst: ee. Empfangen von wenigstens einer Modifikation des wenigstens einen ausgelesenen Logik-Ablaufs (LA1 … LAn) über die Konfigurationsschnittstelle und Modifizieren des wenigstens einen ausgelesenen Logik-Ablaufs (LA1 … LAn) durch den Kommunikationsschnittstellen-Generator (3); wobei Verfahrensschritt f. umfasst: f. Erzeugen von wenigstens einer Kommunikationsschnittstelle mittels des Kommunikationsschnittstellen-Generators (3) auf Basis des wenigstens einen modifizierten Logik- Ablaufs (LA1 … LAn). 6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass gemäß Verfahrensschritt f. die wenigstens eine Kommunikationsschnittstelle als Application Programming Interface mittels des Kommunikationsschnittstellen-Generators (3) erzeugt wird. 7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass dem Verfahrensschritt d. vorangeht: - Bereitstellen einer Eingabeschnittstelle zum Empfang einer Eingabe zur Erweiterung, Löschung oder Änderung von Inhalten der bereitgestellten Bibliothek (1) von semantischen Annotationen; - Erweitern, Löschen oder Ändern von Inhalten der bereitgestellten Bibliothek von 202208051 Nachanmeldefassung semantischen Annotationen (SA1 … SAn) auf Basis der Eingabe. 8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das wenigstens eine mit einer semantischen Annotation (SA1 … SAn) aus der Bibliothek (1) markierte Quelltext-Konstrukt des Quelltexts der Algorithmen der künstlichen Intelligenz wenigstens einen Algorithmus zur Regelung, Steuerung, Diagnose, Überwachung oder Simulation von technischen Geräten oder Anlagen umfasst. 9. Computerprogramm zur Herstellung eines Computerprogrammprodukts umfassend Befehle, die bei der Ausführung des Programms durch einen geeigneten Computer dieses veranlassen, das Verfahren nach einem der Ansprüche 1 bis 8 auszuführen. 10. Computerprogramm nach Anspruch 9, dadurch gekennzeichnet, dass es umfasst: - eine Bibliothek (1) von semantischen Annotationen umfassend - semantische Annotationen (SA1 … SAn) zur Markierung von Quelltext-Konstrukten eines Quelltexts von Algorithmen der künstlichen Intelligenz; - mit den semantischen Annotationen (SA1 … SAn) eindeutig verknüpfte Logik-Abläufe (LA1 … LAn) zur Erzeugung von Kommunikationsschnittstellen und zur Einbettung der markierten Quelltext- Konstrukte; - eine Quelltext-Analyse-Komponente (2), geeignet ausgebildet - zur Analyse des Quelltexts auf das Vorliegen von semantischen Annotationen (SA1 … SAn) aus der Bibliothek (1) im Quelltext; 202208051 Nachanmeldefassung - zur Übergabe wenigstens eines Logik-Ablaufs (LA1 … LAn) aus der Bibliothek (1), der mit wenigstens einer vorliegenden semantischen Annotation (SA1 … SAn) im Quelltext eindeutig verknüpft ist, an einen Kommunikationsschnittstellen-Generator (3) - ein Kommunikationsschnittstellen-Generator (3), geeignet ausgebildet - zum Auslesen wenigstens einen übergebenen, mit wenigstens einer vorliegenden semantischen Annotation (SA1 … SAn) im Quelltext verknüpften Logik-Ablaufs (LA1 … LAn); - zur Erzeugung von wenigstens einer Kommunikationsschnittstelle auf Basis wenigstens eines ausgelesenen Logik-Ablaufs (LA1 … LAn); - zur Übergabe wenigstens einer erzeugten Kommunikationsschnittstelle an eine Kommunikationsschnittstellen- Bereitstellungskomponente (4); - eine Kommunikationsschnittstellen- Bereitstellungskomponente (4), geeignet ausgebildet - zum Einbetten der wenigstens einen erzeugten Kommunikationsschnittstelle in das Computerprogrammprodukt. 11. Computerprogramm nach einem der Ansprüche 9 oder 10, dadurch gekennzeichnet, dass es eine Eingangsschnittstelle umfasst, welche geeignet ausgebildet ist zum: - Einlesen eines Quelltexts von Algorithmen der künstlichen Intelligenz umfassend wenigstens eine semantische Annotation (SA1 … SAn) zur Markierung von wenigstens einem Quelltext-Konstrukt des Quelltexts von Algorithmen der künstlichen Intelligenz im Quelltext; 202208051 Nachanmeldefassung - Übergeben des eigelesenen Quelltexts an eine Quelltext-Analyse-Komponente (2). 12. Computerprogramm nach einem der Ansprüche 9 bis 11, umfassend eine Eingabeschnittstelle zum Empfang einer Eingabe zur Erweiterung, Löschung oder Änderung der Inhalte der bereitgestellten Bibliothek (1) von semantischen Annotationen und/oder zum Markieren von wenigstens einem Quelltext-Konstrukt des Quelltexts mit wenigstens einer semantischen Annotation (SA1 … SAn) aus der Bibliothek (1). 13. Datenträger, auf dem das Computerprogramm nach einem der Ansprüche 9 bis 12 gespeichert ist. 14. Computerprogrammprodukt hergestellt mit einem Verfahren nach einem der Ansprüche 1 bis 8. 15. Datenträger, auf dem das Computerprogrammprodukt nach Anspruch 14 gespeichert ist.
EP23719674.6A 2022-04-29 2023-04-12 Verfahren und computerprogramm zur automatisierten erzeugung von kommunikationsschnittstellen in algorithmen aus dem bereich der künstlichen intelligenz Pending EP4490607A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022204238 2022-04-29
PCT/EP2023/059485 WO2023208578A1 (de) 2022-04-29 2023-04-12 Verfahren und computerprogramm zur automatisierten erzeugung von kommunikationsschnittstellen in algorithmen aus dem bereich der künstlichen intelligenz

Publications (1)

Publication Number Publication Date
EP4490607A1 true EP4490607A1 (de) 2025-01-15

Family

ID=86226392

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23719674.6A Pending EP4490607A1 (de) 2022-04-29 2023-04-12 Verfahren und computerprogramm zur automatisierten erzeugung von kommunikationsschnittstellen in algorithmen aus dem bereich der künstlichen intelligenz

Country Status (4)

Country Link
US (1) US20250291704A1 (de)
EP (1) EP4490607A1 (de)
CN (1) CN119234208A (de)
WO (1) WO2023208578A1 (de)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9274755B2 (en) * 2012-09-05 2016-03-01 Red Hat Israel, Ltd. Infrastructure for generating code using annotation and template generators

Also Published As

Publication number Publication date
US20250291704A1 (en) 2025-09-18
WO2023208578A1 (de) 2023-11-02
CN119234208A (zh) 2024-12-31

Similar Documents

Publication Publication Date Title
DE69327318T2 (de) Unterstützung für systementwicklung.
DE102020112347A1 (de) Verfahren und einrichtungen zum automatischen erzeugen von code für grafische benutzeroberflächen
DE19960050A1 (de) Grafische Benutzerschnittstelle zur Entwicklung von Anwendungsbeispielen unter Verwendung einer Testobjektbibliothek
EP2330469B1 (de) Verfahren und Entwicklungsumgebung zur Erzeugung eines ausführbaren Gesamtsteuerungsprogramms
EP3543844B1 (de) Verfahren zum durchführen von änderungen an einer software-anwendung
EP3365891B1 (de) Sprachgesteuertes system
EP3032408B1 (de) Verfahren zur erzeugung von lauffähigen applikationen mit dynamischen skalierbaren vektorgrafiken
WO2021104608A1 (de) Verfahren zum erzeugen eines engineering-vorschlags für eine vorrichtung oder anlage
DE69907714T2 (de) Komponentbasiertes quellcodegeneratorverfahren
DE69328452T2 (de) System zur Entwicklung von Software aus einer Spezifikation in natürlicher Sprache mittels Objektnetzwerken
Prakash et al. Chances and Challenges in Fusing Data Science with Materials Science: The working group “3D Data Science” is headed by Prof. Dr. Stefan Sandfeld.
DE102021116315A1 (de) Verfahren zum Zusammenführen von Architekturinformationen
EP4490607A1 (de) Verfahren und computerprogramm zur automatisierten erzeugung von kommunikationsschnittstellen in algorithmen aus dem bereich der künstlichen intelligenz
EP3709188A1 (de) Rechnerarchitektur für eine schnittstelle zur aggregation von datenobjekten in einem verteilten system
EP4270176B1 (de) Verfahren zur erzeugung von quellcode
DE202024102344U1 (de) Auf künstlicher Intelligenz basierendes intelligentes Benutzeroberflächen-Bewertungssystem
EP1387260A1 (de) Verfahren und Vorrichtung zur Erzeugung von Software
DE102016214666A1 (de) Verfahren und Vorrichtung zur Gestaltung einer technischen Anlage
DE10233971A1 (de) Verfahren und Vorrichtung zur Erzeugung von Software
EP2329374A1 (de) Testmodul und verfahren zum testen einer o/r-abbildungs-middleware
EP3355186A1 (de) Erzeugung und ausführung von software-modulen
EP3961517A1 (de) Verfahren und ein system zum erstellen einer industriellen lösung mit einer künstlichen intelligenz
EP3771979A1 (de) Verfahren und vorrichtung zur optimalen konfiguration eines geräts einer geräteklasse
EP1959430A2 (de) Verfahren zur automatischen Generierung von VoiceXML-sprachapplicationen aus Sprachdialogmodellen
DE102024208098A1 (de) Verfahren und Vorrichtung zur automatisierten Konfiguration von Manufacturing Execution Systeme

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20241011

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
RAP3 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SIEMENS MOBILITY GMBH

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20260220