Azure AI search for Markdown document

 

To setup Azure AI Search for markdown or other document type, we need to be setting up the following resources:- 

- Index 

- Data source

- Indexer

Then we are going to bring it together :-


Creating our index

This is what our index json setup looks like :-

{
  "@odata.etag": "\"0x8DF054C596E2837\"",
  "name": "markdown-index",
  "purviewEnabled": false,
  "fields": [
    {
      "name": "id",
      "type": "Edm.String",
      "searchable": true,
      "filterable": true,
      "retrievable": true,
      "stored": true,
      "sortable": true,
      "facetable": true,
      "key": true,
      "synonymMaps": []
    },
    {
      "name": "content",
      "type": "Edm.String",
      "searchable": true,
      "filterable": true,
      "retrievable": true,
      "stored": true,
      "sortable": true,
      "facetable": true,
      "key": false,
      "analyzer": "standard.lucene",
      "synonymMaps": []
    },
    {
      "name": "title",
      "type": "Edm.String",
      "searchable": true,
      "filterable": true,
      "retrievable": false,
      "stored": true,
      "sortable": true,
      "facetable": true,
      "key": false,
      "analyzer": "standard.lucene",
      "synonymMaps": []
    },
    {
      "name": "h2_subheader",
      "type": "Edm.String",
      "searchable": true,
      "filterable": true,
      "retrievable": false,
      "stored": true,
      "sortable": true,
      "facetable": true,
      "key": false,
      "analyzer": "standard.lucene",
      "synonymMaps": []
    },
    {
      "name": "h3_subheader",
      "type": "Edm.String",
      "searchable": true,
      "filterable": true,
      "retrievable": false,
      "stored": true,
      "sortable": true,
      "facetable": true,
      "key": false,
      "analyzer": "standard.lucene",
      "synonymMaps": []
    },
    {
      "name": "ordinal_position",
      "type": "Edm.String",
      "searchable": true,
      "filterable": true,
      "retrievable": false,
      "stored": true,
      "sortable": true,
      "facetable": true,
      "key": false,
      "analyzer": "standard.lucene",
      "synonymMaps": []
    }
  ],
  "scoringProfiles": [],
  "suggesters": [],
  "analyzers": [],
  "normalizers": [],
  "tokenizers": [],
  "tokenFilters": [],
  "charFilters": [],
  "similarity": {
    "@odata.type": "#Microsoft.Azure.Search.BM25Similarity"
  }
}

Setting up data source. 

Our markdown data resides in a storage account data lake and the setup look like this:-




And then we will head over to indexer to complete our setup, which looks like this:-



In json, it is going to look like this :-


{
  "@odata.context": "https://mysearchservicedev1.search.windows.net/$metadata#indexers/$entity",
  "@odata.etag": "\"0x8DF054CDC200C67\"",
  "name": "indexer-for-markdown",
  "description": null,
  "dataSourceName": "mymarkdown-datasource",
  "skillsetName": null,
  "targetIndexName": "markdown-index",
  "disabled": null,
  "schedule": null,
  "parameters": null,
  "fieldMappings": [],
  "outputFieldMappings": [],
  "cache": null,
  "encryptionKey": null
}




Comments

Popular posts from this blog

Windows SSH: Permissions for 'private-key' are too open

NodeJS: Error: spawn EINVAL in window for node version 20.20 and 18.20