← ブログの一覧へ

翻訳が4分たっても終わらない。原因は書き忘れた一行だった

2026.09.15

Androidでオフライン翻訳が4分たっても終わらなかった原因と、11秒まで縮めた過程を書きました。スレッド数・発熱・メモリなど、実機で測った数字をそのまま載せています。

iPhoneは翻訳専用の回路を使えるが、Androidは普通の計算回路しか使えないことを比べた図

スマートフォンの中だけでAIの翻訳を動かす、という作り方をしています。サーバーへ送らないので電波が要らない代わりに、すべての計算をその小さな端末にやらせることになります。

これがAndroidでは、想像よりずっと大変でした。最初に動かしたとき、一文の翻訳が4分たっても終わりませんでした。同じものをiPhoneに載せると数秒で返ってきます。同業の方には笑い話ですが、当時は本気で行き詰まりました。

この記事は、その4分を11秒まで縮めるまでの記録です。推測は書きません。実機で測った数字だけを書きます。

📉
4分 → 11秒

原因は書き忘れた設定が一行。直したら約20倍になりました。

🧵
多いほど速い、とは限らない

計算を分ける数を6から4に減らしたほうが速くなりました。

🌡
10分で2〜3割落ちる

発熱で速度が落ちます。止めても3分は戻りません。

なぜスマホの中だけで動かすのか

ふつうの翻訳アプリは、話した声をインターネットの向こうのサーバーへ送り、そこで計算して結果を受け取ります。サーバーは強力なので速く、端末は何もしなくて済みます。かわりに電波が無ければ何もできません

私たちは逆にしました。翻訳も、声の聞き取りも、読み上げも、全部その端末の中でやります。地下でも機内でも山の宿でも止まらないかわりに、性能の低い端末でも実用的な速さを出さなければいけません。

ここからが本題です。

同じアプリなのに、iPhoneとAndroidで速さがまるで違う

iPhoneには、こうした計算のために作られた専用の回路が載っています。アプリからそこを使わせてもらえるので、同じ処理でもずっと速く終わります。

Androidにも似た回路を持つ機種はありますが、どの機種でも同じように使える形にはなっていません。機種ごとに事情が違うので、いまのところは普通の計算回路(CPU)に任せています。中身はまったく同じものを入れているのに、待ち時間だけが数倍変わります。

この差は、今後Android側の仕組みが揃えば縮まります。ただ、それを待つあいだも使ってもらう必要があるので、CPUのままどこまで速くできるかを詰めることになりました。

iPhoneは翻訳専用の回路を使えるが、Androidは普通の計算回路しか使えないことを比べた図
中身は同じでも、使える回路が違います。

4分が11秒になった、書き忘れた一行

最初に動かしたとき、一文の翻訳が4分たっても終わりませんでした。メモリが足りないのか、端末が非力なのかと疑って、あちこち測りました。どれも違いました。

原因は、計算部分を組み立てるときの設定を一行書き忘れていたことでした。その一行が無いと、いまどきのスマホが持っている「まとめて計算する機能」がまるごと無効になります。全部を一つずつ、順番に計算していたわけです。

一行足して測り直したら、11秒になりました。4分と11秒のあいだには、その一行しかありませんでした。

当時いちばん怖かったのは、原因を「端末が非力だから」と決めつけかけたことです。そう結論していたら、対応機種を切り捨てる判断をしていたはずです。測る前に決めない、というのはこのとき身に沁みました。

計算を分ける数は、多いほど速いわけではない

次に試したのは、計算を何人がかりでやらせるか(スレッド数)です。素直に考えれば、多いほど速くなりそうです。

実際に測ると違いました。6から4に減らしたほうが速い機種がありました。人数を増やすと、渡し合いや待ち合わせの手間が増えます。それが計算そのものより重くなる境目があります。

しかもこの境目は機種ごとに違います。同じ設定が全部の端末に効かない、というのがAndroidのいちばん厄介なところです。

長い文を一気に投げるより、句点で区切って渡したほうが体感が速くなることを示した図
渡し方を変えるだけでも、体感は変わります。

文の渡し方でも、体感は変わる

速さは計算の力だけで決まるものではありませんでした。どこで文を区切って渡すかでも変わります。

長い文章を一気に投げると、全部終わるまで何も返ってきません。句点で区切って渡すと、話している途中から訳が返りはじめます。総時間はほとんど同じでも、待たされている感じがまるで違います。

接客の現場では、この体感差のほうが実際には効きます。

10分続けると、2〜3割遅くなる

もうひとつ、机の上では気づけなかったことがあります。発熱です。

連続して翻訳させると本体が熱くなり、10分ほどで速度が2〜3割落ちます。端末が自分を守るために計算を抑えるためです。しかも止めてもすぐには戻りません。3分ほど休ませる必要がありました。

これはアプリ側で消せる問題ではないので、隠さずに画面で知らせる方向にしました。機械なのに、そこは人間と同じだと思いました。

10分続けて翻訳すると本体が熱くなり2〜3割遅くなること、止めても3分は戻らないことを示した図
10分で2〜3割。止めても3分は戻りません。

速さと正しさは、だいたいいつも喧嘩している

翻訳の中身を軽くすれば速くなります。写真を圧縮するのに近い作業で、数字の細かさを落としていきます。

ただし落としすぎると、人の名前から順に壊れていきます。地名や固有名詞は、文脈で補えないので真っ先に崩れます。「速いけれど名前を間違える」翻訳は、接客では使えません。

どこで手を打つかは、結局ひとつずつ試して聞き比べるしかありませんでした。ここは今も続けています。

よくある質問

Androidだと使いものにならないということですか

いいえ。いまは実用的な速さで動いています。この記事は、そこへ至るまでに何を測って何を直したかの記録です。

発熱で遅くなるのは故障ではありませんか

故障ではありません。端末が自分を守るために計算を抑える仕組みです。少し休ませると元に戻ります。

古い機種でも動きますか

機種によって速さは変わりますが、動く範囲を広く取るように調整しています。実際の使用感は無料の範囲で試せます。

ほかの質問も見る →

この記事のアプリは、無料ではじめられます。

iPhone・Androidどちらでも使えます。

こちらの記事もどうぞ

ブログの一覧を見る →