Tweet
Logo
    LLM を利用した EC の開発環境
    🤖

    LLM を利用した EC の開発環境

    • この記事を書いた人
    • はじめに
    • LLM と EC
    • 現状の課題
    • 課題を解決し得る仮説
    • OpenAIのAPIを利用したECの開発環境
    • この記事で伝えたいこと
    • 参考リンク

    この記事を書いた人

    DROBE で CTO をしている都筑です

    簡単なプロフィールはこちらをご覧ください

    都筑 友昭

    半導体のエンジニアとしてキャリアをスタート。回路設計や組み込みのソフトウェア開発などを行っていましたが、iPhone3GSの発売によりアプリ開発にハマりAppStoreの無料ニュースカテゴリで4位となった事をきっかけとしてソフトウェエアエンジニアにキャリアチェンジしました。

    info.drobe.co.jp

    はじめに

    みなさん、LLM 使っていますか?

    DROBE では 2023年3月に AIスタイリストさん という OpenAI の gpt-3.5-turbo を利用したサービスをリリースしました。

    パーソナルスタイリングサービスのDROBE、業界初※となるChatGPTを活用した自然言語でのアイテム・コーディネート検索サービス「AIスタイリストさん」をβ版で提供開始

    株式会社DROBEのプレスリリース(2023年3月29日 12時00分)パーソナルスタイリングサービスのDROBE、業界初※となるChatGPTを活用した自然言語でのアイテム・コーディネート検索サービス[AIスタイリストさん]をβ版で提供開始

    prtimes.jp

    パーソナルスタイリングサービスのDROBE、業界初※となるChatGPTを活用した自然言語でのアイテム・コーディネート検索サービス「AIスタイリストさん」をβ版で提供開始

    この記事では LLM を DROBE のサービスに活用するためにセットアップした環境を紹介します。

    少しでも気になった方や、LLM をサービスに応用していきたいという方はお気軽にご連絡ください!

    LLM と EC

    LLM と EC は非常に相性が良いと思っています。実際にインスタカートや shopify などがいちはやく LLM を自社のサービスに取り込んで話題になっています。

    ファッション EC の領域においてもヨーロッパのファッションテック企業である Zalando が ChatGPT を活用した EC サイトを作る事を宣言してニュースになっていました。

    Zalando to launch a fashion assistant powered by ChatGPT

    All informations about „Zalando to launch a fashion assistant powered by ChatGPT“ at Zalando Corporate, Current information about Zalando SE

    corporate.zalando.com

    Zalando to launch a fashion assistant powered by ChatGPT

    DROBE の AIスタイリストさん もこれらのサービスに非常に近く、ユーザーに主に以下の 2 つの利便性を提供しています。

    1. 自然言語を理解してくれるので曖昧な言葉で検索が行える体験
    2. 会話のコンテキストを保持してくれるので、検索ワードをいちいち考えなくて良い

    1 は例えば 友達の結婚式にいくためのドレスを提案して欲しいというような曖昧なニュアンスでの検索を可能にするものです。

    2 は、例えば友達の結婚式にいくためのドレスを提案して欲しい と検索した後に提案を踏まえ、もう少しカジュアルなものを提案し といった自然な会話形式で商品の探索が行えるというものです。

    image

    特に 2 の会話のコンテキストは、オフラインのお店で店員さんと自然な会話をしながら自分にマッチする商品をみつける体験に酷似しており、従来の検索体験を大きく変えるポテンシャルがあると考えています。

    現状の課題

    LLM を利用した EC はポテンシャルが高いと考えていますが、 AIスタイリストさん ではまだやりきてれいない部分が多く残っています。

    LLM は 何を言ったか は理解してくれるのですが 誰が言ったか については理解してくれないので、例えば 友達の結婚式にいくためのドレスを提案して欲しい というリクエストが来た時に、年齢や職業などに関わらず同じような結果を返してしまいます。(これらは今後マルチモーダルな LLM が一般化していくと解決される可能性があります)

    もちろん LLM との会話に 自分は30代の会社員ですというような事を伝えれば考慮はしてくれるはずですが、オフラインで店員さんと会話する体験を想像すると煩わしさがあると思います。

    その他にも、現状の AIスタイリストさん では LLM の提案を一度 embedding に変換し、事前に embedding にしておいたコーディネートの中で一番近いものを提案として採用するという仕組みで動いていますが、embedding の類似度だけではどうしてもユーザーの好みを反映しきれないという課題もあります。

    課題を解決し得る仮説

    これらの課題に対して、LLM を検索エンジンやレコメンドエンジンと組み合わせるという事が解決策になりえると考えています。

    例えば、LLM に提案をしてもらう前段で検索エンジンやレコメンドエンジンを使いユーザーに対してある程度有用な商品だけを抽出し、それを使って LLM に提案を作ってもらう、などが考えられます。

    LLM を高性能な汎用 AI として利用しつつ、既存の検索エンジンやレコメンドモデルなどと組み合わせる事でさらに最適な提案を出来るようになるという仮説を持っています。

    LLM とドメイン知識であるコンポーネントを協調動作させるという概念
    LLM とドメイン知識であるコンポーネントを協調動作させるという概念

    この考えかたは ReAct: Synergizing Reasoning and Acting in Language Models という論文で紹介されているものと非常に近いものであると考えています。

    LLM の使い方として興味深い考え方であり、ご興味をもった方は是非読んでみてください。

    OpenAIのAPIを利用したECの開発環境

    LLM を検索エンジンやレコメンドエンジンと組み合わせるのは有効なアイディアである可能性が高いと考えていますが、検証はなかなかに面倒です。

    性能を定性的にでも評価するためには本番と同じようなデータを持った検索エンジンや、本番と同じ挙動をするレコメンドエンジンと組み合わせて利用する事が必須になってくるからです。(もちろんソフトウェア開発という意味では mock などを組み合わせて進める事が可能だと思います)

    DROBE ではセットアップの面倒さを排除しつつ、仮説の検証を高速に行うための検証環境を整備しました。

    LLM としては OpenAI の API を利用する事を想定しています。

    概要としては下記の図のようなものになります。

    検索、レコメンド、LLM を協調動作させるための開発環境
    検索、レコメンド、LLM を協調動作させるための開発環境
    コンポーネント名
    内容
    frontend
    react で書いた FE 簡素なものがあるが、必要に応じて開発する
    backend
    go によるバックエンド ここにビジネスロジックを書いていく
    dynamodb
    data store 本番に近い形のユーザーデータを置く
    gpt_backend
    OpenAI の API を叩く fast api を利用 prompt などはここに書いていく想定
    recommend engine
    自社開発したレコメンドエンジン pytorch を利用 開発環境では本番用にトレーニングされた weight を使えるようにセットアップ
    search engine
    検索エンジン 本番相当の商品データを入れておく

    レコメンドエンジンと検索エンジンが本番とほぼ同じように動くようにデータやモデルをセットアップし、その環境をコンテナ化しました。

    開発者は gpt_backend に prompt などを書きつつエンドポイントを定義し、go の backend サーバーに各コンポーネントを協調動作させるビジネスロジックを記載していく形になります。

    開発環境のコンテナ化には GitHub の Codespaces を使いました。

    Mac や PC のスペックに関係なく数分でセットアップが完了した状態の開発環境が立ち上がるようになっているため、開発者は一番重要である prompt エンジニアリングや、協調動作をさせるためのビジネスロックの検証に集中出来ると考えています。

    この記事で伝えたいこと

    DROBE は LLM を活用して新しい EC の形を模索していきます。

    開発に必要な環境は整いつつあり、プロンプトエンジニアリングや各コンポーネントの協調動作部分の開発を進める事でサービスや社会に大きなインパクトを出し得ると考えています。

    少しでも気になった方や、LLM をサービスに応用するような開発をしたい方、是非お気軽にご連絡ください!

    参考リンク

    twitter や Youtrust などの DM はお気軽にお願いします!

    tsuzukit2

    twitter.com

    YOUTRUST | 日本のキャリアSNS

    YOUTRUST(ユートラスト)は友達とつながりプロフィールを埋めるだけで、スタートアップ企業などから転職・副業のスカウトが届く日本のキャリアSNS。コミュニティ・投稿等の機能を通じて、新しいつながり作りや、キャリアに役⽴つ情報を集めることができます。30秒でユートラに簡単登録!

    youtrust.jp

    YOUTRUST | 日本のキャリアSNS

    採用ページはこちら!

    3分でわかるDROBE We are hiring!!

    株式会社DROBEの採用情報です。「ヒトとモノの出会いをデザインする」というミッションを掲げて、サービスを一緒に創っていきたい方々に向けて、DROBEの概要・事業・価値観をお伝えします。

    info.drobe.co.jp

    3分でわかるDROBE We are hiring!!
    © 2025 DROBE All rights reserved.