Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LLMと自社データベースの協調動作による ファッションECへの応用

LLMと自社データベースの協調動作による ファッションECへの応用

kishimoto

May 11, 2023
Tweet

More Decks by kishimoto

Other Decks in Technology

Transcript

  1. DROBEの保持する主なデータ
 • ユーザーのプロフィール 
 • アイテムの情報
 • アイテムのコーディネート 
 •

    コーディネートのポイント 
 • ユーザーの自然言語によるスタイリングの要望 
 ◦ ”結婚式に着ていける服をお願いします”のような 

  2. プロンプトの工夫
 • 最初期
 ◦ (以後、ハイパラは基本デフォルト) 
 ◦ 回答の文章の雰囲気がスタイリングカルテと異なる 
 ◦

    出力の形式が不安定 
 ▪ 箇条書きだったり文章だったり 
 ▪ コーディネートを複数生成したり 
 あなたはファッションに詳しい親切なスタイリストです。 私はこれからテーマを与えます。スタイリストであるあなたはそれに沿ったコーディ ネートを生成してください。 system
 女子会コーディネートを教えて user

  3. プロンプトの工夫
 • 以下によりスタイリングカルテの雰囲気に近く、安定した形式の回答が得られるようになった 
 ◦ Few-shot prompting 
 ◦ 明確な指示


    Q: スニーカーの全身コーディネートをお願いします A: スニーカーを使ったおすすめのスタイルをご提案します!フードが取り外し 可能なコートは、ウエストのコードを絞ってシルエットの変化もお楽しみいただ けます。インナーにはバイカラーのラインが印象的なニットを合わせて、ボトム スは春らしいカラーパンツを ♪足元はホワイトのレザースニーカーで大人カジュ アルに◎ … Q: 女子会コーディネートを教えて - 女性向け - 箇条書きではなく文章 - 3行以内で
  4. プロンプトの工夫
 あなたは洋服のスタイリングを行うアシスタントです。以下のような json形式でリクエストが送られます。 ''' {"items":[{"色":"ブラウン","カテゴリ":"ジャケット","素材":"","柄":"千鳥","シルエット":"長袖"},{"色":"ブルー","カテゴリ":"スカート","素材":"ポリエステル, アクリル, レーヨン","柄":"チェック","シルエット":"フレア(スカート・ワンピース ), ロング(スカート)"},{"色":"ブルー","カテゴリ":"ニット","素材":"ウール, ナイロン,

    アクリル"," 柄":"無地","シルエット":"長袖, ビッグシルエット"}],"request":"花見に着ていける服を教えて "} ''' itemsはファッションアイテムのリストです。 requestはユーザーの質問です。 以下のようなjson形式で返答してください。 {"desc":""} descにはitemsで構成したコーディネートのポイントを記載してください。その際 itemsのアイテムだけを使って説明文を作ってください。 itemsに同じカテゴリの itemが複数存在する場合は、同じカテゴリの中で 1つのitemだけを使って説明文を作ってください。 {"items": [{"色": "グリーン", "カテゴリ": "ワンピース", "素材": "ポリエステル", "柄": "無地", "シルエット": "ノースリーブ, ひざ丈, ひざ下丈, ミモレ, フレア(スカート・ ワンピース)"}, {"色": "グリーン", "カテゴリ": "ニット", "素材": "ポリエステル, ナイロン, レーヨン", "柄": "無地", "シルエット": "長袖, パフスリーブ"}],"request":"女子 会コーディネートを教えて "} system
 user

  5. プロンプトの工夫
 • アイテムのメタ情報をだけでなくユーザーの入力もjsonとして与えた 
 ◦ “女子会にぴったりなコーディネートを提案します。”のような入力を考慮した回答を生成してくれた 
 
 • メタ情報に含まれるアイテムのみで説明を作るように

    
 ◦ Hallucination対策
 
 • 出力もjsonで生成させるようにした 
 ◦ jsonでないと各アイテムの説明を冗長にする回答、jsonだとポイントを絞った回答が得られる傾向 
 {"items": [{"色": "グリーン", "カテゴリ": "ニット", "素材": "ポリエステル", "柄": "無 地", "シルエット": "長袖, パフスリーブ"}],"request":"女子会コーディネートを教え て"} {"items": [{"色": "グリーン", "カテゴリ": "ニット", "素材": "ポリエステル", "柄": "無 地", "シルエット": "長袖, パフスリーブ"}],"request":"女子会コーディネートを教え て"} その際itemsのアイテムだけを使って説明文を作ってください。 以下のようなjson形式で返答してください。 {"desc":""}
  6. システム構成
 • バックエンド
 ◦ App Runner, Python, FastAPI, Faiss 


    • フロントエンド
 ◦ Vercel, Next.js, Tailwind CSS 

  7. 今後の展望
 • 現状の課題
 ◦ 誰が言ったかを考慮していない 
 ▪ 20代にも50代にも同じアイテムが提示される 
 ◦

    細かい要望を汲み取れない 
 ▪ ”パンツだけもっと暗い色が良い”など 
 ▪ スタイリングカルテとのembeddingの類似度だけでは難しい 
 • 展望
 ◦ LLMを自社の検索エンジン・レコメンドエンジンと協調させる 
 ▪ LLMでメタ情報を獲得して検索エンジンでアイテムを検索し、レコメンドエンジンでパーソナラ イズ
 ▪ 検索エンジン・レコメンドエンジンでパーソナライズされたアイテムを抽出して、LLMに提案を 作ってもらう
 ▪ etc.
 ◦ ユーザー向けだけでなく内部のオペレーション改善にも組み込む