In this tutorial, you’ll learn how to build a BAML function that automatically extracts structured action items from meeting transcripts. By the end, you’ll have a working system that can identify tasks, assignees, priorities, subtasks, and dependencies.
First, let’s define the data structures for our tasks. Create a new BAML file called action_items.baml and add these class definitions:
These models define:
Subtask class for breaking down larger tasksPriority enum for task urgency levelsTicket class that represents a complete task with all its metadataNext, we’ll create a function that uses GPT-4 to analyze meeting transcripts and extract tasks:
This function:
Ticket objectsLet’s add test cases to verify our implementation works correctly. Add these test cases to your BAML file:
These tests provide:
This is what you see in the BAML playground:
This is the output from the complex test case:
You can enhance this implementation by:
Ticket class