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
  • プロジェクト
  • プロジェクト