Safe, Verifiable, & Maintainable AI Apps in Python

Welcome & Setup

Carson Sievert · Posit

Hi, I’m Carson 👋

  • Open source software engineer at Posit
  • Work on chatlas, shinychat, querychat
  • Background in statistics and data science

I work at posit


Posit’s mission is to create open-source software for data science, scientific research, and technical communication. We build tools that prioritize correctness, transparency, and reproducibility in their output.

Visit our Booth!

Many notable names in open source:

  • Hadley Wickham (R, tidyverse, ggplot2, etc)
  • Joe Cheng (Posit CTO, Shiny)
  • Winston Chang (Posit Assistant, Shiny)
  • Carlos Scheidegger (Quarto, scientific publishing)
  • and others

Who’s in the room?

Quick show of hands 🙋

  • Use Python on daily basis?
  • Use Python for data work?
  • Called an LLM API in code before?
  • Built or shipped an LLM app?
  • Would like to ship an AI app that lets others explore your data more easily?

What we’ll cover today

Section Time
🧭 Foundations — embrace the good, engineer around the bad 45 min
chatlas — programming with LLMs 60 min
shinychat — chatbots made easy 45 min
querychat — self-service analytics case study 45 min

Materials 📁

Slides: https://cpsievert.github.io/scipy26-tutorial

GitHub repo: https://github.com/cpsievert/scipy26-tutorial

TODO: shortlink / QR code for slides

Computing environments 💻

Workshop Environment

Install locally

TODO: shortlink / QR code for workshop environment

LLM access 🤖

Exercises require access to an LLM.

Workshop environment: things will just work.

Running locally: follow these instructions

Test run

If you can run this exercise file and see output, then you’re all set up!

python exercises/00-test-run.py

Ground rules

  • Interrupt with questions — this is a tutorial, not a keynote.
  • 🤝 Pair up with a neighbor — it’s more fun and faster.
  • 🛑 Stuck? Flag it. Don’t suffer silently during exercises.

Let’s begin 🚀