SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2024 KANSAI セッションレポート

「うまい棒1本分」のコストで1年3か月分の処理を高速化! OpenAI Embedding APIで実現するレコメンド機能開発

【B-7】誰でもできる!OpenAI Embedding APIを活用して、高度なレコメンド機能を実現してみよう

  • X ポスト
  • このエントリーをはてなブックマークに追加

Embeddings APIによるベクトル化のメリットとは

 「Embeddings APIによって文章をベクトル化する利点は、主に2つある」と近藤氏は語る。第一に、ベクトル間の類似度を数値化できるため、2つの項目がどれだけ意味的に近いかを角度で計算し、類似度が高いほど「関連性がある」と判断できること。第二に、ベクトル間で加算・減算などの数値演算が可能になり、応用範囲が広がることだ。

 近藤氏は、特にベクトル間の類似度計算が重要であると強調する。例えば「現金」と「A銀行」をベクトル化した場合、両者が鋭角を形成し、コサイン類似度が0.85と高い値を示すことで、類似度が高いと解釈できる。一方、「現金」と「地代家賃」のように異なる意味の科目間では90度に近い角度を形成し、コサイン類似度が0.05と低いため、意味的に異なる項目として区別可能だ。

2つのベクトルの角度を求めることで、類似度を算出できる
2つのベクトルの角度を求めることで、類似度を算出できる

 このコサイン類似度を活用することで、Embeddings APIは単なる文字列の一致に依存せず、意味的な類似性を基に精度の高いレコメンドを実現する。近藤氏は「Mac」「Windows」「Prime」といった単語に対して「Apple」「Microsoft」「Amazon」といった関連性の高い単語をレコメンドするデモを紹介し、Embeddings APIが従来の曖昧検索より優れた類似性の抽出を可能にする点を強調した。応用例として、レコメンドによるGoogle検索やECサイトでの商品検索についても触れた。

 さらに、ベクトルの加算・減算による応用も可能だ。「IT」「オレンジ」「金融向け」といった要素のベクトルを合成することで、IT系でオレンジをテーマカラーとする金融企業、たとえばマネーフォワードのような企業がレコメンドされる可能性が高まる。また、「Apple」と「Laptop」を加算すれば「MacBook」に近いベクトルが生成され、商品の特徴を組み合わせた検索や推薦にも利用できる。

 「このベクトル演算をプロダクトに組み込めば、例えばECサイトの商品検索にも展開可能だ。ユーザーが『パソコン 小型』と入力した検索クエリに対してベクトル加算を用いることで、単純な単語の検索よりも、ユーザーの意図に近い商品を順位付けしてレコメンドできる。発想次第で、さまざまなプロダクトの価値向上につなげていけるはずだ」(近藤氏)

ベクトル同士を加算し、Embedding APIで数値計算を行った例
ベクトル同士を加算し、Embeddings APIで数値計算を行った例
ベクトル同士を加算し、Embedding APIで数値計算を行った例
ベクトル同士を加算し、Embeddings APIで数値計算を行った例

 近藤氏は、Embeddings APIの優れたコストパフォーマンスにも言及する。ChatGPTなどで知られるOpenAI社が提供するEmbeddings APIは、低価格で提供されている点が特徴だ。

 Embeddings APIはベクトルの次元削減もサポートしており、「高次元ベクトルは精度向上に寄与する一方、計算コストやメモリ負荷も増すため、次元削減のサポートは実用面で大きな利点だ」と近藤氏は解説する。

 また、Embeddings APIの課金体系は従量課金で、トークン消費量に応じて料金が発生するという。例えば太宰治の『人間失格』(約7万8000文字)を小規模モデルでベクトル化する場合、1ドルで1800時間分、本にすると600冊分の文章を処理できる計算になる。六法全書(約4000万文字)も1ドルでベクトル化が可能で、さらに余裕があるというから驚きだ。

 Embeddings APIにはバッチ処理も用意されており、リアルタイム性は犠牲にするがコストを半減できる。これにより『人間失格』なら1200冊、六法全書なら2冊分のデータを効率的に処理でき、初期データの構築や大量データのベクトル化に有用だという。

次のページ
「うまい棒1本分」のコストで1年3か月分の科目処理が可能に

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Developers Summit 2024 KANSAI セッションレポート連載記事一覧

もっと読む

この記事の著者

水無瀬 あずさ(ミナセ アズサ)

 現役エンジニア兼フリーランスライター。PHPで社内開発を行う傍ら、オウンドメディアコンテンツを執筆しています。得意ジャンルはIT・転職・教育。個人ゲーム開発に興味があり、最近になってUnity(C#)の勉強を始めました。おでんのコンニャクが主役のゲームを作るのが目標です。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

丸毛 透(マルモ トオル)

インタビュー(人物)、ポートレート、商品撮影、料理写真をWeb雑誌中心に活動。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/20556 2025/06/30 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング