Skip to content

Commit 5e48415

Browse files
authored
update arguments (Azure#11748)
1 parent d2c6d27 commit 5e48415

File tree

12 files changed

+42
-80
lines changed

12 files changed

+42
-80
lines changed

sdk/search/azure-search-documents/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
Suggester -> SearchSuggester
2424
PathHierarchyTokenizerV2 -> PathHierarchyTokenizer
2525
- Renamed DataSource methods to DataSourceConnection #11693
26+
- Autocomplete & suggest methods now takes arguments search_text & suggester_name rather than query objects #11747
2627

2728

2829
## 1.0.0b3 (2020-05-04)

sdk/search/azure-search-documents/azure/search/documents/_internal/_search_client.py

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -182,12 +182,14 @@ def search(self, query, **kwargs):
182182
)
183183

184184
@distributed_trace
185-
def suggest(self, query, **kwargs):
186-
# type: (SuggestQuery, **Any) -> List[dict]
185+
def suggest(self, search_text, suggester_name, **kwargs):
186+
# type: (str, str, **Any) -> List[dict]
187187
"""Get search suggestion results from the Azure search index.
188188
189-
:param query: An query for search suggestions
190-
:type documents: SuggestQuery
189+
:param str search_text: Required. The search text to use to suggest documents. Must be at least 1
190+
character, and no more than 100 characters.
191+
:param str suggester_name: Required. The name of the suggester as specified in the suggesters
192+
collection that's part of the index definition.
191193
:rtype: List[dict]
192194
193195
.. admonition:: Example:
@@ -199,10 +201,7 @@ def suggest(self, query, **kwargs):
199201
:dedent: 4
200202
:caption: Get search suggestions.
201203
"""
202-
if not isinstance(query, SuggestQuery):
203-
raise TypeError(
204-
"Expected a SuggestQuery for 'query', but got {}".format(repr(query))
205-
)
204+
query = SuggestQuery(search_text=search_text, suggester_name=suggester_name, **kwargs)
206205

207206
kwargs["headers"] = self._merge_client_headers(kwargs.get("headers"))
208207
response = self._client.documents.suggest_post(
@@ -212,12 +211,13 @@ def suggest(self, query, **kwargs):
212211
return results
213212

214213
@distributed_trace
215-
def autocomplete(self, query, **kwargs):
216-
# type: (AutocompleteQuery, **Any) -> List[dict]
214+
def autocomplete(self, search_text, suggester_name, **kwargs):
215+
# type: (str, str, **Any) -> List[dict]
217216
"""Get search auto-completion results from the Azure search index.
218217
219-
:param query: An query for auto-completions
220-
:type documents: AutocompleteQuery
218+
:param str search_text: The search text on which to base autocomplete results.
219+
:param str suggester_name: The name of the suggester as specified in the suggesters
220+
collection that's part of the index definition.
221221
:rtype: List[dict]
222222
223223
.. admonition:: Example:
@@ -229,12 +229,7 @@ def autocomplete(self, query, **kwargs):
229229
:dedent: 4
230230
:caption: Get a auto-completions.
231231
"""
232-
if not isinstance(query, AutocompleteQuery):
233-
raise TypeError(
234-
"Expected a AutocompleteQuery for 'query', but got {}".format(
235-
repr(query)
236-
)
237-
)
232+
query = AutocompleteQuery(search_text=search_text, suggester_name=suggester_name, **kwargs)
238233

239234
kwargs["headers"] = self._merge_client_headers(kwargs.get("headers"))
240235
response = self._client.documents.autocomplete_post(

sdk/search/azure-search-documents/azure/search/documents/_internal/aio/_search_client_async.py

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -153,12 +153,14 @@ async def search(self, query, **kwargs):
153153
)
154154

155155
@distributed_trace_async
156-
async def suggest(self, query, **kwargs):
156+
async def suggest(self, search_text, suggester_name, **kwargs):
157157
# type: (Union[str, SuggestQuery], **Any) -> List[dict]
158158
"""Get search suggestion results from the Azure search index.
159159
160-
:param query: An query for search suggestions
161-
:type documents: SuggestQuery
160+
:param str search_text: Required. The search text to use to suggest documents. Must be at least 1
161+
character, and no more than 100 characters.
162+
:param str suggester_name: Required. The name of the suggester as specified in the suggesters
163+
collection that's part of the index definition.
162164
:rtype: List[dict]
163165
164166
.. admonition:: Example:
@@ -170,10 +172,7 @@ async def suggest(self, query, **kwargs):
170172
:dedent: 4
171173
:caption: Get search suggestions.
172174
"""
173-
if not isinstance(query, SuggestQuery):
174-
raise TypeError(
175-
"Expected a SuggestQuery for 'query', but got {}".format(repr(query))
176-
)
175+
query = SuggestQuery(search_text=search_text, suggester_name=suggester_name, **kwargs)
177176

178177
kwargs["headers"] = self._merge_client_headers(kwargs.get("headers"))
179178
response = await self._client.documents.suggest_post(
@@ -183,12 +182,13 @@ async def suggest(self, query, **kwargs):
183182
return results
184183

185184
@distributed_trace_async
186-
async def autocomplete(self, query, **kwargs):
187-
# type: (Union[str, AutocompleteQuery], **Any) -> List[dict]
185+
async def autocomplete(self, search_text, suggester_name, **kwargs):
186+
# type: (str, str, **Any) -> List[dict]
188187
"""Get search auto-completion results from the Azure search index.
189188
190-
:param query: An query for auto-completions
191-
:type documents: AutocompleteQuery
189+
:param str search_text: The search text on which to base autocomplete results.
190+
:param str suggester_name: The name of the suggester as specified in the suggesters
191+
collection that's part of the index definition.
192192
:rtype: List[dict]
193193
194194
.. admonition:: Example:
@@ -200,12 +200,7 @@ async def autocomplete(self, query, **kwargs):
200200
:dedent: 4
201201
:caption: Get a auto-completions.
202202
"""
203-
if not isinstance(query, AutocompleteQuery):
204-
raise TypeError(
205-
"Expected a AutocompleteQuery for 'query', but got {}".format(
206-
repr(query)
207-
)
208-
)
203+
query = AutocompleteQuery(search_text=search_text, suggester_name=suggester_name, **kwargs)
209204

210205
kwargs["headers"] = self._merge_client_headers(kwargs.get("headers"))
211206
response = await self._client.documents.autocomplete_post(

sdk/search/azure-search-documents/azure/search/documents/models/__init__.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,20 +25,16 @@
2525
# --------------------------------------------------------------------------
2626

2727
from .._internal import (
28-
AutocompleteQuery,
2928
IndexAction,
3029
IndexingResult,
3130
SearchQuery,
32-
SuggestQuery,
3331
odata,
3432
)
3533

3634

3735
__all__ = (
38-
"AutocompleteQuery",
3936
"IndexAction",
4037
"IndexingResult",
4138
"SearchQuery",
42-
"SuggestQuery",
4339
"odata",
4440
)

sdk/search/azure-search-documents/samples/async_samples/sample_autocomplete_async.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,11 @@ async def autocomplete_query():
3232
# [START autocomplete_query_async]
3333
from azure.core.credentials import AzureKeyCredential
3434
from azure.search.documents.aio import SearchClient
35-
from azure.search.documents.models import AutocompleteQuery
3635

3736
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
3837

39-
query = AutocompleteQuery(search_text="bo", suggester_name="sg")
40-
4138
async with search_client:
42-
results = await search_client.autocomplete(query=query)
39+
results = await search_client.autocomplete(search_text="bo", suggester_name="sg")
4340

4441
print("Autocomplete suggestions for 'bo'")
4542
for result in results:

sdk/search/azure-search-documents/samples/async_samples/sample_suggestions_async.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,11 @@ async def suggest_query():
3232
# [START suggest_query_async]
3333
from azure.core.credentials import AzureKeyCredential
3434
from azure.search.documents.aio import SearchClient
35-
from azure.search.documents.models import SuggestQuery
3635

3736
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
3837

39-
query = SuggestQuery(search_text="coffee", suggester_name="sg")
40-
4138
async with search_client:
42-
results = await search_client.suggest(query=query)
39+
results = await search_client.suggest(search_text="coffee", suggester_name="sg")
4340

4441
print("Search suggestions for 'coffee'")
4542
for result in results:

sdk/search/azure-search-documents/samples/sample_autocomplete.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,10 @@ def autocomplete_query():
3030
# [START autocomplete_query]
3131
from azure.core.credentials import AzureKeyCredential
3232
from azure.search.documents import SearchClient
33-
from azure.search.documents.models import AutocompleteQuery
3433

3534
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
3635

37-
query = AutocompleteQuery(search_text="bo", suggester_name="sg")
38-
39-
results = search_client.autocomplete(query=query)
36+
results = search_client.autocomplete(search_text="bo", suggester_name="sg")
4037

4138
print("Autocomplete suggestions for 'bo'")
4239
for result in results:

sdk/search/azure-search-documents/samples/sample_suggestions.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,10 @@ def suggest_query():
3030
# [START suggest_query]
3131
from azure.core.credentials import AzureKeyCredential
3232
from azure.search.documents import SearchClient
33-
from azure.search.documents.models import SuggestQuery
3433

3534
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
3635

37-
query = SuggestQuery(search_text="coffee", suggester_name="sg")
38-
39-
results = search_client.suggest(query=query)
36+
results = search_client.suggest(search_text="coffee", suggester_name="sg")
4037

4138
print("Search suggestions for 'coffee'")
4239
for result in results:

sdk/search/azure-search-documents/tests/async_tests/test_index_live_async.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,7 @@
2424

2525
from azure.core.exceptions import HttpResponseError
2626
from azure.core.credentials import AzureKeyCredential
27-
from azure.search.documents.models import (
28-
AutocompleteQuery,
29-
SearchQuery,
30-
SuggestQuery,
31-
)
27+
from azure.search.documents.models import SearchQuery
3228
from azure.search.documents.aio import SearchClient
3329

3430
TIME_TO_SLEEP = 3
@@ -205,8 +201,7 @@ async def test_autocomplete(self, api_key, endpoint, index_name, **kwargs):
205201
endpoint, index_name, AzureKeyCredential(api_key)
206202
)
207203
async with client:
208-
query = AutocompleteQuery(search_text="mot", suggester_name="sg")
209-
results = await client.autocomplete(query=query)
204+
results = await client.autocomplete(search_text="mot", suggester_name="sg")
210205
assert results == [{"text": "motel", "query_plus_text": "motel"}]
211206

212207
@ResourceGroupPreparer(random_name_enabled=True)
@@ -216,8 +211,7 @@ async def test_suggest(self, api_key, endpoint, index_name, **kwargs):
216211
endpoint, index_name, AzureKeyCredential(api_key)
217212
)
218213
async with client:
219-
query = SuggestQuery(search_text="mot", suggester_name="sg")
220-
results = await client.suggest(query=query)
214+
results = await client.suggest(search_text="mot", suggester_name="sg")
221215
assert results == [
222216
{"hotelId": "2", "text": "Cheapest hotel in town. Infact, a motel."},
223217
{"hotelId": "9", "text": "Secret Point Motel"},

sdk/search/azure-search-documents/tests/test_index_live.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,7 @@
2121
from azure.core.exceptions import HttpResponseError
2222
from azure.core.credentials import AzureKeyCredential
2323
from azure.search.documents import SearchClient
24-
from azure.search.documents.models import (
25-
AutocompleteQuery,
26-
SearchQuery,
27-
SuggestQuery,
28-
)
24+
from azure.search.documents.models import SearchQuery
2925

3026
TIME_TO_SLEEP = 3
3127

@@ -167,8 +163,7 @@ def test_autocomplete(self, api_key, endpoint, index_name, **kwargs):
167163
client = SearchClient(
168164
endpoint, index_name, AzureKeyCredential(api_key)
169165
)
170-
query = AutocompleteQuery(search_text="mot", suggester_name="sg")
171-
results = client.autocomplete(query=query)
166+
results = client.autocomplete(search_text="mot", suggester_name="sg")
172167
assert results == [{"text": "motel", "query_plus_text": "motel"}]
173168

174169
@ResourceGroupPreparer(random_name_enabled=True)
@@ -177,8 +172,7 @@ def test_suggest(self, api_key, endpoint, index_name, **kwargs):
177172
client = SearchClient(
178173
endpoint, index_name, AzureKeyCredential(api_key)
179174
)
180-
query = SuggestQuery(search_text="mot", suggester_name="sg")
181-
results = client.suggest(query=query)
175+
results = client.suggest(search_text="mot", suggester_name="sg")
182176
assert results == [
183177
{"hotelId": "2", "text": "Cheapest hotel in town. Infact, a motel."},
184178
{"hotelId": "9", "text": "Secret Point Motel"},

0 commit comments

Comments
 (0)