今日はMuboの新しいサービス「Ask Taka」実装へのチャレンジ第一弾。
“Ask Taka”とは?
「Ask Taka」は、音楽理論に関する質問を僕がMubo内で話した内容をベースに答えていくAIベースのQ&Aサービスを目指す。
Muboのレッスン動画も70本を超え、それをベースにあなたの疑問や質問にまるで僕に直接質問するようにすぐに答えを提供したい!という思いで開発してみる。
例えばMubo会員が
『自分の曲を作っているんだけど、なんかいまいち!いつも同じ感じになってしまう!』
とAsk Takaに聞くと、名曲のコード進行や、自分の曲にジャズ要素、ゴスペル要素を入れる方法、色々なアレンジの方法、などを教えてくれてそれについての動画のリンクも紹介してくれる。なんてのが目標だ。
App版 vs ファインチューニング
サービスの開始にあたり、App版とChatGPTのファインチューニングのどちらから始めるかで悩んだ。
App版はユーザーの体験のクオリティが高く、宣伝効果やダウンロード収益もある一方で、開発コストが高くなる可能性がある。
一方、ファインチューニングは、既存のコンテンツをベースに効率的にサービスを提供できコストも安く済む可能性がある。
ファインチューニングとは?
簡単に言うと、機械学習の分野ですでに学んだことをベースに、新しいことをもっと上手に学ぶための微調整のことを指すようだ。
Chat GPTは大量のテキストデータで事前学習されているが、特定のタスクに特化したモデルを作成するために追加のデータセットでのファインチューニングが行うことができる。
今回は僕がMUBOで話している音楽理論の言語や、専門的な知識をAIに覚えさせるために使う。
ファインチューニングの実装
ファインチューニングの実装には、まずMuboの動画コンテンツをテキストに変換し、それをデータベースとして使用する。
このデータベースをもとにOpenAIの技術を使用して、質問に対する答えを生成する
さらに、今coefontと言う自分の声を登録できるサイトに自分の声を登録している。
ASK TakaにCoefont のサービスを組み合わせると、僕の声で答えを読み上げる機能も追加できるかもしれない。
それにはAPIというものをCoefontに提供してもらわなくてはいけないが、それの値段は交渉しだいだ。法外な値段にならないことを願う。
APIとは?
「API」とは、コンピュータやアプリ同士がお互いに話すためのルールや方法のことを指すらしい。例えば、レゴブロックをつなげるときのつなぎ方のルールのようなものか。
このルールに従ってコンピュータやアプリはお互いに情報を交換したり、協力して動作することができる。
つまりAPIを使ってMuboとChat GPTやCoefontを融合できるということ。
まぁ僕の声で答えを読みあげるのはあくまでプラスアルファだが、こういう無駄なことにこそやる気を発揮してしまう僕はバカだなといつも思う。
ファインチューニングを使用した音楽理論Q&Aサービスの具体的な作り方: