8 lines
782 B
Django/Jinja
8 lines
782 B
Django/Jinja
{%- if 'role' not in messages[0] -%}{%- set sharegpt = namespace(messages = []) -%}{%- for message in messages -%}{%- set role = {'human' : 'user', 'gpt' : 'assistant'}.get(message['from'], message['from']) -%}{%- set sharegpt.messages = sharegpt.messages + [dict(message, role = role, content = message['value'])] -%}{%- endfor -%}{%- set messages = sharegpt.messages -%}{%- endif %}{% for message in messages %}{% if message['role'] == 'user' %}{{'<|im_start|>user
|
|
' + message['content'] + '<|im_end|>
|
|
'}}{% elif message['role'] == 'assistant' %}{{'<|im_start|>assistant
|
|
' + message['content'] + '<|im_end|>
|
|
' }}{% else %}{{ '<|im_start|>system
|
|
' + message['content'] + '<|im_end|>
|
|
' }}{% endif %}{% endfor %}{% if add_generation_prompt %}{{ '<|im_start|>assistant
|
|
' }}{% endif %} |