Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add stability information to streaming results. #2714

Merged

Conversation

daspecster
Copy link
Contributor

Towards #2522.

This changes the surface, since is_final and stability are per-result and not a per-alternative.

@daspecster daspecster added the api: speech Issues related to the Speech-to-Text API. label Nov 10, 2016
@googlebot googlebot added the cla: yes This human has signed the Contributor License Agreement. label Nov 10, 2016
@daspecster daspecster force-pushed the add-stability-to-speech-results branch from 7fb59d4 to 9f2c34e Compare November 10, 2016 18:04
Copy link
Contributor

@dhermes dhermes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I started out 👎 on the new class but it seems "necessary" in some sense. The only other alternative would be to return a tuple with all the data

results, stability, is_final

But maybe I am not grokking the interface correctly

hello
>>> print(alternatives[0].confidence)
>>> print(results[0].alternatives[0].confidence)

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

@@ -299,6 +298,74 @@ def sync_recognize(self, sample, language_code=None,
profanity_filter, speech_context)


class StreamingSpeechResult(object):

This comment was marked as spam.

"""Streaming speech result representation.

:type alternatives: list
:param alternatives: List of protobuf speech alternatives.

This comment was marked as spam.

:param stability: 0.0-1.0 stability score for the results returned.

:rtype: :class:`~google.cloud.speech.client.StreamingSpeechResult`
:returns: Instance of ``StreamingSpeechResult``.

This comment was marked as spam.

"""
def __init__(self, alternatives, is_final=False, stability=0.0):
self._alternatives = [Alternative.from_pb(alternative)
for alternative in alternatives]

This comment was marked as spam.


:type response: :class:`~google.cloud.grpc.speech.v1beta1\
.cloud_speech_pb2.StreamingRecognizeResult`
:param response: Istance of ``StreamingRecognizeResult`` protobuf.

This comment was marked as spam.

.cloud_speech_pb2.StreamingRecognizeResult`
:param response: Istance of ``StreamingRecognizeResult`` protobuf.

:rtype: :class:`~google.cloud.speech.client.StreamingSpeechResult`

This comment was marked as spam.

return self._alternatives

@property
def is_final(self):

This comment was marked as spam.

return self._is_final

@property
def stability(self):

This comment was marked as spam.

self.assertEqual(results[0], [])
self.assertEqual(results[1][0].transcript,

self.assertIsInstance(results[0], StreamingSpeechResult)

This comment was marked as spam.

@daspecster
Copy link
Contributor Author

I'm totally open to ideas(regarding StreamingSpeechResult class). I had this class in a previous branch, and from discussions before, it sounded like you were for bringing protobuf data into our own classes as an abstraction.

@daspecster
Copy link
Contributor Author

@dhermes CircleCI is winning my love.

Did you have anything else for this?

@dhermes
Copy link
Contributor

dhermes commented Nov 11, 2016

You also forgot to check in a new RST file for result.py

@dhermes
Copy link
Contributor

dhermes commented Nov 11, 2016

LGTM once you fix your b0rken docs situation

@daspecster daspecster force-pushed the add-stability-to-speech-results branch from 25aad88 to 71a0d55 Compare November 11, 2016 13:54
@daspecster daspecster force-pushed the add-stability-to-speech-results branch from 71a0d55 to 38e0887 Compare November 11, 2016 15:09
@daspecster
Copy link
Contributor Author

Everything went green. Squashed and I'll just make sure it goes green again and then I'll merge.

@daspecster daspecster merged commit f364416 into googleapis:master Nov 11, 2016
@daspecster daspecster deleted the add-stability-to-speech-results branch November 11, 2016 15:45
richkadel pushed a commit to richkadel/google-cloud-python that referenced this pull request May 6, 2017
…peech-results

Add stability information to streaming results.
atulep pushed a commit that referenced this pull request Apr 3, 2023
Add stability information to streaming results.
atulep pushed a commit that referenced this pull request Apr 18, 2023
Add stability information to streaming results.
parthea pushed a commit that referenced this pull request Jun 4, 2023
* Add initial Secret Manager samples [(#2664)](GoogleCloudPlatform/python-docs-samples#2664)

* Bump secretmanager version [(#2699)](GoogleCloudPlatform/python-docs-samples#2699)

This bumps to the version that doesn't have a bunch of deprecation
warnings.

* Fix a small comment typo [(#2714)](GoogleCloudPlatform/python-docs-samples#2714)

* Add Secret Manager IAM samples [(#2749)](GoogleCloudPlatform/python-docs-samples#2749)

* Add Secret Manager IAM samples

* Use an envvar for the iam user

* Add env var to secrets.

Co-authored-by: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com>

* SecretManager update v1beta1->v1 [(#3065)](GoogleCloudPlatform/python-docs-samples#3065)

Client library has been updated: https://pypi.org/project/google-cloud-secret-manager/

* Simplify noxfile setup. [(#2806)](GoogleCloudPlatform/python-docs-samples#2806)

* chore(deps): update dependency requests to v2.23.0

* Simplify noxfile and add version control.

* Configure appengine/standard to only test Python 2.7.

* Update Kokokro configs to match noxfile.

* Add requirements-test to each folder.

* Remove Py2 versions from everything execept appengine/standard.

* Remove conftest.py.

* Remove appengine/standard/conftest.py

* Remove 'no-sucess-flaky-report' from pytest.ini.

* Add GAE SDK back to appengine/standard tests.

* Fix typo.

* Roll pytest to python 2 version.

* Add a bunch of testing requirements.

* Remove typo.

* Add appengine lib directory back in.

* Add some additional requirements.

* Fix issue with flake8 args.

* Even more requirements.

* Readd appengine conftest.py.

* Add a few more requirements.

* Even more Appengine requirements.

* Add webtest for appengine/standard/mailgun.

* Add some additional requirements.

* Add workaround for issue with mailjet-rest.

* Add responses for appengine/standard/mailjet.

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore: some lint fixes [(#3749)](GoogleCloudPlatform/python-docs-samples#3749)

* chore(deps): update dependency google-cloud-secret-manager to v1 [(#3846)](GoogleCloudPlatform/python-docs-samples#3846)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [google-cloud-secret-manager](https://togithub.com/googleapis/python-secret-manager) | major | `==0.2.0` -> `==1.0.0` |

---

### Release Notes

<details>
<summary>googleapis/python-secret-manager</summary>

### [`v1.0.0`](https://togithub.com/googleapis/python-secret-manager/blob/master/CHANGELOG.md#&#8203;100-httpswwwgithubcomgoogleapispython-secret-managercomparev020v100-2020-05-20)

[Compare Source](https://togithub.com/googleapis/python-secret-manager/compare/v0.2.0...v1.0.0)

##### Features

-   release as production/stable ([#&#8203;24](https://www.github.com/googleapis/python-secret-manager/issues/24)) ([39a8cc8](https://www.github.com/googleapis/python-secret-manager/commit/39a8cc8f631569c82d1cbffc6a9bbb440d380683))

</details>

---

### Renovate configuration

:date: **Schedule**: At any time (no schedule defined).

:vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

:recycle: **Rebasing**: Never, or you tick the rebase/retry checkbox.

:no_bell: **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#GoogleCloudPlatform/python-docs-samples).

* Replace GCLOUD_PROJECT with GOOGLE_CLOUD_PROJECT. [(#4022)](GoogleCloudPlatform/python-docs-samples#4022)

* chore(deps): update dependency pytest to v5.4.3 [(#4279)](GoogleCloudPlatform/python-docs-samples#4279)

* chore(deps): update dependency pytest to v5.4.3

* specify pytest for python 2 in appengine

Co-authored-by: Leah Cole <coleleah@google.com>

* Update dependency pytest to v6 [(#4390)](GoogleCloudPlatform/python-docs-samples#4390)

* chore: update templates

Co-authored-by: Seth Vargo <seth@sethvargo.com>
Co-authored-by: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com>
Co-authored-by: gwhitehawk <gwhitehawk@gmail.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Takashi Matsuo <tmatsuo@google.com>
Co-authored-by: Leah Cole <coleleah@google.com>
parthea pushed a commit that referenced this pull request Oct 22, 2023
Add stability information to streaming results.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: speech Issues related to the Speech-to-Text API. cla: yes This human has signed the Contributor License Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants