gitextract_if0fu1k3/ ├── .codeclimate.yml ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ ├── publish-documentation.yml │ └── python-package.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── SECURITY.md ├── chatterbot/ │ ├── __init__.py │ ├── __main__.py │ ├── adapters.py │ ├── chatterbot.py │ ├── comparisons.py │ ├── components.py │ ├── constants.py │ ├── conversation.py │ ├── corpus.py │ ├── exceptions.py │ ├── ext/ │ │ ├── __init__.py │ │ ├── django_chatterbot/ │ │ │ ├── __init__.py │ │ │ ├── abstract_models.py │ │ │ ├── admin.py │ │ │ ├── apps.py │ │ │ ├── migrations/ │ │ │ │ ├── 0001_initial.py │ │ │ │ ├── 0002_statement_extra_data.py │ │ │ │ ├── 0003_change_occurrence_default.py │ │ │ │ ├── 0004_rename_in_response_to.py │ │ │ │ ├── 0005_statement_created_at.py │ │ │ │ ├── 0006_create_conversation.py │ │ │ │ ├── 0007_response_created_at.py │ │ │ │ ├── 0008_update_conversations.py │ │ │ │ ├── 0009_tags.py │ │ │ │ ├── 0010_statement_text.py │ │ │ │ ├── 0011_blank_extra_data.py │ │ │ │ ├── 0012_statement_created_at.py │ │ │ │ ├── 0013_change_conversations.py │ │ │ │ ├── 0014_remove_statement_extra_data.py │ │ │ │ ├── 0015_statement_persona.py │ │ │ │ ├── 0016_statement_stemmed_text.py │ │ │ │ ├── 0017_tags_unique.py │ │ │ │ ├── 0018_text_max_length.py │ │ │ │ ├── 0019_alter_statement_id_alter_tag_id_and_more.py │ │ │ │ ├── 0020_alter_statement_conversation_and_more.py │ │ │ │ ├── 0021_increase_text_max_length_to_1100.py │ │ │ │ └── __init__.py │ │ │ ├── model_admin.py │ │ │ ├── models.py │ │ │ └── settings.py │ │ └── sqlalchemy_app/ │ │ ├── __init__.py │ │ └── models.py │ ├── filters.py │ ├── languages.py │ ├── logic/ │ │ ├── __init__.py │ │ ├── best_match.py │ │ ├── llm_adapters.py │ │ ├── logic_adapter.py │ │ ├── mathematical_evaluation.py │ │ ├── mcp_tools.py │ │ ├── specific_response.py │ │ ├── time_adapter.py │ │ └── unit_conversion.py │ ├── parsing.py │ ├── preprocessors.py │ ├── response_selection.py │ ├── search.py │ ├── storage/ │ │ ├── __init__.py │ │ ├── django_storage.py │ │ ├── mongodb.py │ │ ├── redis.py │ │ ├── sql_storage.py │ │ └── storage_adapter.py │ ├── tagging.py │ ├── trainers.py │ ├── utils.py │ └── vectorstores.py ├── docs/ │ ├── _ext/ │ │ ├── canonical.py │ │ └── github.py │ ├── _includes/ │ │ └── python_module_structure.txt │ ├── _static/ │ │ ├── mobile.js │ │ ├── silktide-consent-manager.css │ │ ├── silktide-consent-manager.js │ │ └── style.css │ ├── _templates/ │ │ ├── footer.html │ │ ├── layout.html │ │ ├── page.html │ │ └── sidebar_ad.html │ ├── chatterbot.rst │ ├── commands.rst │ ├── comparisons.rst │ ├── conf.py │ ├── contributing.rst │ ├── conversations.rst │ ├── corpus.rst │ ├── development.rst │ ├── django/ │ │ ├── custom-models.rst │ │ ├── index.rst │ │ ├── settings.rst │ │ ├── tutorial/ │ │ │ ├── django-filter-tutorial/ │ │ │ │ └── index.rst │ │ │ ├── django-rest-framework-tutorial/ │ │ │ │ └── index.rst │ │ │ ├── django-tutorial/ │ │ │ │ ├── index.rst │ │ │ │ └── part-2.rst │ │ │ ├── index.rst │ │ │ └── writing-tests.rst │ │ ├── views.rst │ │ └── wsgi.rst │ ├── encoding.rst │ ├── examples.rst │ ├── faq.rst │ ├── filters.rst │ ├── glossary.rst │ ├── index.rst │ ├── large-language-models.rst │ ├── logic/ │ │ ├── create-a-logic-adapter.rst │ │ ├── index.rst │ │ └── response-selection.rst │ ├── packaging.rst │ ├── preprocessors.rst │ ├── quickstart.rst │ ├── releases.rst │ ├── robots.txt │ ├── security.rst │ ├── setup.rst │ ├── statements.txt │ ├── storage/ │ │ ├── create-a-storage-adapter.rst │ │ ├── index.rst │ │ ├── mongodb.rst │ │ ├── redis.rst │ │ ├── sql.rst │ │ └── text-search.rst │ ├── testing.rst │ ├── training.rst │ ├── tutorial.rst │ ├── upgrading.rst │ └── utils.rst ├── examples/ │ ├── __init__.py │ ├── basic_example.py │ ├── convert_units.py │ ├── default_response_example.py │ ├── django_example/ │ │ ├── README.rst │ │ ├── django_example/ │ │ │ ├── __init__.py │ │ │ ├── asgi.py │ │ │ ├── management/ │ │ │ │ ├── __init__.py │ │ │ │ └── commands/ │ │ │ │ ├── __init__.py │ │ │ │ └── train.py │ │ │ ├── settings.py │ │ │ ├── static/ │ │ │ │ ├── css/ │ │ │ │ │ ├── bootstrap.css │ │ │ │ │ └── custom.css │ │ │ │ └── js/ │ │ │ │ ├── bootstrap.js │ │ │ │ ├── jquery.js │ │ │ │ └── js.cookie.js │ │ │ ├── templates/ │ │ │ │ ├── app.html │ │ │ │ └── nav.html │ │ │ ├── tests/ │ │ │ │ ├── __init__.py │ │ │ │ ├── test_api.py │ │ │ │ └── test_example.py │ │ │ ├── urls.py │ │ │ ├── views.py │ │ │ └── wsgi.py │ │ ├── manage.py │ │ └── requirements.txt │ ├── export_example.py │ ├── learning_feedback_example.py │ ├── math_and_time.py │ ├── memory_sql_example.py │ ├── ollama_example.py │ ├── openai_example.py │ ├── specific_response_example.py │ ├── tagged_dataset_example.py │ ├── terminal_example.py │ ├── terminal_mongo_example.py │ ├── tkinter_gui.py │ ├── training_example_chatterbot_corpus.py │ ├── training_example_list_data.py │ └── training_example_ubuntu_corpus.py ├── graphics/ │ ├── README.md │ ├── ad.xcf │ └── chatterbot.xcf ├── pyproject.toml ├── setup.cfg └── tests/ ├── __init__.py ├── base_case.py ├── django_integration/ │ ├── __init__.py │ ├── base_case.py │ ├── test_chatbot.py │ ├── test_chatterbot_corpus_training.py │ ├── test_chatterbot_settings.py │ ├── test_custom_models.py │ ├── test_django_adapter.py │ ├── test_logic_adapter_integration.py │ ├── test_secondary_database.py │ ├── test_settings.py │ └── test_statement_integration.py ├── logic/ │ ├── __init__.py │ ├── test_best_match.py │ ├── test_data_cache.py │ ├── test_logic_adapter.py │ ├── test_mathematical_evaluation.py │ ├── test_specific_response.py │ ├── test_time.py │ └── test_unit_conversion.py ├── storage/ │ ├── __init__.py │ ├── test_mongo_adapter.py │ ├── test_redis_adapter.py │ ├── test_sql_adapter.py │ └── test_storage_adapter.py ├── test_adapter_validation.py ├── test_benchmarks.py ├── test_chatbot.py ├── test_cli.py ├── test_comparisons.py ├── test_conversations.py ├── test_corpus.py ├── test_examples.py ├── test_filters.py ├── test_initialization.py ├── test_languages.py ├── test_parsing.py ├── test_preprocessors.py ├── test_response_selection.py ├── test_search.py ├── test_tagging.py ├── test_turing.py ├── test_utils.py └── training/ ├── __init__.py ├── test_chatterbot_corpus_training.py ├── test_csv_file_training.py ├── test_data/ │ ├── csv_corpus/ │ │ ├── 1.csv │ │ └── 2.csv │ ├── get_search.json │ └── json_corpus/ │ ├── 1.json │ └── 2.json ├── test_json_file_training.py ├── test_list_training.py ├── test_training.py └── test_ubuntu_corpus_training.py