IP Library › Granted Patent US 12,481,417
Granted Patent B2
US 12,481,417 · App. 18/468,460 · Granted Nov 25, 2025

Composable low-rank adaptation models for defining large-language model text style

Inventors: Russ Maschmeyer (Berkeley, CA); Eric Andrew Florenzano (San Francisco, CA); Brennan Letkeman (Calgary, CA); Diego Macario Bello (Montreal, CA)
Assignee: Shopify Inc.
G06F3/0484G06F40/56H04L51/02
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,417
App. No.
18/468,460
Filed
Sep 15, 2023
Granted
Nov 25, 2025
Kind
B2
Examiner
PHAM, LINH K
Art Unit
2174
USPC
715/771
Abstract

A computer system maintains low-rank adaptation (LoRA) models, where each LoRA model includes a set of weights configured to modify parameters of a large-language model (LLM) to cause the LLM to generate text having a corresponding property. The computer system presents a set of manipulable user-interface controls that allow configuration of properties of LLM-generated text. Output of the LLM is modified using LoRA models that are selected based on a state of the user-interface controls as manipulated. A preview is provided of LLM output corresponding to the current state of the user-interface controls during presentation and manipulation thereof. To provide this preview, the computer system iteratively provides a prompt to the LLM and outputs the output of the LLM responsive to that prompt for each iteration. For each iteration, the LLM output is modified using the LoRA models selected based on the current state of the user-interface controls as manipulated.

Claims (57)

1 . A computer-implemented method comprising:

maintaining a plurality of low-rank adaptation (LoRA) models that each include a set of weights configured to modify parameters of a large-language model (LLM) to cause the LLM to generate text having a corresponding property;

presenting a set of manipulable user-interface controls to allow configuration of properties of text generated using the LLM and wherein output of the LLM is to be modified based on one of more of the LoRA models of the plurality of LoRA models selected based on a state of the user-interface controls as manipulated; and

providing a preview of LLM output corresponding to a current state of the user-interface controls during presentation and manipulation thereof, wherein providing the preview includes iteratively providing a prompt to the LLM and outputting the output of the LLM responsive to the prompt for each iteration, wherein, for each iteration, the output of the LLM is modified based on one or more of the LoRA models of the plurality of LORA models selected based on the current state of the user-interface controls as manipulated.

2 . The computer-implemented method of claim 1 , further comprising:

identifying a first LoRA model of the plurality of LORA models based on the current state of the user-interface controls as manipulated, wherein the first LoRA model corresponds to a first property of text generated by the LLM; and

identifying a range of degrees of a second property of text generated by the LLM based on a LoRA model corresponding to a degree in the identified range being composable with the first LoRA model;

wherein presenting the set of manipulable user-interface controls comprises displaying indications of degrees of the second property in the identified range as selectable and displaying indications of degrees of the second property that are not in the identified range as not selectable.

3 . The computer-implemented method of claim 1 , wherein presenting the set of user-interface controls comprises:

identifying a first LoRA model of the plurality of LORA models based on the current state of the user-interface controls as manipulated, wherein the first LoRA model corresponds to a first property of text generated by the LLM;

identifying a subset of the plurality of LORA models based on the first LoRA model; and

presenting user-interface controls associated with the properties corresponding to the identified subset of LORA models that are manipulable to select one or more of the corresponding properties.

4 . The computer-implemented method of claim 1 , wherein presenting the set of user-interface controls comprises:

presenting a first user-interface control that is manipulable to change a degree of a first property of the text generated by the LLM;

wherein manipulation of the set of user-interface controls a selection of the degree of the first property.

5 . The computer-implemented method of claim 1 , wherein presenting the set of user-interface controls comprises:

presenting a first set of user-interface controls that are manipulable to select respective properties of text within a first category of properties; and

in response to receiving manipulation of a user-interface control of the first set of user-interface controls to select a property from among the first category of properties, presenting a second set of user-interface controls that are manipulable to select respective properties of text within a second category of properties.

6 . The computer-implemented method of claim 5 , wherein the properties within the second category of properties are determined based on the selected property from among the first category of properties.

7 . The computer-implemented method of claim 1 , wherein the set of user-interface controls are presented to allow configuration of properties of text generated by the LLM for output by a chat agent.

8 . The computer-implemented method of claim 7 , further comprising:

storing identifiers of the plurality of LoRA models in a repository or instruction set that is accessible to the chat agent during execution of the chat agent.

9 . The computer-implemented method of claim 1 , wherein the set of user-interface controls are output for display by a browser application, and wherein the method further comprises:

storing identifiers of the plurality of LORA models in the browser application.

10 . The computer-implemented method of claim 1 :

wherein providing the prompt to the LLM comprises specifying an order in which the one or more LoRA models selected based on the current state of the user-interface controls as manipulated are to be composed.

11 . The computer-implemented method of claim 1 , further comprising:

training the plurality of LORA models based on a set of chat conversations that have been tagged as containing the property corresponding to each of the plurality of LORA models.

12 . A non-transitory computer readable storage medium storing executable instructions, execution of which by a processor causing the processor to:

maintain a plurality of low-rank adaptation (LoRA) models that each include a set of weights configured to modify parameters of a large-language model (LLM) to cause the LLM to generate text having a corresponding property;

present a set of manipulable user-interface controls to allow configuration of properties of text generated using the LLM and wherein output of the LLM is to be modified based on one of more of the LoRA models of the plurality of LoRA models selected based on a state of the user-interface controls as manipulated; and

provide a preview of LLM output corresponding to a current state of the user-interface controls during presentation and manipulation thereof, wherein providing the preview includes iteratively providing a prompt to the LLM and outputting the output of the LLM responsive to the prompt for each iteration, wherein, for each iteration, the output of the LLM is modified based on one or more of the LoRA models of the plurality of LORA models selected based on the current state of the user-interface controls as manipulated.

13 . The non-transitory computer readable storage medium of claim 12 , wherein execution of the instructions further causes the processor to:

identify a first LoRA model of the plurality of LORA models based on the current state of the user-interface controls as manipulated, wherein the first LoRA model corresponds to a first property of text generated by the LLM; and

identify a range of degrees of a second property of text generated by the LLM based on a LoRA model corresponding to a degree in the identified range being composable with the first LoRA model;

wherein presenting the set of manipulable user-interface controls comprises displaying indications of degrees of the second property in the identified range as selectable and displaying indications of degrees of the second property that are not in the identified range as not selectable.

14 . The non-transitory computer readable storage medium of claim 12 , wherein presenting the set of user-interface controls comprises:

identifying a first LoRA model of the plurality of LoRA models based on the current state of the user-interface controls as manipulated, wherein the first LoRA model corresponds to a first property of text generated by the LLM;

identifying a subset of the plurality of LORA models based on the first LoRA model; and

presenting user-interface controls associated with the properties corresponding to the identified subset of LORA models that are manipulable to select one or more of the corresponding properties.

15 . The non-transitory computer readable storage medium of claim 12 , wherein presenting the set of user-interface controls comprises:

presenting a first user-interface control that is manipulable to change a degree of a first property of the text generated by the LLM;

wherein manipulation of the set of user-interface controls a selection of the degree of the first property.

16 . The non-transitory computer readable storage medium of claim 12 , wherein presenting the set of user-interface controls comprises:

presenting a first set of user-interface controls that are manipulable to select respective properties of text within a first category of properties; and

in response to receiving manipulation of a user-interface control of the first set of user-interface controls to select a property from among the first category of properties, presenting a second set of user-interface controls that are manipulable to select respective properties of text within a second category of properties.

17 . The non-transitory computer readable storage medium of claim 12 , wherein the set of user-interface controls are presented to allow configuration of properties of text generated by the LLM for output by a chat agent.

18 . The non-transitory computer readable storage medium of claim 17 , wherein execution of the instructions further causes the processor to:

storing identifiers of the plurality of LORA models in a repository or instruction set that is accessible to the chat agent during execution of the chat agent.

19 . The non-transitory computer readable storage medium of claim 12 :

wherein providing the prompt to the LLM comprises specifying an order in which the one or more LoRA models selected based on the current state of the user-interface controls as manipulated are to be composed.

20 . A system comprising:

at least one hardware processor; and

at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the system to:

maintain a plurality of low-rank adaptation (LoRA) models that each include a set of weights configured to modify parameters of a large-language model (LLM) to cause the LLM to generate text having a corresponding property;

present a set of manipulable user-interface controls to allow configuration of properties of text generated using the LLM and wherein output of the LLM is to be modified based on one of more of the LoRA models of the plurality of LORA models selected based on a state of the user-interface controls as manipulated; and

provide a preview of LLM output corresponding to a current state of the user-interface controls during presentation and manipulation thereof, wherein providing the preview includes iteratively providing a prompt to the LLM and outputting the output of the LLM responsive to the prompt for each iteration, wherein, for each iteration, the output of the LLM is modified based on one or more of the LoRA models of the plurality of LoRA models selected based on the current state of the user-interface controls as manipulated.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2024
From: SHOPIFY (USA) INC.
To: SHOPIFY INC.
Reel/Frame 066154/0926 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2024
From: SHOPIFY QUEBEC INC.
To: SHOPIFY INC.
Reel/Frame 066154/0980 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2023
From: MASCHMEYER, RUSS; FLORENZANO, ERIC ANDREW
To: SHOPIFY (USA) INC.
Reel/Frame 065122/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2023
From: LETKEMAN, BRENNAN
To: SHOPIFY INC.
Reel/Frame 065122/0366 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2023
From: BELLO, DIEGO MACARIO
To: SHOPIFY QUEBEC INC.
Reel/Frame 065122/0452 →
Continuity (1)
Related Publication 20250094025A1 · Mar 20, 2025
References Cited (16)
US 10235362B1 · Boynes · 2019 [cited by examiner]
US 12182511B2 · Dimitriadis et al. · 2024 [cited by applicant]
US 20220383126A1 · Chen et al. · 2022 [cited by applicant]
US 20240355104A1 · Alfassy · 2024 [cited by examiner]
US 20240419919A1 · Xiang · 2024 [cited by examiner]
US 20250078074A1 · Humpherys · 2025 [cited by examiner]
US 20250078343A1 · Chen · 2025 [cited by examiner]
US 20250086187A1 · Fayyaz · 2025 [cited by examiner]
WO 2025102041A1 · 2025 [cited by applicant]
Hu et al., Lora: Low-Rank Adaptation of Large Language Models, 2021, Arxiv.gov, 26 pages (Year: 2021). [cited by examiner]
Ling et al., Domain Specialization as the Key to Make Large Language Models Disruptive: A Comprehensive Survey, 2024, Arxiv.gov, 35 pages. [cited by examiner]
Wang et al., VisionLLM: Large Language Model is also an Open-Ended Decoder for Vision-Centric Tasks, 2023, Arxiv.gov, 22 pages. (Year: 2023). [cited by examiner]
International Search Report and Written Opinion for PCT/CA2024/050370, filed Mar. 26, 2024, Report dated Jun. 4, 2024, 11 pages. [cited by applicant]
Wang et al., “Multitask prompt tuning enables parameter-efficient transfer learning”, Eleventh International Conference on Learning Representations (ICLR 2023), pre-print retrieved from arXiv (arXiv:2303.02861v1), date:… [cited by applicant]
Xu et al., “Parameter-Efficient Fine-Tuning Methods for Pretrained Language Models: A Critical Review and Assessment”, preprint retrieved from arXiv (arXiv:2312.12148v1), date: Dec. 2023, 20 pages. [cited by applicant]
Sun et al., “Principle-Driven Self-Alignment of Language Models from Scratch with Minimal Human Supervision”, preprint retrieved from arXiv (arXiv:2305.03047v1), date: May 2023, 52 pages. [cited by applicant]