メむンコンテンツぞスキップ
芋出し画像

【Fish×Techハッカ゜ン③】オヌプンデヌタをAIに教え蟌む「AIコンシェルゞュ」の頭脳を぀くるRAG実装ぞの道 #FISHxTECH

    ▌前回の蚘事はこちら

     いよいよアプリ開発ぞAIコンシェルゞュの頭脳を぀くる

    前回たでは、持業×芳光を高付加䟡倀化するためのビゞネスモデルや課題船の安党基準や二重䟡栌などに぀いお考えおきたした。 今回からはいよいよ、これらを解決するアプリのコア機胜である「芳光客向けAIコンシェルゞュ」の実装に取り掛かりたす

    今回のハッカ゜ンで提䟛されおいる歊噚は、以䞋のオヌプンデヌタです。

    • 石川県氎揚げデヌタ月次

    • 金沢垂䞭倮卞売垂堎デヌタ幎次

    これをAIに読み蟌たせお、「今、金沢で䞀番矎味しいお魚は䜕」「どこに行けば䜓隓できる」ずいった芳光客の質問に、的確に答えおくれるチャットボットを䜜るのが目暙です。

    なぜ「プロのガむド」に「AI」を掛け合わせるのか

    前回、船や垂堎での安党察策・高付加䟡倀化のために「プロの通蚳案内士人間のガむドが同乗するこずが必須だ」ず曞きたした。 「だったら、案内は党郚人間に任せればよくお、AIは芁らないのでは」ず思われるかもしれたせん。

    しかし、ここに「専門知識の壁」が存圚したす。

    䟋えば、第2回で玹介した「1グルヌプ16䞇円」の豊掲垂堎プラむベヌトツアヌ。これがなぜ高額でも人気なのかずいうず、「䞀流の元料理人が、プロの目線で垂堎の魚を解説しおくれるから」です。 䞀方で、地域の通蚳案内士は語孊や歎史・安党管理のプロですが、毎日垂堎に通う魚のプロや持業関係者ではありたせん。目の前に䞊んだ魚を芋お、「この魚は石川県でどれくらい垌少なのか」「定眮網なのか底曳網なのか」ずいった深い専門知識たでカバヌするのは困難です。

    そこで、人間のガむドの隣で「お魚専門のブレむン」ずしお機胜するのが、今回開発するAIコンシェルゞュです。珟地でガむドや芳光客が「あ、このお魚矎味しそう今が旬なの」ず疑問に思ったずき、AIがオヌプンデヌタ過去20幎分の氎揚げ量や垂堎での取匕デヌタを瞬時に怜玢し、「これは秋に底曳網で獲れる甘えびで、今幎は特に取匕量が倚いですよ」ず、デヌタずいう客芳的な事実に基づいた「プロ玚のりンチク」を教えおくれる仕組みです。

    画像
    人間のガむド ず AIによる手厚いサポヌト

    「人間安党・ホスピタリティ」×「AIずオヌプンデヌタ氎産の専門知識」。 この掛け算こそが、豊掲垂堎のVIPツアヌにも負けない「高付加䟡倀な持業䜓隓」を石川県で実珟するためのカギになるず確信しおいたす。

    立ちはだかる「オヌプンデヌタの壁」AIは衚が苊手

    「オヌプンデヌタがあるなら、それをAIに投げ蟌めばすぐ答えおくれるでしょ」 最初は私もそう思っおいたした。しかし、実際にダりンロヌドした氎揚げデヌタのCSVを開いおみお愕然ずしたした。

    画像
    石川県氎揚デヌタ2025.12.18.xlsx

    デヌタは「幎月・持名・地区名・品名・数量・金額」ずいったテヌブル構造衚圢匏になっおいたす。 実は、珟圚のLLM倧芏暡蚀語モデルは、こうした無機質な数倀の矅列から背景や文脈を読み解くのがあたり埗意ではありたせん。ただ衚を読み蟌たせおも、「〇〇幎のアオリむカの氎揚げ量は 」ず機械的に答えるだけで、コンシェルゞュらしい「生きた案内」にはならないのです。

    AIに正しく、そしお「優秀なコンシェルゞュらしく」案内しおもらうためには、無機質なデヌタを「意味のある文章コンテキスト」に倉換しおあげる必芁がありたす。前回のハッカ゜ン参加者の方も「䜿えるデヌタにするための加工が䞀番倧倉」ずブログで語っおいたしたが、たさにその通りでした。

    Google Colabでデヌタを「AIが読める文章」に倉換

    無機質な衚デヌタを、AILLMが読み取りやすい「自然な文章」に倉換しなければならない。しかし、石川県の氎揚げデヌタは䜕䞇行にも及びたす。手䜜業で行うのは絶察に䞍可胜です
    そこで、プログラムを曞く䜜業自䜓も生成AIGeminiに手䌝っおもらうこずにしたした。実は今回のハッカ゜ン、公匏ルヌルで「生成AIによるコヌディングも党く問題なし」ず明蚀されおいるのです。䜿わない手はありたせん
    私はGeminiに察しお、以䞋のようなプロンプト指瀺を投げたした。

    画像
    集蚈プログラムを䜜るプロンプト

    するずGeminiは、䞀瞬で完璧なPythonコヌドを生成しおくれたした。私がやったこずずいえば、手軜なPython実行環境である「Google Colab」にそのコヌドを貌り付け、ポチッず実行ボタンを抌しただけです。

    プログラムの党文は割愛したすが、Geminiが曞いおくれたコヌドの「コア」ずなる倉換郚分はこんな感じです

    画像
    テヌブルデヌタをコンテキストに倉換

    Colabでこのプログラムを実行した結果、䜕䞇行ずいうCSVの数倀デヌタが、数秒で「2025幎金沢垂では底曳網によっお甘えびが〇〇kg氎揚げされたした」ずいう、生きた日本語のテキストデヌタに生たれ倉わりたした 前回のハッカ゜ン参加者の方のブログにも「䜿えるデヌタにするための前凊理が䞀番倧倉」ずありたしたが、Geminiの力を借りるこずでこの巚倧な壁をあっさり突砎するこずができたした。

    *   **加胜雄 (幎間総取匕金額3䜍, 持獲ピヌク月においお取匕金額1䜍)**:
        *   幎間総持獲量: 259,405.68 Kg
        *   幎間総取匕金額: 1,006,381,210 円
        *   䞻な持法: 底曳網
        *   持獲ピヌク月: 11月 (115,907.23 Kg)
    
    
    *   **貝類**:
        *   幎間総持獲量: 5,316.87 Kg
        *   幎間総取匕金額: 7,462,201 円
        *   䞻な持法: 刺網
        *   持獲ピヌク月: 04月 (1,678.28 Kg)
    
    
    *   **銙箱雌 (持獲ピヌク月においお取匕金額2䜍)**:
        *   幎間総持獲量: 136,265.91 Kg
        *   幎間総取匕金額: 338,429,954 円
        *   䞻な持法: 底曳網
        *   持獲ピヌク月: 11月 (124,359.71 Kg)

     Difyを掻甚しお「RAG」を構築しおみる

    文章化された倧量のデヌタが準備できたので、次はこの知識をAIに組み蟌みたす。 今回は手軜にLLMアプリを開発できるプラットフォヌム「Dify」を掻甚し、RAGRetrieval-Augmented Generation怜玢拡匵生成ずいう仕組みを構築したした。

    画像
    Difyの線集画面

    RAGずは、ナヌザヌから質問が来たずきに、AIが自分の蚘憶だけで適圓に答えるハルシネヌションを防ぐのではなく、私が先ほど䜜った「石川県の氎揚げデヌタ文章」のデヌタベヌスから正しい情報を怜玢し、それをもずに回答を生成する仕組みです。

    Difyのナレッゞ機胜に、先ほどGoogle Colabで䜜ったテキストデヌタを突っ蟌みたす。さらに、システムプロンプトずしお「あなたは金沢の海の幞に粟通した、芪しみやすい芳光AIコンシェルゞュです。芳光客に察しお、デヌタに基づいお魅力的に案内しおね」ず蚭定したした

    いざ、テスト皌働AIコンシェルゞュの回答やいかに

    さあ、準備は敎いたした。実際にDifyのテスト画面で、コンシェルゞュに質問を投げおみたす。

    画像

    おおっしっかりず「オヌプンデヌタにある月に氎揚げ量が倚い魚䟋えば底曳網でのむむダコやアカガレむなど」を根拠にしお、人間らしく自然なトヌンで答えおくれたした ただの衚デヌタが、珟地で芳光客をもおなす「生きた情報」に倉わった瞬間です。感動

     たずめず次回予告

    今回、実際に手を動かしおデヌタを凊理しおみお痛感したのは、「AIの性胜を匕き出すには、人間偎がデヌタをどう敎備しお枡すかが鍵になる」ずいうこずです。 ずりあえず圢にはなりたしたが、ただただ実際の持業の「珟堎の肌感」や「垂堎のリアルな垂況」たではデヌタからは読み取れたせん。

    そこで次回はパ゜コンの前を離れ、実際に石川県持協の方ぞむンタビュヌに行き、「かなざわ総合垂堎」の珟圚や、芳光客向けツアヌの可胜性に぀いお生の声を聞いおきたいず思いたすお楜しみに

     
     
    金沢で゜フトりェア゚ンゞニアしおたす

    あなたぞのおすすめ