見出し画像

面倒なマニュアルやドキュメントの解読をGPTのFine Tuningに任せていろいろと食わせてあとは質問するだけにしたい GPT AI Custom Modelsの開発を決定

10万文字超の書籍を執筆できるWordPressプラグインGPT AI Book Makersが完成したので、次は「GPT AI Custom Models」の開発を始めます。

調べ物地獄しんどい

ウェブエンジニアというかプログラマーの仕事の大半は調べ物をして終わります。
最近ではプログラミング言語の文法の勉強というより、誰かの作ったフレームワークやらAPIのオレオレ仕様について使い方を調べるのが主な仕事です。

何が言いたいかというとプログラミングスキルはあまり役に立たない!
前述したように何かしらのフレームワークを使って開発することが前提となった今、フレームワークのルールを学ばないと先に進めません。
大抵のフレームワークは開発者が独自にルールを考え拡張したものなので、いくらプログラミング言語を学んだところで分かりません。
他人の家のルールなんてよそ者に分かりっこないのです。

そんなわけで、使用するフレームワークが増えれば増えるほど覚えなければいけないルールも増えるわけで、増えるワケワカメ状態になりがちです。

では、襟を正して背筋ピーンにしてフレームワークのマニュアルを学習しようと、英語だけだったり、知りたいことがどこにあるか分からないことが多々あり、たちまち背筋丸まりングです。

結果的に1つか2つの知りたいことを知るために、網羅的にドキュメントを読み込まないといけないなんてことが生じます。
これが仕事の大半が調べ物である理由ナンバーワンなんですね。
便利なんだか不便なんだか分からん。

特にnode.js関係。おまえだおまえ!
あまたのモジュールがあり、そしてバージョンごとの違いがあり、さらに依存関係があり覚えられるか! とスーパードクターKもメスを投げだすレベルです。

Fine Tuningで解決だ

そんな私と同じ様に噴飯もののあなた。朗報です!?
Open AIのFine TuningがGPT-3.5 Turboに対応したので、マニュアルやらドキュメントを学習させましょう。
そうすればきっと難解で不親切な内容の理解も捗るはず……。

chat-GPTもBardもメジャーな言語のメジャーなフレームワークの知識があります。
しかし、全てではないし、その知識が最新であるとも限りません。
知らないくせにさも知ってるかのようにウソだってつきます。

ここでFine Tuningについて簡単に説明すると、AIに追加学習させるための機能です。
例えば、自分の作った架空のキャラがいたとして、そのキャラの性格や口癖なんかをFine Tuningで学習させると、質問した時に反映されます。

社内のルールや新しく設けられた新制度の情報を学習させることで、AIの回答をカスタムできます。
これを利用すればマニュアルやドキュメントをAIに学習させ、分からないことを質問するだけで、分からないことだけが判るようになるはず。
ポイントは広く一般的な解ではなく、分からないことだけが分かるよう的を絞った回答を得られることです。

要するに、まずはそれができるか、できないかだけを知りたいわけです。
次にできるならどんな方法があるか、できないなら代替案はあるかを絞り込んで行ければ無駄はありません。

しかしながら、マニュアルやドキュメントというのは広く汎用的な答えを提供するのが役割です。
ある特定の事例に限った知識を提供してくれないんですね。表現だって汎用的であるがゆえに分かりづらいものとなっています。
結果的に網羅的に読み込んで、知識を専門家レベルにまで高めないといけないことがザラにあります。
イライラ度マックスになるまでそう時間は掛かりません。

なのでAIに学習させて人間が理解できる形で表現してもらうのが手っ取り早いです。
AIの得意分野です。

Fine Tuning用スクレイピングツールの開発

本題です。
Fine Tuning自体はJSONL形式で質問と回答をセットにしてAIに送信すればいいわけですが、大抵のドキュメントはウェブ上にあります。
ということは、そのドキュメントをスクレイピングする必要があるわけですが、WordPressだけでは限界があります。
例えばReact系で作られた仮想DOM系のウェブページはPHPで取得できません。

ブラウザでレンダリングしないとダメなんですね。
なので、最初はnode.js(Type Script)とブラウザを操作できるPlaywrightでスクレイピングツールを作ります。

もう1つの注意点は、スクレイピングができたとしても、Fine Tuningで送信できるデータ量には限りがあることです。
ページ全体をスクレイピングして、ページ全体をまるごとOpen AIに送信はできないんですね。

決められたデータサイズ内で質問と回答をセットにして送る必要があるため、スクレイピングしたデータの仕分け処理が必要です。
おそらく開発のキモになるのがこの部分でしょう。

あとnode.js(Type Script)で作ったツールは、そのままだと外部からは利用できないという問題があります。
公開サーバーを作ってウェブアプリケーションにすれば別ですが、それは面倒です。

しかし、Fine Tuningで学習したモデルは同じアカウントから呼び出せるので、学習済みのAIをWordPressから呼び出すことも可能です。
もちろん他のツールからも可能です。
あとは質問をするだけです。

WordPressのプラグインとして開発するので、WordPress内の記事を学習データとして利用したり、管理画面から手動で質問と回答を登録できるようにもします。

node.js版についてはWindowsアプリケーションに変換してデスクトップで使えるようにできればいいなと考えています。

まぁとにかく早くこの調べ物地獄から卒業がしたい。

【宣伝】WordPress魔改造プラグイン使い放題サブスク5000やってます
https://wp-plugin.info/plugins-subsc/


この記事が気に入ったらサポートをしてみませんか?