You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/search/cognitive-search-predefined-skills.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,19 +8,19 @@ ms.service: cognitive-search
8
8
ms.custom:
9
9
- ignite-2023
10
10
- build-2024
11
-
ms.topic: conceptual
12
-
ms.date: 10/28/2023
11
+
ms.topic: concept-article
12
+
ms.date: 09/19/2024
13
13
---
14
14
15
15
# Skills for extra processing during indexing (Azure AI Search)
16
16
17
-
This article describes the skills provided with Azure AI Search that you can include in a [skillset](cognitive-search-working-with-skillsets.md) to access external processing.
17
+
This article describes the skills in Azure AI Search that you can include in a [skillset](cognitive-search-working-with-skillsets.md) to access external processing.
18
18
19
19
A *skill* provides an atomic operation that transforms content in some way. Often, it's an operation that recognizes or extracts text, but it can also be a utility skill that reshapes the enrichments that are already created. Typically, the output is text-based so that it can be used in [full text search](search-lucene-query-architecture.md) or vectors used in [vector search](vector-search-overview.md).
20
20
21
21
Skills are organized into categories:
22
22
23
-
* A *built-in skill* wraps API calls to an Azure resource, where the inputs, outputs, and processing steps are well understood. For skills that call an Azure AI resource, the connection is made over the internal network. For skills that call Azure OpenAI, you provide the connection information that the search service uses to connect to the resource. A small quantity of processing is non-billable, but at larger volumes, processing is billable. Built-in skills are based on pretrained models from Microsoft, which means you can't train the model using your own training data.
23
+
* A *built-in skill* wraps API calls to an Azure AI resource, where the inputs, outputs, and processing steps are well understood. For skills that call an Azure AI resource, the connection is made over the internal network. For skills that call Azure OpenAI, you provide the connection information that the search service uses to connect to the resource. A small quantity of processing is non-billable, but at larger volumes, processing is billable. Built-in skills are based on pretrained models from Microsoft, which means you can't train the model using your own training data.
24
24
25
25
* A *custom skill* provides custom code that executes externally to the search service. It's accessed through a URI. Custom code is often made available through an Azure function app. To attach an open-source or third-party vectorization model, use a custom skill.
Copy file name to clipboardExpand all lines: articles/search/query-lucene-syntax.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,13 +9,13 @@ ms.author: beloh
9
9
ms.service: cognitive-search
10
10
ms.custom:
11
11
- ignite-2023
12
-
ms.topic: conceptual
13
-
ms.date: 02/22/2024
12
+
ms.topic: concept-article
13
+
ms.date: 09/19/2024
14
14
---
15
15
16
16
# Lucene query syntax in Azure AI Search
17
17
18
-
When creating queries in Azure AI Search, you can opt for the full [Lucene Query Parser](https://lucene.apache.org/core/6_6_1/queryparser/org/apache/lucene/queryparser/classic/package-summary.html) syntax for specialized query forms: wildcard, fuzzy search, proximity search, regular expressions. Much of the Lucene Query Parser syntax is [implemented intact in Azure AI Search](search-lucene-query-architecture.md), except for *range searches, which are constructed through **`$filter`** expressions.
18
+
When creating queries in Azure AI Search, you can opt for the full [Lucene Query Parser](https://lucene.apache.org/core/6_6_1/queryparser/org/apache/lucene/queryparser/classic/package-summary.html) syntax for specialized query forms: wildcard, fuzzy search, proximity search, regular expressions. Much of the Lucene Query Parser syntax is [implemented intact in Azure AI Search](search-lucene-query-architecture.md), except for *range searches*, which are constructed through **`$filter`** expressions.
19
19
20
20
To use full Lucene syntax, set the queryType to `full` and pass in a query expression patterned for wildcard, fuzzy search, or one of the other query forms supported by the full syntax. In REST, query expressions are provided in the **`search`** parameter of a [Search Documents (REST API)](/rest/api/searchservice/documents/search-post) request.
Copy file name to clipboardExpand all lines: articles/search/samples-python.md
+13-29Lines changed: 13 additions & 29 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ ms.custom:
12
12
- devx-track-python
13
13
- ignite-2023
14
14
ms.topic: conceptual
15
-
ms.date: 08/16/2024
15
+
ms.date: 09/19/2024
16
16
---
17
17
18
18
# Python samples for Azure AI Search
@@ -28,46 +28,30 @@ Learn about the Python code samples that demonstrate the functionality and workf
28
28
29
29
## SDK samples
30
30
31
-
Code samples from the Azure SDK development team demonstrate API usage. You can find these samples in [**azure-sdk-for-python/tree/main/sdk/search/azure-search-documents/samples**](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/search/azure-search-documents/samples) on GitHub.
32
-
33
-
| Samples | Description |
34
-
|---------|-------------|
35
-
|[Authenticate](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_authentication.py)| Demonstrates how to configure a client and authenticate to the service. |
36
-
|[Index Create-Read-Update-Delete operations](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_index_crud_operations.py)| Demonstrates how to create, update, get, list, and delete [search indexes](search-what-is-an-index.md). |
37
-
|[Indexer Create-Read-Update-Delete operations](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_indexers_operations.py)| Demonstrates how to create, update, get, list, reset, and delete [indexers](search-indexer-overview.md). |
38
-
|[Search indexer data sources](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_indexer_datasource_skillset.py)| Demonstrates how to create, update, get, list, and delete indexer data sources, required for indexer-based indexing of [supported Azure data sources](search-indexer-overview.md#supported-data-sources). |
39
-
|[Synonyms](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_synonym_map_operations.py)| Demonstrates how to create, update, get, list, and delete [synonym maps](search-synonyms.md). |
40
-
|[Load documents](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_crud_operations.py)| Demonstrates how to upload or merge documents into an index in a [data import](search-what-is-data-import.md) operation. |
41
-
|[Simple query](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_simple_query.py)| Demonstrates how to set up a [basic query](search-query-overview.md). |
42
-
|[Filter query](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_filter_query.py)| Demonstrates setting up a [filter expression](search-filters.md). |
43
-
|[Facet query](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_facet_query.py)| Demonstrates working with [facets](search-faceted-navigation.md). |
44
-
|[Semantic ranking sample](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_semantic_search.py)| Shows you how to configure semantic ranking in an index and invoke semantic queries. |
45
-
|[Vector search](https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/search/azure-search-documents/samples/sample_vector_search.py)| Demonstrates how to get embeddings from a description field and then send vector queries against the data. |
31
+
Code samples from the Azure SDK development team demonstrate API usage.
32
+
33
+
You can find these samples in [**azure-sdk-for-python/tree/main/sdk/search/azure-search-documents/samples**](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/search/azure-search-documents/samples) on GitHub.
46
34
47
35
## Doc samples
48
36
49
37
Code samples from the Azure AI Search team demonstrate features and workflows. Many of these samples are referenced in tutorials, quickstarts, and how-to articles. You can find these samples in [**Azure-Samples/azure-search-python-samples**](https://github.com/Azure-Samples/azure-search-python-samples) on GitHub.
50
38
51
39
| Samples | Article |
52
40
|---------|---------|
53
-
|[quickstart](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/Quickstart)| Source code for the Python portion of [Quickstart: Full text search using the Azure SDKs](search-get-started-text.md). This article covers the basic workflow for creating, loading, and querying a search index using sample data. |
54
-
|[quickstart-semantic-search](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/Quickstart-Semantic-Search)| Source code for the Python portion of [Quickstart: Semantic ranking using the Azure SDKs](search-get-started-semantic.md). It shows the index schema and query request for invoking semantic ranking. |
41
+
|[Tutorial-RAG](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/Tutorial-RAG)| Source code for the Python portion of [How to build a RAG solution using Azure AI Search](tutorial-rag-build-solution.md).|
42
+
|[Quickstart](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/Quickstart)| Source code for the Python portion of [Quickstart: Full text search using the Azure SDKs](search-get-started-text.md). This article covers the basic workflow for creating, loading, and querying a search index using sample data. |
43
+
|[Quickstart-RAG](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/Quickstart-RAG)| Source code for the Python portion of [Quickstart: Generative search (RAG) with grounding data from Azure AI Search](search-get-started-rag.md). |
44
+
|[Quickstart-Semantic-Search](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/Quickstart-Semantic-Search)| Source code for the Python portion of [Quickstart: Semantic ranking using the Azure SDKs](search-get-started-semantic.md). It shows the index schema and query request for invoking semantic ranking. |
55
45
|[bulk-insert](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/bulk-insert)| Source code for the Python example of how to [use the push APIs](search-how-to-load-search-index.md) to upload and index documents. |
56
-
|[azure-functions](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/azure-function-search)| Source code for the Python example of an Azure function that sends queries to a search service. You can substitute this Python version of the `api` code used in the [Add search to web sites](tutorial-csharp-overview.md) C# sample. |
46
+
|[azure-function-search](https://github.com/Azure-Samples/azure-search-python-samples/tree/main/azure-function-search)| Source code for the Python example of an Azure function that sends queries to a search service. You can substitute this Python version of the `api` code used in the [Add search to web sites](tutorial-csharp-overview.md) C# sample. |
57
47
58
48
## Demos
59
49
60
-
A demo repo provides proof-of-concept source code for examples or scenarios shown in demonstrations. Demo solutions aren't designed for adaptation by customers.
50
+
A demo repo provides proof-of-concept source code for examples or scenarios shown in demonstrations.
61
51
62
-
| Repository | Description |
63
-
|------------|-------------|
64
-
|[azure-search-vector-python-sample.ipynb](https://github.com/Azure/azure-search-vector-samples/blob/main/demo-python/code/basic-vector-workflow/azure-search-vector-python-sample.ipynb)| Uses the **azure.search.documents** library in the Azure SDK for Python to create, load, and query a vector index. |
65
-
|[azure-search-integrated-vectorization-sample.ipynb](https://github.com/Azure/azure-search-vector-samples/blob/main/demo-python/code/integrated-vectorization/azure-search-integrated-vectorization-sample.ipynb)| Extends the vector indexing workflow to include integrated data chunking and embedding. |
|[azure-search-vector-python-huggingface-model-sample.ipynb](https://github.com/Azure/azure-search-vector-samples/blob/main/demo-python/code/community-integration/hugging-face/azure-search-vector-python-huggingface-model-sample.ipynb)| Hugging Face integration. |
|[azure-search-openai-demo](https://github.com/Azure-Samples/azure-search-openai-demo/blob/main/README.md)| ChatGPT + Enterprise data with Azure OpenAI Python code showing how to use Azure AI Search with the large language models in Azure OpenAI. For background, see this Tech Community blog post: [Revolutionize your Enterprise Data with ChatGPT](https://techcommunity.microsoft.com/t5/ai-applied-ai-blog/revolutionize-your-enterprise-data-with-chatgpt-next-gen-apps-w/ba-p/3762087). |
52
+
[**azure-search-vector-samples**](https://github.com/Azure/azure-search-vector-samples/blob/main/README.md) on GitHub provides a comprehensive collection of samples organized by scenario or technology.
53
+
54
+
We also recommend [**azure-search-openai-demo**](https://github.com/Azure-Samples/azure-search-openai-demo/blob/main/README.md). This is a ChatGPT-like experience over enterprise data with Azure OpenAI Python code showing how to use Azure AI Search with the large language models in Azure OpenAI. For background, see this Tech Community blog post: [Revolutionize your Enterprise Data with ChatGPT](https://techcommunity.microsoft.com/t5/ai-applied-ai-blog/revolutionize-your-enterprise-data-with-chatgpt-next-gen-apps-w/ba-p/3762087). |
Copy file name to clipboardExpand all lines: articles/search/search-filters.md
+11-7Lines changed: 11 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,18 +7,20 @@ manager: nitinme
7
7
author: HeidiSteen
8
8
ms.author: heidist
9
9
ms.service: cognitive-search
10
-
ms.topic: conceptual
11
-
ms.date: 02/22/2024
10
+
ms.topic: concept-article
11
+
ms.date: 09/19/2024
12
12
ms.custom:
13
13
- devx-track-csharp
14
14
- ignite-2023
15
15
---
16
16
17
-
# Filters in text queries
17
+
# Filters in keyword search
18
18
19
-
A *filter* provides value-based criteria for including or excluding content before query execution. For example, including or excluding documents based on dates, locations, or language. Filters are specified on individual fields. A field definition must be attributed as "filterable" if you want to use it in filter expressions.
19
+
A *filter* provides value-based criteria for including or excluding content before query execution for keyword search, or before or after query execution for vector search. Filters are applied to nonvector fields, but can be used in vector search if documents include nonvector fields. For example, for indexes organized around chunked content, you might have parent-level fields or metadata fields that can be filtered.
20
20
21
-
A filter is specified using [OData filter expression syntax](search-query-odata-filter.md). In contrast with full text search, a filter succeeds only if the match is exact.
21
+
This article explains filtering for keyword search. For more information about vectors, see [Add a filter in a vector query](vector-search-filters.md).
22
+
23
+
A filter is specified using [OData filter expression syntax](search-query-odata-filter.md). In contrast with keyword and vector search, a filter succeeds only if the match is exact.
22
24
23
25
## When to use a filter
24
26
@@ -42,7 +44,9 @@ At query time, a filter parser accepts criteria as input, converts the expressio
42
44
43
45
Filtering occurs in tandem with search, qualifying which documents to include in downstream processing for document retrieval and relevance scoring. When paired with a search string, the filter effectively reduces the recall set of the subsequent search operation. When used alone (for example, when the query string is empty where `search=*`), the filter criteria is the sole input.
44
46
45
-
## Defining filters
47
+
## How filters are defined
48
+
49
+
Filters apply to alphanumeric content on fields that are attributed as `filterable`.
46
50
47
51
Filters are OData expressions, articulated in the [filter syntax](search-query-odata-filter.md) supported by Azure AI Search.
48
52
@@ -112,7 +116,7 @@ The following examples illustrate several usage patterns for filter scenarios. F
112
116
113
117
In the REST API, filterable is *on* by default for simple fields. Filterable fields increase index size; be sure to set `"filterable": false` for fields that you don't plan to actually use in a filter. For more information about settings for field definitions, see [Create Index](/rest/api/searchservice/indexes/create).
114
118
115
-
In the .NET SDK, the filterable is *off* by default. You can make a field filterable by setting the [IsFilterable property](/dotnet/api/azure.search.documents.indexes.models.searchfield.isfilterable) of the corresponding [SearchField](/dotnet/api/azure.search.documents.indexes.models.searchfield) object to `true`. In the next example, the attribute is set on the `Rating` property of a model class that maps to the index definition.
119
+
In the Azure SDKs, filterable is *off* by default. You can make a field filterable by setting the [IsFilterable property](/dotnet/api/azure.search.documents.indexes.models.searchfield.isfilterable) of the corresponding [SearchField](/dotnet/api/azure.search.documents.indexes.models.searchfield) object to `true`. In the next example, the attribute is set on the `Rating` property of a model class that maps to the index definition.
0 commit comments