Monthly Archives: September 2008

Why a grammar platform

On effective grammar tools

Why are there so many VoiceXML “Service Creation Environments” (also called “dialog designers” or “dialog builders”) available – some of them actually quite good – but no decent Grammar Development Environment? Over the past several years, we’ve often ask ourselves that question.

Indeed, we’ve always seen our grammar development tools not only as an essential component of our speech practice, but also as a key competitive differentiator. This is why we’ve invested so much effort constantly improving them based on the feedbacks of the most demanding grammar developers: Our own!

Judging from all the requests we got over the years regarding the availability of our grammar tools, it looks like a large number of people have also asked themselves the very same question.

One obvious reason, of course, is that you can’t make much money selling grammar tools, so why bother? Another, perhaps not-so-obvious reason is that it’s really not trivial to build tools that truly and effectively support the grammar development process. For instance, graphical grammar editing tools may at first glance appear appealing but they in practice just make grammars more cumbersome and difficult to manipulate without really addressing the most difficult challenges faced by grammar developers.

What grammar developers really need are tools that:

  • Really help accelerate the grammar authoring process – with an editor that provides all the advanced features developers should expect;
  • Can test grammar coverage and semantic interpretation correctness – to make sure grammars give the expected result (and that we don’t accidentally break them); and
  • Provide powerful grammar analysis, visualization, and debugging capabilities – to help pinpoint and fix problems in the grammar.

The dynamic grammar challenge

This, in fact, is what our grammar development tools have provided for a long time. There was, however, one important problem: We very often have to build applications that require grammars to be dynamically generated at run time based on input data. Although there are many ways of doing this, the bottom line was that we had a very sophisticated grammar development environment that we just couldn’t use for dynamic grammars. To us, this just made no sense. What’s the point of having great tools if you can only use them for half your grammars?

The fact that grammar development/tuning and dialog implementation require very different skills sets only made this situation worse. A great java developer is not necessarily a great grammar developer (and vice-versa). But the traditional approaches to dynamic grammars typically means that the grammar developer only ends up developing static grammars while the dynamic grammars have to be developed by whoever implements the application. Again, this makes no sense.

A complete grammar solution

Clearly, a complete grammar solution needs to effectively deal with all grammars – static and dynamic. This is why we created the NuGram Platform, whose key foundations are:

  1. The ABNF Template Language. This is essentially the ABNF format, as specified in the W3C Speech Recognition Grammar Specification, with the addition of dynamic grammar extensions, used to add dynamic content to grammars.
  2. NuGram IDE, an integrated grammar development environment that supports the development of static and dynamic grammars in a uniform and consistent way.
  3. A set of Grammar Services, used for instance to instantiate a grammar (based on a grammar template and an instantiation context), to generate the grammar in the required format (e.g., GrXML, GSL, ABNF), or to parse a text string using the grammar.
  4. NuGram Server, the dynamic grammar run-time component of the platform, designed to be easily integrated with any speech application or service creation environment.

Why do we believe this is a very significant step forward for speech application developers? For several reasons. For instance:

  • All grammars required by an application can now be developed, debugged, and tested using a unique, consistent development environment.
  • The ability to use a single grammar authoring language regardless of the target recognition engine eliminates the need to learn about new grammar tools when switching to a new ASR engine and makes grammars much more portable.
  • The ability to develop dynamic grammars in a way that is independent from any application runtime infrastructure also make them much more portable and reusable.

What’s the catch?

So, if this is so valuable, why do we make it available for free? Simply because we believe this will create business opportunities for Nu Echo. Frankly, we’re convinced that grammar developers that start usingĀ  NuGram IDE will just not want to go back to their old tools. If that’s the case, then, at some point, if they need outside help to develop or tune their grammars, we hope they’ll think of us.

Also, while the NuGram IDE Basic Edition will remain free, we plan to offer a Professional Edition with more advanced features. While many developers will undoubtedly be quite happy with the Basic Edition, we hope that some users will want to pay for the more advanced features. And, of course, there’s a catch: There will be a runtime license associated with NuGram Server for deploying dynamic grammars. Of course, if you don’t use dynamic grammars, then this has no impact. But we think you will at some point and, when that time comes, you’ll decide that you really want to use one of our runtime solutions.

Give us feedback

You can get yourself a free copy of NuGram IDE at http://www.grammarserver.com. Over the next several months, this blog will discuss a number of topics related to grammar development and the NuGram Platform. We certainly hope you’ll give us some feedback.

Welcome to Nu Echo Blog!

Welcome to Nu Echo Blog, Nu Echo’s corporate weblog! Our team is very excited with this initiative as this will give us a new channel for sharing our thoughts and experience on topics we’re passionate about. Our initial focus will be on the tools and the practices that make great speech applications possible, but who knows where this will lead us. More importantly, we’d like to engage in conversation with anyone interested in these topics. So speak up, we’d like to hear from you! And spread the word!

The Nu Echo team