OpenAI API の利用料金を減らすには (2)
Chapl! の現行版では、過去のチャット履歴をローカルストレージにて管理している。
もちろん、OpenAI API は、ローカルストレージを読み込む機能はないので、ローカルストレージに保存しているチャット履歴のなかかから、ユーザーの会話のなかで必要と思われるデータのみを API に送信する必要がある。
そのデータの選別に、形態素解析を使っている。
形態素解析とは、文章から品詞を解析・抽出する処理のことである。
ユーザーの会話を形態素解析し、そのなかから名詞のみを抽出して、ローカルストレージに保存しているチャット履歴から、合致する名詞の数によって重みづけしたデータを直近のデータから複数選別し、それを API に渡すようにしている。
このようにすることで、過去のチャット履歴を含めた会話を可能とする上に、API とのやりとりも 1 回、かつデータ量も少量で済む。
形態素解析としては、京都大学の開発した「MeCab」が有名だが、今回利用したものは、ネットでも簡単に利用できる、Yahoo! の形態素解析である。
日本語形態素解析
https://developer.yahoo.co.jp/webapi/jlp/ma/v2/parse.html
Yahoo! のアカウントがあれば、だれでも無料で形態素解析の API を利用可能だ。
もし、OpenAI API を利用したチャットボットのコストにお悩みの方がいれば、ぜひとも参考にしてほしい。
もちろん、OpenAI API は、ローカルストレージを読み込む機能はないので、ローカルストレージに保存しているチャット履歴のなかかから、ユーザーの会話のなかで必要と思われるデータのみを API に送信する必要がある。
そのデータの選別に、形態素解析を使っている。
形態素解析とは、文章から品詞を解析・抽出する処理のことである。
ユーザーの会話を形態素解析し、そのなかから名詞のみを抽出して、ローカルストレージに保存しているチャット履歴から、合致する名詞の数によって重みづけしたデータを直近のデータから複数選別し、それを API に渡すようにしている。
このようにすることで、過去のチャット履歴を含めた会話を可能とする上に、API とのやりとりも 1 回、かつデータ量も少量で済む。
形態素解析としては、京都大学の開発した「MeCab」が有名だが、今回利用したものは、ネットでも簡単に利用できる、Yahoo! の形態素解析である。
日本語形態素解析
https://developer.yahoo.co.jp/webapi/jlp/ma/v2/parse.html
Yahoo! のアカウントがあれば、だれでも無料で形態素解析の API を利用可能だ。
もし、OpenAI API を利用したチャットボットのコストにお悩みの方がいれば、ぜひとも参考にしてほしい。