Package: chatdocs
ChatDocsChat with your documents offline using AI. No data leaves your system. Internet connection is only required to install the tool and download the AI models. It is based onPrivateGPTbut has more features.ContentsFeaturesInstallationUsageConfigurationGPUFeaturesSupports GGML/GGUF models viaCTransformersSupports 🤗 Transformers modelsSupports GPTQ modelsWeb UIGPU supportHighly configurable viachatdocs.ymlShow supported document typesExtensionFormat.csvCSV.docx,.docWord Document.enexEverNote.emlEmail.epubEPub.htmlHTML.mdMarkdown.msgOutlook Message.odtOpen Document Text.pdfPortable Document Format (PDF).pptx,.pptPowerPoint Document.txtText file (UTF-8)InstallationInstall the tool using:pipinstallchatdocsDownload the AI models using:chatdocsdownloadNow it can be run offline without internet connection.UsageAdd a directory containing documents to chat with using:chatdocsadd/path/to/documentsThe processed documents will be stored indbdirectory by default.Chat with your documents using:chatdocsuiOpenhttp://localhost:5000in your browser to access the web UI.It also has a nice command-line interface:chatdocschatShow previewConfigurationAll the configuration options can be changed using thechatdocs.ymlconfig file. Create achatdocs.ymlfile in some directory and run all commands from that directory. For reference, see the defaultchatdocs.ymlfile.You don't have to copy the entire file, just add the config options you want to change as it will be merged with the default config. For example, seetests/fixtures/chatdocs.ymlwhich changes only some of the config options.EmbeddingsTo change the embeddings model, add and change the following in yourchatdocs.yml:embeddings:
  model: hkunlp/instructor-largeNote:When you change the embeddings model, delete thedbdirectory and add documents again.CTransformersTo change the CTransformers (GGML/GGUF) model, add and change the following in yourchatdocs.yml:ctransformers:
  model: TheBloke/Wizard-Vicuna-7B-Uncensored-GGML
  model_file: Wizard-Vicuna-7B-Uncensored.ggmlv3.q4_0.bin
  model_type: llamaNote:When you add a new model for the first time, runchatdocs downloadto download the model before using it.You can also use an existing local model file:ctransformers:
  model: /path/to/ggml-model.bin
  model_type: llama🤗 TransformersTo use 🤗 Transformers models, add the following to yourchatdocs.yml:llm: huggingfaceTo change the 🤗 Transformers model, add and change the following in yourchatdocs.yml:huggingface:
  model: TheBloke/Wizard-Vicuna-7B-Uncensored-HFNote:When you add a new model for the first time, runchatdocs downloadto download the model before using it.To use GPTQ models with 🤗 Transformers, install the necessary packages using:pipinstallchatdocs[gptq]GPUEmbeddingsTo enable GPU (CUDA) support for the embeddings model, add the following to yourchatdocs.yml:embeddings:
  model_kwargs:
    device: cudaYou may have to reinstall PyTorch with CUDA enabled by following the instructionshere.CTransformersTo enable GPU (CUDA) support for the CTransformers (GGML/GGUF) model, add the following to yourchatdocs.yml:ctransformers:
  config:
    gpu_layers: 50You may have to install the CUDA libraries using:pipinstallctransformers[cuda]🤗 TransformersTo enable GPU (CUDA) support for the 🤗 Transformers model, add the following to yourchatdocs.yml:huggingface:
  device: 0You may have to reinstall PyTorch with CUDA enabled by following the instructionshere.LicenseMIT