---
title: "How Flo Health built safer, more useful open models with Databricks AI Runtime"
description: "Flo Health, a women’s health app with 81 million monthly active users, aimed to improve generative AI responses for medical safety and usefulness while operating at scale. Relying on general-purpose models created cost, dependency, and domain-expertise limitations, so Flo built a post-training pipeline with Databricks AI Runtime. The team defined 26 AI judges across three categories: 12 medical-safety judges acting as hard constraints, 6 micro judges for nuanced behaviors, and 8 usefulness criteria. Using these judges as a reward signal, they generated over 15,000 synthetic questions from privacy-first principles and applied reinforcement fine-tuning with supervised fine-tuning (SFT) and direct preference optimization (DPO). After fine-tuning on 32 NVIDIA H100 GPUs using PyTorch and Fully Sharded Data Parallel (FSDP), medical safety scores rose from 34% to 61%, usefulness from 42% to 76%, and the combined metric improved nearly threefold to 47%."
---

# How Flo Health built safer, more useful open models with Databricks AI Runtime

[Databricks](https://yomu.fyi/company/databricks) · Vladislav Nedosekin, András Meczner, Julia Powell, Tejas Sundaresan, Michael Shtelma · Oct 12, 2026

**Type:** Problem & solution

## Summary

Flo Health, a women’s health app with 81 million monthly active users, aimed to improve generative AI responses for medical safety and usefulness while operating at scale. Relying on general-purpose models created cost, dependency, and domain-expertise limitations, so Flo built a post-training pipeline with Databricks AI Runtime. The team defined 26 AI judges across three categories: 12 medical-safety judges acting as hard constraints, 6 micro judges for nuanced behaviors, and 8 usefulness criteria. Using these judges as a reward signal, they generated over 15,000 synthetic questions from privacy-first principles and applied reinforcement fine-tuning with supervised fine-tuning (SFT) and direct preference optimization (DPO). After fine-tuning on 32 NVIDIA H100 GPUs using PyTorch and Fully Sharded Data Parallel (FSDP), medical safety scores rose from 34% to 61%, usefulness from 42% to 76%, and the combined metric improved nearly threefold to 47%.

## Context

Flo Health faced the challenge of ensuring generative AI responses are both medically safe and practically useful for 81 million users. Relying on a single general-purpose model incurred high costs and dependency, while lacking domain-specific knowledge. They required a system that could decompose medical safety into measurable rubrics and train models to meet those standards consistently.

## Approach / What changed

Flo built a post-training pipeline with Databricks AI Runtime, LLM Foundry, Compose-RL, and MLflow. They defined 26 AI judges across medical safety, behavioral, and usefulness criteria. Using privacy-first synthetic data (15,000+ questions), they adopted reinforcement fine-tuning: generate candidate answers, score them, select strongest responses, and train with SFT and DPO. To improve medical safety, they added graded safety scores to preference pairs. Training ran on 32 NVIDIA H100 GPUs with PyTorch and FSDP.

## Takeaways

- AI judges and synthetic data can replace manual labeling for domain-specific safety training by having medical experts define evaluation criteria, then scoring candidate responses at scale.
- Adding graded safety scores to preference pairs improves medical safety beyond a binary pass/fail gate; Flo saw safety scores rise from 34% to 61% after this change.
- The reusable evaluation and training pipeline allows applying medical safety criteria to new open-weight models (e.g., Gemma, Qwen, Kimi) without rebuilding the infrastructure.

## FAQ

### How did Flo balance medical safety and usefulness in model responses?

Flo built an evaluation framework with 26 AI judges across three categories: 12 medical-safety judges as hard constraints, 6 micro judges for nuanced behaviors, and 8 usefulness criteria. They used these judges as a reward signal during training to optimize both dimensions. The final model improved combined safety+usefulness from 16% to 47%.

### How did Flo generate training data without manual labeling?

Flo generated more than 15,000 synthetic questions using privacy-first principles. Instead of human-annotated responses, they used model-generated or anonymously aggregated signals. Medical experts focused on designing and calibrating the evaluation judges, which then scored candidate responses at scale.

### What hardware and software stack did Flo use for fine-tuning?

Flo used Databricks AI Runtime with serverless NVIDIA H100 GPUs (32 GPUs). The training stack included LLM Foundry for distributed training, Compose-RL for preference optimization, and MLflow for tracking. They used PyTorch with Fully Sharded Data Parallel (FSDP).

**Tags:** [Databricks](https://yomu.fyi/topic/databricks), [Fine-Tuning](https://yomu.fyi/topic/fine-tuning), [Healthcare](https://yomu.fyi/topic/healthcare), [LLMs](https://yomu.fyi/topic/llm), [Synthetic Data](https://yomu.fyi/topic/synthetic-data)

- Source: [Databricks](https://www.databricks.com/blog/how-flo-health-built-safer-more-useful-open-models-databricks-ai-runtime)
- Source URL: https://www.databricks.com/blog/how-flo-health-built-safer-more-useful-open-models-databricks-ai-runtime
- Ingested by Yomu: 2026-10-12T18:00:15.603Z

[Read original post](https://www.databricks.com/blog/how-flo-health-built-safer-more-useful-open-models-databricks-ai-runtime)
