mimi の基本概念について

各ドキュメントで登場する用語について、ここで説明しています。

mimi を利用したアプリケーション開発を行うにあたり、基本的な概念を理解する必要があります。このガイドでは概念とそれぞれの関係性について説明します。

基本概念

mimi 上で登場する概念は一般的な言葉も含みますが、 mimi 独自の意味合いを持つものがあります。これらについて説明します。

概念説明
デベロッパーmimi を利用したシステム・アプリケーション等を開発する主体となる開発者(または団体)です。例えば、「株式会社A事業部B」、「山田太郎」のような単位となります。デベロッパーは、mimi 利用規約に同意している必要があります。また、mimi の利用費用の請求単位となります。
アプリケーションmimi を利用したアプリケーションを表します。ひとつの製品やスマホアプリ等に対応します。 例えば、「お掃除ロボットA」、「アプリB」のような単位となります。mimi API はアプリケーション単位で各種の操作を行うことができます。アプリケーションを跨いだ操作を行うことはできません。デベロッパーは複数のアプリケーションを作成することができます。
クライアントアプリケーションを利用する利用者を、mimi が区別する単位です。mimi は、クライアントを最小単位として、権限管理を行います。例えば、ひとつのクライアントは、製造された「お掃除ロボットA」の個別の1台に対応します。(異なるお掃除ロボットは、異なるクライアントとなります)。または、ひとつのクライアントは、個別のスマホにインストールされた「アプリB」と対応します(異なるスマホにインストールされたアプリは、異なるクライアントとなります)。
デベロッパーは、自身が開発しているアプリケーションにおいて、クライアントをどのような粒度で分割するかを、アプリケーションの要望に応じて決定することができます。
クライアントは、Open ID Connect 認証を経て mimi へのアクセス権限が付与されたmimi API アクセストークンを得ることによって、mimi を利用することができます。
デバイスアプリケーションが利用される際の、ハードウェア的な実体です。例えば、「個別のお掃除ロボットA」、「個別のスマホ」を指します。
エンドユーザーアプリケーションを最終的に利用する人間を表します。 mimi は通常、エンドユーザーを区別しませんが、話者識別機能を利用する場合等、特定話者の声を学習させるために、明示的にエンドユーザーを識別しなければならない場合はあります。
586

各概念の相関図

具体例

基本概念への理解をより深めるために、2つの事例を見てみましょう。

コミュニケーションロボットの事例

ある小型のコミュニケーションロボットが、一般家庭に設置されているとします。このロボットを一人一台持っていることが想定されていますが、1台のロボットに対して全員が話しかけてくることもあります。
この場合、1つのクライアントは、1台のロボットに1対1で対応し、1台のロボットには、複数のエンドユーザーが対応することになります。
家庭内に2台以上のロボットが存在する場合、ひとつのクライアントが、1台のロボットに1対1対応している状態であれば、2台それぞれの mimi の利用権限は独立しています。

488

ロボット応答アプリで音声認識を利用する場合

例えば、家族を識別するために話者識別サービスを利用する場合は、ロボット間で mimi に与えられた話者情報の共有が必要になります。このような場合は、1つのクライアントを2台のロボットに関連付けることで、2台のロボットに対して、同一の mimi 利用権限を付与することができます。

526

ロボット応答アプリで話者識別を利用する場合