Hi all, The TAG review <https://github.com/w3ctag/design-reviews/issues/1121> for this has been completed. Please let me know if anyone else has any questions or concerns.
Thanks, Evan On Wed, Jul 23, 2025 at 11:26 AM Evan Liu <[email protected]> wrote: > I don't think there are any technical limitations that would prevent other > implementations from conforming to how the behavior is specified in the > spec. We can add more WPT test cases for different phrases and boost > values, but I would caution against constraining the underlying models too > much because the speech recognition results may potentially change as > models improve over time. > > [email protected] is currently working on the Firefox implementation > and may have other thoughts on this. > > On Wed, Jul 23, 2025 at 7:44 AM Yoav Weiss (@Shopify) < > [email protected]> wrote: > >> How likely are different implementations to implement their reaction to >> different "boost" values similarly? >> If I test my game with a "Zoltan" character (from the explainer's >> examples) in different implementations with the same "boost" values, am I >> likely to get similar results? >> >> On Tuesday, July 15, 2025 at 9:49:57 PM UTC+2 [email protected] wrote: >> >>> Have you considered a dictionary for SpeechRecognitionPhrase? >>>> >>> Early versions of this design included creating a >>> SpeechRecognitionPhraseList interface as well as a SpeechRecognitionContext >>> to encapsulate the contextual biasing phrases. The latest consensus is to >>> accept a suggestion from [email protected] to use an >>> ObservableArray<SpeechRecognitionPhrase>. >>> >>> Does this basically supersede SpeechGrammar? >>> >>> SpeechGrammar has been deprecated in the Web Speech API spec. While the >>> API implementation in Chrome supports SpeechGrammar, this never actually >>> did anything as the backend speech recognition service didn't support the >>> functionality. See the following issues/PRs for more context around this >>> deprecation: >>> https://github.com/WebAudio/web-speech-api/issues/57 >>> https://github.com/WebAudio/web-speech-api/pull/163 >>> https://github.com/WebAudio/web-speech-api/pull/32 >>> >>> On Tue, Jul 15, 2025 at 6:50 AM PhistucK <[email protected]> wrote: >>> >>>> Does this basically supersede SpeechGrammar? >>>> >>>> >>>> ☆*PhistucK* >>>> >>>> >>>> On Tue, Jul 15, 2025 at 9:11 AM Sangwhan Moon <[email protected]> wrote: >>>> >>>>> Drive by curiosity question: >>>>> >>>>> Have you considered a dictionary for SpeechRecognitionPhrase? >>>>> >>>>> If mutating individual SpeechRecognitionPhrase instances in >>>>> SpeechRecognition.phrase is an intended use case and also has >>>>> side-effects, >>>>> I recon this wouldn't be desirable - but curious if that was considered. >>>>> >>>>> Also, the ergonomics of modifying the phrase list seems inconvenient >>>>> (if it is an intended use case) - e.g. unboost and boost a specific phrase >>>>> would require a sweep to find the phrase if I am understanding the >>>>> explainer correctly.. >>>>> >>>>> (Likely something the TAG might bring up too) >>>>> >>>>> On Jul 15, 2025, at 5:00, 'Evan Liu' via blink-dev < >>>>> [email protected]> wrote: >>>>> >>>>> >>>>> Sounds good, I've opened a TAG issue for this here: >>>>> https://github.com/w3ctag/design-reviews/issues/1121 >>>>> >>>>> Please let me know if you have any other feedback! >>>>> >>>>> On Mon, Jul 14, 2025 at 11:28 AM Dan Clark <[email protected]> >>>>> wrote: >>>>> >>>>>> Thanks for these updates! >>>>>> >>>>>> I think it's kind of borderline whether there's enough complexity >>>>>> here to merit a TAG review. My preference is to go ahead and request one >>>>>> in >>>>>> case they do have feedback. >>>>>> >>>>>> -- Dan >>>>>> >>>>>> On Thursday, July 10, 2025 at 12:59:03 PM UTC-7 Evan Liu wrote: >>>>>> >>>>>>> Hi Dan, >>>>>>> >>>>>>> Thank you for the thoughtful feedback. Addressing your points: >>>>>>> >>>>>>> *Design Doc Access:* The original document contains some internal >>>>>>> information that can't be shared. I've created a public version of the >>>>>>> design document that you can access here: >>>>>>> https://docs.google.com/document/d/1CBH4r6rxSryY28hOhBQC-DZgjwWbO-FRYg_bbJIfBFo >>>>>>> >>>>>>> *TAG Review:* Given the relatively small scope of this API >>>>>>> addition, I initially didn't think a TAG review was necessary. However, >>>>>>> I'm >>>>>>> happy to request one if you think it would be beneficial. >>>>>>> >>>>>>> *Gecko Position:* We've been working closely with Mozilla on this >>>>>>> design ([email protected] is a collaborator on the spec change >>>>>>> <https://github.com/WebAudio/web-speech-api/pull/145>). I can ask >>>>>>> him to add a formal position to the thread to make it official. >>>>>>> >>>>>>> *WebKit Feedback & WPT Coverage:* Thanks for the suggestion. I've >>>>>>> just updated the WebKit thread to reflect the latest changes. >>>>>>> >>>>>>> Regarding test coverage, the end-to-end tests are currently manual >>>>>>> because the test environment has limitations in accessing the necessary >>>>>>> on-device models. I'll look into ways to improve our automated test >>>>>>> coverage and will add more tests for edge cases and error handling. >>>>>>> >>>>>>> Thanks, >>>>>>> >>>>>>> Evan >>>>>>> On Wed, Jul 9, 2025 at 5:12 PM Daniel Clark <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> > Design docs >>>>>>>> > >>>>>>>> https://docs.google.com/document/d/1AW9DxKYNfnt_wruxmd-_M1islS-MgsUVpaNBen-XvHk >>>>>>>> I don’t have access to this document. Could it be made available to >>>>>>>> non-Googlers? >>>>>>>> >>>>>>>> *> TAG review* >>>>>>>> > None >>>>>>>> >>>>>>>> Can you say why no TAG review? >>>>>>>> >>>>>>>> > *Gecko*: Positive ( >>>>>>>> https://github.com/mozilla/standards-positions/issues/1255) >>>>>>>> >>>>>>>> I don’t see Gecko taking any position on that thread. >>>>>>>> >>>>>>>> > *WebKit*: No signal ( >>>>>>>> https://github.com/WebKit/standards-positions/issues/517) >>>>>>>> >>>>>>>> Thanks for engaging with Marcos’ feedback on the WebKit thread. It >>>>>>>> looks like most of his feedback has now been addressed, so you might >>>>>>>> consider sending a ping giving that update, with the context that >>>>>>>> you’re now requesting this to ship in Chromium. >>>>>>>> >>>>>>>> *> Is this feature fully tested by web-platform-tests?* >>>>>>>> > Yes >>>>>>>> > >>>>>>>> https://wpt.fyi/results/speech-api?label=experimental&label=master&aligned >>>>>>>> >>>>>>>> I couldn’t find much test coverage at this link for this addition >>>>>>>> -- just the one line in >>>>>>>> https://github.com/web-platform-tests/wpt/blob/master/speech-api/SpeechRecognition-basics.https.html >>>>>>>> that >>>>>>>> confirms the phrases array exists and is initially empty. I did >>>>>>>> see there was an end-to-end manual test at >>>>>>>> https://github.com/web-platform-tests/wpt/blob/master/speech-api/SpeechRecognition-phrases-manual.https.html >>>>>>>> which >>>>>>>> is great. Maybe there’s more that can be added as automated >>>>>>>> coverage though? For example an automated WPT could check that >>>>>>>> SpeechRecognitionPhrases can be constructed, that they can be >>>>>>>> assigned to phrases, that boost values outside of the 0.0-10.0 >>>>>>>> range throw errors, etc. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Dan >>>>>>>> >>>>>>>> *From: *[email protected] <[email protected]> on behalf of >>>>>>>> Chromestatus <[email protected]> >>>>>>>> *Date: *Wednesday, July 9, 2025 at 11:13 AM >>>>>>>> *To: *[email protected] <[email protected]> >>>>>>>> *Cc: *[email protected] <[email protected]>, [email protected] < >>>>>>>> [email protected]> >>>>>>>> *Subject: *[EXTERNAL] [blink-dev] Intent to Ship: Web Speech API >>>>>>>> contextual biasing >>>>>>>> >>>>>>>> Contact emails >>>>>>>> [email protected], [email protected] >>>>>>>> >>>>>>>> Explainer >>>>>>>> >>>>>>>> https://github.com/WebAudio/web-speech-api/blob/main/explainers/contextual-biasing.md >>>>>>>> >>>>>>>> Specification >>>>>>>> https://webaudio.github.io/web-speech-api/#speechreco-phraselist >>>>>>>> >>>>>>>> Design docs >>>>>>>> >>>>>>>> >>>>>>>> https://docs.google.com/document/d/1AW9DxKYNfnt_wruxmd-_M1islS-MgsUVpaNBen-XvHk >>>>>>>> >>>>>>>> Summary >>>>>>>> >>>>>>>> This feature enables websites to support contextual biasing for >>>>>>>> speech recognition by adding a recognition phrase list to the Web >>>>>>>> Speech >>>>>>>> API. Developers can provide a list of phrases as well as updating them >>>>>>>> to >>>>>>>> apply a bias to the speech recognition models in favor of those >>>>>>>> phrases. >>>>>>>> This helps improve accuracy and relevance for domain-specific and >>>>>>>> personalized speech recognition. >>>>>>>> >>>>>>>> >>>>>>>> Blink component >>>>>>>> Blink>Speech >>>>>>>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ESpeech%22> >>>>>>>> >>>>>>>> Search tags >>>>>>>> speech <http:///features#tags:speech>, recognition >>>>>>>> <http:///features#tags:recognition>, local >>>>>>>> <http:///features#tags:local>, offline >>>>>>>> <http:///features#tags:offline>, on-device >>>>>>>> <http:///features#tags:on-device>, contextual >>>>>>>> <http:///features#tags:contextual>, biasing >>>>>>>> <http:///features#tags:biasing> >>>>>>>> >>>>>>>> TAG review >>>>>>>> None >>>>>>>> >>>>>>>> TAG review status >>>>>>>> Pending >>>>>>>> >>>>>>>> Risks >>>>>>>> >>>>>>>> >>>>>>>> Interoperability and Compatibility >>>>>>>> >>>>>>>> None >>>>>>>> >>>>>>>> >>>>>>>> *Gecko*: Positive ( >>>>>>>> https://github.com/mozilla/standards-positions/issues/1255) >>>>>>>> >>>>>>>> *WebKit*: No signal ( >>>>>>>> https://github.com/WebKit/standards-positions/issues/517) >>>>>>>> >>>>>>>> *Web developers*: No signals >>>>>>>> >>>>>>>> *Other signals*: >>>>>>>> >>>>>>>> WebView application risks >>>>>>>> >>>>>>>> *Does this intent deprecate or change behavior of existing APIs, >>>>>>>> such that it has potentially high risk for Android WebView-based >>>>>>>> applications?* >>>>>>>> >>>>>>>> None >>>>>>>> >>>>>>>> >>>>>>>> Debuggability >>>>>>>> >>>>>>>> None >>>>>>>> >>>>>>>> >>>>>>>> Will this feature be supported on all six Blink platforms (Windows, >>>>>>>> Mac, Linux, ChromeOS, Android, and Android WebView)? >>>>>>>> No >>>>>>>> >>>>>>>> Initially supported on Windows, Mac, and Linux with ChromeOS >>>>>>>> support to follow. >>>>>>>> >>>>>>>> >>>>>>>> Is this feature fully tested by web-platform-tests >>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >>>>>>>> ? >>>>>>>> Yes >>>>>>>> >>>>>>>> >>>>>>>> https://wpt.fyi/results/speech-api?label=experimental&label=master&aligned >>>>>>>> >>>>>>>> >>>>>>>> Flag name on about://flags >>>>>>>> >>>>>>>> >>>>>>>> Finch feature name >>>>>>>> >>>>>>>> WebSpeechRecognitionContext,OnDeviceWebSpeech,OnDeviceWebSpeechAvailable >>>>>>>> >>>>>>>> Rollout plan >>>>>>>> Will ship enabled for all users >>>>>>>> >>>>>>>> Requires code in //chrome? >>>>>>>> False >>>>>>>> >>>>>>>> Estimated milestones >>>>>>>> >>>>>>>> Shipping on desktop >>>>>>>> 140 >>>>>>>> >>>>>>>> >>>>>>>> Anticipated spec changes >>>>>>>> >>>>>>>> *Open questions about a feature may be a source of future web >>>>>>>> compat or interop issues. Please list open issues (e.g. links to known >>>>>>>> github issues in the project for the feature specification) whose >>>>>>>> resolution may introduce web compat/interop risk (e.g., changing to >>>>>>>> naming >>>>>>>> or structure of the API in a non-backward-compatible way).* >>>>>>>> None >>>>>>>> >>>>>>>> Link to entry on the Chrome Platform Status >>>>>>>> >>>>>>>> https://chromestatus.com/feature/5225615177023488?gate=4780829605363712 >>>>>>>> >>>>>>>> This intent message was generated by Chrome Platform Status >>>>>>>> <https://chromestatus.com/>. >>>>>>>> -- >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "blink-dev" group. >>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>> send an email to [email protected]. >>>>>>>> To view this discussion visit >>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/686eb087.2b0a0220.3a1521.0f8f.GAE%40google.com >>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/686eb087.2b0a0220.3a1521.0f8f.GAE%40google.com?utm_medium=email&utm_source=footer> >>>>>>>> . >>>>>>>> >>>>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "blink-dev" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion visit >>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOVsCZ%3DyDEmMn1%3DXxd6E-DA3fS5TuPr1jJZExLTZmgoZ1FUPKg%40mail.gmail.com >>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOVsCZ%3DyDEmMn1%3DXxd6E-DA3fS5TuPr1jJZExLTZmgoZ1FUPKg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "blink-dev" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion visit >>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/E7442B06-6C6D-44E6-9817-D3F4F27289D6%40chromium.org >>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/E7442B06-6C6D-44E6-9817-D3F4F27289D6%40chromium.org?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOVsCZ%3Dk2unxUFvRyuRsR%2B33oLJB8ED%2BbrE95W%2BUpfoRK5JtkA%40mail.gmail.com.
