计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
chatterbot【效率与协作】Operate ChatterBot conversational dialog engine workflows, including chatbot setup, training, logic adapters, storage backends, Django integration, and optional LLM adapters.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this skill when a task involves the ChatterBot Python package, the chatterbot import, conversational dialog bots that learn from statements/responses, ChatterBot trainers, ChatterBot storage adapters, built-in logic adapters, the Django extension, or errors from those APIs.
ChatterBot is a Python conversational dialog engine. A ChatBot instance combines:
Statement objects;Public install commands:
python -m pip install chatterbot
python -m pip install -e .
Install optional groups only when the selected workflow needs them:
python -m pip install "chatterbot[dev]" # Pint, PyYAML, chatterbot-corpus, Ollama/OpenAI clients
python -m pip install "chatterbot[redis]" # Redis vector storage and embedding providers
python -m pip install "chatterbot[mongodb]" # MongoDB storage
python -m pip install django # Django integration if you are not using a broader extra
The default ChatBot("name") path uses SQL storage plus the PosLemmaTagger, which requires a compatible spaCy language model such as en_core_web_sm for English. If a quick import-only check is enough, do not instantiate ChatBot until the model requirement is understood.
For a package install, start with:
python - <<'PY'
import chatterbot
from chatterbot import ChatBot
print(chatterbot.__version__)
print(ChatBot)
PY
Run the bundled environment diagnostic when install/import behavior is unclear:
python scripts/check_chatterbot_environment.py --check-spacy-model en_core_web_sm
The only package CLI is a small module entry point:
python -m chatterbot --version
python -m chatterbot --help
Read references/installation-and-extras.md for public install commands, optional extras, spaCy model setup, and service-backend prerequisites. Read references/troubleshooting.md for cross-cutting setup, model, optional dependency, and service failures. Read references/repo-provenance.md before deciding whether this skill matches a newer checkout.
Use core-chatbot when the task is about:
ChatBot or Statement objects;get_response, generate_response, learn_response, conversation IDs, read_only, or persistence behavior;Use training when the task is about:
ListTrainer, ChatterBotCorpusTrainer, CsvFileTrainer, JsonFileTrainer, or UbuntuCorpusTrainer;chatterbot-corpus, dotted corpus paths, custom YAML corpora, or corpus loading;Use logic-adapters when the task is about:
BestMatch, SpecificResponseAdapter, MathematicalEvaluation, TimeLogicAdapter, UnitConversion;default_response, maximum_similarity_threshold, excluded_words, comparison functions, and response selection methods;OllamaLogicAdapter / OpenAILogicAdapter and logic_adapters_as_tools MCP-style tool calling.Use storage-adapters when the task is about:
SQLStorageAdapter, SQLite/SQLAlchemy configuration, SQL pool options, or CRUD/filter behavior;MongoDatabaseAdapter, MongoDB URIs, TLS kwargs, or unavailable MongoDB service errors;RedisVectorStorageAdapter, Redis vector search, embedding model/provider options, or semantic search behavior;StorageAdapter.Use django-integration when the task is about:
chatterbot.ext.django_chatterbot, INSTALLED_APPS, migrations, or Django settings;DjangoStorageAdapter, database aliases, swappable Statement/Tag models;ChatBot("name") works before a spaCy model is installed. Missing model errors usually tell the user to run python -m spacy download <model>.database_uri=None for in-memory SQL smoke tests and database_uri="sqlite:///file.sqlite3" for a persistent SQLite file.UnitConversion needs pint; corpus training needs pyyaml and usually chatterbot-corpus; Django workflows need django.scripts/check_chatterbot_environment.py checks imports, metadata, spaCy models, and optional dependency availability.These helpers are self-contained and do not require the original repository checkout.