IP Library Granted Patent US 12,481,649
Granted Patent B2
US 12,481,649 · App. 18/767,261 · Granted Nov 25, 2025

Systems and methods for retrieving telematics data

Inventors: Daniel J. Lewis (Cambridge, CA); Terence Michael Branch (Oakville, CA); Robert Bradley (Oakville, CA); Shadi Mahdiani (Brampton, CA)
Assignee: Geotab Inc.
G06F16/243G06F16/24522G06F16/2455G06F16/285G06F16/3329G06F16/338G06N20/00
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 12,481,649
App. No.
18/767,261
Granted
Nov 25, 2025
Kind
B2
Abstract

The present disclosure relates to systems and methods for retrieving telematics data. A method for retrieving telematics data may comprise operating at least one processor to: provide a plurality of databases, each database storing at least telematics data originating from a plurality of telematics devices installed in a plurality of vehicles; receive a natural language request from a user; generate, using a large language model (LLM) that does not have access to the plurality of databases, an executable query for retrieving a portion of the telematics data that is responsive to the natural language request from the database by inputting into the LLM at least: a contextual prompt, and the natural language request; execute the executable query; and return at least the portion of the telematics data to the user.

Claims (49)

1 . A system for retrieving telematics data, the system comprising:

at least one data storage operable to store at least a plurality of databases, each database storing telematics data originating from a plurality of telematics devices installed in a plurality of vehicles; and

at least one processor in communication with the at least one data storage, the at least one processor operable to:

receive a natural language request from a user, the natural language request comprising at least one textual question relating to the telematics data stored within one of the databases;

generate, using a large language model (LLM) that does not have access to the plurality of databases, an executable query for retrieving a portion of the telematics data that is responsive to the natural language request from the database by inputting into the LLM at least:

a contextual prompt, the contextual prompt providing to the LLM at least one or more features of the database, an expected structure of the executable query, and one or more example natural language requests and corresponding executable query outputs, and

the natural language request;

execute the executable query for retrieving the portion of the telematics data from the database; and

return at least the portion of the telematics data to the user, whereby the natural language request is responded to without providing the LLM with access to the telematics data stored on the plurality of databases.

2 . The system of claim 1 , wherein the at least one processor is operable to generate the executable query by inputting the contextual prompt and the natural language request together into the LLM.

3 . The system of claim 1 , wherein the at least one processor is further operable to modify the executable query based on database identifying information, a type of the portion of the telematics data that is responsive to the natural language request, an identity of the user, or a combination thereof.

4 . The system of claim 3 , wherein the at least one processor is further operable to revert modifying of the executable query after the execution thereof.

5 . The system of claim 1 , wherein the at least one processor is further operable to:

determine whether the executing of the executable query was successful in retrieving the portion of the telematics data; and

generate, if the executing of the executable query was unsuccessful, an error message comprising at least a textual description of why the telematics data was not retrieved.

6 . The system of claim 5 , wherein the at least one processor is further operable to:

generate a corrected executable query for retrieving the portion of the telematics data from the database by inputting into the LLM at least the contextual prompt, the natural language request, and the error message; and

execute the corrected executable query for retrieving the portion of the telematics data from the database.

7 . The system of claim 1 , wherein the at least one processor is further operable to receive from the user an indication of whether the executable query was responsive to the natural language request.

8 . The system of claim 1 , wherein the LLM comprises a generative artificial intelligence model.

9 . The system of claim 1 , wherein the one or more features of the database comprise information relating to how the telematics data is stored in the database, a type of telematics data stored in the database, or a combination thereof.

10 . A method for retrieving telematics data, the method comprising operating at least one processor to:

provide a plurality of databases, each database storing at least telematics data originating from a plurality of telematics devices installed in a plurality of vehicles;

receive a natural language request from a user, the natural language request comprising at least one textual question relating to the telematics data stored within one of the plurality of databases;

generate, using a large language model (LLM) that does not have access to the plurality of databases, an executable query for retrieving a portion of the telematics data that is responsive to the natural language request from the database by inputting into the LLM at least:

a contextual prompt, the contextual prompt providing to the LLM at least one or more features of the database, an expected structure of the executable query, and one or more example natural language requests and corresponding executable query outputs, and

the natural language request;

execute the executable query for retrieving the portion of the telematics data from the database; and

return at least the portion of the telematics data to the user, whereby the natural language request is responded to without providing the LLM with access to the telematics data stored on the plurality of databases.

11 . The method of claim 10 , wherein generating of the executable query comprises operating the at least one processor to input the contextual prompt and the natural language request together into the LLM.

12 . The method of claim 10 , further comprising operating the at least one processor to modify the executable query based on database identifying information, a type of the portion of the telematics data that is responsive to the natural language request, an identity of the user, or a combination thereof.

13 . The method of claim 12 , further comprising operating the at least one processor to revert the modifying of the executable query after the execution thereof.

14 . The method of claim 10 , further comprising operating the at least one processor to:

determine whether the executing of the executable query was successful in retrieving the portion of the telematics data; and

generate, if the executing of the executable query was unsuccessful, an error message comprising at least a textual description of why the telematics data was not retrieved.

15 . The method of claim 14 , further comprising operating the at least one processor to:

generate a corrected executable query for retrieving the portion of the telematics data from the database by inputting into the LLM at least the contextual prompt, the natural language request, and the error message; and

execute the corrected executable query for retrieving the portion of the telematics data from the database.

16 . The method of claim 10 , further comprising operating the at least one processor to receive from the user an indication of whether the executable query was responsive to the natural language request.

17 . The method of claim 10 , wherein the LLM comprises a generative artificial intelligence model.

18 . The method of claim 10 , wherein the one or more features of the database comprise information relating to how the telematics data is stored in the database, a type of telematics data stored in the database, or a combination thereof.

19 . A non-transitory computer readable medium having instructions stored thereon executable by at least one processor to implement a method for retrieving telematics data, the method comprising operating at least one processor to:

provide a plurality of databases, each database storing at least telematics data originating from a plurality of telematics devices installed in a plurality of vehicles;

receive a natural language request from a user, the natural language request comprising at least one textual question relating to the telematics data stored within one of the plurality of databases;

generate, using a large language model (LLM) that does not have access to the plurality of databases, an executable query for retrieving a portion of the telematics data that is responsive to the natural language request from the database by inputting into the LLM at least:

a contextual prompt, the contextual prompt providing to the LLM at least one or more features of the database, an expected structure of the executable query, and one or more example natural language requests and corresponding executable query outputs, and

the natural language request;

execute the executable query for retrieving the portion of the telematics data from the database; and

return at least the portion of the telematics data to the user, whereby the natural language request is responded to without providing the LLM with access to the telematics data stored on the plurality of databases.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2024
From: LEWIS, DANIEL J.; BRANCH, TERENCE MICHAEL; BRADLEY, ROBERT; MAHDIANI, SHADI
To: GEOTAB INC.
Reel/Frame 067947/0470 →
Continuity (2)
Provisional Application 63526059 · Jul 11, 2023
Related Publication 20250021547A1 · Jan 16, 2025
References Cited (51)
US 1188741A · Dunkerley · 1916 [cited by applicant]
US 7505841B2 · Sun et al. · 2009 [cited by applicant]
US 7676087B2 · Dhua et al. · 2010 [cited by applicant]
US 7725216B2 · Kim · 2010 [cited by applicant]
US 8509987B2 · Resner · 2013 [cited by applicant]
US 9502030B2 · Winter · 2016 [cited by examiner]
US 10056008B1 · Sweany · 2018 [cited by examiner]
US 10204159B2 · Angel et al. · 2019 [cited by applicant]
US 10699564B1 · Lewis · 2020 [cited by examiner]
US 10708547B2 · Newman · 2020 [cited by examiner]
US 10728420B2 · Popa · 2020 [cited by applicant]
US 10997434B2 · Kurian et al. · 2021 [cited by applicant]
US 11488422B1 · Wu et al. · 2022 [cited by applicant]
US 11558808B1 · Fox · 2023 [cited by examiner]
US 11741760B1 · Dubin et al. · 2023 [cited by applicant]
US 11748377B1 · Zhang et al. · 2023 [cited by applicant]
US 11800317B1 · Dugar et al. · 2023 [cited by applicant]
US 11861955B1 · Dubin et al. · 2024 [cited by applicant]
US 11868919B1 · Zhang et al. · 2024 [cited by applicant]
US 11947872B1 · Mahler-Haug · 2024 [cited by examiner]
US 11975685B1 · Innocenzi et al. · 2024 [cited by applicant]
US 11989001B1 · Eihattab et al. · 2024 [cited by applicant]
US 11995546B1 · Srinivasan et al. · 2024 [cited by applicant]
US 20030137194A1 · White · 2003 [cited by examiner]
US 20050182534A1 · Legate · 2005 [cited by examiner]
US 20070050191A1 · Weider et al. · 2007 [cited by applicant]
US 20100185638A1 · Wright · 2010 [cited by examiner]
US 20100317420A1 · Hoffberg · 2010 [cited by examiner]
US 20130346077A1 · Mengibar · 2013 [cited by examiner]
US 20200073984A1 · Sen · 2020 [cited by examiner]
US 20200334924A1 · Wells · 2020 [cited by examiner]
US 20210101619A1 · Weast · 2021 [cited by examiner]
US 20210193121A1 · Li · 2021 [cited by examiner]
US 20210375462A1 · Rayos · 2021 [cited by examiner]
US 20220188329A1 · Prall · 2022 [cited by examiner]
US 20220245955A1 · Freeman et al. · 2022 [cited by applicant]
US 20230162287A1 · Dahl · 2023 [cited by examiner]
US 20230222849A1 · Hockin · 2023 [cited by examiner]
US 20240005675A1 · Lelowicz et al. · 2024 [cited by applicant]
US 20240062067A1 · Hu · 2024 [cited by examiner]
US 20240095460A1 · Xu · 2024 [cited by examiner]
US 20240289596A1 · Williams · 2024 [cited by examiner]
WO WO2008137855A2 · 2008 [cited by examiner]
WO WO2009075912A1 · 2009 [cited by examiner]
WO WO2017218257A1 · 2017 [cited by examiner]
WO WO2019191226A1 · 2019 [cited by examiner]
WO WO2020018435 · 2020 [cited by examiner]
A. Tripathy et al., “An Intelligent Data Processing Engine for Spatial Data Management in Vehicular Telematics System”, 2009 International Conference on Advances in Computing, Control, and Telecommunication Technologies… [cited by examiner]
Piotr Klosowski, “Deep Learning for Natural Language Processing and Language Modelling”, 2018 Signal Processing: Algorithms, Architectures, Arrangements, and Applications (SPA) (Sep. 2018, pp. 223-228). [cited by examiner]
Pathak, A et al., “An Algorithm Based Design and Query Processing of Spatial Data Management in Vehicular Telematics System”, 2009 International Joint Conference on Computational Sciences and Optimization (vol. 1, Apr. … [cited by examiner]
Animesh Tripathy et al., “An Intelligent Data Processing Engine for Spatial Data Management in Vehicular Telematics System”, 2009 International Conference on Advances in Computing, Control, and Telecommunication Technol… [cited by examiner]