Skip to main content

dataDM 💬📊

PyPI tests Open In Colab

dataDM

DataDM is your private data assistant. A conversational interface for your data where you can load, clean, transform, and visualize without a single line of code. DataDM is open source and can be run entirely locally, keeping your juicy data secrets fully private.

Demo

https://github.com/approximatelabs/datadm/assets/916073/f15e6ab5-8108-40ea-a6de-c69a1389af84

Note: Demo above is GPT-4, which sends the conversation to OpenAI's API. To use in full local mode, be sure to select starchat-alpha-cuda or starchat-beta-cuda as the model. This will use the StarChat model, which is a bit less capable but runs entirely locally.

⚠️ LLMs are known to hallucinate and generate fake results. So, double-check before trusting their results blindly!

Try it now! Hosted public environment is live! (Click Here)

Don't put any sensitive data in the public environment, use the docker image or colab notebook for your private conversations.

Join our discord to join the community and share your thoughts!

Features

  • Persistent Juptyer kernel backend for data manipulation during conversation
  • Run entirely locally, keeping your data private
  • Natural language chat, visualizations/plots, and direct download of data assets
  • Easy to use docker-images for one-line deployment
  • Load multiple tables directly into the chat
  • Search for data and load CSVs directly from github
  • Option to use OpenAI's GPT-3.5 or GPT-4 (requires API key)
  • WIP: GGML based mode (CPU only, no GPU required)
  • WIP: Rollback kernel state when undo using criu (re-execute all cells)
  • TODO: Support for more data sources (e.g. SQL, S3, PySpark etc.)
  • TODO: Export a conversation as a notebook or html

Things you can ask DataDM

  • Load data from a URL
  • Clean data by removing duplicates, nulls, outliers, etc.
  • Join data from multiple tables into a single output table
  • Visualize data with plots and charts
  • Ask whatever you want to your very own private code-interpreter

Quickstart

You can use docker, colab, or install locally.

1. Docker to run locally

docker run -e OPENAI_API_KEY={{YOUR_API_KEY_HERE}} -p 7860:7860 -it ghcr.io/approximatelabs/datadm:latest

For local-mode using StarChat model (requiring a CUDA device with at least 24GB of RAM)

docker run --gpus all -p 7860:7860 -it ghcr.io/approximatelabs/datadm:latest-cuda

2. Colab to run in the cloud

Open In Colab

3. Use as a python package

⚠️ datadm used this way runs LLM generated code in your userspace

For local-data, cloud-model mode (no GPU required) - requires an OpenAI API key

$ pip install datadm
$ datadm

For local-mode using StarChat model (requiring a CUDA device with at least 24GB of RAM)

$ pip install "datadm[cuda]"
$ datadm

Special Thanks

Contributions

Contributions are welcome! Feel free to submit a PR or open an issue.

Community

Join the Discord to chat with the team

Check out our other projects: sketch and approximatelabs

Release files for datadm 0.3.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for datadm 0.3.6
File Size Uploaded
datadm-0.3.6.tar.gz 12.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for datadm 0.3.6
File Interpreter ABI Platform
datadm-0.3.6-py3-none-any.whl Python 3 none any Details

Total release size: 12.2 MB

Release files / datadm-0.3.6.tar.gz

Download URL datadm-0.3.6.tar.gz
Size 12.2 MB
Tags Source
SHA-256 checksum
How to use checksums
d2e645e83384236f956aa724859cf78d43ee40b0e07e085583a9f5330142e347
BLAKE2b-256 checksum
How to use checksums
bde5d8e5203cd21481c2bb4a2ce4883997defb413720e52e099c5ceb98499e60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Release files / datadm-0.3.6-py3-none-any.whl

Download URL datadm-0.3.6-py3-none-any.whl
Size 18.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e3ec38a4f3ddec5981cf1d83e0615c17ef431014244d74c8142d0ca5c1db05fd
BLAKE2b-256 checksum
How to use checksums
c93b43fa92f8ca6f430943f937a54abf8a2ae23030a9d4856c9e0ed9059f0f99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Release history Release notifications | RSS feed

This release

0.3.6 This release

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page