Lê Xuân Lộc5つのアプリに戻る

画面ひとつ、ボタンひとつ。

Knowless · エッセイ · 2026年10月

小さいころ、香港で迷子になりました。言葉は話せませんでした。

その後、中国や、言葉のわからないほかの国を旅したときは、モバイルデータ通信が使えませんでした。そのたびに、同じものが欲しいと思いました。通信がなくても使える翻訳ツールです。相手の言うことがわかり、話ができるように。

Knowlessは、それを自分で形にしようとしたものです。話し声を、スマホの中だけでリアルタイムに文字起こしし、翻訳します。私がデザインし、AI支援ツールを使って作りました。1おそらく、これまで作った中でいちばんシンプルなアプリです。画面ひとつ、ボタンひとつ。そこまでシンプルにするのに、3回道を間違えました。

最初の試み:レーダー

最初のバージョンは、ずっと聞き続けるレーダーでした。音声だけで話し手の位置がわかる、と思い描いていました。

無理だとわかるまで、長くはかかりませんでした。私のスマホの録音からは、空間オーディオが得られません。だから、声がどこから来ているのかを示すものが、録音の中に何もないのです。読んだかぎりでは、新しい機種ならできるかもしれません。その機種は持っていません。音でやろうとするのはやめました。

2度目の試み:両方のカメラ

そこで、耳の代わりに目を試しました。前面と背面のカメラを同時に動かして、話している顔を探します。そうすれば、その人がどこにいるのかをアプリが把握できます。

私のスマホで動くビルドまではできました。すべて端末上で処理し、サーバーは使いません。両方のカメラを見ながら、声を1つずつ顔と結びつけようとするものです。そして、肝心なところで失敗しました。スマホは熱くなりました。バッテリーはすぐに減りました。フリーズしました。それも何度も。これもやめました。

自分の耳で聞く

もっと小さくても、同じくらい重要な判断もありました。理屈の上では、騒がしい場所向けにノイズ除去を入れるのは妥当に思えました。それから、ノイズの多い録音を自分の耳で聞いてみました。自分で言ったことなのに、聞き取れませんでした。これは、どれだけノイズを除去しても直りません。だから、この案は捨てました。

私の言う「ヒューマン・イン・ザ・ループ」とは、こういうことです。私はAIを使って作ります。そして、自分の求めていることが実際の場面で理にかなっているかを、確かめ続けなければなりません。判断はきわめて重要です。

モデルについても同じでした。1つずつ試したので、長い時間がかかりました。初期には、モデルをスマホにダウンロードする形で、アプリは約4ギガバイトになるところでした。最初のプロトタイプには、会話履歴もありました。Shipatonに間に合わせるためにそれを削りましたが、それでもあやうく締め切りを逃すところでした。

私に聞き取れないものは、どんなフィルターにも聞き取れません

残ったもの

画面ひとつ、ボタンひとつ。押す、話す、訳す。

訳文の行は大きく表示されます。原文はそのすぐ下にあります。小さめで、グレーで、イタリックです。

文字サイズ100%の「Thank you for your help.」。その下に、小さめのグレーのイタリックで「Gracias por su ayuda.」。 同じ文の300%表示。3行になって、幅いっぱいに広がっています。スペイン語の原文も大きくなっていますが、やはり訳文より小さく、グレーです。

文字が大きくなっても、この順序は変わりません。ピンチ操作で50%から300%まで変えられます。聞き取る言語は、あらかじめ3つまで選んでおきます。行を持ち出すこともできます。コピーするか、読み上げさせるかです。

その2日間

ごく小さな機能が、実はきわめて複雑でした。言葉の現れ方です。

音声が文字になり、その文字が画面に出る。そう見えますが、違います。音声はまず推測になり、その推測がすぐ画面に出るので、リアルタイムに感じられます。次に推測が修正され、修正の結果が違っていれば、画面が変わります。長い文のあとにはもう一度処理が走り、文全体の文脈を使ってさらに修正します。

その状態の一つひとつが、正しく見えなければなりません。合間の待ち時間も同じです。まだ届いている途中の行は、琥珀色のカーソルの後ろで移り変わる文字として描かれます。確定した行はふつうのテキストで、動きません。

アプリとデザインのモックアップのあいだを、2日以上行ったり来たりしました。直感的に感じられるものにしたいということは、最初から決めていました。使う人もそう感じてくれると信じていました。こんなに時間がかかるとは思っていませんでした。

Knowlessのリアルタイム翻訳画面:訳文の行と、その下の原文。

そこにあるべきでないものがあります。気づく人ばかりではありません。

本当のことを、正確に言う

音声認識と翻訳は、スマホの中で動きます。言語は、通信のあるときに一度ダウンロードしておく必要があります。そのあとは、中心となる部分が通信なしで動きます。だから、ストア用に用意したスクリーンショットには「works offline」と書き、その条件もすぐ続けて添えてあります。対応言語をダウンロードしたあとで、と。

スペイン語の原文がついた訳文2行。App Store用に用意した、オフライン利用についてのスクリーンショットから。

ここで証明していないこと

ここでは、成果は示していません。理解度のスコアも、ユーザビリティ調査も、どれだけ使われているかを示す数字もありません。お見せできるのは、たどった道筋と、行き着いた場所です。

次は、スマホを1台ずつ持った2人が、互いの言葉をリアルタイムで訳してもらえるようにしたいと考えています。それはまだ作っていません。

App StoreでKnowlessを見る デザインの仕事を探しています。連絡先

  1. AIの支援について:ここに書いた判断は、私自身のものです。ツールに指示を出し、出てきたものを読み、実機で確認します。コードをすべて手で書いたとは言いません。↩
  2. 画像について:クリップは、App Store用に作ったプレビュー動画から切り出したもので、音はありません。クリップの中の会話も、このページのどの画面の会話も、説明のための例で、実際の会話ではありません。静止画は、App Store用に用意したスクリーンショット一式から取りました。ストアのページには、別のセットが載っているかもしれません。レーダーの絵はこのページのために描いたもので、キャプチャではありません。試せる閲覧画面は、このページのために作った小さな再現版で、アプリそのものではありません。