/biochatter

Backend library for conversational AI in biomedicine

Primary LanguagePythonMIT LicenseMIT

biochatter

This repository contains the biochatter Python package, a generic backend library for the connection of biomedical applications to conversational AI. Described in this preprint and used in ChatGSE, which is being developed at https://github.com/biocypher/ChatGSE. More to come, so stay tuned!

Installation

To use the package, install it from PyPI, for instance using pip (pip install biochatter) or Poetry (poetry add biochatter).

Extras

The package has some optional dependencies that can be installed using the following extras (e.g. pip install biochatter[streamlit]):

  • streamlit: support for streamlit UI functions (used in ChatGSE)
  • podcast: support for podcast text-to-speech

Dev Container

Due to some incompatibilities of pymilvus with Apple Silicon, we have created a dev container for this project. To use it, you need to have Docker installed on your machine. Then, you can run the devcontainer setup as recommended by VSCode here or using Docker directly.

The dev container expects an environment file (there are options, but the basic one is .devcontainer/local.env) with the following variables:

OPENAI_API_KEY=(sk-...)
DOCKER_COMPOSE=true
DEVCONTAINER=true

To test vector database functionality, you also need to start a Milvus standalone server. You can do this by running docker-compose up as described here on the host machine (not from inside the devcontainer).