Prompt Orchestration Markup Language
This addresses the problem of inefficient and error-prone prompt engineering for developers and researchers, though it appears incremental as it builds on existing markup and styling concepts.
The paper tackles the challenges of structuring, integrating data, and managing presentation in prompting for Large Language Models by introducing POML, a markup language that uses component-based markup, specialized tags, and a styling system, validated through case studies showing improved application integration and accuracy in tasks like TableQA.
Large Language Models (LLMs) require sophisticated prompting, yet current practices face challenges in structure, data integration, format sensitivity, and tooling. Existing methods lack comprehensive solutions for organizing complex prompts involving diverse data types (documents, tables, images) or managing presentation variations systematically. To address these gaps, we introduce POML (Prompt Orchestration Markup Language). POML employs component-based markup for logical structure (roles, tasks, examples), specialized tags for seamless data integration, and a CSS-like styling system to decouple content from presentation, reducing formatting sensitivity. It includes templating for dynamic prompts and a comprehensive developer toolkit (IDE support, SDKs) to improve version control and collaboration. We validate POML through two case studies demonstrating its impact on complex application integration (PomLink) and accuracy performance (TableQA), as well as a user study assessing its effectiveness in real-world development scenarios.