gunthercox/ChatterBot
ChatterBot is a machine learning, conversational dialog engine for creating chat bots
ChatterBot – 対話型エージェント構築のためのPythonライブラリ
概要
- 会話を通じて学習するチャットボットを作成できるオープンソースのPythonパッケージです。ユーザーの発言とボットの返答をそれぞれ保存し、後で最も類似した過去の発言を抽出して応答を生成します。設計は言語に依存せず、数十の言語のコーパスが同梱されています。
仕組み
- ボットを開始した直後は知識を持っていません。ユーザーが発言するたびに、ライブラリは input → response のペアをデータベースに記録します。時間が経つにつれて蓄積が増え、ボットは(組み込みの類似性ロジックを使用して)最も一致する既知の発言を検索し、最も頻繁に関連付けられている返答を返します。また、
ChatterBotCorpusTrainerを介して、パッケージ化されたコーパスからトレーニングを行うことも可能です。
主なコンポーネント
ChatBot– ボットのインスタンスを表すメインクラス。chatterbot.trainers.ChatterBotCorpusTrainer– バンドルされた英語(およびその他の言語)のコーパスをロードします。chatterbot.corpus– コミュニティによって拡張可能な、用意された会話データセット(挨拶、世間話など)のセット。
典型的なワークフロー
from chatterbot import ChatBot
from chatterbot.trainers import ChatterBotCorpusTrainer
# 1️⃣ ボットを作成する
bot = ChatBot('Ron Obvious')
# 2️⃣ 組み込みのコーパスでトレーニングする
trainer = ChatterBotCorpusTrainer(bot)
trainer.train('chatterbot.corpus.english') # またはより具体的なサブコーパス
# 3️⃣ 返答を取得する
print(bot.get_response('Hello, how are you today?'))
上記の例は、READMEの Basic Usage セクションを反映しています。
インストール
- パッケージはPyPIで公開されています。以下のコマンドでインストールできます:
pip install chatterbot
ドキュメント & コミュニティ
- 詳細なドキュメントは https://docs.chatterbot.us にあり、examples ページも含まれています。
- プロジェクトは、アップデート情報としてGitterチャットとBlueskyアカウントを提供しています。
- 貢献(特に新しい言語のコーパス)を歓迎しています。
ライセンス
- BSD-3-Clause(寛容なオープンソースライセンス)
ChatterBotは、シンプルでデータ駆動型の対話型エージェントを構築するための、本物かつ積極的にメンテナンスされているPythonライブラリです。会話ログからの逐次学習を通じて対話生成に焦点を当てており、AI/ML領域にしっかりと位置づけられています。
関連
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト