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

ChatGPTプラグイン開発から始める
 LLM活用戦略

ChatGPTプラグイン開発から始める
 LLM活用戦略

タイトル:ChatGPTプラグイン開発から始める
 LLM活用戦略
発表者:佐々木 俊一(スマートキャンプ株式会社)
イベント:StartupConnect vol.2
- 開催テーマ: 生成系AI
- 開催日付: 2023/07/28
- 開催場所: 株式会社welldayオフィス

Avatar for Startup Connect

Startup Connect

July 31, 2023
Tweet

More Decks by Startup Connect

Other Decks in Technology

Transcript

  1. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 スマートキャンプ株式会社 BOXILカンパニー > プロダクト本部 > プロダクト開発部 1995年生まれ。埼玉県立浦和高等学校を卒業後、紆余曲折ありがならも明治 薬科大学に入学。医療分子解析学研究室にて、化合物の毒性をデータ分析や 機械学習を用いて創薬リード化合物のスクリーニングに活用する研究を行う。 薬剤師国家試験の勉強の傍ら、インターンとして 2021年5月から2ヶ月間スマー トキャンプ株式会社で BOXIL SaaSの開発やデータの分析を行う。 2022年4月に新卒入社。社内向け動画配信管理ツールの開発に従事。 現在は生成AIを活用する新規プロジェクトの開発にも関わる。 自己紹介 佐々木 俊一 ささき しゅんいち
  2. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 2023年6月15日(木) BOXIL SaaSのChatGPTプラグインリリース 2023年6月20日付 プレスリリースより(URL)
  3. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 2023年6月15日(木) BOXIL SaaSのChatGPTプラグインリリース IR資料にも載ってます(URL)
  4. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 サービスの比較検討を支援
  5. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 ChatGPTプラグインが解決する課題 SaaS製品のカテゴリは年々複雑性を増しています。 自分が求める製品のカテゴリがどれなのか分からないといった声が寄せられています。 ChatGPTを使うことで、潜在的な悩みがどのカテゴリに属するのか判断する手助けが行えます。 自分たちが抱えている業務課題を解決できる製品のカテゴリってなに? その問題はBOXIL SaaSでは〇〇というカテゴリのサービスで解決できそうです
  6. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 私含めエンジニア2名+インターン生(週2)の 計3名の即席チームで2週間強で ChatGPTプラグイ ン開発からリリースまで完遂できました。 リリースまでの開発の流れ 3/23 OpenAI社 ChatGPTプラグインを開発者向けに公開 5/ 6 食べログの日本企業初のChatGPTプラグインリリースを気に日本で注目度が高まる 5/12 OpenAI社 ChatGPTプラグインをPlusユーザーにβ版として公開 5/30 BOXIL SaaSプラグイン開発チーム発足    各部門との調整(法務・BOXIL SaaS開発チーム・インフラ) ChatGPTプラグイン技術調査 カテゴリ検索API開発・申請に必要なものの準備 ChatGPTプラグインの動作検証・レスポンス調整・公開申請 6/15 リリース 6/20プレスリリース・テックブログ公開
  7. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 開発の詳細はテックブログ読んでください! https://tech.smartcamp.co.jp/entry/developing-process-chatgpt-plugin
  8. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 2週間ちょっとでリリースできる ChatGPTプラグインに必要なものは3つだけ! スキーマ定義 申請 プロンプト API
  9. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 BOXIL SaaS ChatGPTプラグインの 仕様について
  10. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 カテゴリ検索の仕組み スキーマ定義 プロンプト API
  11. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 カテゴリ検索の仕組み でも、実際はこんなシンプルじゃない 2段階でAPIアクセスをしている 1. カテゴリ名の取得 2. カテゴリ名からカテゴリページ情報の取得 You suggest the best SaaS service for the user. SaaS is categorized by category, so please get the CategoryPage that is most relevant to the issue the user is facing. When retrieving a CategoryPage, be sure to get the category name from get_all_categories and then use category_search. Be sure to include CategoryPage.url, CategoryPage.documents_download_url, and ArticlePage.url in the proposal. ~~以下略~~ プロンプトにもそのように明記
  12. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 カテゴリ検索の仕組み なぜ2回のAPIリクエストが必要か? 元々BOXIL SaaSに実装されている検索機能を流用 カテゴリはElasticSearchでインデックスされておらず DBから部分一致で検索している状況 そのため、同じ意味だけど違う単語とかは引っ掛けられない 問題点 取得したカテゴリ情報が大きすぎると、処理できるトークンの上限に達してしまう →そのため現在はカテゴリ名だけ渡している そこで、ChatGPT側にカテゴリの一覧を提供して、 その中から適切なものを選んでもらう設計にした ここがない!
  13. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 検索をAPI側でもつ 〜Embeddingの活用〜 改良するとしたら? 1 2 ChatGPTをサーバーに置き換える 〜Function Callingの活用〜
  14. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 検索をAPI側でもつ ~Embeddingの活用~ ChatGPTからのAPIリクエストのパラメータとしては、ユーザー の文章を要約したものなどを入れて API内部でEmbeddingによるベクトル類似度検索を行い、適切 なカテゴリを探し出すようにする 実装としてはEmbeddings API + 任意のベクトルデータベー スでできそう 文章の意味(セマンティクス)を考慮した検索
  15. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 ChatGPTをサーバーに置き換える ~Function Callingの活用~ ChatGPTを自前で実装する 内部はFunction Callingを使う れ 使いっ走りが増えただけ 好きなサーバーと好きなAPI(任意の処理)に置き換えると色々できる
  16. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 もっと改良するとしたら?
  17. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 Agent化する たくさんのFunctionを準備してFunction Callingするのも手だ が、LangChainを利用すると楽に実装できるらしい ユーザーのやりたいことを一気通貫で全部やる Agentを作る 例えば、チャットを介して、サービスの予約、カレンダーの登録、 資料ダウンロード、その他なんでも 先程までは、1つの関数を使うとか APIを使うとかの判断だった が、その結果を受けて、次に何をしたらいいかも考えてもらう
  18. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 数年後 最近、全然仕事楽しくないんだよね あ、その非効率な仕事全部やっときました! 退屈なことはAIにやらせよう!
  19. Copyright © 2023 All Rights Reserved by SMARTCAMP Co., Ltd.

    
 まとめ 無料で試せてお手軽、導入も簡単! 1 2 色々応用できる!生成AIの入口として最適!! ChatGPTプラグインの開発は 日進月歩でどんどん新しい機能がリリースされるので 様々な方面で生成AIを活用しましょう!