IP Library Granted Patent US 12712779
Granted Patent B2
US 12712779 · App. 18/594,184 · Granted Aug 18, 2026

Graph-based retrieval augmented generation of SDK schemas for a language model-based network troubleshooting agent

Inventors: Pierre-André Savalle (Rueil-Malmaison, FR); Grégory Mermoud (Venthône, CH); Eduard Schornig (Haarlem, NL); Jean-Philippe Vasseur (Combloux, FR)
Assignee: Cisco Technology, Inc.
H04L41/0686G06F40/40
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12712779
App. No.
18/594,184
Granted
Aug 18, 2026
Kind
B2
Abstract

In one implementation, a device maintains a graph in which nodes of the graph represent entities in a computer network and edges of the graph represent relations between those entities. The device performs a search of the graph based on a query for input to a language model-based troubleshooting agent for the computer network. The device generates, based on the search, a schema in a particular programming language to answer the query. The device provides the schema to the language model-based troubleshooting agent to generate an answer to the query.

Claims (59)

1 . A method comprising:

maintaining, by a device, a graph in which nodes of the graph represent entities in a computer network and edges of the graph represent relations between those entities, wherein the graph abstracts a software development kit associated with a network controller for the computer network;

performing, by the device, a search of the graph based on a query for input to a language model-based troubleshooting agent for the computer network;

generating, by the device and based on the search, a schema in a particular programming language to answer the query, wherein the schema includes one or more classes from the software development kit and properties of the one or more classes, and wherein the schema indicates how to use the software development kit to retrieve information from the network controller regarding entities in the computer network associated with the query; and

providing, by the device, the schema to the language model-based troubleshooting agent to generate an answer to the query.

2 . The method as in claim 1 , wherein performing the search comprises:

performing a path search along the graph to identify those entities in the computer network that are relevant to the query.

3 . The method as in claim 1 , wherein the language model-based troubleshooting agent uses the schema as part of a prompt to a large language model to generate the answer to the query.

4 . The method as in claim 3 , wherein the device provides the schema to the language model-based troubleshooting agent as part of a retrieval augmented generation mechanism for the large language model.

5 . The method as in claim 1 , wherein each node in the graph indicates whether an instance of its corresponding entity can be constructed for the schema recursively from another entity by following one or more relations in the graph.

6 . The method as in claim 1 , wherein the schema indicates whether a given entity is indirectly relevant to the query based on whether information regarding that entity is needed to retrieve information regarding another entity that is relevant to the query.

7 . The method as in claim 1 , wherein the entities correspond to instances of at least one of: a client in the computer network, a networking device in the computer network, or a wide area network (WAN) circuit in the computer network.

8 . The method as in claim 1 , wherein performing the search comprises:

transforming the query into an embedding vector;

retrieving a plurality of embedding vectors for a set of properties of candidate entities;

sorting the set of properties based on a similarity score between an embedding vector of a respective property and the embedding vector; and

identifying entities in the computer network that are relevant to the query based on the sorting.

9 . The method as in claim 8 , wherein performing the search further comprises:

identifying shortest paths from one or more source nodes to the entities in the computer network that are relevant to the query.

10 . The method as in claim 1 , wherein:

performing the search comprises identifying shortest paths from one or more source nodes to entities in the computer network that are relevant to the query; and

generating the schema comprises:

building a unified representation that indicates, for each entity of the entities in the computer network that are relevant to the query, whether that entity is a relevant entity, a source entity, an indirectly relevant entity, or a combination thereof;

determining, for each entity of the entities in the computer network that are relevant to the query and based on the unified representation, a set of relevant properties to include in the schema, wherein:

for an entity that is a relevant entity, the set of relevant properties includes all properties retrieved for that entity; and

for an entity that is an indirectly relevant entity, the set of relevant properties includes properties corresponding to relations to a next entity in one of the shortest paths.

11 . An apparatus, comprising:

one or more network interfaces;

a processor coupled to the one or more network interfaces and configured to execute one or more processes; and

a memory configured to store a process that is executable by the processor, the process when executed configured to:

maintain a graph in which nodes of the graph represent entities in a computer network and edges of the graph represent relations between those entities, wherein the graph abstracts a software development kit associated with a network controller for the computer network;

perform a search of the graph based on a query for input to a language model-based troubleshooting agent for the computer network;

generate, based on the search, a schema in a particular programming language to answer the query, wherein the schema includes one or more classes from the software development kit and properties of the one or more classes, and wherein the schema indicates how to use the software development kit to retrieve information from the network controller regarding entities in the computer network associated with the query; and

provide the schema to the language model-based troubleshooting agent to generate an answer to the query.

12 . The apparatus as in claim 11 , wherein the apparatus performs the search by:

performing a path search along the graph to identify those entities in the computer network that are relevant to the query.

13 . The apparatus as in claim 11 , wherein the language model-based troubleshooting agent uses the schema as part of a prompt to a large language model to generate the answer to the query.

14 . The apparatus as in claim 13 , wherein the apparatus provides the schema to the language model-based troubleshooting agent as part of a retrieval augmented generation mechanism for the large language model.

15 . The apparatus as in claim 11 , wherein each node in the graph indicates whether an instance of its corresponding entity can be constructed for the schema recursively from another entity by following one or more relations in the graph.

16 . The apparatus as in claim 11 , wherein the schema indicates whether a given entity is indirectly relevant to the query based on whether information regarding that entity is needed to retrieve information regarding another entity that is relevant to the query.

17 . The apparatus as in claim 11 , wherein to perform the search comprises to:

transform the query into an embedding vector;

retrieve a plurality of embedding vectors for a set of properties of candidate entities;

sort the set of properties based on a similarity score between an embedding vector of a respective property and the embedding vector; and

identify entities in the computer network that are relevant to the query based on the sorting.

18 . The apparatus as in claim 17 , wherein to perform the search further comprises to:

identify shortest paths from one or more source nodes to the entities in the computer network that are relevant to the query.

19 . The apparatus as in claim 17 , wherein:

to perform the search comprises to identify shortest paths from one or more source nodes to entities in the computer network that are relevant to the query; and

to generate the schema comprises to:

build a unified representation that indicates, for each entity of the entities in the computer network that are relevant to the query, whether that entity is a relevant entity, a source entity, an indirectly relevant entity, or a combination thereof;

determine, for each entity of the entities in the computer network that are relevant to the query and based on the unified representation, a set of relevant properties to include in the schema, wherein:

for an entity that is a relevant entity, the set of relevant properties includes all properties retrieved for that entity; and

for an entity that is an indirectly relevant entity, the set of relevant properties includes properties corresponding to relations to a next entity in one of the shortest paths.

20 . A tangible, non-transitory, computer-readable medium storing program instructions that cause a device to execute a process comprising:

maintaining, by the device, a graph in which nodes of the graph represent entities in a computer network and edges of the graph represent relations between those entities, wherein the graph abstracts a software development kit associated with a network controller for the computer network;

performing, by the device, a search of the graph based on a query for input to a language model-based troubleshooting agent for the computer network;

generating, by the device and based on the search, a schema in a particular programming language to answer the query, wherein the schema includes one or more classes from the software development kit and properties of the one or more classes, and wherein the schema indicates how to use the software development kit to retrieve information from the network controller regarding entities in the computer network associated with the query; and

providing, by the device, the schema to the language model-based troubleshooting agent to generate an answer to the query.