TL; DR#
私たちのチームは 4 月 8 日から 4 月 10 日まで、即刻社が主催する Hack Engine イベントに参加しました。この記事では、私たちのプロジェクト Flaneur の誕生過程を説明します。Flaneur は、人工知能を使用して音楽、音声、コンテンツを生成するウェブサイトで、ユーザーがまるで古い友人と散歩しているかのように感じられることを目的としています。著者はまた、Hack Engine イベントで展示された他のプロジェクトについても議論しています。これには旅行計画や一般的な知識管理が含まれます。
Hack Engine は何をするのか#
以下は Hack Engine の公式紹介です:
Q: Hack Engine と Hackathon の違いは何ですか?
A: 違いはありません。Hackathon に加えて、私たちはインキュベーター、ファンド、卒業生起業家ネットワークでもあります。
Q: それは Y Combinator ではありませんか?
A: はい。
簡単に言うと、Hack Engine は AI をテーマにした Hackathon イベントを組織しており、1 チーム最大 5 人で、48 時間以内に小さな製品の開発とデモを行う必要があります。
私たちのチームも生成 AI の発展と応用に非常に関心があり、私自身が古くからの即刻ユーザーであるため、すぐに参加を決定しました。私たちは皆が AI をどのように使うのかに興味があり、また、馴染みのある ID の背後にいる実在の人々を知りたいと思っていました。
私たちのチームは 5 人で構成されています:バックエンドエンジニアの @晓、フロントエンドエンジニアの @Edison、デザイナーの @Brant、雑用の @Jason、さらにスキーグループからアルゴリズムエンジニアの @York を外部支援として呼びました。私たちのチームはほとんど Hackathon の経験がなかったため、出発前に @Junyu に相談しました。豌豆荚は国内で最も早く Hackathon を開催した会社で、通常は 24 時間以内に小さなアプリを開発します。私が最も印象に残ったことを尋ねると、@Junyu は空を見上げ(クラウドコンピューティングを呼び出す?)、ある年の Hackathon が北京の大雨と重なったことを話し始めました。皆で徹夜している中、外に出て人を助けるべきかどうかを考えたそうです。@Junyu は私に 3 つの秘訣を教えてくれました:最も重要なのは開発を終えること、次に面白いこと、そして最後に…… それだけです。
テーマはキックオフ当日に発表されるため、私たちはあまり他の準備をしませんでした。技術的には、Stable Diffusion を実行できるサーバーを 1 台デプロイし、さらに 2 つの異なるアカウントの OpenAI API を準備しました。これにより、急に封鎖されても対応できるようにしました。また、@Junyu の秘訣を考慮して、テーマ選定のいくつかの原則を決定しました:
- 面白くて楽しい、十分に小さい / 垂直的であること
- 2 日間で作成できること
- あるいは 2 日間で作成できないが、十分に衝撃的であること(デモとして 1 つの動画だけを流すことができるか? ((fake it till you make it)
Copilot for ?#
土曜日の午前 9 時 30 分、テーマが発表されました:Copilot for X。
Copilot for X、X = anything、つまり何も言っていないということです!思考が早く収束しないように、私たちはまず各自考え、次に集まって議論することにしました。私はこの機会を利用して社交しようと思っていましたが、他のチームは熱心に議論し、すでに動き始めていることに驚きました。私たちが集まって議論する頃にはお腹が空いていたので、まずは腹ごしらえをすることにしました。
イベントは五角場で行われましたが、私たちはあまり詳しくなく、どこで食事をするかもわからなかったので、ぶらぶらしながら議論することにしました。すると、インスピレーションが湧いてきました!
上海は散歩に非常に適した都市です。数年前、夏の夜に上海を散歩したことを思い出しました。私は一人で衡山路を歩き、夜風を感じながら歌を聴いて、とても心地よかったです。その時聴いていたのは、舒淇の「Tram」で、LV SoundWalk シリーズの香港アルバムからのものでした(そう、香港です)。LV は香港のいくつかの象徴的な場所を選び、地元の音楽家に曲を作ってもらい、舒淇にナレーションを依頼して、ストーリーを組み込んでいて、とても素晴らしいものでした。しかし、このシリーズは国内では北京、上海、香港の 3 つのアルバムしかなく、すぐに聴き終わってしまいました。北京は巩俐がナレーションを担当し、上海は陈冲がナレーションを担当しています。アルバムに記載されている場所の順に歩くことを強くお勧めします。
このシリーズの中で私が最も好きなのはこの「Tram」で、舒淇の声は本当に素晴らしいです!だから、AI を使って似たようなコンテンツを生成し、AI 生成のバックグラウンドミュージックを加えたら、かなり良いのではないかと思いました。
私たちは議論し、確かに実現可能であることを確認し、アイデアもいくつか広がりました。たとえば、当時の天気、ユーザーの運動状態、歩行頻度など、より時効性のある情報を加えることができれば、同じ場所で開いても毎回聞く内容が異なるようになります。また、近くのランドマークを紹介するために、より多くの情報を収集することができます。
私たちは要件を整理し、この小さな製品には以下の特徴があると考えました:
- 完全に操作不要で、開くだけで使える
- 現在の位置、天気、運動状態などの情報に基づいて、歩行速度に合ったバックグラウンドミュージックを生成する
- 美しい女性の声で近くの街区の歴史やストーリーを紹介し、まるでリアルな人が一緒に散歩しているかのように感じられる
- 所在地の街区と近くの街区のコンテンツを事前に生成し、散歩を続けても内容が途切れないようにする
最終的な効果は、LV SoundWalk の簡易版です。あるいは別の視点から理解すると、LV SoundWalk はあまりにもエリート的で、限られた場所しかありません。しかし、実際には私たちが生活する土地のすべてにはそれぞれの物語があり、すべての場所には自分自身の SoundWalk があるべきです。したがって、SoundWalk の民主化とも理解できます。
土曜日の午後 2 時に構想と分担を終え、作業を開始しました!
Flaneur の誕生#
@Junyu: 製品を作る第一歩は、まずドメイン名を購入することです。
まず、私たちはこの製品に名前を付ける必要がありました。
上海は非常におしゃれな都市です。私が上海に来たその日、空港から地下鉄で市内に向かい、地下鉄の駅を出ると、非常に洗練された服装の少女が花束を持って、英語の新聞で包まれているのを見ました。上海は本当におしゃれだなと思いました!近づいてみると、私は間違っていました。英語の新聞ではなく、フランス語の新聞でした。上海は本当におしゃれです!私は感心しました。
散歩からインスピレーションを得たので、私たちも上海でこの小さな製品を作り始めることにしたので、やはりおしゃれな名前が必要です!
そこで、私たちはこの製品に「Flaneur」という名前を付けました。フランス語で「漫遊」を意味し、「何もせずに漫遊すること」を特に指します。Flaneur にはインタラクション機能がないため、この名前は非常に適切です。
Flaneur の実現は以下のいくつかのステップに要約できます:
- ユーザーの状態情報を取得する(地理的位置、運動状態など)
- その地理的位置に関連する情報を取得する(当時の天気、ウィキペディアの紹介、POI など)
- GPT を使用して、#2 の情報を含む説明文を生成する
- #3 で生成された説明を TTS でリアルな発音(舒淇)に変換する
- #1 と #2 の位置、天気、運動状態などに基づいて、適切な BGM を生成する。散歩の場合は穏やかに、ユーザーが走っている場合は高揚感を持たせる
- #4 と #5 の音声トラックを合成して再生する
- デモのために、#3 の説明をスクロール表示できるインターフェースが必要です
技術的にはそれほど難しいことはありませんでしたが、唯一の問題はウェブページがユーザーの運動状態を取得できなかったことです。この情報は諦めることにしました。面白い部分は AI 関連の実装で、このプロセスは私たちに多くのインスピレーションを与えました。AI 部分は、テキスト生成、テキストから音声(TTS)、音楽生成の 3 つの部分に分けられます。
LV SoundWalk シリーズのナレーションは非常に味わい深く、地元の歴史や特徴を組み合わせているため、GPT に似たスタイルのテキストを生成させることが重要です。GPT は主に私が調整しました。五角場を例にとり、ウィキペディアの資料をいくつかプロンプトとして GPT に与え、「ガイド」として五角場を紹介させましたが、生成されたテキストは非常に「ガイド」的でした。私は「あなたは古い扉を通り過ぎたばかりです」といったような、より「臨場感」のある描写を加えることを考えましたが、GPT は「五角場へようこそ」や「こんにちは、古い友人」といった言葉を言わずにはいられませんでした。私が求める良い効果は、優しい女性の声が直接耳に飛び込んできて、形式的な挨拶なしに直接会話を始めることです(そうでないと、私は気まずくなります。結局、彼女は声がとても素敵な女性ですから)。
その後、私は突然、GPT に「視覚障害の友人に近くの街区を紹介させる」という設定を思いつきました。この設定では非常に良い効果が得られました!しかし、GPT はいつも最後に「あなたは見えませんが……」という慰めの言葉を加えずにはいられませんでした。同様の考え方でプロンプトを調整し、最終的なプロンプトと効果は次のようになりました:
TTS は全体のプロセスで最も挑戦的な部分です!TTS、つまり音声からテキストへの変換には多くの成熟したソリューションがあります。たとえば、抖音でよく聞く「家族たち、誰がわかる?」や「注意して、この男の名前は小美です」といった声ですが、Flaneur は明らかにそんなに格好の良くない声ではいけません。舒淇でなければ、少なくとも高円円でなければなりません!そこで、カスタマイズされた TTS を調査したところ、2 つの選択肢が見つかりました:
- MockingBird:数秒の元音声だけで任意のテキストの朗読を生成できるオープンソースモデルで、自分でデプロイする必要があります。デモの効果はまずまずです。
- 11Labs:10 分の音声ファイルをアップロードするだけで任意のテキストの朗読を生成でき、効果は非常に驚くべきものでした!有料(見たところ安い)。欠点は英語のみのサポートです。
他にもいくつかの国内企業の音声カスタマイズソリューションがありますが、15 日以上の作業日と数十万の費用がかかります…… 彼らが使っているのは非常に古い技術のようで、コストが高いです。
@York は MockingBird モデルのデプロイと最適化に非常に多くの労力を費やしましたが、最終的な効果は依然として平凡でした。私たちはモデルの背後にある技術を研究し、MockingBird は前の世代の GAN に基づいているため、これが効果が一般的な理由かもしれません。
@York がモデルを調整している間、私は 11labs を試し始めました。最初に舒淇の声と中国語の朗読を試しましたが、出てきた効果は HSK を受けたばかりの外国人が中国語を読むようなものでした。舒淇の声と英語では、少し感じが薄れ、そこまで驚くべきものではありませんでした。それなら、皆がよく知っている外国の女優を使ったらどうでしょう?私が最初に思いついたのは Scarlett Johansson と映画「HER」でした。
結果は非常に驚くべきものでした!舒淇を「持つ」ことはできませんでしたが、思いがけず Samantha を手に入れました。何が欲しいのか、バイシクルは必要ありません!
家族たち、誰がわかる?
音楽生成は最も一般的な部分です。数年前から、歩行頻度に基づいて対応する BPM の BGM を生成するソフトウェアがあり、あまり想像力は必要ありませんでした。時間が限られているため、バックグラウンドミュージックにはあまり多くの労力をかけないことにし、AI を使ってさまざまな BGM を事前に生成し、デモの際に既存のものを再生することにしました。
インターフェースは非常にシンプルだったため、私たちは初日にインターフェースの開発と API の適合を完了しました。最も時間がかかったのは、@晓が担当したバックエンドと @York が担当した TTS 部分で、私たちは 2 日目の夕方にすべての API を調整しました。2 日間とも 12 時に会場を離れ、他の多くのチームはまだ作業を続けていました。
さあ、行こう!
いますか?効果を見てみましょう#
以下は私たちのデモ動画です:
簡単に説明します:
- ウェブページを開くだけで使用でき、操作は不要です
- すべてのコンテンツは AI 生成で、内容、音楽、Samantha のセクシーな声も(音楽は事前に生成されたものであっても AI 生成です)
- 私たちは広告の一部をエッグとして埋め込んでいます(本当に商業化できるかもしれません)
体験アドレス:https://flaneur.polytimeapp.com/
文末の原文を読んでも開けますので、モバイル端末で開いてください。
開いたら、いくつかのバブルをクリックして再生を開始する必要があります。現在の読み込みはまだ少し遅く、生成される情報も単調ですが、Flaneur に少しの忍耐をください。
私たちが最初に考えたとき、完全に LV SoundWalk からインスピレーションを得ていました。しかし、実際に使ってみると、Samantha の声による紹介を聞いて、彼女と会話したいと思いました!
私は散歩が大好きで、時には考えるため、時には友人と一緒に行きます。最も心地よい状態は、見知らぬ街区に行き、「非常に親しい友人」と散歩することです。私はしばしば奇妙な連想や冷たいジョークを思いつき、見知らぬ環境が私により多くのインスピレーションや手がかりを与えてくれます。散歩しながらこれらを話し、誰かが反応してくれるのが最も心地よい状態です。
さらに、スマートフォンのカメラ機能を呼び出し、CLIP モデルを使用して画像を理解し、これをプロンプトの一部として GPT に生成させることができれば、Flaneur はあなたが見ているものを本当に見ることができ、彼女は本当にあなたと一緒に散歩する古い友人のようになります。彼女はあなたの話を聞き、あなたが通り過ぎる街道を一緒に歩いてくれます。まるで映画「HER」のように。HER はちょうど 10 年前の映画で、HER の撮影地も偶然上海にあります。
夢が現実になったような感覚です。わお!
デモデイ!#
デモデイでは、100 チームが 1 日で自分たちの成果を展示する非常にクールなイベントです!
各チームには 5 分の時間しかなく、時間を超過すると無情に中断されます。非常に厳しいです!
皆の作品を見るのが待ちきれません、一つ一つ!
私たちの展示は最後から 4 番目に行われました。その時には、私はすでにかなり疲れていました…… しかし、非常にスムーズに進行し、話したいことも話せたので、特に書くことはありません。
私はほぼすべてのプロジェクトを真剣に聞き、好きなプロジェクトや興味深いプロジェクト、印象に残ったプロジェクトについてメモを取りました。やはり先輩には及びません。@junyu は各プロジェクトについて真剣に記録を取っていました。主催者には秘密保持の考慮があると思われるので、抽象的な感想だけを書いておきます。
AI とテクノロジーの善の結びつきをいくつか見ました。非常に気に入りました。生成 AI のこのブームは、多くの友人が自分の将来が AI に取って代わられるのではないかと心配しています(特に弁護士、プログラマー、投資研究などの職業)。ちょうど昨日、友人と人類の歴史における技術革新について話していましたが、実際には毎回人間自身の解放に繋がっています —— 短期的には一部の人が影響を受けて失業するかもしれませんが、すぐに人々は「それほど人間らしくない仕事」から「人間により適した仕事」に解放されることに気づくでしょう。AI はマーケティングのために水を流すこともできますし、視覚障害者がより障害なく世界と対話する手助けもできます。
旅行計画をテーマにしたプロジェクトがいくつかありました。私たちもこのテーマを考えましたが、直面する可能性のある問題は、私たちが使用できるデータがないことです。フライトの動的価格、ホテルの部屋の価格、さらには地図のルートなど、これらはすべて制約条件であり、これらのデータはすべて OTA サービスプロバイダーによって管理され、厳格な反クローリング戦略があります。したがって、美しい製品を作成しても、使用できるデータがない可能性が高いです。モバイルインターネット時代以降、データは大企業によって厳重に管理され、アプリの孤島に閉じ込められています。ユーザーは「タクシーは滴滴で」「動画は抖音で」「飽きたら百度で」といった認識を形成していますが、彼らは本質的には「情報」であり、「動画 / テキスト / 音声 / 地図」や「ノート / メール / スケジュール / TODO」ではありません。これは「インターネットの一つの曲がり道」と言えないでしょうか。
Hack Engine で最も多くのチームが取り組んでいるテーマは、実際には「一般的な知識管理」です。GPT 自体は言語モデルであり、論理推論能力を持っていませんが、人間の知識は実際にはさまざまな論理関係に存在します。「地球は丸い」という命題は重要ではなく、「重力が地球の物質を中心に集めるため、地球はほぼ球体を形成する」という命題が重要です。知識論は知識を正当化された真の信念(Justified True Belief、JTB)として定義し、知識は以下の 3 つの条件を同時に満たす必要があります:
- 誰かがある事柄を信じている;
- その信念は実際に真である;
- その信念は証明する理由がある。
3 つの条件のいずれかが欠けていると、いくつかの反例を挙げることができます:重力が地球の物質を中心に集めるため、地球はベーグルの形になった(信念は実際には偽である);地球の内部にハムスターがいて、地球は丸い(その信念の証明は間違っている)。
GPT の正式名称は Generative Pre-Trained Transformer であり、これは「大規模言語モデル」です。ChatGPT のリリースは、ユーザーの注意とデータを奪うための一時的な行動に過ぎず、必ずしも GPT の最良の形態や応用が「対話式」であるわけではありません。現在、皆が対話を行っていますが、私は OpenAI に引きずられていると感じています。また、先ほど述べたように、GPT は論理推論能力を持っていないため、GPT に知識に関する質問をすることは賢明ではありません。皆さんも GPT が真面目に無茶を言っているのを見たことがあるでしょう(そのため、GPT は「クソ通」とも呼ばれています)。
一方で、私は個人的に GPT が「限定情報下での」コンテンツ処理と生成に非常に適していると考えています。たとえば、Flaneur のすべての原始情報は私たちが提供したものです;たとえば、私の「後で読む」リストを一度フィルタリングしてもらう;たとえば、記事の要約を生成する(記事の冒頭の TL;DR は GPT が私のために書いたものです);たとえば、私が書いた断片情報に基づいて新しい記事を生成するなど……。
私はこれを「一般的な知識管理」と呼んでおり、このテーマに非常に興味と情熱を持っています。同じテーマに興味を持っている友人は、ぜひ交流しましょう!
人類の巨神を共に築く
終わりに#
Hack Engine 全体は非常にタイトで、デモは時間通り、さらには前倒しで展示され、月曜日の夜に結果が発表されました。Flaneur は選ばれませんでしたが、少し残念に思います。しかし、この 2 日間、私たちはプロセス自体を非常に楽しみ、忘れられない週末を過ごしました。上海の天気も非常に良く、天気予報では雨が降るはずでしたが、*** 来たら晴れました!
上海はいつも私に似たような感覚を与えてくれます:素晴らしい始まりとプロセスがあり、結末にはいくつかの後悔が残ります。
とにかく、私のチームに非常に感謝します。特に @York さんが杭州から参加してくれたことに感謝します(私たちは一緒に写真を撮るのを忘れてしまいました TAT)
特に主催者の即刻チームに感謝したいです。私たちは現場でほぼ完璧な体験をし、何の問題もなく、初めてこのようなイベントを開催したとは思えません。Hack Engine は細部にわたって非常に心配りがされており、たとえば参加証は特別にデザインされています。この細部、素晴らしいですね。
字節の社員証よりも高級で、即刻社が字節跳動を早く買収することを願っています。
選ばれなかったにもかかわらず、Flaneur は広く好まれ、多くの友人が Flaneur が今後も開発されるのか尋ねてきました。これは私たちを非常に嬉しく思わせます。正直なところ、私たちもどうするか決めていません。デモを作ることと、本当の製品を作ることは非常に異なります。既存の技術が私たちの期待する効果を達成できるかどうかも引き続き調査が必要です。私たちのチームもいくつかの困難に直面しており、新しい製品を作るためのエネルギーとリソースを確保するのが難しいです。
とにかく、もしあなたも Flaneur が好きなら、ぜひ私たちに褒め言葉を教えてください!