IP Library › Patent Application 18898513
Patent Application
App. No. 18/898,513

COPILOT IMPLEMENTATION: MATCHING APPLICATION PROGRAMMING INTERFACE (API) QUERIES TO RECEIVED INPUT

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 None
App. No.
18/898,513
Abstract

Apparatus and methods are disclosed for generating matching application programming interface (API) queries for a received input. A matching score is generated between each of a group of candidate API queries and the received input. One or more matching API queries are selected from the group based on their respective matching scores. Disclosed techniques are suitable for a data producer front end in a copilot having a microservice network architecture. This architecture supports flexible, customizable, or dynamically determinable dataflow. Compared to much larger competing LLMs, comparable or superior performance is achieved for certain tasks, while computation time and hardware requirements are significantly reduced, even to a single compute node with a single GPU. One or more data producers can provide a retrieval microservice with access to various databases having respective APIs, to extend the copilot's reach. Variations and additional techniques are disclosed.

Claims (55)

1 . A computer-implemented method of transforming a received input into one or more matching application programming interface (“API”) queries, comprising://0056

for each query in a group of API queries, generating a matching score between the respective query and the received input;

selecting the one or more matching API queries from the group of API queries based on the respective matching scores of the one or more matching API queries; and

executing each of the one or more matching API queries at a data producer, wherein the data producer is configured to execute the one or more matching API queries on a repository comprising live data, the live data being automatically available to the data producer as the repository is updated.

2 . The computer-implemented method of claim 1 , wherein the API queries are Structured Query Language (“SQL”) queries.

3 . The computer-implemented method of claim 1 , wherein the received input comprises text.

4 . The computer-implemented method of claim 1 , wherein the group of API queries is a library of all possible API fully-qualified queries or a library of all possible API query templates.

5 . The computer-implemented method of claim 1 , wherein the group of API queries is independent of the received input.

6 . The computer-implemented method of claim 1 , wherein the one or more matching API queries is one matching API query having a highest score among the generated matching scores.

7 . The computer-implemented method of claim 1 , wherein the one or more matching API queries comprises those queries in the group of API queries having respective matching scores greater than or equal to a predetermined threshold.

8 . The computer-implemented method of claim 1 , wherein the group of API queries is a subset of a library of all possible API queries or a subset of a library of all possible API query templates, and wherein the generating is terminated when the generated matching scores satisfy a predetermined criterion.

9 . (canceled)

10 . The computer-implemented method of claim 1 , further comprising, for a given query of the executed API queries:

casting a response to the given query into a text output; and

transmitting the text output toward a core microservice or toward a client interface.

11 . The computer-implemented method of claim 1 , further comprising, for a given query of the executed API queries:

analyzing a response to the given query to obtain a result; and

transmitting the result toward a core microservice.

12 . The computer-implemented method of claim 11 , wherein the result comprises:

a text output, a database record, a chart, an audio clip, or an image.

13 . The computer-implemented method of claim 9 , wherein the data producer comprises:

a Structured Query Language (“SQL”) database, a no-SQL database, an email repository, a messaging repository, or a learning management store.

14 . The computer-implemented method of claim 1 , wherein the API queries employ:

an application layer protocol which is File Transfer Protocol (“FTP”), Hypertext Transfer Protocol (“HTTP”), Internet Message Access Protocol (“IMAP”), Network File System (“NFS”), Post Office Protocol (“POP”), or Simple Mail Transfer Protocol (“SMTP”); or

a messaging protocol which is Advanced Message Queuing Protocol (“AMQP”), Constrained Application Protocol (“CoAP”), Data Distribution Service (“DDS”), Internet Relay Chat (“IRC”), Message Queuing Telemetry Transport (“MQTT”), Rich Communication Services (“RCS”), or Extensible Messaging and Presentation Protocol (“XMPP”).

15 . One or more computer-readable media storing instructions which, when executed by one or hardware processors, cause the one or more hardware processors to perform operations comprising:

for each query in a group of application programming interface (“API”) queries, generating a matching score between the respective query and a received input;

selecting one or more matching API queries from the group of API queries based on the respective matching scores of the one or more matching API queries; and

outputting the one or more matching API queries in response to the received input for execution by a data producer, wherein the data producer is configured to execute the one or more matching API queries on a repository comprising live data, the live data being automatically available to the data producer as the repository is updated.

16 . The one or more computer-readable media of claim 15 , wherein the instructions are part of a copilot and the operations further comprise:

receiving a response to a given query of the outputted API queries; and

transmitting an output, based on the response, toward a core microservice of the copilot.

17 . A system comprising:

one or more hardware processors, with memory coupled thereto; and

one or more computer readable media storing instructions comprising a plurality of modules which, when executed by the one or more hardware processors, implement respective microservices, the microservices forming a weakly connected network of microservices configured as a copilot for one or more first client applications;

wherein each of the microservices is configured to:

receive input from (i) a respective first group comprising one or more others of the microservices or (ii) one or more second client applications; and

transmit output to (i) a second group comprising one or more of the microservices or (ii) one or more third client applications;

wherein a plurality of the microservices incorporate respective trained machine learning tools;

wherein the network of microservices comprises at least a retrieval microservice and a data producer;

wherein the data producer is configured to:

receive a second input based on a first output from the retrieval microservice;

for each query in a group of application programming interface (“API”) queries, generate a matching score between the respective query and the received second input;

select one or more matching API queries from the group of API queries based on the respective matching scores of the one or more matching API queries; and

execute each of the one or more matching API queries on a repository comprising live data, the live data being automatically available to the copilot as the repository is updated.

18 . The system of claim 17 , wherein the data producer is further configured to:

produce a response to a given query of the executed API queries; and

transmit a second output, based on the response, toward a core microservice of the copilot or toward a client interface.

19 . (canceled)

20 . The system of claim 17 , wherein the system is further configured to use the live data to perform incremental fine-tuning training on a core microservice of the copilot.

21 . The computer-implemented method of claim 1 , wherein the data producer and a core microservice are incorporated within a copilot, and the method further comprises:

transmitting a result, derived from a response to the executing of a given one of the matching API queries, toward the core microservice; and

also using the live data to perform incremental training of the core microservice.

22 . The one or more computer-readable media of claim 16 , wherein the operations further comprise:

using the live data to perform incremental fine-tuning training on the core microservice.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2024
From: EDUWORKS CORPORATION
To: THIA ST CO.
Reel/Frame 069643/0557 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2024
From: KELSEY, ELAINE; ROBSON, ELLIOT NICHOLAS; NASIR, SAZZAD MAHMUD; YARBRO, JEFFREY THOMAS; ROBSON, ROBERT OSCAR; EGERTON, LAUREN ELIZABETH; WARD, SPENCER THOMAS; KELLY, BRENDAN MICHAEL
To: EDUWORKS CORPORATION
Reel/Frame 069093/0135 →