見出し画像

3時間で観光DXアプリを作って−25度のモンゴルでキリル文字が読めない中店選び問題を解決した話

この記事に向いている人
・観光DXのヒントを探している人
・エンジニアの社会問題解決に興味がある人
・サクっとアプリを作ることに興味がある人


1.英語表記少なくキリル文字だらけのモンゴル

私が観光DXアプリを作ったのは12月のモンゴルはウランバートルに出張の時です。私は日常会話程度の英語もギリギリの語学力スペックの人で、モンゴルの言語も下調べもせず不安のまま、ウランバートルに到着しました。

その不安は的中…ウランバートル市内にはロシア語キリル文字が溢れています。大手コンビニ「CU」にいくと、ペットボトルの成分表記もキリル文字でミネラルウォーターと間違って炭酸水買ってしまったり、食料品を温める電子レンジもキリル文字表記で適当に温めたらピザを焦がしました逆に英語表記が殆どない町ウランバートル…これは大変な所に来てしまったと1日目から痛感。

結論、モンゴルは英語の優位性が低い国です
英語話せる人は高学歴だったり留学経験ある方で、コンビニの店員とか飲食店のスタッフには英語が通じないのがリアル。高学歴の方は日本語も片言は話せるので、英語ができない不便は逆に感じない。学ぶべきはモンゴル語ななのは明らかですが、流石にそんな暇はなかったですね(帰国してから勉強し始めたのは内緒)

下手な日本の都市より都会な160万人都市ウランバートル

こんな時に役に立つのが「地球の歩き方」です…しかし12月のモンゴルは-25度を記録する厳寒期。地球の歩き方を開いて店を調べていたら指先がジーンとし始め、そのうち感覚がなくなる。これはやばい凍傷ですよね。ということで「地球の歩き方」も厳寒期には向かないわけです。

凍傷への誘い「地球の歩き方」

ならば、少なくとも滞在中は不便や不満がないように、観光DXアプリを作ろう、と思い立ったのが2日目の私。旅先であってもスキマ時間はあるもので、合計3時間ほどで写真をUPすると3つの機能で返答する観光DXアプリができました〜
機能:モンゴルのお店か、否か判別する
機能:キリル文字は翻訳する
機能:店の場合はその売り物や名物をピックアップする

作ったアプリ

2.高速アプリ開発に必要な4スキル

短時間でアプリを作り、スマートディバイスで使えるようにリリースするには4つのスキルが大事だと考えます。これはアプリ開発だけじゃなくて、新事業開発とかスタートアップにも共通することだと思うので、関係者は共感いただけると幸いです。

渋滞凄すぎて歩いた方が早いウランバートル中心

スキル1:「不」を言語化する力

世の中には「不」が溢れていて、うまく解決に導くことがビジネスの基本。この辺は釈迦に説法かと思います。

モンゴルの場合キリル文字が読めない「不便」何の店だか分からない「不満」、寒過ぎる「不満」とかありました。この辺は12月にモンゴルに行った日本人は全員一致で認識していると思います。

ポイントは言語化して解決方法に導くことです。

・キリル文字読めないなら、キリル文字を読んでくれるアプリを作るべし
・店が分からないなら、店を解説してくれるアプリを作るべし
・寒過ぎるなら、素早く返答してくれるアプリを作るべし

出典は私の頭の中

これだけアプリの仕様が大枠固まりました。

スキル2:生成AIを使いこなす力

ちまちまアプリを組んでいると、短時間でリリースできません。「不」を認識したら、すぐに生成AIに問いかけましょう。私はFlaskなら簡単でしょ、と経験則で理解していたので、以下のプロンプトで事始め。

[ニーズ] 
*ウランバートルに出張に行っています。 
*モンゴルのキリル文字が理解できません。撮影した写真を日本語で説明してほしい 
[要件] 
* チャットボット形式で対応したい。 
* チャットボットで利用者は写真をアップロード。 
* 建物であれば、施設の種類やお店の名前を抽出し日本語で解説
* お店であれば名物とか強みとかをコメントしてほしい
* チャットボットの返答は生成AIが行う。
[仕様]
* クラウド基盤はgoogle runを使用
* 生成AIはGoogle gemini flashを使うこと
* アプリケーションサーバーはflaskを使用するので、ビジネスロジックはpythonを使用
* フロントエンドは軽量を意識してほしい
* 外がとにかく寒いので、処理の進捗がわかるステータスバーをフロントにつけて欲しい

ポイントはキャッチボールを厭わないこと。人間と親しくしようとすれば会話のキャッチボールが必要なのは間違い無く、生成AIも同じ。お互い寄り添っていけば思いは通じます。

スキル3:アルゴリズム知識

世の中の何を組み合わせれば、解決したい「不」が解決するか、はビジネスを展開する上で必要不可欠な知識なので、皆がそれ相応に持っているはず。

これがインターネット上でアプリを展開したい、となるとアルゴリズムの知識が求められます。以下の図が瞬時に思い浮かべば、もしくはこの図が大体理解できれば、あなたはアルゴリズム知識は合格です。

今回のアプリのアルゴリズム

スキル4:クラウド基礎と経験

今までの3つのスキルでアプリ開発は足りますが、高速リリースして、多数の人の「不」をすぐに解消したいと思えば、クラウド環境にリリースしてアクセスしてもらうのが王道でしょう。

私は中小企業診断士だったり産学連携の担当者だったとエンジニアとは程遠い稼業をしているのに、AWSとGoogle Cloudは常日頃からガチャガチャいじっている変人なので、この高速リリースができたのだと考えます。

つまり自己研鑽はとても大事ということ
逆に普段からクラウド環境に接していないと、次の要素が不足する為に高速リリースへの道は険しいと考えます。

1.有料アカウントがPaaSに持っていない 
クレカ登録したり本人認証したりしている間に時間が過ぎます。また有料アカウントでクラウド触ったことがない人は費用の勘所が乏しく、とんでもない請求が来るのでは?と怖くなり後退りするのも時間ロス。

2.ロールの考え方がわからない
セキュリティ上の問題。公開時にAPIの公開範囲、アカウントの制限がないと危なく、後からセキュリティ関係で事故を起こしがち。逆に適切にロール設定しないとアプリがそもそも動かないのも…

3.どんなサービスがあるかわからない
今回の試みは、google runを使いました。昔1回だけ使った経験が活きたケースになります。
google runはRaspberry Pi 3をクラウド上で使っただけ課金されるサービスと思えば概ね合っている。引き出しの多さが勝負を分けるのは何事も一緒です。

3.鼻毛もまつ毛も凍る寒さ..アプリ速度が重要

処理中…はユーザビリティ上とても重要…

モンゴルは寒すぎて人間にもスマホにも過酷な環境、パフォーマンスの部分では苦労したので、2つ紹介します。

問題1 元画像をそのまま生成AIに送ると返答が遅い

Flaskアプリ側で800*800にリサイズしてからgeminiに送る仕様で解決。多少画像のアスペクト比が狂っても何とかなるでしょ、という乱暴仕様。それでも精度高く返答してくるので対応としては及第点。

問題2 生成AIも最近長話傾向で遅い

最近の生成AIは寂しがり屋なのかとても話が長い。最初は生成AIからの返答をアプリ側で200文字カットする仕様にしていたが、導入部分だけ読んでも意味がわからんので、生成AI問い合わパラメータで対応

'max_output_tokens': 100

100トークン約200文字(スマホの1画面に収まる程度の文字数)の仕様

4.まとめ

Google runはアプリは簡単に作れるので、旅先で出会った問題を高速で解決するのにフィットするし、チャットボット形式の観光DXアプリは国内外どこでも活用できると考えます。
これがあれば観光名所に多言語案内板も必要も無く、観光DX推進につながる訳です。日本語の説明があれば、翻訳や建物情報はAIに任せればいいのですから。

マイナー言語の外国人が日本で観光する時にも有用だと思っています。
観光に力入れたいけど、予算が乏しい自治体とかにピッタリでは?

詳しい話や相談はコメント欄で待ってますm(_ _)m
以上です。

いいなと思ったら応援しよう!