LMQL is a domain-specific programming language designed to simplify and optimize interactions with large language models (LLMs). By enabling structured prompting with types, constraints, templates, and executable Python code, LMQL is ideal for researchers, developers, and engineers building advanced LLM-powered applications. It supports multiple LLM backends and offers tools for robust and modular prompt construction.