Hugging FaceとGradioを使用して、5分でAIチャットボットを構築する
Using Hugging Face and Gradio, build an AI chatbot in 5 minutes.
この短いチュートリアルでは、Microsoft DialoGPTモデル、Hugging Face Space、およびGradioの干渉を使用して、シンプルなチャットボットを作成します。同様のテクニックを使用して、5分で独自のアプリを開発およびカスタマイズすることができます。
1. 新しいスペースの作成
- hf.coにアクセスし、無料アカウントを作成します。その後、右上の表示画像をクリックし、「新しいスペース」オプションを選択します。
- アプリ名、ライセンス、スペースのハードウェア、可視性を入力します。
- 「スペースの作成」を押してアプリケーションを初期化します。
- リポジトリをクローンし、ローカルシステムからファイルをプッシュするか、ブラウザを使用してHugging Faceでファイルを作成および編集することができます。
- LOMO(LOw-Memory Optimization)をご紹介します:メモリ使用量を削減するために、勾配計算とパラメータの更新を1つのステップで融合する新しいAIオプティマイザです
- デバイス上での条件付きテキストから画像生成のための拡散プラグイン
- 複雑なタスクの実行におけるロボットの強化:Meta AIが人間の行動のインターネット動画を使用して視覚的な手がかりモデルを開発する
2. ChatBotアプリファイルの作成
「ファイル」タブをクリックして、+ファイルを追加>新しいファイルを作成します。
Gradioのインターフェースを作成します。コードをコピーすることができます。
「microsoft/DialoGPT-large」のトークナイザーとモデルをロードし、「予測」関数を作成して、応答と履歴を取得します。
from transformers import AutoModelForCausalLM, AutoTokenizer
import gradio as gr
import torch
title = "🤖AIチャットボット"
description = "最先端の大規模事前学習応答生成モデル(DialoGPT)"
examples = [["お元気ですか?"]]
tokenizer = AutoTokenizer.from_pretrained("microsoft/DialoGPT-large")
model = AutoModelForCausalLM.from_pretrained("microsoft/DialoGPT-large")
def predict(input, history=[]):
# 新しい入力文をトークン化する
new_user_input_ids = tokenizer.encode(
input + tokenizer.eos_token, return_tensors="pt"
)
# チャット履歴に新しいユーザー入力トークンを追加する
bot_input_ids = torch.cat([torch.LongTensor(history), new_user_input_ids], dim=-1)
# 応答を生成する
history = model.generate(
bot_input_ids, max_length=4000, pad_token_id=tokenizer.eos_token_id
).tolist()
# トークンをテキストに変換し、応答を行ごとに分割する
response = tokenizer.decode(history[0]).split("<|endoftext|>")
# print('decoded_response-->>'+str(response))
response = [
(response[i], response[i + 1]) for i in range(0, len(response) - 1, 2)
] # リストのタプルに変換する
# print('response-->>'+str(response))
return response, history
gr.Interface(
fn=predict,
title=title,
description=description,
examples=examples,
inputs=["text", "state"],
outputs=["chatbot", "state"],
theme="finlaymacklon/boxy_violet",
).launch()
さらに、アプリにはカスタマイズされたテーマ「boxy_violet」が提供されています。お好みに合わせてGradioテーマギャラリーを参照してテーマを選択できます。
3. 要件ファイルの作成
今、`requirement.txt`ファイルを作成し、必要なPythonパッケージを追加する必要があります。
transformers
torch
その後、アプリがビルドを開始し、数分以内にモデルをダウンロードしてモデル推論をロードします。
4. Gradioデモ
Gradioアプリは素晴らしいです。異なるモデルのアーキテクチャごとに「predict」関数を作成して、応答を取得し、履歴を維持するだけです。
kingabzpro/AI-ChatBotでアプリとチャットや対話ができるようになりました。または、https://kingabzpro-ai-chatbot.hf.spaceを使用してアプリをウェブサイトに埋め込むこともできます。
kingabzpro/AI-ChatBotからの画像
まだ混乱していますか?Spacesで数百のチャットボットアプリを探して、インスピレーションを得てモデル推論を理解してください。
たとえば、「LLaMA-7B」でファインチューニングされたモデルがある場合、モデルを検索し、下にスクロールしてモデルのさまざまな実装を確認してください。
decapoda-research/llama-7b-hfからの画像
結論
まとめると、このブログでは、Hugging FaceとGradioを使用してAIチャットボットをわずか5分で作成する方法について、簡単なチュートリアルを提供しています。ステップバイステップの手順とカスタマイズ可能なオプションにより、誰でも簡単にチャットボットを作成できます。
楽しかったですし、何か学べたことを願っています。Gradioデモをコメント欄で共有してください。もっと簡単な解決策をお探しの場合は、OpenChatをチェックしてみてください:数分でカスタムチャットボットを構築するための無料でシンプルなプラットフォームです。Abid Ali Awan(@1abidaliawan)は、機械学習モデルの構築が大好きな認定データサイエンティストプロフェッショナルです。現在はコンテンツ作成と機械学習およびデータサイエンス技術に関する技術ブログの執筆に注力しています。Abidはテクノロジーマネジメントの修士号とテレコミュニケーションエンジニアリングの学士号を持っています。彼のビジョンは、メンタルヘルスに悩む学生のためにグラフニューラルネットワークを使用したAI製品を構築することです。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles