Prosecution Insights
Last updated: May 29, 2026
Application No. 18/515,913

EMBEDDING-BASED SEARCH OF AN ITEM STORE

Final Rejection §101§102§103
Filed
Nov 21, 2023
Examiner
LADONI, AHOORA
Art Unit
3689
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Shopify Inc.
OA Round
2 (Final)
7%
Grant Probability
At Risk
3-4
OA Rounds
2m
Est. Remaining
18%
With Interview

Examiner Intelligence

Grants only 7% of cases
7%
Career Allowance Rate
1 granted / 15 resolved
-45.3% vs TC avg
Moderate +12% lift
Without
With
+11.7%
Interview Lift
resolved cases with interview
Typical timeline
2y 9m
Avg Prosecution
30 currently pending
Career history
44
Total Applications
across all art units

Statute-Specific Performance

§101
4.2%
-35.8% vs TC avg
§103
93.8%
+53.8% vs TC avg
§102
2.1%
-37.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 15 resolved cases

Office Action

§101 §102 §103
DETAILED ACTION Status of Claims Claims 1-24 submitted on 02/10/2026 are pending and have been examined. No claim amendments have been made. Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Priority No foreign priority or domestic benefit was claimed by the applicant and the application has been examined with respect to its filing date of 11/21/2023. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-24 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more. The claims recite an abstract idea. This judicial exception is not integrated into a practical application. The claim(s) do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Step 1 Claims 1-22 are directed to a process, claim 23 is directed to an article of manufacture and claim 24 is directed to a machine (see MPEP 2106.03). Step 2A, Prong 1 Claim 1, taken as representative, recites at least the following limitations that recite an abstract idea: obtaining a first embedding in an embedding space, the first embedding representing a first item in an item store; identifying, based on at least a second embedding representing a second item in the item store, an item from the item store, wherein the second embedding is in the embedding space, and the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space; and outputting an identification of the identified item. The above limitation, under its broadest reasonable interpretation, falls within the “Certain Methods of Organizing Human Activity” grouping of abstract ideas, enumerated in MPEP 2106.04(a)(2)(II), in that it recites a commercial interaction, see ¶0002 and ¶0016 of the instant specification. Claims 23 and 24 recites similar limitations as claim 1. Thus, under Prong 1 of Step 2A, claims 1, 23, and 24 recite an abstract idea. Step 2A, Prong 2 Claim 1 includes the following additional elements that are bolded: a computer-implemented method, comprising: obtaining a first embedding in an embedding space, the first embedding representing a first item in an item store; identifying, based on at least a second embedding representing a second item in the item store, an item from the item store, wherein the second embedding is in the embedding space, and the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space; and outputting an identification of the identified item. Claims 23 and 24 include the same additional elements as claim 1. In addition, claim 23 includes additional elements such as a non-transitory computer readable storage medium storing executable instructions, execution of which by a processor causing the processor to. In addition, claim 24 includes additional elements such as 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. The additional elements recited in claims 1, 23, and 24 merely invoke such elements as a tool to perform the abstract idea and generally link the use of the abstract idea to a particular technological environment (see MPEP 2106.05(f) and MPEP 2106.05(h). These additional elements are described at a high level in Applicant’s specification without any meaningful detail about their structure or configuration (see Fig. 6 and ¶0085). As such, under Prong 2 of Step 2A, when considered both individually and as a whole, the additional elements do not integrate the judicial exception into a practical application and, thus, claims 1, 23, and 24 are directed to an abstract idea. Step 2B As noted above, while the recitation of the additional elements in independent claims 1, 23, and 24 are acknowledged, claims 1, 23, and 24 merely invoke such additional elements as a tool to perform the abstract idea and generally link the use of the abstract idea to a particular technological environment (see MPEP 2106.05(f) and MPEP 2106.05(h)). Even when considered as an ordered combination, the additional elements of claim 1, 23, and 24 do not add anything that is not already present when they are considered individually. Therefore, under Step 2B, there are no meaningful limitations in claims 1, 23, and 24 that transform the judicial exception into a patent eligible application such that the claims amount to significantly more than the judicial exception itself (see MPEP 2106.05). As such, independent claims 1, 23, and 24 are ineligible. Dependent claims 2, 4-13, and 15-21 when analyzed as a whole, are held to be patent ineligible under 35 U.S.C. 101 because they do not add “significantly more” to the abstract idea. More specifically, dependent claims 2, 4-13, and 15-21 merely further define the abstract limitations of claims 1, 23, and 24 or provide further embellishments of the limitations recited in independent claims 1, 23, and 24. Claims 2, 4-13, and 15-21 do not introduce any further additional elements. Thus, dependent claims 2, 4-13, and 15-21 are ineligible. Furthermore, it is noted that certain dependent claims recite additional elements supplemental to those recited in independent claims 1, 23, and 24: sending the first embedding to a large language model (claim 3), applying a clustering algorithm to the plurality (claim 14), causing a generative artificial intelligence model to output (claim 22). However, these elements do not integrate the abstract idea into a practical application because they merely amount to using a computer to apply the abstract idea to a particular technological environment or field of use and thus do not act to integrate the abstract idea into a practical application of the abstract idea. Additionally, the additional elements do not amount to significantly more because they merely amount to using a computer to apply the abstract idea and amount to no more than a general link of the use of the abstract idea to a particular technological environment. Thus, dependent claims 3, 14, and 22 are ineligible. Claim Rejections - 35 USC § 102 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claim(s) 1, 2, 4-7, 9, 23, and 24 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Grob et al. (US 2023/0169442 A1 [previously cited]). Regarding Claim 1, Grob et al., hereinafter, Grob, discloses a computer-implemented method, comprising: obtaining a first embedding in an embedding space, the first embedding representing a first item in an item store (Fig. 8; ¶¶0042-0043[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]); identifying, based on at least a second embedding representing a second item in the item store, an item from the item store, wherein the second embedding is in the embedding space, and the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space (Fig. 8; ¶¶0042-0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]); and outputting an identification of the identified item (¶0043 in view of ¶0061[rendering a graphical user interface displaying a three-dimensional graph, with the embeddings in the data structure displayed as points in the three-dimensional graph corresponding to their respective set of coordinates.]). Regarding Claim 2, Grob discloses the computer-implemented method of claim 1, Grob further discloses wherein embeddings in the embedding space represent features of corresponding items of the item store within a plurality of feature dimensions (¶0018[Each vector contains a plurality of dimensions, with each dimension related to a different feature of the data, pertaining to a single product. A feature represents a particular type field of data. Since the data here pertains to products, each feature is a different attribute of a product, with values for each feature representing the values for the attributes. The first machine learning algorithm 116 is further trained to map each vector to a coordinate in three-dimensional space, with the coordinate being indicative of similarity to other vectors mapped to coordinates in the three-dimensional space.]), the method further comprising: obtaining a selection of a feature dimension of the plurality of feature dimensions (Fig. 1; ¶0020[A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]); and responsive to receiving the selection of the feature dimension of the plurality of feature dimensions, identifying the identified item in the item store, wherein the identified item in the item store is the second item represented by the second embedding, and wherein the second item is identified based on the second embedding having a feature that is within a threshold distance of a corresponding feature of the first item along the selected feature dimension (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Regarding Claim 4, Grob discloses the computer-implemented method of claim 2, Grob discloses further comprising: decomposing aesthetic concepts of the first item to obtain an indication for each feature dimension in the plurality of feature dimensions (¶0018[Each vector contains a plurality of dimensions, with each dimension related to a different feature of the data, pertaining to a single product. A feature represents a particular type field of data. Since the data here pertains to products, each feature is a different attribute of a product, with values for each feature representing the values for the attributes. The first machine learning algorithm 116 is further trained to map each vector to a coordinate in three-dimensional space, with the coordinate being indicative of similarity to other vectors mapped to coordinates in the three-dimensional space.]; Examiner notes that product features are comparable to “aesthetic concepts” of the item); and outputting the indication for each feature dimension in the plurality of feature dimensions for display (¶0021[This three-dimensional visualization may be displayed within a user interface, which may be surfaced to users via REST service 130. As mentioned briefly earlier, this three-dimensional visualization may either be rendered on a two-dimensional display or may be rendered to an augmented reality or other three-dimensional display. The three-dimensional visualization may display each product as a dot at the set of coordinates corresponding to the product in a three-dimensional grid or graph.]; Examiner notes that displaying is comparable to outputting the indication). Regarding Claim 5, Grob discloses the computer-implemented method of claim 2, Grob further discloses wherein obtaining the selection of the feature dimension of the plurality of feature dimensions comprises: obtaining a third embedding that represents a third item in the item store (Fig. 8; ¶0042[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]; Examiner notes that a plurality of products is comparable to a third item embedding); identifying a similar feature between the first item and the third item based on a similarity between the first embedding and the third embedding (Fig. 8; ¶0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]; Examiner notes that a plurality of products is comparable to a third item embedding); and identifying a feature dimension corresponding to the similar feature as the selection of the feature dimension of the plurality of feature dimensions (Fig. 1; ¶0020[A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Regarding Claim 6, Grob discloses the computer-implemented method of claim 2, Grob further discloses wherein obtaining the selection of the feature dimension of the plurality of feature dimensions comprises: obtaining a plurality of additional embeddings that represent corresponding additional items in the item store (Fig. 8; ¶0042[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]; Examiner notes that a plurality of product embeddings is comparable to additional embeddings); identifying a respective similar feature between each additional item and the first item based on a similarity between each additional embedding and the first embedding (Fig. 8; ¶0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]; Examiner notes that a plurality of products with embeddings is comparable to additional items ); and identifying a feature dimension corresponding to each of the respective similar features each as the selection of the feature dimension of the plurality of feature dimensions (Fig. 1; ¶0020[A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Regarding Claim 7, Grob discloses the computer-implemented method of claim 2, Grob further discloses wherein obtaining the selection of the feature dimension of the plurality of feature dimensions comprises: generating multiple embeddings for the first item, each embedding of the multiple embeddings representing features of the first item (¶0018[A feature represents a particular type field of data. Since the data here pertains to products, each feature is a different attribute of a product, with values for each feature representing the values for the attributes. The first machine learning algorithm 116 is further trained to map each vector to a coordinate in three-dimensional space, with the coordinate being indicative of similarity to other vectors mapped to coordinates in the three-dimensional space. Master data pertaining to products may then be fed to the trained first machine-learned model 114, which may generate a set of three-dimensional coordinates corresponding to each product.] in view of ¶0023[The RNN can be fed vectors representing the different features and be trained to generate embedding based on those features.]); and presenting an indication of at least a first feature dimension from a first embedding associated with the first item and a second feature dimension from a second embedding associated with the first item (¶0021[This three-dimensional visualization may be displayed within a user interface, which may be surfaced to users via REST service 130. As mentioned briefly earlier, this three-dimensional visualization may either be rendered on a two-dimensional display or may be rendered to an augmented reality or other three-dimensional display. The three-dimensional visualization may display each product as a dot at the set of coordinates corresponding to the product in a three-dimensional grid or graph.] in view of ¶0023[The RNN can be fed vectors representing the different features and be trained to generate embedding based on those features.]; Examiner notes that displaying is comparable to presenting the indication); wherein the selection of the feature dimension of the plurality of feature dimensions comprises a selection of the first feature dimension or the second feature dimension (Fig. 1; ¶0020[A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Regarding Claim 9, Grob discloses the computer-implemented method of claim 2, Grob discloses further comprising: after identifying the identified item, determining a point along the selected feature dimension that has a greater distance to the first embedding than a distance between the second embedding and the first embedding (Fig. 5; ¶0038[Additionally, product groups, such as groups 504A, 504B, 504C may be highlighted, indicating clusters of products who are similar enough that the clustering algorithm has grouped them together. There are also some outlier points, such as points 506A, 506B, and 506C, which are indicative of unique products that do not have many characteristics in common with other products, and thus are not clustered into a product group by the clustering algorithm.]); identifying a third item from the item store based on a third embedding representing the third item, wherein the third embedding is in the embedding space, and the third item is identified based on a position of the third embedding in the embedding space relative to a position of the determined point (Figs. 5 and 6; ¶0038[Here, each point, such as points 502A, 502B, 502C represent a different product. Additionally, product groups, such as groups 504A, 504B, 504C may be highlighted, indicating clusters of products who are similar enough that the clustering algorithm has grouped them together. There are also some outlier points, such as points 506A, 506B, and 506C, which are indicative of unique products that do not have many characteristics in common with other products, and thus are not clustered into a product group by the clustering algorithm.]); and outputting an identification of the third item (Figs. 5-7; ¶¶0038-0040[FIG. 7 is a screen shot of an example visualization 700 of products, in accordance with another example embodiment. This example is similar to that of FIG. 6, although here a user is able to select on a particular point, such as point 602, and a drop down menu 702 is displayed showing additional functions the user can select related to the point 602. Here, for example, the user can select to edit the product, delete the product, analyze the product (such as by displaying additional Key Performance Indices (KPIs), such as margin), or find similar products.]). Regarding Claim 23, Grob discloses a non-transitory computer readable storage medium storing executable instructions, execution of which by a processor causing the processor to (¶0047[a non-transitory computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:]): obtain a first embedding in an embedding space, the first embedding representing a first item in an item store (Fig. 8; ¶¶0042-0043[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]); identify, based on at least a second embedding representing a second item in the item store, an item from the item store, wherein the second embedding is in the embedding space, and the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space (Fig. 8; ¶¶0042-0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]); and output an identification of the identified item (¶0043 in view of ¶0061[rendering a graphical user interface displaying a three-dimensional graph, with the embeddings in the data structure displayed as points in the three-dimensional graph corresponding to their respective set of coordinates.]). Regarding Claim 24, Grob discloses a system comprising (Fig. 10; ¶0045): at least one hardware processor (Fig. 10; ¶0046); and at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the system to (¶0047[a non-transitory computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:]): obtain a first embedding in an embedding space, the first embedding representing a first item in an item store (Fig. 8; ¶¶0042-0043[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]); identify, based on at least a second embedding representing a second item in the item store, an item from the item store, wherein the second embedding is in the embedding space, and the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space (Fig. 8; ¶¶0042-0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]); and output an identification of the identified item (¶0043 in view of ¶0061[rendering a graphical user interface displaying a three-dimensional graph, with the embeddings in the data structure displayed as points in the three-dimensional graph corresponding to their respective set of coordinates.]). Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 3 is/are rejected under 35 U.S.C. 103 as being unpatentable over Grob in view of Cunningham et al. (US 2025/0094708 A1 [previously cited]). Regarding Claim 3, Grob discloses the computer-implemented method of claim 2, Grob discloses further comprising: sending the first embedding for each of the plurality of feature dimensions based on the first embedding (¶0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]); and presenting the output for each of the plurality of feature dimensions (¶0043 in view of ¶0061[rendering a graphical user interface displaying a three-dimensional graph, with the embeddings in the data structure displayed as points in the three-dimensional graph corresponding to their respective set of coordinates.]). Although Grob discloses comparing the embeddings for product features, Grob does not explicitly disclose sending the embedding to a large language model to output a descriptor and presenting the descriptor output by the large language model. However, Cunningham et al., hereinafter, Cunningham, teaches a descriptor output by a large language model (Fig. 9; ¶0079[For example, the content item segmenting system 106 can generate the model output by passing selected text segments corresponding the selected segment-specific text embeddings to the large language model. Indeed, the content item segmenting system 106 can pass the selected text segments to the large language model together with the model output request.]). The method of Cunningham is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to using embeddings to improve user experience. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the product embeddings and model as disclosed by Grob to include sending the embedding to a large language model to output a descriptor as taught by Cunningham. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to achieve broad coverage of output generation across a wide array of contexts (¶0003). Claim(s) 8 is/are rejected under 35 U.S.C. 103 as being unpatentable over Grob in view of Sonnenberg et al. (US 2021/0141850 A1 [previously cited]). Regarding Claim 8, Grob discloses the computer-implemented method of claim 2, Grob discloses further comprising: receiving a second feature dimension of the plurality of feature dimensions (Fig. 1; ¶0020[A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]); wherein identifying the identified item in the item store comprises identifying the identified item based on the second embedding having a feature that is with a threshold distance of a corresponding feature of the first item along each of the feature dimensions of the plurality of feature dimensions (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Although Grob discloses receiving feature dimensions and identifying items, Grob does not explicitly disclose receiving an indication that a user is agnostic to a second feature and identifying an item with features other than the second feature dimension. However, Sonnenberg et al., hereinafter, Sonnenberg, teaches, receiving an indication that a user is agnostic to a feature and identifying items with other features (Figs. 2A-2D; 0037[In another example, the communications-based compatibility features may be presented to users or buyers searching for items on the item listing platform as optional or selectable filters and/or categories of filters to filter search results based on selected communications-based compatibility features. The user interface may be configured as a search interface a selectable set of features for result items for corresponding categories, such that selection of one or more features may filter the search results to prioritize items including the selected one or more features in their corresponding supplementary item information. For example, selectable filters for compatible items may be presented to users, such that a user that selects a “Harmon Kardon Receiver” under a compatible items filter may be presented with search results filtered to only include items with a communications-based compatibility feature including the “Harmon Kardon Receiver” in its supplementary item information. Similarly, selected filters for demographic-based compatibility features may be selectable such that when a user selects a filter for a desired age or age range, the search results may be filtered to prioritize items with communications-based compatibility features including the selected age or age range in the items' supplementary item information.]). The method of Sonnenberg is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to identifying products. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the receiving of features and identifying of items as disclosed by Grob to include an indication that a user is agnostic to certain features as taught by Sonnenberg. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to help identify items having specific item features (¶0001). Claim(s) 10-13 and 15-21 is/are rejected under 35 U.S.C. 103 as being unpatentable over Grob in view of Subbian et al. (US 2019/0114362 A1 [previously cited]). Regarding Claim 10, Grob discloses the computer-implemented method of claim 1, Grob discloses further comprising: obtaining the second embedding (Fig. 8; ¶0042[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]; Examiner notes that a plurality of products is comparable to a second item embedding); the first embedding and the second embedding (Fig. 8; ¶0042[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]; Examiner notes that a plurality of products is comparable to a first and second item embedding); and identifying the identified item based on an identification of a third embedding representing a third item in the item store, wherein the identified item is the third item, and wherein the third embedding is identified based on a distance between the third embedding (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Although Grob discloses product embeddings, Grob does not explicitly disclose generating an interpolation between embeddings and a distance between an embedding and a point along the interpolation. However, Subbian et al., hereinafter, Subbian, teaches generating an interpolation between embeddings and a point along the interpolation (¶0087[In particular embodiments, after training entity embeddings for the eligible entities in the training entity pool, the social-networking system 160 may generate an entity embedding for each entity in the inference entity pool by performing an embedding interpolation… For the embedding interpolation for each entity in the inference entity pool, the social-networking system 160 may identify one or more neighboring entities of the entity that have entity embeddings stored in the one or more temporary data stores from the social graph 200.] in view of abstract[where the query embedding represents the search query as a point in a d-dimensional embedding space, retrieving multiple entity embeddings corresponding to a plurality of entities, respectively, where each entity embedding represents the corresponding entity as a point in the d-dimensional embedding space]). The method of Subbian is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as disclosed by Grob to include generating an interpolation and a point along the interpolation as taught by Subbian. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to facilitate social interaction between or among users (¶0002). Regarding Claim 11, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob discloses further comprising: identifying the third embedding based on the distance between the third embedding by performing a vector search of the item store to retrieve an embedding (¶0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.] in view of ¶0018[A feature represents a particular type field of data. Since the data here pertains to products, each feature is a different attribute of a product, with values for each feature representing the values for the attributes. The first machine learning algorithm 116 is further trained to map each vector to a coordinate in three-dimensional space, with the coordinate being indicative of similarity to other vectors mapped to coordinates in the three-dimensional space. Master data pertaining to products may then be fed to the trained first machine-learned model 114, which may generate a set of three-dimensional coordinates corresponding to each product.] and ¶0023[The RNN can be fed vectors representing the different features and be trained to generate embedding based on those features.]). Although Grob discloses identifying embeddings based on a distance and performing a vector search to retrieve an embedding, Grob does not explicitly disclose a distance between an embedding and the point along the interpolation and retrieving an embedding nearest to the point along the interpolation. However, Subbian teaches generating an interpolation between embeddings and a point along the interpolation (¶0087[In particular embodiments, after training entity embeddings for the eligible entities in the training entity pool, the social-networking system 160 may generate an entity embedding for each entity in the inference entity pool by performing an embedding interpolation… For the embedding interpolation for each entity in the inference entity pool, the social-networking system 160 may identify one or more neighboring entities of the entity that have entity embeddings stored in the one or more temporary data stores from the social graph 200.] in view of abstract[where the query embedding represents the search query as a point in a d-dimensional embedding space, retrieving multiple entity embeddings corresponding to a plurality of entities, respectively, where each entity embedding represents the corresponding entity as a point in the d-dimensional embedding space]). The method of Subbian is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as disclosed by Grob to include generating an interpolation and a point along the interpolation as taught by Subbian. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to facilitate social interaction between or among users (¶0002). Regarding Claim 12, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob discloses further comprising identifying the third embedding based on the distance between the third embedding and the point along the interpolation by: performing a vector search of the item store to retrieve a plurality of embeddings that are within a threshold distance (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]); and selecting the third embedding based on a distance between the third embedding and the second embedding being less than a distance between another embedding in the plurality of embeddings and the second embedding (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]; Examiner notes that locating products within a threshold distance is comparable to the second embedding being less than the distance between other embeddings that are above the threshold distance). Although Grob discloses performing a vector search to retrieve embeddings within a threshold distance, Grob does not explicitly disclose a threshold distance of the point along the interpolation. However, Subbian teaches a point along the interpolation (¶¶0087-0093[In particular embodiments, after training entity embeddings for the eligible entities in the training entity pool, the social-networking system 160 may generate an entity embedding for each entity in the inference entity pool by performing an embedding interpolation… For the embedding interpolation for each entity in the inference entity pool, the social-networking system 160 may identify one or more neighboring entities of the entity that have entity embeddings stored in the one or more temporary data stores from the social graph 200... In particular embodiments, the social-networking system 160 may retrieve entity embeddings within a threshold distance from the query embedding in the embedding space] in view of abstract[where the query embedding represents the search query as a point in a d-dimensional embedding space, retrieving multiple entity embeddings corresponding to a plurality of entities, respectively, where each entity embedding represents the corresponding entity as a point in the d-dimensional embedding space]). The method of Subbian is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as disclosed by Grob to include generating an interpolation and a point along the interpolation as taught by Subbian. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to facilitate social interaction between or among users (¶0002). Regarding Claim 13, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob discloses further comprising identifying the third embedding based on the distance between the third embedding and the point along the interpolation by: performing a vector search to retrieve a plurality of embeddings that are within a threshold distance (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]); and selecting the third embedding from the plurality of embeddings based on an attribute of the third item corresponding to the third embedding (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]). Although Grob discloses performing a vector search to retrieve embeddings within a threshold distance, Grob does not explicitly disclose a threshold distance of the point along the interpolation. However, Subbian teaches a point along the interpolation (¶¶0087-0093[In particular embodiments, after training entity embeddings for the eligible entities in the training entity pool, the social-networking system 160 may generate an entity embedding for each entity in the inference entity pool by performing an embedding interpolation… For the embedding interpolation for each entity in the inference entity pool, the social-networking system 160 may identify one or more neighboring entities of the entity that have entity embeddings stored in the one or more temporary data stores from the social graph 200... In particular embodiments, the social-networking system 160 may retrieve entity embeddings within a threshold distance from the query embedding in the embedding space] in view of abstract[where the query embedding represents the search query as a point in a d-dimensional embedding space, retrieving multiple entity embeddings corresponding to a plurality of entities, respectively, where each entity embedding represents the corresponding entity as a point in the d-dimensional embedding space]). The method of Subbian is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as disclosed by Grob to include generating an interpolation and a point along the interpolation as taught by Subbian. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to facilitate social interaction between or among users (¶0002). Regarding Claim 15, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob further discloses wherein generating the interpolation between the first embedding and the second embedding comprises: determining a line in a vector space from the first embedding to the second embedding (Fig. 4[showing a line in vector space from one embedding to another]; ¶0037[FIG. 4 is a diagram illustrating a data structure, in accordance with an example embodiment. Here, for each attribute, a fixed distance is added into an assigned dimension. Since there are more attributes than dimensions (three), the system needs to assign vectors to the attributes. Each attribute is used to move the vector into the three-dimensional latent space 400. In the end, a specific point 402A, 402B, is reached for each product, which is the sum of all attribute vectors. Thus, for example, here the point 402A for product A is the sum of attribute vectors 404A-404J]). Regarding Claim 16, Grob in view of Subbian teaches the computer-implemented method of claim 15, Grob discloses further comprising: dividing the line into one or more points with a specified distance between each point (Fig. 4[showing line between points with a specified distance between each point]; ¶0037[FIG. 4 is a diagram illustrating a data structure, in accordance with an example embodiment. Here, for each attribute, a fixed distance is added into an assigned dimension. Since there are more attributes than dimensions (three), the system needs to assign vectors to the attributes. Each attribute is used to move the vector into the three-dimensional latent space 400. In the end, a specific point 402A, 402B, is reached for each product, which is the sum of all attribute vectors. Thus, for example, here the point 402A for product A is the sum of attribute vectors 404A-404J]); and identifying the third embedding that is similar comprises identifying the third embedding based on distance between the third embedding (Fig. 8; ¶0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]; Examiner notes that a plurality of products is comparable to a third item embedding). Although Grob discloses identifying an embedding that is similar based on a distance, Grob does not explicitly disclose an embedding that is similar to a point along the interpolation and identifying based on a distance between an embedding and a respective point of the one or more points. However, Subbian teaches generating an interpolation between embeddings and a point along the interpolation (¶0087[In particular embodiments, after training entity embeddings for the eligible entities in the training entity pool, the social-networking system 160 may generate an entity embedding for each entity in the inference entity pool by performing an embedding interpolation… For the embedding interpolation for each entity in the inference entity pool, the social-networking system 160 may identify one or more neighboring entities of the entity that have entity embeddings stored in the one or more temporary data stores from the social graph 200.] in view of abstract[where the query embedding represents the search query as a point in a d-dimensional embedding space, retrieving multiple entity embeddings corresponding to a plurality of entities, respectively, where each entity embedding represents the corresponding entity as a point in the d-dimensional embedding space]). The method of Subbian is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as disclosed by Grob to include generating an interpolation and a point along the interpolation as taught by Subbian. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to facilitate social interaction between or among users (¶0002). Regarding Claim 17, Grob in view of Subbian teaches the computer-implemented method of claim 16, Grob discloses further comprising: dividing the line into a specified number of points (Fig. 4[showing a line divided into a number of points]; ¶0037[FIG. 4 is a diagram illustrating a data structure, in accordance with an example embodiment. Here, for each attribute, a fixed distance is added into an assigned dimension. Since there are more attributes than dimensions (three), the system needs to assign vectors to the attributes. Each attribute is used to move the vector into the three-dimensional latent space 400. In the end, a specific point 402A, 402B, is reached for each product, which is the sum of all attribute vectors. Thus, for example, here the point 402A for product A is the sum of attribute vectors 404A-404J]); and for each respective point of the specified number of points, identifying a corresponding third embedding based on a distance between the corresponding third embedding and the respective point (Figs. 4, 5 and 8; ¶0043[At operation 816, it is determined how similar a first product in the plurality of products is to a second product in the plurality of products based on a geometric distance between the set of coordinates corresponding to the embedding for the first product and the set of coordinates corresponding to the embedding for the second product, as stored in the data structure.]; Examiner notes that a plurality of products is comparable to a third item embedding). Regarding Claim 18, Grob in view of Subbian teaches the computer-implemented method of claim 17, Grob discloses further comprising selecting the specified number of points based on a distance between the first embedding and the second embedding (¶0020[This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product.]). Regarding Claim 19, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob further discloses wherein generating the interpolation between the first embedding and the second embedding comprises: reducing a dimensionality of the first embedding and the second embedding to a lower-dimensional vector space (¶0026[The first machine-learned model 114 may then translate the high-dimensionality vectors into a low-dimensional space, here a three-dimensional space.]); and determining a line in the lower-dimensional vector space from the reduced- dimensionality first embedding to the reduced-dimensionality second embedding (Fig. 4[showing a line in vector space from one embedding to another]; ¶0037[FIG. 4 is a diagram illustrating a data structure, in accordance with an example embodiment. Here, for each attribute, a fixed distance is added into an assigned dimension. Since there are more attributes than dimensions (three), the system needs to assign vectors to the attributes. Each attribute is used to move the vector into the three-dimensional latent space 400. In the end, a specific point 402A, 402B, is reached for each product, which is the sum of all attribute vectors. Thus, for example, here the point 402A for product A is the sum of attribute vectors 404A-404J]). Regarding Claim 20, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob further discloses wherein generating the interpolation between the first embedding and the second embedding comprises: determining a non-linear path from the first embedding to the second embedding (Fig. 4[showing a nonlinear path from Product A to Product B]; ¶0037[FIG. 4 is a diagram illustrating a data structure, in accordance with an example embodiment. Here, for each attribute, a fixed distance is added into an assigned dimension. Since there are more attributes than dimensions (three), the system needs to assign vectors to the attributes. Each attribute is used to move the vector into the three-dimensional latent space 400. In the end, a specific point 402A, 402B, is reached for each product, which is the sum of all attribute vectors. Thus, for example, here the point 402A for product A is the sum of attribute vectors 404A-404J.]). Regarding Claim 21, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob further discloses wherein obtaining the first embedding and the second embedding comprises: receiving a user input to select the first item and the second item (Fig. 7; ¶0040[FIG. 7 is a screen shot of an example visualization 700 of products, in accordance with another example embodiment. This example is similar to that of FIG. 6, although here a user is able to select on a particular point, such as point 602, and a drop down menu 702 is displayed showing additional functions the user can select related to the point 602. Here, for example, the user can select to edit the product, delete the product, analyze the product (such as by displaying additional Key Performance Indices (KPIs), such as margin), or find similar products.]); and accessing the first embedding and the second embedding based on the user input (Fig. 7; ¶0040[FIG. 7 is a screen shot of an example visualization 700 of products, in accordance with another example embodiment. This example is similar to that of FIG. 6, although here a user is able to select on a particular point, such as point 602, and a drop down menu 702 is displayed showing additional functions the user can select related to the point 602. Here, for example, the user can select to edit the product, delete the product, analyze the product (such as by displaying additional Key Performance Indices (KPIs), such as margin), or find similar products.]). Claim(s) 14 is/are rejected under 35 U.S.C. 103 as being unpatentable over Grob in view of Subbian in further view of Buryak et al. (US 8,781,916 B1 [previously cited]). Regarding Claim 14, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob discloses further comprising identifying the third embedding based on the distance between the third embedding and the point along the interpolation by: performing a vector search to retrieve a plurality of embeddings that are within a threshold distance (Fig. 1; ¶0020[For example, a user may specify a product that has been discontinued by its manufacturer, and the similarity service 124 may then query the data structure 118 to determine one or more products similar to the discontinued product. This may be performed by the similarity service 124 identifying the set of coordinates associated with the discontinued product and then locating one or more sets of coordinates within some threshold geometric distance to the discontinued product in the three-dimensional space, as specified by the data structure 118. Those sets of coordinates within the threshold geometric distance then represent “matching” products for the discontinued product, which allows the assortment manager to then order one or more of those matching products to make up for the loss of the discontinued product. In some example embodiments, the user or service need not even specify a particular real product to identify similar matches to, but may instead specify a hypothetical or “dream” product to have the similarity service 124 identify close matches to. In this way, the similarity service 124 may act as a recommendation service. A questionnaire may be presented to users that allow the users to identify features of such a hypothetical or “dream” product.]); applying a clustering algorithm to the plurality of embeddings to identify one or more clusters of the embeddings in the plurality of embeddings (Fig. 5; ¶0060[wherein the operations further comprise performing a clustering algorithm on the embeddings in the data structure to identify groups of similar products.] in view of ¶0038[Additionally, product groups, such as groups 504A, 504B, 504C may be highlighted, indicating clusters of products who are similar enough that the clustering algorithm has grouped them together. There are also some outlier points, such as points 506A, 506B, and 506C, which are indicative of unique products that do not have many characteristics in common with other products, and thus are not clustered into a product group by the clustering algorithm]); and selecting the third embedding from the plurality of embeddings based on the third embedding being part of a cluster (¶0060[wherein the operations further comprise performing a clustering algorithm on the embeddings in the data structure to identify groups of similar products.]). Although Grob discloses performing a vector search to retrieve embeddings within a threshold distance, Grob does not explicitly disclose a threshold distance of the point along the interpolation. However, Subbian teaches a point along the interpolation (¶¶0087-0093[In particular embodiments, after training entity embeddings for the eligible entities in the training entity pool, the social-networking system 160 may generate an entity embedding for each entity in the inference entity pool by performing an embedding interpolation… For the embedding interpolation for each entity in the inference entity pool, the social-networking system 160 may identify one or more neighboring entities of the entity that have entity embeddings stored in the one or more temporary data stores from the social graph 200... In particular embodiments, the social-networking system 160 may retrieve entity embeddings within a threshold distance from the query embedding in the embedding space] in view of abstract[where the query embedding represents the search query as a point in a d-dimensional embedding space, retrieving multiple entity embeddings corresponding to a plurality of entities, respectively, where each entity embedding represents the corresponding entity as a point in the d-dimensional embedding space]). The method of Subbian is applicable to the method of Grob as they share characteristics and capabilities, namely, they are both targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as disclosed by Grob to include generating an interpolation and a point along the interpolation as taught by Subbian. One of ordinary skill in the art would have been motivated to expand the method of Grob in order to facilitate social interaction between or among users (¶0002). Although Grob discloses identifying embeddings based on the embedding being part of a cluster, Grob in view of Subbian does not explicitly teach selecting based on being part of a largest cluster of the one or more identified clusters. However, Buryak et al., hereinafter, Buryak, teaches selecting dimensions for a product that are part of the largest clusters (Col. 9, lines 7-24[Following labeling, the theme identification module 312 analyzes the labels of the generated taxonomy for each product in order to select the specific dimensions for the product. In one aspect, a specific dimension is selected for each of a number of thematic categories. For example, a specific dimension may be selected for each of a genre category, a plot category, a time period category, and a mood category. In one embodiment, the selected dimensions may be those associated with the largest clusters (e.g., those clusters that include the greatest number of attributes) in the taxonomy for each category. For example, the taxonomy for a particular book may include a cluster labeled with a 1980s dimension and also a cluster labeled with a 1990s dimension. Both the dimensions may belong to a time period category. The cluster labeled with the 1990s dimension may include more attributes than the cluster labeled with the 1980s dimension. As such, the theme identification module 312 may select, for the book, the 1990s dimension for the time period category.]). The method of Buryak is applicable to the method of Grob in view of Subbian as they share characteristics and capabilities, namely, they are all targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as taught by Grob in view of Subbian to include identifying largest clusters as taught by Buryak. One of ordinary skill in the art would have been motivated to expand the method of Grob in view of Subbian in order to provide nuanced product recommendations based on similarity channels (Col. 1, lines 8-11). Claim(s) 22 is/are rejected under 35 U.S.C. 103 as being unpatentable over Grob in view of Subbian in further view of Assouline et al. (US 2024/0355019 A1 [previously cited]). Regarding Claim 22, Grob in view of Subbian teaches the computer-implemented method of claim 10, Grob further discloses wherein obtaining the second embedding comprises: receiving a description of the second item (Fig. 7; ¶0040[FIG. 7 is a screen shot of an example visualization 700 of products, in accordance with another example embodiment. This example is similar to that of FIG. 6, although here a user is able to select on a particular point, such as point 602, and a drop down menu 702 is displayed showing additional functions the user can select related to the point 602. Here, for example, the user can select to edit the product, delete the product, analyze the product (such as by displaying additional Key Performance Indices (KPIs), such as margin), or find similar products.]; Examiner notes that analyzing the product is comparable to receiving a description); causing output of the second item (Fig. 8; ¶0042[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]); and generating the second embedding (Fig. 8; ¶0042[At operation 812, the vectors for the plurality of products are fed into the trained embedding machine-learned model to obtain an embedding for each product in the plurality of products. Then, at operation 814, the embedding for each product are stored in a data structure.]). Although Grob discloses causing an output and generating embeddings, Grob in view of Subbian does not explicitly teach a generative artificial intelligence model to output an image of an item based on the received description and generating to represent the image of the second item. However, Assouline et al., hereinafter, Assouline, teaches a generative model to output an image based on received description to represent the image of an item (Fig. 5; ¶0094[Together these components enable the image generation system 500 to receive an image depicting a real-world object and generate a prompt that includes or defines a textual description of a fashion item. These components allow the image generation system 500 to analyze the image and the textual description of the fashion item using a generative machine learning model to generate an artificial image that depicts an artificial object (artificially generated object) that resembles the real-world object wearing an artificial fashion item matching the textual description of the fashion item.]). The method of Assouline is applicable to the method of Grob in view of Subbian as they share characteristics and capabilities, namely, they are all targeted to performing search in an online environment. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the embeddings as taught by Grob in view of Subbian to include a generative model as taught by Assouline. One of ordinary skill in the art would have been motivated to expand the method of Grob in view of Subbian in order to generate and present virtual objects that interact realistically with a real-world environment and with each other (¶0002). Response to Arguments Applicant’s arguments on pages 8-9 of the remarks filed 02/10/2026, with respect to the previous 35 USC § 101 rejections have been fully considered but are not persuasive. The applicant argues that the claims are patent eligible because the claims do not recite an abstract idea (Remarks pages 8 and 9). The examiner disagrees. The MPEP enumerates grouping of abstract ideas. See MPEP 2106.04. Among the enumerated groupings is the Certain Methods of Organizing Human Activity grouping, which includes activity that falls within the enumerated sub-grouping of commercial or legal interactions, including subject matter relating to agreements in the form of contracts, legal obligations, advertising, marketing or sales activities or behaviors, and business relations. With respect to the instant claims, the Examiner notes that obtaining a first embedding in an embedding space, the first embedding representing a first item in an item store; identifying, based on at least a second embedding representing a second item in the item store, an item from the item store, wherein the second embedding is in the embedding space, and the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space; and outputting an identification of the identified item all represent certain methods of organizing human activity because they recite commercial or legal interactions. As noted previously, ¶0002 and ¶0016 of the specification further describe the invention as pertaining to the purchase of products or items. Furthermore, ¶0021 of the specification cited by the applicant is also describing the invention as pertaining to purchase of products or items related to a marketplace. Accordingly, the recited limitations claim identifying a commercial item from an item store and outputting the identified item for sales purposes. These limitations fall within the” Certain Methods of Organizing Human Activity” grouping of abstract ideas, enumerated in the MPEP, in that they recite commercial or legal interactions (including marketing or sales activities or behaviors; business relations). Specifically, the limitations of claim 1 represent business relations because the limitations recite steps to identify and output an item or product. Furthermore, the claims recite analyzing information pertaining to item stores in order to output identification information. As illustrated in ¶0016 of the specification, item stores pertain to item repositories maintained by marketplaces to store items. The specification further illustrates that the items are items available for purchase through a marketplace. Accordingly, these claims recite Certain Methods of Organizing Human Activity. Accordingly, Examiner maintains that the invention is directed to a judicial exception without significantly more. The claims recite an abstract idea. This judicial exception is not integrated into a practical application. The claim(s) do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Thus the 35 USC §101 rejections are maintained. Applicant’s arguments on pages 9-12 of the remarks filed 02/10/2026, with respect to the previous 35 USC § 102/103 rejections have been fully considered but are not persuasive. Applicant argues on pages 9-10 that reference Grob fails to disclose wherein the identified item is identified based on a position of the second embedding in the embedding space relative to a position of the first embedding in the embedding space. Examiner respectfully disagrees. Grob describes determining a similarity of a first product to a second product out of multiple products. Grob describes that the similarity is specifically based on a geometric distance between a set of coordinates that correspond to the embeddings of the respective products as stored in a data structure, see ¶¶0042-0043 and Fig 8 of Grob. The instant limitation which claims that an identified item is identified based on a position of an embedding in an embedding space relative to a position of another embedding is comparable to the description of the product identification process disclosed by Grob. Using “a geometric distance between coordinates that correspond to the embeddings of the respective products” to identify a particular product is comparable to using a relative position of an embedding to identify an item. As per MPEP 2111, the pending claims must be given their broadest reasonable interpretation consistent with the specification. Applicant’s arguments regarding a “tri-partite” analysis are a narrow interpretation of the claims. While the claim states that “an item from the item store” is identified, it does not exclusively say “identifying an item in an item store based on the position of an embedding representing another item relative to the position of yet a further embedding representing yet another item.” Furthermore, according to the MPEP 2111.01(II), it is improper to import claim limitations from the specification when interpreting the claims under broadest reasonable interpretation. Accordingly, the 102/103 rejections are maintained. Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to AHOORA LADONI whose email is Ahoora.Ladoni@uspto.gov and telephone number is (703) 756-5617. The examiner can normally be reached M-F 0900–1700 ET. Examiner interviews are available via telephone, in-person and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /AHOORA LADONI/Examiner, Art Unit 3688 /MARISSA THEIN/Supervisory Patent Examiner, Art Unit 3689
Read full office action

Prosecution Timeline

Nov 21, 2023
Application Filed
Nov 10, 2025
Non-Final Rejection mailed — §101, §102, §103
Feb 10, 2026
Response Filed
Apr 07, 2026
Final Rejection mailed — §101, §102, §103 (current)

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
7%
Grant Probability
18%
With Interview (+11.7%)
2y 9m (~2m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 15 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month