21 lines
985 B
Plaintext
21 lines
985 B
Plaintext
|
|
{%- 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<think>\n\n</think>\n\n' + message['content'] + '<|im_end|>\n' }}
|
||
|
|
{%- endif -%}
|
||
|
|
{%- endfor -%}
|
||
|
|
{%- if add_generation_prompt -%}
|
||
|
|
{{ '<|im_start|>assistant\n<think>\n\n</think>\n\n<|query_analysis_start|>\n' }}
|
||
|
|
{%- endif -%}
|