Cloud vision Product search api labels - search

Can we add labels of our own choice in cloud vision product search API? Source: Formatting a bulk import CSV.
Let's say I want to add labels like category=hello, style=world.
Or is there a fixed domain of category and style values from which we need to choose?

Yes, you can add the labels as you want to describe the product.
You can check in this documentation the values allowed for each field.
productLabels - object (KeyValue): Multiple values can be assigned to the same key. One product may have up to 500 productLabels.
The only filed that you have to choose the proper values is product-category:
product-category - Allowed values are homegoods-v2, apparel-v2, toys-v2, packagedgoods-v1, and general-v1

Related

Add a custom field to pricelist and multi-currency calculations in Odoo 13

In Odoo 13 I have added a custom field to the product.template model that is displayed on order lines.
Some products will use the sliding price scale dependent on quantity.
I have created a pricelist in a different currency that refers to my base pricelist.
I am trying to include my custom field in the pricelist methods that retrieve the sliding scale price and/or the converted currency value.
I have looked at overriding various methods but have not been successful because it seems many of the base methods have the product price field hardcoded as the value to use.
AM I missing something simple? Is there an easier way of including my custom field, or would I have to override many methods to include my custom field?

Multiple analyzers for a single field in a search index of Azure Cognitive Search

We need two different types of search (based on user input), partial and exact for few fields that we have and for the same requirement, we require two different analyzers for each field to produce the required output.
Now, the problem is, I'm not able to configure 2 analyzers for a single field. The only option for me is to create two different indexes altogether and then query respective index based on the user input, but clearly, this is not the right solution, it is not scalable, mostly redundant data and takes almost double the space.
I'm trying to create a duplicate field in the same index with different analyzers and use the output of them based on the user input, but I'm not sure how I can configure that in the index. The name of the field is what is used to search for, during query time. Is there a possibility for me to have 2 different fields with different names, which actually point to one field but have different analyzers?
You can have 2 different fields with different names, which actually point to one field with two different analyzers. This can be done using field mappings in indexer definition.
I have created index as shown below,
As highlighted in above screen shot, I have taken two new fields with name cont01 and cont02.
These two new fields will point to field merged_content with two different analyzers.
In indexer definition I have configured field mappings as shown below,
Ran indexer and results are as shown below,
Reference link

Searching strings between unrelated tables

I'm trying to categorize my service requests based on key words which can be found either in the request description or request solution. My list of keywords is independent from my database. So I can't come up with the code necessary to lookup various text strings from one table in the columns of another (non-related) table.
My first table (called Comp_build) has 4 columns (each for Installs, Instructions, Security, and Troubleshoot) and below is a sample of it with keywords
Install Troubleshoot Security Instructions
request error Security driven create automated
onboarding fail package
deploy
My second table (called Comp_determination) has 3 columns: Category (calculated column), SR Description, SR Solution
I've played around with:
SWITCH
TRUE
IF
FIND
SEARCH
SUMX
CALCULATE
This is the closest I've been able to find (https://powerpivotpro.com/2014/01/containsx-finding-if-a-value-in-table-1-has-a-matching-value-in-table-2/) but the results aren't consistent. it seems to work correctly if I'm looking up my install keywords but if I try with security keywords, my entire column Category is populated with "Security"
category = IF(SUMX(comp_build,FIND(comp_build[Install],comp_determination[SR Description],,0))>0,"Installations","")
I want to identify all cases bases on keywords and assign them a request category. Since we receive essentially 4 major categories of requests, I have keywords for each category - located in a separate table and each in their column. Additionally, I can search for the key words in two places - either in the request description or the request solution.

Search for Dataset in Azure Data Catalog using Column Tags

we are evaluating if Azure Data Catalog will meet our needs and one of our questions is if we can search for Datasets based on column tags. For example, if some of my datasets have the column tag "xyz" for one of their columns, can I search for all datasets with a column tag "xyz" and get all the datasets that have a column (any column) with the tag "xyz"?
Also, can this be done programmatically through the REST APIs? Thanks!
Last I checked you can tag individual columns and you can search on those tags. And REST based search API supports an explicit tag search syntax.
The search at AzureDataCatalog.com will include column tags, column names, and object tags etc. If you implement the high tier options, you can roll up tags into business glosseries. For example the business might use "external supplier" but common alternative's used around the business might be 'panel vender' or 'agency' but really they all mean the same thing.
The full search syntax reference can be found here : https://learn.microsoft.com/en-us/rest/api/datacatalog/data-catalog-search-syntax-reference

Algolia search keywords

I want to build a smart search with Algolia. The point is to use keywords to rank the results. Lets say user types "smarphone blue cheap good camera". This should find all blue smarthones and order them by price and camera characteristics.
The idea is to somehow map those keywords to a ranking formula.
Doea any one know if it is possible with Algolia and if so what is the best way to achieve the desired result?
To automatically detect and filter by facet values (like blue, good camera), you could use Query Rules, in particular Dynamic Filtering.
However, that shouldn't be necessary. If you include the color (containing for instance the blue value) and characteristics (containing for instance the good camera value) attributes in your searchableAttributes list, then the search request will return relevant results based on purely textual relevance matched in those attributes.
On the other hand, sorting strategies impact the Algolia indices at build time, therefore in order to change the sorting strategy based on the query (e.g. sort results by ascending price if the search query contains cheap), you will need to setup a new replica index for which results are sorted by price. On the frontend, when detecting a relevant keyword (e.g. cheap), you can decide to switch the search queries to the primary index or to the sorted replica.

Resources