Methods and apparatus for bidirectional interpretation of network configuration instructions
A neural network-based method processes non-natural language CLI inputs through a graph structure to generate YANG instructions, addressing complexity and variability, enhancing network integration efficiency and accuracy.
Patent Information
- Application Number
- PCT/EP2024/070189
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-16
- Publication Date
- 2026-01-22
Smart Images

Figure EP2024070189_22012026_PF_FP_ABST
Abstract
Description
[0001] METHODS AND APPARATUS FOR BIDIRECTIONAL INTERPRETATION OF NETWORK CONFIGURATION INSTRUCTIONS
[0002] TECHNICAL FIELD
[0003] The present disclosure relates, in general, to bidirectional interpretation of network configuration instructions. Aspects relate to bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set.
[0004] BACKGROUND
[0005] Content generation has evolved to the point where many research and commercial solutions are readily available for different natural language processing (NLP) applications. Although this has led to some promising results, its performance is seriously degraded once being applied to non-NLP data (e.g., specific mobile network vendor data, bioinformatics domain data, network protocols data, mobile applications data, physical circuit specifications, etc.).
[0006] Content generation tends to create an improved form of an input text without sacrificing the meaning, or sacrificing it to a minimum. It is a natural language processing task that involves condensing a lengthy text document into a shorter, more compact version while still retaining the most important information and meaning. The goal is to produce meaningful content that accurately represents the content of the original text in a concise form There are different approaches to text content generation, including extractive methods that identify and extract important sentences or phrases from the text, and abstractive methods that generate new text based on the content of the original text.
[0007] Models that perform extractive content generation essentially pick the best, most representative sentences and copy them into the generated content summary Models that perform abstractive content generation generate new sentences that capture general ideas. Extractive content generation is a binary classification problem, either classifying a, e.g., sentence as “should be in the generated content” or “should NOT be in the generated content”. Abstractive content generation is a sequence to sequence text generation problem. This is significantly more difficult than extractive content generation since a machine has to synthesize the information it “reads” into a new form
[0008] Yet Another Next Generation (YANG) is a data modeling language for the definition of data sent over network management protocols such as the NETCONF and RESTCONF, and can be used to model both configuration data as well as state data of network elements for example. YANG represents data structures in an Extensible Markup Language (XML) tree format.
[0009] With YANG, code generation has usually been addressed manually, then semi-automatically using classical machine learning (ML) techniques, but without any commercial success. Difficulties arises from the fact that the complexity that exists between natural language and YANG, through the YANG abstract syntax tree, has never been fully explored
[0010] SUMMARY
[0011] An objective of the present disclosure is to provide a mechanism for generating YANG language network format instructions based on command line input (CLI) instructions that are provided in non-natural multilanguage scenarios.
[0012] The foregoing and other objectives are achieved by the features of the independent claims.
[0013] Further implementation forms are apparent from the dependent claims, the description and the Figures
[0014] A first aspect of the present disclosure provides an apparatus for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, the apparatus comprising at least one processor, and a memory configured to store instructions for instructing the at least one processor to perform at least one operation, wherein the at least one operation comprises receiving a non-natural language set of instructions representing a network configuration for a set of network elements in a network, processing the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements, and for each one of the network command arrangements generating, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model.
[0015] Accordingly, rather than being purely related to either CLI to YANG or YANG to tree node representation, a non-natural language description of YANG is addressed that can be employed in a range of services For example, it is generally applicable for other non-YANG domains such as: mobile network vendor data, bioinformatics domain data, network protocols data, mobile applications data, physical circuit specifications.
[0016] In an implementation of the first aspect, the non-natural language set of instructions can comprise a set of command line input instructions. The at least one operation can further comprise using a graph structure, the graph structure comprising a set of nodes and a set of edges interlinking the nodes, wherein respective nodes of the graph structure form a hierarchical tree structure with each node comprising a data item representing a non-natural language instruction, wherein an individual network configuration sequence defining a network command arrangement is defined by a relationship between one or more nodes of the graph structure, determining the set of non-natural language units. The at least one operation can further comprise, for each YANG instruction of the set of YANG instructions, defining a YANG-CLI pair comprising a YANG instruction and its corresponding network command arrangement, and for each YANG-CLI pair determining an expected return of executing a YANG instruction by calculating a value, Q, representing a state of the network according to a predefined policy following execution of the YANG instruction. The at least one operation can further comprise, for each YANG instruction of the set of YANG instructions, calculating the value, Q, representing the state of the network according to the predefined policy following execution of the YANG instruction using a reinforcement learning process configured to: receive as input a current network state, and to calculate a predicted value for an action associated with execution of the YANG instruction, and calculating, using a target network model configured to receive a state of the network following execution of the YANG instruction, a predicted value associated to an action taken from the state of the network following execution of the YANG instruction.
[0017] A second aspect of the present disclosure provides a method for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, the method comprising receiving a non-natural language set of instructions representing a network configuration for a set of network elements in a network, processing the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements, and for each one of the network command arrangements generating, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model
[0018] In an implementation of the second aspect, the non-natural language set of instructions can comprise a set of command line input instructions The method can further comprise using a graph structure, the graph structure comprising a set of nodes and a set of edges interlinking the nodes, wherein respective nodes of the graph structure form a hierarchical tree structure with each node comprising a data item representing a non-natural language instruction, wherein an individual network configuration sequence defining a network command arrangement is defined by a relationship between one or more nodes of the graph structure, determining the set of non-natural language units. The method can further comprise, for each YANG instruction of the set of YANG instructions, defining a YANG-CLI pair comprising a YANG instruction and its corresponding network command arrangement, and for each YANG-CLI pair determining an expected return of executing a YANG instruction by calculating a value, Q, representing a state of the network according to a predefined policy following execution of the YANG instruction The method can further comprise, for each YANG instruction of the set of YANG instructions, calculating the value, Q, representing the state of the network according to the predefined policy following execution of the YANG instruction using a reinforcement learning process configured to: receive as input a current network state, and to calculate a predicted value for an action associated with execution of the YANG instruction, and calculating, using a target network model configured to receive a state of the network following execution of the YANG instruction, a predicted value associated to an action taken from the state of the network following execution of the YANG instruction.
[0019] A third aspect of the present disclosure provides a machine-readable storage medium encoded with instructions for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, the instructions executable by a processor of a device, whereby to cause the device to receive a non-natural language set of instructions representing a network configuration for a set of network elements in a network, process the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements, and for each one of the network command arrangements generate, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model.
[0020] In an implementation of the third aspect, further instructions executable by the processor of the device can cause the device to receive a set of command line input instructions representing the non-natural language set of instructions. Further instructions executable by the processor of the device can cause the device to, using a graph structure, the graph structure comprising a set of nodes and a set of edges interlinking the nodes, wherein respective nodes of the graph structure form a hierarchical tree structure with each node comprising a data item representing a non-natural language instruction, wherein an individual network configuration sequence defining a network command arrangement is defined by a relationship between one or more nodes of the graph structure, determine the set of non-natural language units. Further instructions executable by the processor of the device can cause the device to for each YANG instruction of the set of YANG instructions, define a YANG-CLI pair comprising a YANG instruction and its corresponding network command arrangement, and for each YANG-CLI pair, determine an expected return of executing a YANG instruction by calculating a value, Q, representing a state of the network according to a predefined policy following execution of the YANG instruction. Further instructions executable by the processor of the device can cause the device to, for each YANG instruction of the set of YANG instructions, calculate the value, Q, representing the state of the network according to the predefined policy following execution of the YANG instruction using a reinforcement learning process configured to: receive as input a current network state, and to calculate a predicted value for an action associated with execution of the YANG instruction, and calculate, using a target network model configured to receive a state of the network following execution of the YANG instruction, a predicted value associated to an action taken from the state of the network following execution of the YANG instruction.
[0021] These and other aspects of the invention will be apparent from the embodiment(s) described below.
[0022] BRIEF DESCRIPTION OF THE DRAWINGS
[0023] In order that the present disclosure may be more readily understood, embodiments will now be described, by way of example, with reference to the accompanying drawings, in which:
[0024] Figure 1 is a schematic representation of a system for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, according to an example;
[0025] Figures 2a and 2b are schematic representations of a system for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, according to an example;
[0026] Figure 3 is a schematic representation of an LLM model service, according to an example; Figure 4 is a schematic representation of an intermediate functional generator, according to an example;
[0027] Figure 5 is a schematic representation of an interleaving combiner service, according to an example;
[0028] Figure 6 is a schematic representation of a YANG configuration generation service block, according to an example; and
[0029] Figure 7 is a schematic representation of a machine according to an example.
[0030] DETAILED DESCRIPTION
[0031] Example embodiments are described below in sufficient detail to enable those of ordinary skill in the art to embody and implement the systems and processes herein described. It is important to understand that embodiments can be provided in many alternate forms and should not be construed as limited to the examples set forth herein.
[0032] Accordingly, while embodiments can be modified in various ways and take on various alternative forms, specific embodiments thereof are shown in the drawings and described in detail below as examples. There is no intent to limit to the particular forms disclosed On the contrary, all modifications, equivalents, and alternatives falling within the scope of the appended claims should be included Elements of the example embodiments are consistently denoted by the same reference numerals throughout the drawings and detailed description where appropriate.
[0033] The terminology used herein to describe embodiments is not intended to limit the scope. The articles “a,” “an,” and ‘The” are singular in that they have a single referent, however the use of the singular form in the present document should not preclude the presence of more than one referent. In other words, elements referred to in the singular can number one or more, unless the context clearly indicates otherwise It will be further understood that the terms “comprises,” “comprising,” “includes,” and / or “including,” when used herein, specify the presence of stated features, items, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, items, steps, operations, elements, components, and / or groups thereof. The term “and / or” is only an association relationship for describing associated objects and represents that three relationships may exist such that A and / or B may indicate that A exists alone, A and B exist at the same time, or B exists alone. The character “ / ” generally represents that the associated objects are in an “or” relationship.
[0034] Unless otherwise defined, all terms (including technical and scientific terms) used herein are to be interpreted as is customary in the art. It will be further understood that terms in common usage should also be interpreted as is customary in the relevant art and not in an idealized or overly formal sense unless expressly so defined herein.
[0035] The following contains specific information related to implementations of the present disclosure The drawings and their accompanying detailed disclosure are merely directed to implementations. However, the present disclosure is not limited to these implementations Other variations and implementations of the present disclosure will be obvious to those skilled in the art
[0036] The phrases “in one implementation,” or “in some implementations,” may each refer to one or more of the same or different implementations. The term “coupled” is defined as connected whether directly or indirectly through intervening components and is not necessarily limited to physical connections. The expression “at least one of A, B and C” or “at least one of the following: A, B and C” means “only A, or only B, or only C, or any combination of A, B and C.”
[0037] The terms “system” and “network” may be used interchangeably.
[0038] For the purposes of explanation and non-limitation, specific details such as functional entities, techniques, protocols, and standards are set forth for providing an understanding of the present disclosure. In other examples, detailed disclosure of well- known methods, technologies, systems, and architectures are omitted so as not to obscure the present disclosure with unnecessary details.
[0039] Persons skilled in the art will immediately recognize that any network function(s) or algorithm(s) disclosed may be implemented by hardware, software or a combination of software and hardware. Disclosed functions may correspond to modules which may be software, hardware, firmware, or any combination thereof.
[0040] A software implementation may include machine- and / or computer- readable and / or executable instructions stored on a machine- and / or computer-readable medium such as memory or other types of storage devices. One or more microprocessors or general-purpose computers with communication processing capability may be programmed with corresponding executable instructions and perform the disclosed network functions) or algorithm(s).
[0041] The microprocessors or general-purpose computers may include Applications Specific Integrated Circuitry (ASIC), programmable logic arrays, and / or using one or more Digital Signal Processor (DSPs). Although some of the disclosed implementations are oriented to software installed and executing on computer hardware, alternative implementations implemented as firmware or as hardware or as a combination of hardware and software are well within the scope of the present disclosure. The computer readable medium includes but is not limited to Random Access Memory (RAM), Read Only Memory (ROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory, Compact Disc Read-Only Memory (CD-ROM), magnetic cassettes, magnetic tape, magnetic disk storage, or any other equivalent medium capable of storing computer-readable instructions
[0042] Certain acronyms or abbreviations may be used herein, such as, for example:
[0043] Natural Language Processing NLP
[0044] Deep Learning DL
[0045] Large Language Model LLM
[0046] Language Model LM
[0047] Yet Another Natural Generation YANG
[0048] Command Line Input CLI
[0049] Active learning ALR
[0050] Application(s) App(s)
[0051] Reinforcement Learning RL
[0052] According to an example, a method to automatically generate YANG from command line instructions, and vice versa, is provided. In an example, common datasets consisting of sentences in natural language can be extracted from technical documents relating to protocols and services that are to be used in a mapping. However, note that YANG models do not have the syntax or semantics of a sentence in a language. Also, the size of an available YANG module data is many orders of magnitudes less than the size of a corpus available for NLP or for example the size of news dumps
[0053] The gap in knowledge can best be described with the premise that determination of a new set of algorithms is to be made to transform unstructured and semi structured technical text data into the syntax and semantics of a sentence. Moreover, there is also a lack of labelled data available in this particular domain which makes the situation even more challenging Thus, data augmentation of existing data corpus in addition to use of user feedback generated data can be used.
[0054] Deep Learning can yield impressive results when provided with huge amounts of labelled data on which to train (supervised learning). By employing such a framework in an example, robustness of a system can be increased by utilizing a large amount of data and by training them all together for an extensive amount of time (e.g., hours or even days). Annotation of data can be manually achieved as obtaining examples for specific similarity score values can be challenging due to the complexity of xpaths of different vendors
[0055] According to an example, the problem of correctly generating YANG language network format based on command line input (CLI) in non-natural multilanguage scenarios is addressed. This problem is difficult as neither YANG nor CLI input represent pure natural language Moreover, since CLI input descriptions are available in different (non-natural) languages and could also represent combination of different (non-natural) languages at once (in one description), any mechanism should be robust in handling all those scenarios.
[0056] CLI input description length varies from app to app and can also contain special characters and symbols. This also increases complexity in terms of finding an appropriate solution that would work generally in all scenarios.
[0057] In an example, YANG generation can address the integration of new device types in a network through automation of the integration process. Typically, this integration work is carried out by network engineers manually using detailed APIs and data models of the network equipment, which is slow and painstaking work
[0058] According to examples, a method and apparatus comprises multiple blocks starting with an input point in which CLI instructions are input These are then processed in order to generate a corresponding YANG set of instructions
[0059] Figure 1 is a schematic representation of a system for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, according to an example.
[0060] A set of inputs 101 is provided in the form of a CLI input, CLI schema and a corresponding ground-truth YANG input According to an example, the CLI input represents non-purely natural language syntax, i e., it contains natural language descriptions in addition to technical terms (such as, e.g., IP addresses, node, root, container, leaf information, etc.). It can be of a different length and describes a YANG structure using a combination of natural descriptions (in English for example) and embedded technical terms The longer the CLI the longer the corresponding YANG is. A CLI schema is an image-based representation of CLI It is only used for visual inspection by humans The YANG ground-truth is associated to the corresponding CLI. In block 103, the inputs 101 are -pre-processed to, e g., transform it into a desired format and / or to remove errors and inconsistencies and / or present the inputs in a regular, uniform way. In block 105, the pre-processed input data from block 1036 is verified and concepts relating to the original CLI input are parsed. In block 107, specific CLI and YANG entities are extracted from the concepts determined in block 105 In block 109, an LLM model is trained using the specific CLI and YANG entities from block 107. In block 111, post-processing occurs, in which, e g., data is transformed into a desired format In block 113, a piece-by-piece YANG finalization process occurs based on a YANG Abstract Syntax Tree (AST). In block 115, an iterative piece-by-piece YANG verification and completion process occurs. In block 117, a complete YANG creation process occurs In block 119, a YANG configuration based on the YANG created in block 117 occurs. In block 121, the final YANG configuration is output
[0061] Figures 2a and 2b are schematic representations of a system for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, according to an example.
[0062] 1 ) Data Storage Service (221 ) deals with input data information and keeps the intermediate results between YANG Import and Data Access Service stored temporarily. The information can then be processed and sent to the upper service layer
[0063] 2) Data Access Service (223) employs Data Storage Service and takes data and metadata information from it.
[0064] 3) YANG Import Service (225) imports YANG data and converts it into format that is easier to be preprocessed and processed in the subsequent blocks. This means all the nodes of YANG and its sub-elements other than nodes that were extracted using dedicated ParseYangTools software
[0065] 4) ML- verification service-based suggestion and verification services (237 and 239) provide tooling with auto-suggestions used for mapping between service and device models. It embeds lower-level parts, such as those that allow to query and visualize knowledge graph.
[0066] 5) Auto ML Suggestions Service (239) provides functions for similarity matching performed by YANG Matching Service and Concept Matching Service; Similarity matching can be achieved using a fusion of, e g , Longest Common Subsequence (LCSS) and cosine similarity Then, a maximum value can be chosen by placing the list in a decreasing order and choosing the first element as the final one.
[0067] 6) YANG Matching Knowledge service (233) provides functions to manage knowledge in which YANG Service allows for searches of the YANG data from YANG graph. Feature Service and Concept Service are responsible for management of feature and concept graphs correspondingly.
[0068] 7) YANG Service (227) enables LLM employment on its own and in a synergy with other machine learning algorithms, trained data, at the same time allowing user feedbacks too.
[0069] 8) Feature Service (229) with its Functional Output obtains information about Group Schema, Hypothesis, Feedback, Verifier, Training phase which is subsequently used later on in Interleaving Combiner Service block
[0070] 9) Concept Matching Service (235) stores and handles data in graph database; it created a final YANG verified content and passes it over in the inflicted form to LLM model service
[0071] 10) LLM Model Service (209) prepares the training service in the most general terms by instantiating and initializing the LLM in an RL setting and with its corresponding services. In other words, this service initializes hyper-parameters and sets-up a chain of thought prompt in order to facilitate training. Moreover, it adapts a self- verification strategy that will be used afterwards to verify and finalize the output.
[0072] 11) Intermediate Functional Generator (211) includes Graph Scheme, Hypothesis, Feedback, Verifier, Training phase and helps in facilitating the model created during the finetuning process. 12) Interleaving Combiner Service (213) takes in previously disclosed information, handles it and eventually submits it in a sequential manner to the training part described in subsequent blocks. This is used in order to facilitate a training block All the previous information is sequentially stored and then submitted for training.
[0073] 13) Training block (215) takes in YANG information and corresponding CLI information m order to create a viable finetuning framework for the LLM that would leam how to correctly map CLI to the corresponding YANG elements and finally leam how to generate correct new YANG data from an unknown input CLI syntax.
[0074] 14) Reconstruction module (269) takes care of YANG reconstruction after the main YANG configuration has been created (this is still during the training process) Reconstruction takes in piece-by-piece YANG elements and builds up a structure following top-down ensample modelling. In other words, by training and creating different models for the same input, different outputs are created and then assembled on per same piece-basis. Then these pieces are assembled following YANG rules.
[0075] 15) YANG configuration (271 ) generation handles the final YANG module generation YANG can be reconstructed using following rules:
[0076] For each YANG:
[0077] • Check YANG partial matching with all YANGs in the database. a) If each token in the query matches, the YANG is correct b) If not all tokens match, YANG might be distorted.
[0078] • Compute Jaro-Winkler distance among the YANG and all the YANGs in the database.
[0079] • Take the YANG with the lowest distance from the database a) If the distance is < threshold, the YANG is probably distorted, and its correct version has been obtained. b) If the distance is > threshold, the YANG is too different from any known YANG, then keep it as it is.
[0080] According to an example, a hierarchical app categorization can be generated from input CLI descriptions (which are passed in a, e.g., string format). The framework supports multilingualism (tested on 5 European but supporting up to 100 different languages). In an example, the CLLto-YANG framework employs a deep learning technique in addition to machine learning techniques More specifically:
[0081] A Data Storage 221 and Access Service 223 is provided to develop the knowledge data store and relevant frameworks to provide the knowledge data management and visualization of CLI data input. The complexity of the CLI inputs as well as numerous problem statements at the time of research define a set of requirements for the data store:
[0082] • High volume of data;
[0083] • Complex search;
[0084] • Data is composed of nodes organized in a hierarchical tree.
[0085] • Suitable for data visualization;
[0086] There is no existing solution for storing and visualizing CLI as a knowledge graph so to address the storage and search requirements, a new framework is created according to an example m order to transform and persist CLI models as a knowledge graph. This graph preserves the rich characteristics of the CLI and allow these to be used to provide advanced search capabilities the query framework needs to handle complex queries on large models using this graph.
[0087] Having the knowledge data store, we are not restricted to use only data from the CLI in the graph, but also able to include graph data from multiple domains such as conceptual graphs, feature graphs all of which create a multi-model knowledge graph for use by auto mapping.
[0088] A YANG Import Service 225 provides a standard interface to access graph database. In an example, JanusGraph can serve as a graph database with, e.g., a Cassandra storage backend and Elasticsearch as an index backend for advanced search capabilities like full text-search. JanusGraph can be deployed in remote serve mode with, e.g., Gremlin Server, which exposes the graph as an endpoint providing a remote Gremlin Traversal Machine (GTM). This type of deployment wraps the Gremlin Server around a JanusGraph instance and allows the use of client applications in different languages to reference the graph data. These client applications can use Gremlin drivers which implement Gremlin within, e.g., Python and JavaScript languages as a way to connect to a remote Gremlin Server.
[0089] In an example, logic related to the YANG graph can be centralized in YANG DSL based on Gremlin graph language. YANG DSL can be written in Python and extends the Gremlin graph language with custom steps to better lit the language of YANG domain, thus YANG DSL abstracts away the language of the vertices and edges. The main consumer of YANG DSL is YANG Service which retrieves YANG data from graph
[0090] ML-verification service (237)-based suggestion and verification services trustlessly verify ML model predictions for production-level models. In order to do so, in an example, ZK-SNARKs (zero-knowledge succinct non-interactive argument of knowledge) can be used, which enables a prover to prove the result of a computation without revealing any information about the inputs or intermediate steps of the computation ZK-SNARKs allow an MLaaS provider to prove that a model was executed correctly post-hoc, so model consumers can verify predictions as they wish.
[0091] Auto ML Suggestion Service 239 provides functions for similarity matching performed by a YANG Matching Service 233 and a Concept Matching Service 235. With automated ML, exemplar YANG models’ data have been provided to get the knowledge about YANG format, and specify what type of model validation to perform. Automated ML performs model validation as a part of training process. That is, the automated ML uses validation YANG data to tune model hyperparameters based on the applied algorithm to find the combination that best fits the training data. However, the same validation data is used for each iteration of tuning, which introduces model evaluation bias since the model continues to improve and fit to the validation data To help confirm that such bias is not applied to the final YANG model, automated ML supports, in an example, the use of test data to evaluate the final YANG model that automated ML recommends at the end of an experiment When one provides test data as part of ones AutoML experiment configuration, this YANG model is tested by default at the end of the set.
[0092] A YANG Matching Knowledge service provides functions to manage knowledge in which YANG Service 227 allows searches of the YANG data from YANG graph Feature Service 229 and Concept Service 231 are responsible for management of feature and concept graphs correspondingly.
[0093] YANG Service 227 provides a mechanism to map the textual YANG models to knowledge graphs and load them into the graph data store. The textual YANG models are parsed with, e g., Xtext, which uses EMF models as the in-memory representation of any parsed file and the entire process of parsing is hidden behind EMF’s resource API. The instances of EMF models are then serialized in RDF graphs for streaming and normalization of the RDF graph representation into the property graph model in, e.g., GraphML format. This graph format can be used in in-memory data stores like TinkerGraph as well as in a graph database. When data is loaded into the persisted storage, JanusGraph can use a batch loading mode that makes import more efficient.
[0094] In an example, the mapping process can be triggered by curl command which communicates with REST endpoints in YANG Import Service 225 and invokes operations to transform and load YANG models.
[0095] Feature Service 229 with its Functional Output abstracts knowledge graphs that are integrated in one large knowledge graph that allows to navigate easily between nodes and edges from different YANG knowledge graphs. This integration is based on a logical graph partitioning mechanism. A logical partition consists of a set of nodes that have the same partition key. For example, all nodes that belong to YANG knowledge graph have, e.g., the partition key “yang”. The nodes from a feature graph have the partition key “features”. Thus, knowledge graphs are automatically partitioned across a set of logical partitions.
[0096] In an example, the Concept Matching Service 235 employs a graph schema that can be explicitly defined in a graph database The schema types can be assigned to elements in the graph when they are created. Beyond the schema definition, graph indexes are used to speed up the query processing The graph schema for a YANG graph is created from a YANG ECore model provided by a YANG language server A general rule is followed according to an example: any YANG element is mapped into a node with attributes, and a relationship between YANG elements is mapped into a relation. Nodes are grouped, each identified by a label and graph partition. F or example, all the YANG leaves imported from YANG sources for a specific vendor cli-tech become nodes identified by the label “Leaf’ and partition that refers to that cli-tech
[0097] With reference to figure 2a, the interleaving combiner service (213) gives both input CLI, context (description) and corresponding YANG. All the values form a training hypothesis If the target label is functionally correct then it is added to the big dataset. Otherwise it can be checked manually using the Verifier (247) and sent to the Reconstruction module (269) if its correctness is not confirmed. All the data is added to the big dataset of CLIs, contexts and YANGs. The dataset is split into training, validation and testing (denoted as Train (259), Validation (263) and Test (265)) splits and use them in the training process The training, validation and testing splits are obtained in 8:2: 1 ratio.
[0098] Context (253) and Hypothesis (255) are only needed for the Refinement service (261 ) which in addition to some Training data updates the Validation set. Training, validation and testing split are also updated by checking the model parameters and in case of wrong feedback updates the data splits accordingly. This is a recursive approach which eventually freezes data splits once they do not change.
[0099] According to an example, an LLM can be finetuned on a set of manually generated prompts and responses for CLI and YANG counterparts. Human reviewers can rate the output of the model on various CLI prompts and the feedback data can be employed to train a reward model that emulates human preferences Finally, the LLM can be finetuned through a deep reinforcement learning loop in which the LLM generates outputs, the reward model rates them, and the LLM updates its parameters in a way that maximizes its reward.
[0100] To formulate the learning curve, in an example, a modified Q-Leaming approach can be used. This is a model-free RL algorithm, meaning that there is no need to leam a model for the environment with which the agent interacts. Concretely, this means that a model does not have to be trained to estimate the transition or reward functions as these are provided as the agent interacts with the environment. Since the goal of Q-Leaming is to leam the value of any action at a particular state, this can be achieved this by employing a Q function, which defines the value of a state-action YANG-CLI pair, in which the expected return of taking that action is a state under a certain policy and continuing afterwards according to the same policy. According to an example, the first step of a Q-leaming algorithm is to initialize our Q values as zero and pick an initial state with which we start the learning process. Then, we iterate over the following steps:
[0101] ( 1 ) Pick an action to execute from the current state (using an e-Greedy Policy)
[0102] (2) Get a reward and next state from the (model-free) environment.
[0103] (3) Update the Q value based on the Bellman equation
[0104] Figure 3 is a schematic representation of an LLM model service 209 (as shown in figure 2a for example), according to an example. In the example of figure 3, an update to the Q value considers the reward of the current action, the Q value of the current state, and the Q value of the next state However, given that an agent might execute several actions within the next state, it is unclear which Q value should be used for the next state when performing an update. In Q-leaming, the maximum Q value is chosen. Specifically, Q-leaming utilizes according to an example uses an e-greedy policy when selecting actions, allowing new states and actions to be explored with a certain probability When computing Q value updates, however, the next action with the maximum Q value is considered, which may or may not be executed from the next state
[0105] A DQL algorithm consists of two neural networks: a Q network and a target network. These networks are identical, but the exact architecture they use depends upon the problem being solved To train these networks, CTI-YANG data can be collected by interacting with the environment. This data can be gathered using the current Q network with an s-greedy policy. This process of gathering interaction data for training Q network is referred to as experience replay.
[0106] From here, data that has been collected can be used to train the Q network During each training iteration, a batch of data is sampled and passed through both the Q network and the target network. The Q network takes the current state as input and predicts the Q value of the action that is taken (i.e , predicted Q value), while the target network takes the next state as input and predicts the Q value of the best action that can be taken from that state (i.e., the target Q value).
[0107] The predicted Q value, the target Q value, and the observed reward can be used to train the Q network with an MSB loss. In an example, the target network is held fixed Every several iterations, the weights of the Q network are copied to the target network, allowing this model to be updated as well. This process repeats until the Q network converges. Notably, the dataset obtained from experience replay is cumulative, meaning that all of the data observed from the environment is maintained throughout all iterations
[0108] In an example, a vanilla Q-leaming framework is employed to leverage two Q values in its update rule: a (predicted) Q value for the current state-action pair and the (target) Q value of the best state-action pair for the next state. In DQL, both of these Q values have to be generated. In theory, this could be done with a single neural network by making multiple passes through the Q network — one for the predicted Q value and one for the target Q value. However, the Q network’ s weights are being updated at every training iteration, which causes the target Q value to constantly fluctuate as the model is updated To avoid this issue, the target network is kept separate and fixed, by only updating its weights every several iterations to avoid creating a “moving target”.
[0109] Figure 4 is a schematic representation of an intermediate functional generator 211 (as shown in figure 2a for example), according to an example A tokenizer 401 is employed and a sentence abstraction layer 403 is used to abstract the context information. Output of an LLM is given in a raw form. We firstly apply abstraction on a sentence level (based on the output results of the LLM). Then we take in a more coherent generalization in which we apply acronym detection 405 and then after obtaining those acronyms we perform acronym expansion 407 to create a generalised form. Using a previously defined LLM a small sample training process is performed using the obtained acronyms and then a newly created model is used to obtain YANG’s LLM-based embeddings 409.
[0110] Referring to figure 2a, the Intermediate Functional Generator 211 includes a Graph Schema 241, Hypothesis 243, Feedback 245, Verifier 247, and Training phase 249 which help in facilitating the model created during the finetuning process
[0111] Graph Schema 241 depicts a YANG structure as a graph (i.e., with nodes, edges, relationship between those, etc ). That is, every YANG element (e.g , an instruction or set of instructions forming a concept) is converted from its structural form to its Graph form By using a graph form it is easier to track and process relationships within every YANG on its own and also relationships between different YANG combined together.
[0112] Hypothesis 243 describes YANG functionality in purely natural language form and is associated to every YANG. It differs from CLI in a way that is agnostic to the small details that relate to description of a YANG structure (e.g., nodes, edges, relationships).
[0113] Feedback 245 relates to human check-up (done, e g , semi-automatically using some dedicated tools in addition to human polish) of YANG correctness (YANG format correctness), i e., whether YANG form satisfies YANG rules and regulations from a point of syntactic correctness. In other words, each YANG element is checked in addition to relationship between the elements as well.
[0114] Verifier 247 is similar to Feedback in terms of end-goal (i.e., it is checks whether YANG is functionally correct) but it does this from perspective of end-application, i.e., whether YANG form satisfies YANG functionality (i.e., what it is supposed to do). Thus, the feedback can be either positive, negative (not able to be corrected) or corrected. Corrected is only able to be done in case some minor replacement of already correct structure needs to be done, which is achieved by a simple replacement
[0115] Training phase 249 represents training using a Chain of Thought (CoT) paradigm. CoT prompting enables complex reasoning capabilities through intermediate reasoning steps In an example, this can be combined with few-shot prompting to get better results especially on more complex YANG tasks that require reasoning before responding.
[0116] According to an example, manual efforts have been eliminated by leveraging LLMs with a step-by-step prompt to generate reasoning chains for demonstrations one by one by incorporating all of the info above (Graph Schema, Hypothesis, Feedback, Verifier). This automatic process can still end up with mistakes in generated chains for YANG. Thus Auto-CoT is employed which samples prompts with diversity and generates reasoning chains to construct the final YANGs. It can comprise:
[0117] 1 ) prompt clustering: partition prompts of a given dataset into a few clusters
[0118] 2) demonstration sampling: select a representative prompt from each cluster and generate its YANG reasoning chain using Zero-Shot-CoT with simple heuristics.
[0119] Figure 5 is a schematic representation of an interleaving combiner service 213 (as shown in figure 2a for example), according to an example In an example, the interleaving Combiner Service 213 is provided to implement fast conversion between different models. Using the YANG Distributed Architecture Deployment (DAD) to Output CLI Commands the bidirectional conversion of CLLYANG is implemented. Applicable and extendable to a variety of tasks of different kinds of data to be understood and summarized. At the same time contributes to training efficiency. Accordingly, the method is agnostic and not only applicable for CLI-YANG conversion but more generally to other conversions too (such as any CLI- some_other_code_representation_language.) That is, the process described herein is applicable to other higher-level languages From an input, CLI information is extracted which is fed in process along the way using a series of blocks ending with an Intermediate model 501 which feeds in recursively to the beginning in order to update the input to the level of the acceptance criteria and then to proceed on to the final YANG model.
[0120] More specifically, CLI Command Collection 505 takes in all CLI commands together with their associated descriptions. Since those may contain errors that is subject to correcting (using the Creating Intermediate model block, 507).
[0121] Information Filtering Engine 509 takes in the previous information and applies filtering of erroneous samples (based on semimanual inspection).
[0122] Extracting keywords 511 extracts keywords from descriptions to match those from the YANG online catalogue. Once confirmed we can use those finally to create an intermediate model in block 507. Creating an Intermediate model is a recursive process which ends once we are sure we have a stable version thus we have the Intermediate model 501. Intermediate model 501 thus stores information and correct YANGs and their corresponding descriptions (in quasi-natural language form, i.e., natural language enriched with technical terms)
[0123] In block 513 YANGs are pre-classified based on their factual correctness. In other words, we want to associate those YANGS with different levels of correctness based on classification ranges (criteria). This has been achieved by employing bidirectional Siamese Long Short-Term Memory (LSTMs). Keywords are used to determine at what level the correctness matches the YANG description.
[0124] For each of the YANGs its corresponding sub-YANGs are generated in block 515 using all possible sub-trees of YANG. Then it was verified using PYANG AST in PYANG verification block.
[0125] For the final YANG models 517, another big subblock is added which takes a corresponding XML file 519 in addition to that YANG keywords are extracted in block 521 using a YANG tree parsing tool, such as YangParser. YANG keywords represent number of containers, list, rules, commands, paths, etc that appear in one YANG
[0126] YANG keywords are used to find keywords that are associated to these YANG keywords in block 523. In an example, this can be performed using a fusion of Longest Common Subsequence (LCSS) and cosine similarity (previously both normalized to capture a meaningful representation). A parallel process to this is to pair rules for YANG element generation in block 525 so that each YANG has its own rules. In an example, AST and catalogue pairing can be used (i.e., for each element corresponding rules are associated with or predefined.) These rules can be used to verify the smallest parts of CLI
[0127] Using previously established rules and CLI parts we can generate different CLI subcommands (or subparts or substrings) in block 527. These are formatted in block 529 to be aligned in terms of indent and the process is then complete. That is, complete CLI commands are obtained (531).
[0128] Accordingly, Figure 5 represents a bidirectional recursive way to finalize both CLI and YANG pairs that can be used in a training process. In other words, it refines both YANG and its corresponding CLI that can be employed later on.
[0129] A verification stage 503 is used to check and demonstrate whether the YANG model creation has been successful so far. In order to achieve this, an XML config sample file is used in addition to YANG-CLI and CLI-DAD submodules. In this part, YANG keywords are extracted, matching of CLIs is applied using the determined keywords and CLI subcommands that are used to re-extract new YANG keywords are generated. The output is also used to format CLI sub-commands. Finally, the complete CLI commands is obtained which can be compared to the ground-truth.
[0130] 2) YANGCLI: The AST tree is introduced to implement fast conversion between different models. Using the AOC CLI DAD to Output CLI Commands
[0131] 3) The bidirectional conversion of CLIYANG is implemented. In addition to manual confirmation, no manual intervention is involved.
[0132] According to an example, reconstruction of the YANG is achieved by taking into account different singularization of containers, lists, leaf nodes. These particular elements engage in specific relationships and that could only be employed in well-defined circumstances described in diagram shown below.
[0133] Thus, any part of YANG can either be a part of YANG container, leaf-node, list or some other YANG particularity. This also includes any combination of the YANG parts For YANG container only, YANG parts can be a part of it Max 3 YANG parts can be included.
[0134] Somewhat similar for YANG leaf nodes apart from the fact that max 2 YANG part can be included. The same applies for any YANG particularity except isolated YANG particularity or isolated YANG leaf node.
[0135] Isolated YANG particularity consists of different YANG particularities and / or YANG parts. The same applies for isolated YANG leaf node Before YANG reconstruction we have a normalization layer in which we sum different YANG observations Finally, observations were added to form reconstructed YANG.
[0136] Referring to block 271 of figure 2b, once reconstructed YANG is obtained we need to obtain its configuration. This has been achieved in a sequence of execution commands depicted in figure 6.
[0137] Figure 6 is a schematic representation of a YANG configuration generation service block 271 (as shown in figure 2b for example), according to an example.
[0138] A Network / Element Configuration service 601 creates an abstract matrix for every YANG, which is then propagated through a Device Model Generation Tool 603 to a YANG Data Model matrix 605 in which a YANG model is defined that will be used together with Network Concepts 609, in which this particular YANG is running, in an (Al Enabled) Model Knowledge Store 607 A Current Network Configuration 611 provides an input to an AOC module 613 which creates a Configuration Template 615 and together with AOC service 619 (developed through Auto NW process 617) finalizes a network configuration 621.
[0139] AOC 619 creates outputs based on several inputs: Current Network Configuration, YANG data model and AOC service’s output. Additionally, Auto NW Designer uses two input information (from Configuration Template and Al Enabled Model Knowledge Store) This information is both mutual and bidirectional as Auto NW Designer and Al Enabled Model Knowledge Store exchange and use the updated version of their states when obtaining their outputs.
[0140] According to an example, Device Model Generation Tool 603 can be used to generate YANG models to communicate with different devices. Network Concepts 609 block can be used to capture expert network knowledge as a knowledge graph. Model Knowledge Store 607 is used to import a model and automatically classify to network concepts. Auto NW process 617 is employed to model the network program creation. AOC service 619 is used to access a Model Knowledge Store to automatically map to new devices / device types. AOC module 613can be used to orchestrate network configuration using custom workflows to support addition of the new devices
[0141] Examples in the present disclosure can be provided as methods, systems or machine-readable instructions, such as any combination of software, hardware, firmware or the like. Such machine-readable instructions may be included on a computer readable storage medium (including but not limited to disc storage, CD-ROM, optical storage, etc.) having computer readable program codes therein or thereon.
[0142] The present disclosure is described with reference to flow charts and / or block diagrams of the method, devices and systems according to examples of the present disclosure. Although the flow diagrams described above show a specific order of execution, the order of execution may differ from that which is depicted. Blocks described in relation to one flow chart may be combined with those of another flow chart. In some examples, some blocks of the flow diagrams may not be necessary and / or additional blocks may be added It shall be understood that each flow and / or block in the flow charts and / or block diagrams, as well as combinations of the flows and / or diagrams in the flow charts and / or block diagrams can be realized by machine readable instructions.
[0143] The machine-readable instructions may, for example, be executed by a machine such as a general-purpose computer, a platform comprising user equipment such as a smart device, e.g., a smart phone, a special purpose computer, an embedded processor or processors of other programmable data processing devices to realize the functions described in the description and diagrams In particular, a processor or processing apparatus may execute the machine-readable instructions. Thus, modules of apparatus may be implemented by a processor executing machine readable instructions stored in a memory, or a processor operating in accordance with instructions embedded in logic circuitry. The term 'processor' is to be interpreted broadly to include a CPU, processing unit, ASIC, logic unit, or programmable gate set etc The methods and modules may all be performed by a single processor or divided amongst several processors.
[0144] Such machine-readable instructions may also be stored in a computer readable storage that can guide the computer or other programmable data processing devices to operate in a specific mode. For example, the instructions may be provided on a non- transitory computer readable storage medium encoded with instructions, executable by a processor
[0145] Figure 7 is a schematic representation of a machine according to an example. The machine 700 can be, e.g , a system or apparatus, user equipment, or part thereof, or a low-level lightweight state machine inside an Al accelerator or processor. The machine 700 comprises a processor 703, and a memory 705 to store instructions 702, executable by the processor 703 The machine comprises a storage 709 that can be used to store data 701 representing data as described above with reference to figures 1-6 for example
[0146] The instructions 707, executable by the processor 703, can cause the machine 700 to receive a non-natural language set of instructions representing a network configuration for a set of network elements in a network, process the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements, and for each one of the network command arrangements generate, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model.
[0147] Accordingly, the machine 700 can implement a method for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set. Such machine-readable instructions may also be loaded onto a computer or other programmable data processing devices, so that the computer or other programmable data processing devices perform a series of operations to produce computer- implemented processing, thus the instructions executed on the computer or other programmable devices provide an operation for realizing functions specified by flow(s) in the flow charts and / or block(s) in the block diagrams.
[0148] Further, the teachings herein may be implemented in the form of a computer or software product, such as a non-transitory machine-readable storage medium, the computer software or product being stored in a storage medium and comprising a plurality of instructions, e.g., machine readable instructions, for making a computer device implement the methods recited in the examples of the present disclosure.
[0149] In some examples, some methods can be performed in a cloud-computing or network-based environment. Cloud-computing environments may provide various services and applications via the Internet. These cloud-based services (e.g , software as a service, platform as a service, infrastructure as a service, etc.) may be accessible through a web browser or other remote interface of the user equipment for example. Various functions described herein may be provided through a remote desktop environment or any other cloud-based computing environment
[0150] While various embodiments have been described and / or illustrated herein in the context of fully functional computing systems, one or more of these exemplary embodiments may be distributed as a program product in a variety of forms, regardless of the particular type of computer-readable-storage media used to actually carry out the distribution The embodiments disclosed herein may also be implemented using software modules that perform certain tasks These software modules may include script, batch, or other executable files that may be stored on a computer-readable storage medium or in a computing system. In some embodiments, these software modules may configure a computing system to perform one or more of the exemplary embodiments disclosed herein In addition, one or more of the modules described herein may transform data, physical devices, and / or representations of physical devices from one form to another.
[0151] The preceding description has been provided to enable others skilled in the art to best utilize various aspects of the exemplary embodiments disclosed herein. This exemplary description is not intended to be exhaustive or to be limited to any precise form disclosed Many modifications and variations are possible without departing from the spirit and scope of the instant disclosure The embodiments disclosed herein should be considered in all respects illustrative and not restrictive. Reference should be made to the appended claims and their equivalents in determining the scope of the instant disclosure.
Claims
1. CLAIMS1 An apparatus for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, the apparatus comprising: at least one processor; and a memory configured to store instructions for instructing the at least one processor to perform at least one operation, wherein the at least one operation comprises: receiving a non-natural language set of instructions representing a network configuration for a set of network elements in a network; processing the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements; and for each one of the network command arrangements generating, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model.2 The apparatus of claim 1, wherein the non-natural language set of instructions comprise a set of command line input instructions.3 The apparatus of claim 1 or 2, wherein the at least one operation further comprises: using a graph structure, the graph structure comprising a set of nodes and a set of edges interlinking the nodes, wherein respective nodes of the graph structure form a hierarchical tree structure with each node comprising a data item representing a non-natural language instruction, wherein an individual network configuration sequence defining a network command arrangement is defined by a relationship between one or more nodes of the graph structure, determining the set of non-natural language units.4 The apparatus of any preceding claim, wherein the at least one operation further comprises: for each YANG instruction of the set of YANG instructions, defining a YANG-CLI pair comprising a YANG instruction and its corresponding network command arrangement; and for each YANG-CLI pair determining an expected return of executing a YANG instruction by calculating a value, Q, representing a state of the network according to a predefined policy following execution of the YANG instruction5 The apparatus of claim 4, wherein the at least one operation further comprises: for each YANG instruction of the set of YANG instructions, calculating the value, Q, representing the state of the network according to the predefined policy following execution of the YANG instruction using a reinforcement learning process configured to: receive as input a current network state, and to calculate a predicted value for an action associated with execution of the YANG instruction; and calculating, using a target network model configured to receive a state of the network following execution of the YANG instruction, a predicted value associated to an action taken from the state of the network following execution of the YANG instruction6 A method for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, the method comprising: receiving a non-natural language set of instructions representing a network configuration for a set of network elements m a network; processing the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements; and for each one of the network command arrangements generating, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model.7 The method of claim 6, wherein the non-natural language set of instructions comprise a set of command line input instructions.8 The method of claim 6 or 7, further comprising: using a graph structure, the graph structure comprising a set of nodes and a set of edges interlinking the nodes, wherein respective nodes of the graph structure form a hierarchical tree structure with each node comprising a data item representing a non-natural language instruction, wherein an individual network configuration sequence defining a network command arrangement is defined by a relationship between one or more nodes of the graph structure, determining the set of non-natural language units.9 The method of any of claims 6 to 8, further comprising: for each YANG instruction of the set of YANG instructions, defining a YANG-CLI pair comprising a YANG instruction and its corresponding network command arrangement; and for each YANG-CLI pair determining an expected return of executing a YANG instruction by calculating a value, Q, representing a state of the network according to a predefined pohcy following execution of the YANG instruction.
10. The method of claim 9, further comprising: for each YANG instruction of the set of YANG instructions, calculating the value, Q, representing the state of the network according to the predefined policy following execution of the YANG instruction using a reinforcement learning process configured to: receive as input a current network state, and to calculate a predicted value for an action associated with execution of the YANG instruction; and calculating, using a target network model configured to receive a state of the network following execution of the YANG instruction, a predicted value associated to an action taken from the state of the network following execution of the YANG instruction.
11. A machine-readable storage medium encoded with instructions for bidirectional interpretation of network configuration instructions between a yet another next generation, YANG, language network configuration and a non-natural language network configuration instruction set, the instructions executable by a processor of a device, whereby to cause the device to: receive a non-natural language set of instructions representing a network configuration for a set of network elements in a network; process the non-natural language set of instructions to generate a set of non-natural language units corresponding to multiple individual network configuration sequences defining respective network command arrangements; andfor each one of the network command arrangements generate, using a neural network, a corresponding set of YANG instructions on the basis of a large language-based model.
12. The machine-readable storage medium as claimed in claim 11, encoded with further instructions executable by the processor of the device, whereby to cause the device to receive a set of command line input instructions representing the nonnatural language set of instructions.
13. The machine-readable storage medium as claimed in claim 11 or 12, encoded with further instructions executable by the processor of the device, whereby to cause the device to: using a graph structure, the graph structure comprising a set of nodes and a set of edges interlinking the nodes, wherein respective nodes of the graph structure form a hierarchical tree structure with each node comprising a data item representing a non-natural language instruction, wherein an individual network configuration sequence defining a network command arrangement is defined by a relationship between one or more nodes of the graph structure, determine the set of non-natural language units.
14. The machine-readable storage medium as claimed in any of claims 11 to 13, encoded with further instructions executable by the processor of the device, whereby to cause the device to: for each YANG instruction of the set of YANG instructions, define a YANG-CLI pair comprising a YANG instruction and its corresponding network command arrangement; and for each YANG-CLI pair, determine an expected return of executing a YANG instruction by calculating a value, Q, representing a state of the network according to a predefined policy following execution of the YANG instruction.
15. The machine-readable storage medium as claimed in claim 14, encoded with further instructions executable by the processor of the device, whereby to cause the device to: for each YANG instruction of the set of YANG instructions, calculate the value, Q, representing the state of the network according to the predefined policy following execution of the YANG instruction using a reinforcement learning process configured to: receive as input a current network state, and to calculate a predicted value for an action associated with execution of the YANG instruction; and calculate, using a target network model configured to receive a state of the network following execution of the YANG instruction, a predicted value associated to an action taken from the state of the network following execution of the YANG instruction
Citation Information
Patent Citations
A network configuration method, related apparatus and storage medium
CN111817905B
Data modeling method and device for command line interface of network device and storage medium
CN117633071A
Program, device and method for mapping unknown data model of tree structure to common data model
JP2019180052A
Network device management method and apparatus
WO2023185185A1