| 1 | {%- set query_msg = (messages | selectattr('role', 'equalto', 'query') | list | first) -%} |
| 2 | {%- set doc_msg = (messages | selectattr('role', 'equalto', 'document') | list | first) -%} |
| 3 | |
| 4 | {%- set q = query_msg['content'] -%} |
| 5 | {%- set d = doc_msg['content'] -%} |
| 6 | |
| 7 | {# If the doc contains <image> anywhere, hoist a single <image> to the front #} |
| 8 | {%- set has_image = ("<image>" in d) -%} |
| 9 | {%- set d_clean = d | replace("<image>", "") -%} |
| 10 | {%- set q_clean = q | replace("<image>", "") -%} |
| 11 | |
| 12 | {%- if has_image -%}<image>{{ " " }}{%- endif -%} |
| 13 | question:{{ q_clean }}{{ " " }} |
| 14 | {{ " " }} |
| 15 | {{ " " }}passage:{{ d_clean }} |