From 4c2a6fd82d66fbbe2ddc24e222a2415ecd8def20 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Tue, 18 Apr 2023 11:26:56 -0400 Subject: [PATCH 1/4] test: use mock from unittest (#513) * test: use mock from unittest * Use `from unittest import mock` --- tests/unit/test_helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/test_helpers.py b/tests/unit/test_helpers.py index d7fdfdd2..15357ef4 100644 --- a/tests/unit/test_helpers.py +++ b/tests/unit/test_helpers.py @@ -15,7 +15,7 @@ from __future__ import absolute_import from types import GeneratorType -import mock +from unittest import mock import google.auth.credentials from google.cloud.speech_v1 import SpeechClient From 5bbf3a4f4c758c76502ad3f0a8ce03604ef86c14 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 10 May 2023 11:53:52 -0400 Subject: [PATCH 2/4] feat(v2): add processing strategy to batch recognition requests (#514) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: add processing strategy to batch recognition requests PiperOrigin-RevId: 530882015 Source-Link: https://github.com/googleapis/googleapis/commit/189bdfa76e674f4067e3c183c067aa353fb3aca3 Source-Link: https://github.com/googleapis/googleapis-gen/commit/64c7a843afdda8c651ffca6e1a374ac7801d3728 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNjRjN2E4NDNhZmRkYThjNjUxZmZjYTZlMWEzNzRhYzc4MDFkMzcyOCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot --- google/cloud/speech_v2/types/cloud_speech.py | 98 ++++++++----------- ...ippet_metadata_google.cloud.speech.v1.json | 2 +- ...etadata_google.cloud.speech.v1p1beta1.json | 2 +- ...ippet_metadata_google.cloud.speech.v2.json | 2 +- scripts/fixup_speech_v2_keywords.py | 2 +- 5 files changed, 45 insertions(+), 61 deletions(-) diff --git a/google/cloud/speech_v2/types/cloud_speech.py b/google/cloud/speech_v2/types/cloud_speech.py index b9165bbc..007f4bd7 100644 --- a/google/cloud/speech_v2/types/cloud_speech.py +++ b/google/cloud/speech_v2/types/cloud_speech.py @@ -377,9 +377,9 @@ class ListRecognizersRequest(proto.Message): page_size (int): The maximum number of Recognizers to return. The service may return fewer than this value. If - unspecified, at most 20 Recognizers will be - returned. The maximum value is 20; values above - 20 will be coerced to 20. + unspecified, at most 5 Recognizers will be + returned. The maximum value is 100; values above + 100 will be coerced to 100. page_token (str): A page token, received from a previous [ListRecognizers][google.cloud.speech.v2.Speech.ListRecognizers] @@ -593,59 +593,20 @@ class Recognizer(proto.Message): Select the model best suited to your domain to get best results. - Supported models: - - - ``latest_long`` - - Best for long form content like media or conversation. - - - ``latest_short`` - - Best for short form content like commands or single shot - directed speech. When using this model, the service will - stop transcribing audio after the first utterance is - detected and completed. - - When using this model, - [SEPARATE_RECOGNITION_PER_CHANNEL][google.cloud.speech.v2.RecognitionFeatures.MultiChannelMode.SEPARATE_RECOGNITION_PER_CHANNEL] - is not supported; multi-channel audio is accepted, but - only the first channel will be processed and transcribed. - - - ``telephony`` - - Best for audio that originated from a phone call - (typically recorded at an 8khz sampling rate). - - - ``medical_conversation`` - - For conversations between a medical provider—for example, - a doctor or nurse—and a patient. Use this model when both - a provider and a patient are speaking. Words uttered by - each speaker are automatically detected and labeled in - the returned transcript. - - For supported features please see `medical models - documentation `__. - - - ``medical_dictation`` - - For dictated notes spoken by a single medical - provider—for example, a doctor dictating notes about a - patient's blood test results. - - For supported features please see `medical models - documentation `__. - - - ``usm`` - - The next generation of Speech-to-Text models from Google. + Guidance for choosing which model to use can be found in the + `Transcription Models + Documentation `__ + and the models supported in each region can be found in the + `Table Of Supported + Models `__. language_codes (MutableSequence[str]): Required. The language of the supplied audio as a `BCP-47 `__ language tag. - Supported languages for each model are listed at: - https://cloud.google.com/speech-to-text/docs/languages + Supported languages for each model are listed in the `Table + of Supported + Models `__. If additional languages are provided, recognition result will contain recognition in the most likely language @@ -1652,8 +1613,26 @@ class BatchRecognizeRequest(proto.Message): recognition_output_config (google.cloud.speech_v2.types.RecognitionOutputConfig): Configuration options for where to output the transcripts of each file. + processing_strategy (google.cloud.speech_v2.types.BatchRecognizeRequest.ProcessingStrategy): + Processing strategy to use for this request. """ + class ProcessingStrategy(proto.Enum): + r"""Possible processing strategies for batch requests. + + Values: + PROCESSING_STRATEGY_UNSPECIFIED (0): + Default value for the processing strategy. + The request is processed as soon as its + received. + DYNAMIC_BATCHING (1): + If selected, processes the request during + lower utilization periods for a price discount. + The request is fulfilled within 24 hours. + """ + PROCESSING_STRATEGY_UNSPECIFIED = 0 + DYNAMIC_BATCHING = 1 + recognizer: str = proto.Field( proto.STRING, number=1, @@ -1678,6 +1657,11 @@ class BatchRecognizeRequest(proto.Message): number=6, message="RecognitionOutputConfig", ) + processing_strategy: ProcessingStrategy = proto.Field( + proto.ENUM, + number=7, + enum=ProcessingStrategy, + ) class GcsOutputConfig(proto.Message): @@ -2624,10 +2608,10 @@ class ListCustomClassesRequest(proto.Message): ``projects/{project}/locations/{location}``. page_size (int): Number of results per requests. A valid page_size ranges - from 0 to 20 inclusive. If the page_size is zero or + from 0 to 100 inclusive. If the page_size is zero or unspecified, a page size of 5 will be chosen. If the page - size exceeds 20, it will be coerced down to 20. Note that a - call might return fewer results than the requested page + size exceeds 100, it will be coerced down to 100. Note that + a call might return fewer results than the requested page size. page_token (str): A page token, received from a previous @@ -2878,9 +2862,9 @@ class ListPhraseSetsRequest(proto.Message): page_size (int): The maximum number of PhraseSets to return. The service may return fewer than this value. If - unspecified, at most 20 PhraseSets will be - returned. The maximum value is 20; values above - 20 will be coerced to 20. + unspecified, at most 5 PhraseSets will be + returned. The maximum value is 100; values above + 100 will be coerced to 100. page_token (str): A page token, received from a previous [ListPhraseSets][google.cloud.speech.v2.Speech.ListPhraseSets] diff --git a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json index e89f009c..c793efe0 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-speech", - "version": "2.19.0" + "version": "0.1.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json index ccace9d3..b51d437c 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-speech", - "version": "2.19.0" + "version": "0.1.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json b/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json index 5f86006f..cdf74909 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-speech", - "version": "2.19.0" + "version": "0.1.0" }, "snippets": [ { diff --git a/scripts/fixup_speech_v2_keywords.py b/scripts/fixup_speech_v2_keywords.py index 23ba50dc..74de175b 100644 --- a/scripts/fixup_speech_v2_keywords.py +++ b/scripts/fixup_speech_v2_keywords.py @@ -39,7 +39,7 @@ def partition( class speechCallTransformer(cst.CSTTransformer): CTRL_PARAMS: Tuple[str] = ('retry', 'timeout', 'metadata') METHOD_TO_PARAMS: Dict[str, Tuple[str]] = { - 'batch_recognize': ('recognizer', 'config', 'config_mask', 'files', 'recognition_output_config', ), + 'batch_recognize': ('recognizer', 'config', 'config_mask', 'files', 'recognition_output_config', 'processing_strategy', ), 'create_custom_class': ('custom_class', 'parent', 'validate_only', 'custom_class_id', ), 'create_phrase_set': ('phrase_set', 'parent', 'validate_only', 'phrase_set_id', ), 'create_recognizer': ('recognizer', 'parent', 'validate_only', 'recognizer_id', ), From 23a5e8ebce3b35de4caf00965bef8c1425f51237 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 25 May 2023 12:36:55 -0400 Subject: [PATCH 3/4] build(deps): bump requests from 2.28.1 to 2.31.0 in /synthtool/gcp/templates/python_library/.kokoro (#517) Source-Link: https://github.com/googleapis/synthtool/commit/30bd01b4ab78bf1b2a425816e15b3e7e090993dd Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:9bc5fa3b62b091f60614c08a7fb4fd1d3e1678e326f34dd66ce1eefb5dc3267b Co-authored-by: Owl Bot --- .github/.OwlBot.lock.yaml | 3 ++- .kokoro/requirements.txt | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index b8edda51..32b3c486 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,5 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest - digest: sha256:2e247c7bf5154df7f98cce087a20ca7605e236340c7d6d1a14447e5c06791bd6 + digest: sha256:9bc5fa3b62b091f60614c08a7fb4fd1d3e1678e326f34dd66ce1eefb5dc3267b +# created: 2023-05-25T14:56:16.294623272Z diff --git a/.kokoro/requirements.txt b/.kokoro/requirements.txt index 66a2172a..3b8d7ee8 100644 --- a/.kokoro/requirements.txt +++ b/.kokoro/requirements.txt @@ -419,9 +419,9 @@ readme-renderer==37.3 \ --hash=sha256:cd653186dfc73055656f090f227f5cb22a046d7f71a841dfa305f55c9a513273 \ --hash=sha256:f67a16caedfa71eef48a31b39708637a6f4664c4394801a7b0d6432d13907343 # via twine -requests==2.28.1 \ - --hash=sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983 \ - --hash=sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349 +requests==2.31.0 \ + --hash=sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f \ + --hash=sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1 # via # gcp-releasetool # google-api-core From 84983d0a45576225e7443fca831e2bb2887a9543 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 1 Jun 2023 06:45:30 -0400 Subject: [PATCH 4/4] chore(main): release 2.20.0 (#515) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- .release-please-manifest.json | 2 +- CHANGELOG.md | 7 +++++++ google/cloud/speech/gapic_version.py | 2 +- google/cloud/speech_v1/gapic_version.py | 2 +- google/cloud/speech_v1p1beta1/gapic_version.py | 2 +- google/cloud/speech_v2/gapic_version.py | 2 +- .../snippet_metadata_google.cloud.speech.v1.json | 2 +- .../snippet_metadata_google.cloud.speech.v1p1beta1.json | 2 +- .../snippet_metadata_google.cloud.speech.v2.json | 2 +- 9 files changed, 15 insertions(+), 8 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 36be43f2..d753b65d 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,4 +1,4 @@ { - ".": "2.19.0" + ".": "2.20.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 1bb26b30..8d6d5536 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ [1]: https://pypi.org/project/google-cloud-speech/#history +## [2.20.0](https://github.com/googleapis/python-speech/compare/v2.19.0...v2.20.0) (2023-05-25) + + +### Features + +* **v2:** Add processing strategy to batch recognition requests ([#514](https://github.com/googleapis/python-speech/issues/514)) ([5bbf3a4](https://github.com/googleapis/python-speech/commit/5bbf3a4f4c758c76502ad3f0a8ce03604ef86c14)) + ## [2.19.0](https://github.com/googleapis/python-speech/compare/v2.18.0...v2.19.0) (2023-03-27) diff --git a/google/cloud/speech/gapic_version.py b/google/cloud/speech/gapic_version.py index 0f1a446f..551f0d2e 100644 --- a/google/cloud/speech/gapic_version.py +++ b/google/cloud/speech/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "2.19.0" # {x-release-please-version} +__version__ = "2.20.0" # {x-release-please-version} diff --git a/google/cloud/speech_v1/gapic_version.py b/google/cloud/speech_v1/gapic_version.py index 0f1a446f..551f0d2e 100644 --- a/google/cloud/speech_v1/gapic_version.py +++ b/google/cloud/speech_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "2.19.0" # {x-release-please-version} +__version__ = "2.20.0" # {x-release-please-version} diff --git a/google/cloud/speech_v1p1beta1/gapic_version.py b/google/cloud/speech_v1p1beta1/gapic_version.py index 0f1a446f..551f0d2e 100644 --- a/google/cloud/speech_v1p1beta1/gapic_version.py +++ b/google/cloud/speech_v1p1beta1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "2.19.0" # {x-release-please-version} +__version__ = "2.20.0" # {x-release-please-version} diff --git a/google/cloud/speech_v2/gapic_version.py b/google/cloud/speech_v2/gapic_version.py index 0f1a446f..551f0d2e 100644 --- a/google/cloud/speech_v2/gapic_version.py +++ b/google/cloud/speech_v2/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "2.19.0" # {x-release-please-version} +__version__ = "2.20.0" # {x-release-please-version} diff --git a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json index c793efe0..49f6b016 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-speech", - "version": "0.1.0" + "version": "2.20.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json index b51d437c..86ba89a7 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.speech.v1p1beta1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-speech", - "version": "0.1.0" + "version": "2.20.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json b/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json index cdf74909..4ec76583 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.speech.v2.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-speech", - "version": "0.1.0" + "version": "2.20.0" }, "snippets": [ {