生成AIでつくるニュースジェネレーションアプリのアイデア
コンセプト
あらゆる言語・地域の情報を元に、
パーソナライズされた記事を、
翻訳なしでユーザーの好みに合わせて生成し解説してくれるアプリ
ユーザーが画面をリロードすると新しい記事がその都度生成されて
常に新しいコンテンツを全世界の情報を元に、どんな言語を使う人にも提供できるアプリ
言語関係なく世界中の情報を、自分の言語で収集できたらめちゃくちゃよくないか?
着想背景
最近英語で情報収集をすることを意識して行なっているのだがやっぱり
得られる情報の伝達スピードや質が全然違う
中国語でも情報収集したいのだが、中国語を全く知らないため情報収集のハードルが高い。
+
英語で情報収集していてもよくわからない言い回しやキーワードがでてくるので、壁打ちしながら解説してくれるのが欲しい
+
世界中の情報に翻訳なしで誰でも手軽にアクセスできるの面白そうと思った
実現方法
・RAG×LLMを使用して記事生成
・多言語の埋め込みを使用して、参照情報をどんな言語でも検索・取得可能にする
・StableDiffusionやMidjourneyを使用したサムネイル自動生成
多言語の埋め込み(MultilingualEmbeddings)とは?
言語に関係なく、同一のベクトル空間上に単語や文章のembeddingを作成することができる。
例えば、「王」、「King」、「König」(ドイツ語で王)、をベクトル化して同一のベクトル空間上で表すことができる。
したがって、クエリが「王」だとしても、KingやKönigも含めて検索して「王」、「King」、「König」の3つを検索結果として返すことができる。
出典: https://haystack.deepset.ai/blog/multilingual-qa-with-cohere
要は入力のクエリが日本語だとしても、英語や中国語、ドイツ語などどんな言語の情報でもベクトル空間上から取ってこれる。
検索結果を取ってきたら、GPTにそのソースをその言語のまま参照情報として渡して記事を作成する。
(記事には参照情報のソースとしてURLを添付する)
参照:
翻訳して埋め込めば良くない?
極端な話全世界の人が全世界の情報をソースとして情報を取得できた方がよいと思う。
6900ぐらいの言語があるらしいが、その6900の言語情報を1つのベクトル空間だけで表すことで、6900言語のクエリに対応できる。
翻訳して埋め込むと、翻訳のコストがかかる+時間がかかる+ベクトルのインデックスを言語用に複数つくらなくてはいけないので多言語でサービス展開するときにはMultilingualEmbeddingsの方が合っている。
(検索精度を検証していないので別途行う必要があるが)
まずはChatGPTで軽く試してみた
多言語のソースを元に日本語の文章生成ができました。
これが英語でもドイツ語でも韓国語でもタガログ語でも参照できると思うとすごいですね。
・英語と中国語で参照情報を入れてみる
・生成された文章
軽く確認したところ中国語の内容も英語の内容も盛り込めています
課題になりそうなところ
・参照とする記事をどのように取捨選択するか
➡︎
解決策:
一番簡単なのはGoogleNewsのアラートに複数言語のキーワードで設定しておいて、
通知が届いたらそのニュース記事をスクレイピングしてベクトル情報として保存しておく
今後やること
・まず実現可能性とクオリティの検証を行う
・その後Xなどでコンセプト動画を流してみて反応をみる
Discussion