ChatGPTのビジネスや個人利用のトレーニング方法
Published on
人工知能(AI)はさまざまなセクターを革新し、コミュニケーションの分野も例外ではありません。OpenAIが開発したChatGPTは、その印象的な言語理解能力により、さまざまなAIモデルの中でも際立っています。このガイドでは、MacOS上でカスタムデータを使用してChatGPTを効果的にトレーニングする方法について、詳細な手順、例、およびサンプルコードを提供します。
独自のAI搭載チャットボットを作成することは、これまでになく簡単になりました。OpenAIのChatGPTを使用すると、特定のニーズに合わせてカスタムデータを使用して言語モデルをトレーニングすることができます。このガイドの終わりまでに、セットアップ方法、データの準備方法、チャットボットの微調整方法についての作業知識を持つことができるでしょう。
方法1:オンラインツールを使用してChatGPTをトレーニングする
CustomGPT.aiを使用してChatGPTをトレーニングする
CustomGPT.aiは、独自のデータでChatGPTのトレーニングを簡略化するオンラインプラットフォームです。プログラミングやデータベースの作業を必要とせず、テクニカルなバックグラウンドを持たないユーザーにも利用できるようになっています。CustomGPT.aiの利用手順は以下の通りです。
- CustomGPT.ai (opens in a new tab)を訪問し、新しいプロジェクトを作成します。任意の名前を付けることができます。
- ウェブサイトのサイトマップURLを入力します。プラットフォームはサイトマップのすべてのページをキューに入れてクロールします。
- システムがすべてのページをクロールするのを待ちます。ウェブサイトのページ数によって、このプロセスには最大1時間かかる場合があります。
- クローリングプロセスが完了したら、カスタマイズされたチャットボットの作成を開始できます。チャットボットはすべてのページを読み込み、コンテンツを理解し、それを使用する人と対話する準備ができています。
ChatGPT Schoolを使用してChatGPTをトレーニングする
ChatGPT Schoolは、教育コンテンツ(オンラインコースなど)向けにChatGPTをトレーニングできる別のプラットフォームです。以下の手順で使用します。
- ChatGPT School (opens in a new tab)を訪問し、新しいプロジェクトを作成します。
- CustomGPT.aiと同様に、ウェブサイトのサイトマップURLを入力する必要があります。プラットフォームはサイトマップのすべてのページをキューに入れてクロールします。
- システムがすべてのページをクロールするのを待ちます。ウェブサイトのページ数によって、このプロセスには最大1時間かかる場合があります。
- クローリングプロセスが完了したら、カスタマイズされたチャットボットの作成を開始できます。チャットボットはすべてのページを読み込み、コンテンツを理解し、それを使用する人と対話する準備ができています。
方法2:独自のカスタマイズLLMを使用してChatGPTをトレーニングする
ChatGPTのトレーニング環境を準備する
ステップ1:Pythonのインストール
Python 3.0+が必要です。インストールに入る前に、既にPython3がインストールされているかどうかを確認することをおすすめします。ターミナルで以下のコマンドを実行することで確認できます。
python3 --version
コマンドを実行してバージョンが表示されれば、すでにPython3がインストールされているため、このステップをスキップできます。"command not found"のエラーが表示された場合は、インストールを続行します。
次のリンクにアクセスし、Pythonインストーラーをダウンロードします:https://www.python.org/downloads/ (opens in a new tab)
インストールが完了したら、上記のコマンドを再度実行し、Pythonのバージョンが表示されるはずです。
ステップ2:Pipのアップグレード
PythonにはPipがプリインストールされていますが、古いバージョンを使用している場合は、常に最新バージョンにアップグレードすることをおすすめします。PipはPython用のパッケージマネージャーで、PHPのComposerのようなものです。次のコマンドを使用してアップグレードできます。
python3 -m pip install -U pip
すでにPipがインストールされている場合、"Requirement already satisfied: pip in [location-here]"という警告が表示されます。最新バージョンのPipがインストールされていない場合は、それをインストールします。次のコマンドを実行して正しくインストールされているかどうかを確認できます。
pip3 --version
バージョンとパッケージの位置が表示されます。
ChatGPTトレーニングのためのライブラリのインストール
実際のトレーニングプロセスに入る前に、いくつかのライブラリをインストールする必要があります。Mac上のターミナルアプリケーションを開き、次のコマンドを順番に実行します。
最初のコマンドはOpenAIライブラリをインストールします:
pip3 install openai
次に、GPTインデックス(LlamaIndexとも呼ばれる)をインストールします。これにより、LLMが私たちのナレッジベースとなる外部データに接続できます。
LlamaIndexの動作方法や使用方法の詳細については、LlamaIndexの関連記事を参照してください。
pip3 install gpt_index
インストールが完了したら、次のコマンドを実行します:
pip3 install PyPDF2
これはPythonベースのPDF解析ライブラリであり、モデルにPDFファイルを供給する場合に必要です。
最後に、次のコマンドを実行します:
pip3 install gradio
これにより、AI chatgptとの対話に使用するシンプルなUIが作成されます。
ChatGPTトレーニングのためのOpenAIキーの取得
スクリプトに取りかかる前に、OpenAIからAPIキーを取得しましょう。OpenAI API (opens in a new tab)にアクセスしてください。まだログインしていない場合、ログインを求められます。次に、「新しいシークレットキーの作成」をクリックしてスクリプト用のキーを生成します。
キーが生成されると、再度見ることはできませんので注意してください。キーをコピーして安全な場所に保存しておく必要があります。
ChatGPTトレーニングのためのデータの準備
任意の場所に 'docs' という新しいディレクトリを作成し、その中にPDF、TXT、またはCSVファイルを配置します。複数のファイルを追加することもできますが、追加するデータが多ければ多いほどトークンの使用量も増えます。無料のアカウントでは使用できるトークンの総額は18ドルです。
ChatGPTのトレーニングスクリプトを作成する
これで準備が整ったので、次のステップは、カスタムデータを使用してチャットボットをトレーニングするためのPythonスクリプトを作成することです。上記で作成した 'docs' ディレクトリ内のファイルを使用して、JSONファイルを生成します。
このファイルを作成するために、任意のテキストエディタを使用できます。MacにはTextEditが付属しているので、それを使用するか、Visual Studio Codeを使用してももちろんかまいません。
新しいページを作成し、次のコードをコピーします:
from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper
from langchain import OpenAI
import gradio as gr
import sys
import os
os.environ["OPENAI_API_KEY"] = ''
def construct_index(directory_path):
max_input_size = 4096
num_outputs = 512
max_chunk_overlap = 20
chunk_size_limit = 600
prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)
llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.7, model_name="text-davinci-003", max_tokens=num_outputs))
documents = SimpleDirectoryReader(directory_path).load_data()
index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper)
index.save_to_disk('index.json')
return index
def chatbot(input_text):
index = GPTSimpleVectorIndex.load_from_disk('index.json')
response = index.query(input_text, response_mode="compact")
return response.response
iface = gr.Interface(fn=chatbot,
inputs=gr.inputs.Textbox(lines=7, label="Enter your text"),
outputs="text",
title="My AI Chatbot")
index = construct_index("docs")
iface.launch(share=True)
コードをコピーしたら、保存する前にコードにOpenAIキーを追加する必要があります。コードの OPEN_API_KEY
変数に注目してください。Step 5で抽出したOpenAIキーを、シングルクォートの中にコピーして次のようにします:
os.environ["OPENAI_API_KEY"] = 'your-key-goes-here'
そして、ファイルを app.py
という拡張子で保存します。'docs'ディレクトリと同じ場所に保存してください。
スクリプトを実行する
これですべての準備が整ったので、スクリプトを実行して魔法を見てみましょう。
app.py
と 'docs' ディレクトリがある場所に移動します。ターミナルを開き、次のコマンドを実行します:
cd /path/to/your/directory
次に、Pythonファイルを実行します:
python3 app.py
これにより、カスタムチャットボットのトレーニングが開始されます。これには、供給したデータの量に応じて、時間がかかる場合があります。完了すると、簡単なUIを使用して応答をテストできるリンクが出力されます。
上記のように、ローカルのURLが表示されます:http://127.0.0.1:7860
このURLを任意のブラウザで開き、独自にトレーニングしたチャットボットをテストできます。上記のポート番号は、個々に異なる場合があることに注意してください。
左側に質問を入力し、右の列に応答が表示されます。質問にはトークンが必要なため、質問をする回数が多いほど、OpenAIアカウントからのトークン使用量が多くなります。トレーニングも、供給したデータの量に応じてトークンを使用します。
より多くや異なるデータでトレーニングするには、 CTRL + C
を使用して閉じてから、ファイルを変更してPythonファイルを再度実行できます。
結論
カスタムデータを使用してChatGPTをトレーニングすることで、特定のニーズに合わせたチャットボットを作成することができます。MacOS上でPythonライブラリを使用したり、CustomGPT.aiやChatGPT Schoolなどのオンラインプラットフォームを活用したり、ChatGPT AI Automation Groupなどのコミュニティに参加するなど、チャットボットの機能をカスタマイズして拡張する方法は多岐にわたります。このガイドで提供される詳細な手順と例に従えば、強力なAIチャットボットの作成に向けて確実に進んでいくことができます。
よくある質問
独自のChatGPTモデルをトレーニングできますか?
はい、独自のChatGPTモデルをトレーニングすることができます。このガイドでは、MacOS上でPythonライブラリを使用してトレーニングする方法について詳しく説明しています。また、CustomGPT.aiやChatGPT Schoolといったオンラインプラットフォームを使用することで、プロセスを簡素化することも可能です。
ChatGPTのトレーニングにPDFを使用できますか?
はい、ChatGPTはPDFを使用してトレーニングすることができます。PyPDF2などのPythonライブラリを使用して、PDFファイルを解析し、データをモデルに供給することができます。
ChatGPTのトレーニングにはどのようなデータが使用されましたか?
ChatGPTは様々なインターネットテキストで訓練されました。ただし、OpenAIは使用された個々のデータセットの詳細を公開していません。独自のChatGPTモデルをトレーニングすることで、特定のニーズに合わせてカスタマイズすることができます。
チャットボットをトレーニングすることはできますか?
はい、チャットボットをトレーニングすることは可能です。このガイドでは、ChatGPTとカスタムデータを使用してチャットボットをトレーニングする方法について詳しく説明しています。このプロセスには、環境のセットアップ、データの準備、Pythonスクリプトの実行が含まれます。