Create the backend for an AI chatbot that can be installed and run on an offline machine, supporting offline large language model (LLM) usage. This backend should allow users to upload DOCX, TXT, and PDF files, and then enable them to chat with the content of these documents.