Update chat_template.jinja

#12
Files changed (1) hide show
  1. chat_template.jinja +25 -24
chat_template.jinja CHANGED
@@ -23,15 +23,27 @@
23
  {{- '</tool_call><|im_end|>\n' }}
24
  {%- else %}
25
  {%- if messages[0].role == 'system' %}
26
- {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }}
 
 
 
 
 
 
 
 
 
 
27
  {%- endif %}
28
  {%- endif %}
 
29
  {%- set ns = namespace(last_user_index=-1) %}
30
  {%- for m in messages %}
31
  {%- if m.role == 'user' %}
32
  {%- set ns.last_user_index = loop.index0 %}
33
  {%- endif %}
34
  {%- endfor %}
 
35
  {%- for message in messages %}
36
  {%- set content = message.get('content', '') or '' %}
37
  {%- if (message.role == 'system' and not loop.first) %}
@@ -45,28 +57,17 @@
45
  {%- if not loop.first %}
46
  {{- '\n' }}
47
  {%- endif %}
48
- {%- if content['type'] == 'image_url' %}
49
- {%- set media_url = content.get('image_url', {}).get('url', '') %}
50
- {%- set url_lower = media_url.lower() %}
51
- {%- set video_extensions = ['.mp4', '.avi', '.mov', '.mkv', '.webm', '.flv', '.wmv', '.m4v'] %}
52
- {%- set ns_check = namespace(is_video=False) %}
53
- {%- for ext in video_extensions %}
54
- {%- if url_lower.endswith(ext) %}
55
- {%- set ns_check.is_video = True %}
56
- {%- endif %}
57
- {%- endfor %}
58
- {%- if ns_check.is_video %}
59
- {%- set video_id = 'video_%02d' % ns_vid.count %}
60
- {%- set ns_vid.count = ns_vid.count + 1 %}
61
- {{- '<|mime_start|>{"id": "' + video_id + '", "type": "video/mp4", "filename": "video.mp4"}<|mime_end|>\n' }}
62
- {{- '<|video_aux_start|>다음 중 video_duration은 비디오 길이 정보입니다. 참고하여 답변하세요. {"video_duration": "<|video_meta_duration|>"}<|video_aux_end|>\n'}}
63
- {{- '<|video_start|><|VIDEO_PAD|><|video_end|>\n'}}
64
- {%- else %}
65
- {%- set image_id = 'image_%02d' % ns_img.count %}
66
- {%- set ns_img.count = ns_img.count + 1 %}
67
- {{- '<|mime_start|>{"id": "' + image_id + '", "type": "image/jpeg", "filename": "image.jpg"}<|mime_end|>\n' }}
68
- {{- '<|image_start|><|IMAGE_PAD|><|image_end|>' }}
69
- {%- endif %}
70
  {%- elif content['type'] == 'text' %}
71
  {{- content['text'] }}
72
  {%- endif %}
@@ -132,4 +133,4 @@
132
  {%- else %}
133
  {{- '<|im_start|>assistant\n<think>\n\n</think>\n\n' }}
134
  {%- endif %}
135
- {%- endif %}
 
23
  {{- '</tool_call><|im_end|>\n' }}
24
  {%- else %}
25
  {%- if messages[0].role == 'system' %}
26
+ {{- '<|im_start|>system\n' }}
27
+ {%- if messages[0].content is string %}
28
+ {{- messages[0].content }}
29
+ {%- else %}
30
+ {%- for item in messages[0].content %}
31
+ {%- if item['type'] == 'text' %}
32
+ {{- item['text'] }}
33
+ {%- endif %}
34
+ {%- endfor %}
35
+ {%- endif %}
36
+ {{- '<|im_end|>\n' }}
37
  {%- endif %}
38
  {%- endif %}
39
+
40
  {%- set ns = namespace(last_user_index=-1) %}
41
  {%- for m in messages %}
42
  {%- if m.role == 'user' %}
43
  {%- set ns.last_user_index = loop.index0 %}
44
  {%- endif %}
45
  {%- endfor %}
46
+
47
  {%- for message in messages %}
48
  {%- set content = message.get('content', '') or '' %}
49
  {%- if (message.role == 'system' and not loop.first) %}
 
57
  {%- if not loop.first %}
58
  {{- '\n' }}
59
  {%- endif %}
60
+ {%- if content['type'] in ['video_url', 'video'] %}
61
+ {%- set video_id = 'video_%02d' % ns_vid.count %}
62
+ {%- set ns_vid.count = ns_vid.count + 1 %}
63
+ {{- '<|mime_start|>{"id": "' + video_id + '", "type": "video/mp4", "filename": "video.mp4"}<|mime_end|>\n' }}
64
+ {{- '<|video_aux_start|>다음 video_duration은 비디오 길이 정보입니다. 참고하여 답변하세요. {"video_duration": "<|video_meta_duration|>"}<|video_aux_end|>\n'}}
65
+ {{- '<|video_start|><|VIDEO_PAD|><|video_end|>' }}
66
+ {%- elif content['type'] in ['image_url', 'image'] %}
67
+ {%- set image_id = 'image_%02d' % ns_img.count %}
68
+ {%- set ns_img.count = ns_img.count + 1 %}
69
+ {{- '<|mime_start|>{"id": "' + image_id + '", "type": "image/jpeg", "filename": "image.jpg"}<|mime_end|>\n' }}
70
+ {{- '<|image_start|><|IMAGE_PAD|><|image_end|>' }}
 
 
 
 
 
 
 
 
 
 
 
71
  {%- elif content['type'] == 'text' %}
72
  {{- content['text'] }}
73
  {%- endif %}
 
133
  {%- else %}
134
  {{- '<|im_start|>assistant\n<think>\n\n</think>\n\n' }}
135
  {%- endif %}
136
+ {%- endif %}