label: raven
pdf_path: ./assets/raven.pdf
input_language: en
plate_language: en
output_languages:
- en
output_dir: output
run_output_dir: ${output_dir}/${label}
clear_cache: false
print_available_models: false
crop_strategy: llm
glossary_strategy: llm
explanation_strategy: llm
easy_read_strategy: llm
caption_strategy: llm
quiz_strategy: llm
speech_strategy: tts
custom_plate_path: ''
default_model: gpt-5
render_strategy: dynamic
layout_types:
cover_page:
description: Cover page of the book, typically includes title, author, and publisher
information.
render_strategy: two_column
divider_page:
description: Divider or chapter title pages that separate sections or chapters
within the book.
render_strategy: single_column
novel_text_and_images:
description: Novel pages with text and embedded images, including poetry. Text
flows around images, or text and images would be best laid out in two column
format.
render_strategy: two_column
novel_text_only:
description: Novel pages with only text content, including poetry. Simple flowing
text layout.
render_strategy: two_column
novel_images_only:
description: Novel pages with only images, including spreads, such as illustrated
novels or photo essays.
render_strategy: two_column
mathbook:
description: Math textbook pages with equations, diagrams, and structured layouts
typical of educational math content.
render_strategy: html
storybook_text_images:
description: Storybook pages with integrated text and illustrations. Often text
is overlapping, however it will work in a two column format. If the overlapping
is too complex like speech bubbles, the comic_overlay strategy will be used
instead.
render_strategy: two_column
storybook_images_only:
description: Storybook pages with only illustrations, no text content.
render_strategy: two_column
comic_overlay:
description: Visually rich layouts that are image focused with text overlayed
positionally. For examples comics, storybooks, graphic novels features pages
with speech bubbles, captions, and text overlays on images. Complex spatial
relationships between text and visuals.
render_strategy: overlay
textbook_complex:
description: Textbook pages with complex multi-element layouts including sidebars,
callout boxes, diagrams, and non-linear reading flow.
render_strategy: html
textbook_activity:
description: Activity or workbook pages with interactive elements, fill-in-blanks,
exercises, and structured activity layouts.
render_strategy: html
other:
description: Pages that do not fit into the other defined layout types, requiring
custom handling.
render_strategy: html
render_strategies:
single_column:
render_type: template
config:
render_template_path: templates/single_column_render.html
two_column:
render_type: template
config:
render_template_path: templates/two_column_template_render.html
overlay:
render_type: html
config:
model: default
template_path: prompts/web_generation_html_fit_overlay.jinja2
max_retries: 25
section_quiz:
render_type: template
config:
render_template_path: templates/quiz_render.html
html:
render_type: html
config:
model: default
template_path: prompts/web_generation_html.jinja2
max_retries: 25
example_dirs:
- assets/prompts/adt_examples/text_only_1
- assets/prompts/adt_examples/text_and_images_1
- assets/prompts/adt_examples/text_and_images_2
- assets/prompts/adt_examples/text_and_images_3
rows:
render_type: rows
config:
model: default
template_path: prompts/web_generation_rows.jinja2
render_template_path: templates/row_render.html
page_range:
start: 0
end: 5
image_filters:
size:
max_side: 3500
min_side: 150
blank:
threshold: 2
text_filters:
pruned_text_types:
- footer_text
- page_number
- other
section_filters:
pruned_section_types:
- back_cover
- credits
- inside_cover
prompts:
text_extraction:
model: gpt-5
template_path: prompts/text_extraction_groups.jinja2
meaningfulness:
model: gpt-5
template_path: prompts/image_meaningfulness.jinja2
crop:
model: gpt-5
template_path: prompts/image_crop_storybook.jinja2
recrop_template_path: prompts/image_recrop_storybook.jinja2
recrops: 2
caption:
model: gpt-5
template_path: prompts/image_caption.jinja2
page_sectioning:
model: gpt-5
template_path: prompts/page_sectioning_by_page.jinja2
max_retries: 10
section_explanation:
model: gpt-5
template_path: prompts/section_explanation.jinja2
section_quiz:
model: gpt-5
template_path: prompts/section_quiz.jinja2
sections_per_quiz: 3
text_translation:
model: gpt-5
template_path: prompts/text_translation.jinja2
glossary_translation:
model: gpt-5
template_path: prompts/glossary_translation.jinja2
section_glossary:
model: gpt-5
template_path: prompts/section_glossary.jinja2
section_metadata:
model: gpt-5
template_path: prompts/section_metadata.jinja2
text_easy_read:
model: gpt-5
template_path: prompts/text_easy_read.jinja2
speech_generation:
model: gpt-4o-mini-tts
template_path: prompts/speech_generation.jinja2