Two new features for collaborative data analysis with Datasette
Two new features for Datasette this week: Datasette enrichments and Datasette comments. Combined, these features enable a powerful workflow for collaborative data analysis.
Datasette Enrichments: a new plugin framework for augmenting your data introduces a new enrichments framework for Datasette.
An enrichment is code that can be executed against every row (or a filtered subset of rows) in a table, modifying or enhancing that data in some way - including importing new data from external APIs.
One example is geocoding: populating latitude and longitude columns based on the contents of an address column, using an external geocoder such as OpenCage:
Enrichments are provided by plugins. There are four plugins available today:
datasette-enrichments-opencage - geocoding (and reverse-geocoding) using OpenCage
datasette-enrichments-gpt - run prompts against text and images through OpenAI's GPT-3.5 and GPT-4 APIs, writing the results back to a column
datasette-enrichments-jinja - use sandboxed Jinja templates to populate new columns based on existing data
datasette-enrichments-re2 - execute regular expressions for search-and-replace or to extract data from text
Here's a video demonstrating the new feature, including how to use GPT-4 to extract structured data from unstructured text and how GPT-4 Vision can be used to provide detailed descriptions of linked images.
Alex’s latest project is datasette-comments, an open source plugin that enabling a new way of collaborating around data analysis. He introduces the new plugin in Annotate and explore your data with datasette-comments on the Datasette Cloud blog.
Authenticated users can attach and reply to comments on any row of data in any table. Comments support @-mentions, reaction emoji and hashtags, and a comment thread can be marked as resolved to move it to an archive page.
Datasette Cloud now has enrichments and comments
We’ve enabled both of these plugins on Datasette Cloud. If your team would benefit from collaboratively analyzing data in this way, please drop us a line by replying to this message!