{%- for message in messages -%} {%- if message['role'] == 'system' -%} {{ '<|im_start|>system\n' + message['content'] + '<|im_end|>\n' }} {%- elif message['role'] == 'user' -%} {%- if documents and loop.last -%} {{ '<|im_start|>user\n<|query_start|>' + message['content'] + '<|query_end|>\n' }} {%- for doc in documents -%} {{ '<|source_start|><|source_id|>' + (loop.index | string) + ' ' + doc['text'] + '<|source_end|>\n' }} {%- endfor -%} {{ '<|im_end|>\n' }} {%- else -%} {{ '<|im_start|>user\n' + message['content'] + '<|im_end|>\n' }} {%- endif -%} {%- elif message['role'] == 'assistant' -%} {{ '<|im_start|>assistant\n\n\n\n\n' + message['content'] + '<|im_end|>\n' }} {%- endif -%} {%- endfor -%} {%- if add_generation_prompt -%} {{ '<|im_start|>assistant\n\n\n\n\n<|query_analysis_start|>\n' }} {%- endif -%}