Lettuce is an application for medical researchers that matches the source terms supplied by the user to concepts in the Observational Health Data Sciences and Informatics (OMOP) standardised vocabularies
The application can be used as an HTTP API, a CLI, or run with a graphical user interface (GUI).
Lettuce uses vector search, a large language model, and text search features to help find the matching concept for a source term. A full pipeline uses the vector search results for retrieval-augmented generation, then the answer provided by an LLM to run text search against a configured OMOP-CDM database. Users can use the full pipeline, or only components of it, depending on requirements.
To use Lettuce, follow the quickstart
Lettuce works by querying a database with the OMOP schema, so you should have access to one. Your database access credentials should be kept in .env. An example of the format can be found in /Lettuce/.env.example
Development Docker images for the Lettuce project are available on GitHub Container Registry (GHCR):
- Registry:
ghcr.io/health-informatics-uon/lettuce - Weights Image (pre-loaded LLaMA-3.1-8B weights):
dev-weights-llama-3.1-8B-sha-<hash>(e.g.,-sha-a1b2c3d)dev-weights-llama-3.1-8B-edge(latest)- Pull:
docker pull ghcr.io/health-informatics-uon/lettuce:dev-weights-llama-3.1-8B-edge
- Base Image (lightweight, no weights):
dev-base-sha-<hash>(e.g.,-sha-a1b2c3d)dev-base-edge(latest)- Pull:
docker pull ghcr.io/health-informatics-uon/lettuce:dev-base-edge
See GitHub Packages for all tags.
If there are any bugs, please raise an issue or email us.