Instructions to use OpenPipe/Llama-3.1-8B-Instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Inference
Upload tokenizer_config.json
Browse files- tokenizer_config.json +1 -1
tokenizer_config.json
CHANGED
|
@@ -2050,7 +2050,7 @@
|
|
| 2050 |
}
|
| 2051 |
},
|
| 2052 |
"bos_token": "<|begin_of_text|>",
|
| 2053 |
-
"chat_template": "{%- set template_variant = template_variant | default(\"official\") %}\n{{- bos_token }}\n\n{%- if template_variant == \"llama31instruct\" %}\n{{- bos_token }}\n{%- macro llama31_compact_json(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- elif value is mapping -%}\n {{- \"{\" -}}\n {%- for key, item in value.items() -%}\n {{- key | tojson -}}{{- \":\" -}}{{- llama31_compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"}\" -}}\n {%- elif value is iterable -%}\n {{- \"[\" -}}\n {%- for item in value -%}\n {{- llama31_compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]\" -}}\n {%- else -%}\n {{- value | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro llama31_arguments(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- else -%}\n {%- set encoded = llama31_compact_json(value) -%}\n {{- encoded | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n {%- if messages | length == 0 %}\n {%- set messages = [{\"role\": \"user\", \"content\": \"\"}] %}\n {%- endif %}\n {%- if not tools is defined %}\n {%- set tools = none %}\n {%- endif %}\n {%- if messages[0]['role'] in ['system', 'developer'] %}\n {%- set system_message = messages[0]['content']|trim %}\n {%- set messages = messages[1:] %}\n {%- else %}\n {%- set system_message = \"\" %}\n {%- endif %}\n {{- \"<|start_header_id|>system<|end_header_id|>\\n\\n\" }}\n {%- if tools is not none and tools|length > 0 %}\n {{- \"Environment: ipython\\n\" }}\n {{- \"You have access to the following functions. To call a function, please respond with JSON for a function call.\" }}\n {{- 'Respond in the format {\"name\": function name, \"parameters\": dictionary of argument name and its value}.' }}\n {{- \"Do not use variables.\\n\\n\" }}\n {%- for t in tools %}\n {{- '{\"function\": {\"name\": ' }}\n {{- t.function.name | tojson }}\n {{- ', \"parameters\": ' }}\n {%- set p = t.function.parameters %}\n {%- if p is mapping and 'type' in p %}\n {{- '{\"type\": ' }}\n {{- p['type'] | tojson }}\n {%- for k, v in p.items() if k != 'type' %}\n {{- ', ' }}\n {{- k | tojson }}\n {{- ': ' }}\n {{- v | tojson }}\n {%- endfor %}\n {{- '}' }}\n {%- else %}\n {{- p | tojson }}\n {%- endif %}\n {%- if t.function.description is defined %}\n {{- ', \"description\": ' }}\n {{- t.function.description | tojson }}\n {%- endif %}\n {%- if t.function.strict is defined %}\n {{- ', \"strict\": ' }}\n {{- t.function.strict | tojson }}\n {%- endif %}\n {{- '}, \"type\": ' }}\n {{- t.type | default(\"function\") | tojson }}\n {{- '}' }}\n {{- \"\\n\\n\" }}\n {%- endfor %}\n {%- endif %}\n {{- system_message }}\n {{- \"<|eot_id|>\" }}\n {%- for message in messages %}\n {%- if not (message.role == 'tool' or 'tool_calls' in message) %}\n {{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>\\n\\n' + message['content'] | trim + '<|eot_id|>' }}\n {%- elif 'tool_calls' in message %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' -}}\n {%- for tool_call in message.tool_calls -%}\n {{- '<|start_tool_call|>' }}\n {{- '{\"name\": \"' + tool_call.function.name + '\", ' }}\n {{- '\"parameters\": ' }}\n {{- llama31_arguments(tool_call.function.arguments) }}\n {{- \"}\" }}\n {{- '<|end_tool_call|>' }}\n {%- if not loop.last %}, {% endif %}\n {%- endfor -%}\n {{- \"<|eot_id|>\" }}\n {%- elif message.role == \"tool\" %}\n {{- \"<|start_header_id|>ipython<|end_header_id|>\\n\\n\" }}\n {%- if message.content is mapping or message.content is iterable %}\n {{- message.content | tojson }}\n {%- else %}\n {{- message.content }}\n {%- endif %}\n {{- \"<|eot_id|>\" }}\n {%- endif %}\n {%- endfor %}\n {%- if add_generation_prompt %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' }}\n {%- endif %}\n{%- elif template_variant == \"pipeline3\" %}\n{%- macro compact_json(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- elif value is mapping -%}\n {{- \"{\" -}}\n {%- for key, item in value.items() -%}\n {{- key | tojson -}}{{- \":\" -}}{{- compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"}\" -}}\n {%- elif value is iterable -%}\n {{- \"[\" -}}\n {%- for item in value -%}\n {{- compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]\" -}}\n {%- else -%}\n {{- value | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro pipeline3_arguments(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- else -%}\n {%- set encoded = compact_json(value) -%}\n {{- encoded | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro pipeline3_prefill_content(value) -%}\n {%- if value is string -%}\n {{- value -}}\n {%- elif value is iterable -%}\n {{- value\n | selectattr(\"text\", \"defined\")\n | map(attribute=\"text\")\n | join(\"\\n\\n\") -}}\n {%- else -%}\n {{- value -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro pipeline3_message(message) -%}\n {%- if message.role == \"assistant\" and message.tool_calls is defined and message.tool_calls | length > 0 -%}\n {{- '{\"role\":' -}}{{- message.role | tojson -}}{{- ',\"content\":' -}}\n {%- if message.content is defined and message.content is not none and message.content != \"\" -%}\n {{- compact_json(message.content) -}}\n {%- else -%}\n {{- \"null\" -}}\n {%- endif -%}\n {%- if message.name is defined and message.name is not none\n and not (message.name == \"prefill\" and not message.content) -%}\n {{- ',\"name\":' -}}{{- message.name | tojson -}}\n {%- endif -%}\n {{- ',\"tool_calls\":[' -}}\n {%- for tool_call in message.tool_calls -%}\n {{- '{\"id\":' -}}{{- tool_call.id | default(\"\") | tojson -}}\n {{- ',\"function\":{\"name\":' -}}{{- tool_call.function.name | tojson -}}\n {{- ',\"arguments\":' -}}{{- pipeline3_arguments(tool_call.function.arguments) -}}{{- \"}\" -}}\n {{- ',\"type\":' -}}{{- tool_call.type | default(\"function\") | tojson -}}{{- \"}\" -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]}\" -}}\n {%- else -%}\n {{- compact_json(message) -}}\n {%- endif -%}\n{%- endmacro -%}\n\n {%- set pipeline3_messages = messages -%}\n {%- set pipeline3_prefill = \"\" -%}\n {%- if pipeline3_messages | length > 0 -%}\n {%- set last_message = pipeline3_messages[-1] -%}\n {%- if last_message.role == \"assistant\" and last_message.name is defined and last_message.name == \"prefill\" and last_message.content -%}\n {%- set pipeline3_prefill = last_message.content -%}\n {%- set pipeline3_messages = pipeline3_messages[:-1] -%}\n {%- endif -%}\n {%- endif -%}\n\n {%- if pipeline3_tool_choice is defined -%}\n {%- set pipeline3_tool_choice_value = pipeline3_tool_choice -%}\n {%- elif tool_choice is defined -%}\n {%- set pipeline3_tool_choice_value = tool_choice -%}\n {%- else -%}\n {%- set pipeline3_tool_choice_value = \"auto\" -%}\n {%- endif -%}\n {%- set include_pipeline3_functions = tools is defined and tools is not none and pipeline3_tool_choice_value != \"none\" -%}\n {%- set named_pipeline3_function = none -%}\n {%- if pipeline3_tool_choice_value is mapping and pipeline3_tool_choice_value.function is defined and pipeline3_tool_choice_value.function.name is defined -%}\n {%- set named_pipeline3_function = pipeline3_tool_choice_value.function.name -%}\n {%- endif -%}\n\n {{- \"### Instruction:\\n\" -}}\n {{- '{\"messages\":[' -}}\n {%- for message in pipeline3_messages -%}\n {{- pipeline3_message(message) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]\" -}}\n {%- if include_pipeline3_functions -%}\n {{- ',\"functions\":[' -}}\n {%- if named_pipeline3_function is not none -%}\n {{- named_pipeline3_function | tojson -}}\n {%- else -%}\n {%- set function_tools = tools\n | selectattr(\"function\", \"defined\")\n | selectattr(\"function.name\", \"defined\")\n | list -%}\n {%- for tool in function_tools -%}\n {{- tool.function.name | tojson -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {%- endif -%}\n {{- \"]\" -}}\n {%- endif -%}\n {{- \"}\\n\\n### Response:\\n\" -}}\n {{- pipeline3_prefill_content(pipeline3_prefill) -}}\n{%- else %}\n {%- if custom_tools is defined %}\n {%- set tools = custom_tools %}\n {%- endif %}\n {%- if not tools_in_user_message is defined %}\n {%- set tools_in_user_message = true %}\n {%- endif %}\n {%- if not date_string is defined %}\n {%- set date_string = \"26 Jul 2024\" %}\n {%- endif %}\n {%- if not tools is defined %}\n {%- set tools = none %}\n {%- endif %}\n {%- if messages[0]['role'] == 'system' %}\n {%- set system_message = messages[0]['content']|trim %}\n {%- set messages = messages[1:] %}\n {%- else %}\n {%- set system_message = \"\" %}\n {%- endif %}\n {{- \"<|start_header_id|>system<|end_header_id|>\\n\\n\" }}\n {%- if builtin_tools is defined or tools is not none %}\n {{- \"Environment: ipython\\n\" }}\n {%- endif %}\n {%- if builtin_tools is defined %}\n {{- \"Tools: \" + builtin_tools | reject('equalto', 'code_interpreter') | join(\", \") + \"\\n\\n\" }}\n {%- endif %}\n {{- \"Cutting Knowledge Date: December 2023\\n\" }}\n {{- \"Today Date: \" + date_string + \"\\n\\n\" }}\n {%- if tools is not none and not tools_in_user_message %}\n {{- \"You have access to the following functions. To call a function, please respond with JSON for a function call.\" }}\n {{- 'Respond in the format {\"name\": function name, \"parameters\": dictionary of argument name and its value}.' }}\n {{- \"Do not use variables.\\n\\n\" }}\n {%- for t in tools %}\n {{- t | tojson(indent=4) }}\n {{- \"\\n\\n\" }}\n {%- endfor %}\n {%- endif %}\n {{- system_message }}\n {{- \"<|eot_id|>\" }}\n {%- if tools_in_user_message and not tools is none %}\n {%- if messages | length != 0 %}\n {%- set first_user_message = messages[0]['content']|trim %}\n {%- set messages = messages[1:] %}\n {%- else %}\n {{- raise_exception(\"Cannot put tools in the first user message when there's no first user message!\") }}\n {%- endif %}\n {{- '<|start_header_id|>user<|end_header_id|>\\n\\n' -}}\n {{- \"Given the following functions, please respond with a JSON for a function call \" }}\n {{- \"with its proper arguments that best answers the given prompt.\\n\\n\" }}\n {{- 'Respond in the format {\"name\": function name, \"parameters\": dictionary of argument name and its value}.' }}\n {{- \"Do not use variables.\\n\\n\" }}\n {%- for t in tools %}\n {{- t | tojson(indent=4) }}\n {{- \"\\n\\n\" }}\n {%- endfor %}\n {{- first_user_message + \"<|eot_id|>\" }}\n {%- endif %}\n {%- for message in messages %}\n {%- if not (message.role == 'ipython' or message.role == 'tool' or 'tool_calls' in message) %}\n {{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>\\n\\n' + message['content'] | trim + '<|eot_id|>' }}\n {%- elif 'tool_calls' in message %}\n {%- if not message.tool_calls|length == 1 %}\n {{- raise_exception(\"This model only supports single tool-calls at once!\") }}\n {%- endif %}\n {%- set tool_call = message.tool_calls[0].function %}\n {%- if builtin_tools is defined and tool_call.name in builtin_tools %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' -}}\n {{- \"<|python_tag|>\" + tool_call.name + \".call(\" }}\n {%- for arg_name, arg_val in tool_call.arguments | items %}\n {{- arg_name + '=\"' + arg_val + '\"' }}\n {%- if not loop.last %}\n {{- \", \" }}\n {%- endif %}\n {%- endfor %}\n {{- \")\" }}\n {%- else %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' -}}\n {{- '{\"name\": \"' + tool_call.name + '\", ' }}\n {{- '\"parameters\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- \"}\" }}\n {%- endif %}\n {%- if builtin_tools is defined %}\n {{- \"<|eom_id|>\" }}\n {%- else %}\n {{- \"<|eot_id|>\" }}\n {%- endif %}\n {%- elif message.role == \"tool\" or message.role == \"ipython\" %}\n {{- \"<|start_header_id|>ipython<|end_header_id|>\\n\\n\" }}\n {%- if message.content is mapping or message.content is iterable %}\n {{- message.content | tojson }}\n {%- else %}\n {{- message.content }}\n {%- endif %}\n {{- \"<|eot_id|>\" }}\n {%- endif %}\n {%- endfor %}\n {%- if add_generation_prompt %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' }}\n {%- endif %}\n{%- endif %}\n",
|
| 2054 |
"clean_up_tokenization_spaces": true,
|
| 2055 |
"eos_token": "<|eot_id|>",
|
| 2056 |
"model_input_names": [
|
|
|
|
| 2050 |
}
|
| 2051 |
},
|
| 2052 |
"bos_token": "<|begin_of_text|>",
|
| 2053 |
+
"chat_template": "{%- set template_variant = template_variant | default(\"official\") %}\n{{- bos_token }}\n\n{%- if template_variant == \"llama31instruct\" %}\n{%- macro llama31_compact_json(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- elif value is mapping -%}\n {{- \"{\" -}}\n {%- for key, item in value.items() -%}\n {{- key | tojson -}}{{- \":\" -}}{{- llama31_compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"}\" -}}\n {%- elif value is iterable -%}\n {{- \"[\" -}}\n {%- for item in value -%}\n {{- llama31_compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]\" -}}\n {%- else -%}\n {{- value | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro llama31_arguments(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- else -%}\n {%- set encoded = llama31_compact_json(value) -%}\n {{- encoded | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n {%- if messages | length == 0 %}\n {%- set messages = [{\"role\": \"user\", \"content\": \"\"}] %}\n {%- endif %}\n {%- if not tools is defined %}\n {%- set tools = none %}\n {%- endif %}\n {%- if messages[0]['role'] in ['system', 'developer'] %}\n {%- set system_message = messages[0]['content']|trim %}\n {%- set messages = messages[1:] %}\n {%- else %}\n {%- set system_message = \"\" %}\n {%- endif %}\n {{- \"<|start_header_id|>system<|end_header_id|>\\n\\n\" }}\n {%- if tools is not none and tools|length > 0 %}\n {{- \"Environment: ipython\\n\" }}\n {{- \"You have access to the following functions. To call a function, please respond with JSON for a function call.\" }}\n {{- 'Respond in the format {\"name\": function name, \"parameters\": dictionary of argument name and its value}.' }}\n {{- \"Do not use variables.\\n\\n\" }}\n {%- for t in tools %}\n {{- '{\"function\": {\"name\": ' }}\n {{- t.function.name | tojson }}\n {{- ', \"parameters\": ' }}\n {%- set p = t.function.parameters %}\n {%- if p is mapping and 'type' in p %}\n {{- '{\"type\": ' }}\n {{- p['type'] | tojson }}\n {%- for k, v in p.items() if k != 'type' %}\n {{- ', ' }}\n {{- k | tojson }}\n {{- ': ' }}\n {{- v | tojson }}\n {%- endfor %}\n {{- '}' }}\n {%- else %}\n {{- p | tojson }}\n {%- endif %}\n {%- if t.function.description is defined %}\n {{- ', \"description\": ' }}\n {{- t.function.description | tojson }}\n {%- endif %}\n {%- if t.function.strict is defined %}\n {{- ', \"strict\": ' }}\n {{- t.function.strict | tojson }}\n {%- endif %}\n {{- '}, \"type\": ' }}\n {{- t.type | default(\"function\") | tojson }}\n {{- '}' }}\n {{- \"\\n\\n\" }}\n {%- endfor %}\n {%- endif %}\n {{- system_message }}\n {{- \"<|eot_id|>\" }}\n {%- for message in messages %}\n {%- if not (message.role == 'tool' or 'tool_calls' in message) %}\n {{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>\\n\\n' + message['content'] | trim + '<|eot_id|>' }}\n {%- elif 'tool_calls' in message %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' -}}\n {%- for tool_call in message.tool_calls -%}\n {{- '<|start_tool_call|>' }}\n {{- '{\"name\": \"' + tool_call.function.name + '\", ' }}\n {{- '\"parameters\": ' }}\n {{- llama31_arguments(tool_call.function.arguments) }}\n {{- \"}\" }}\n {{- '<|end_tool_call|>' }}\n {%- if not loop.last %}, {% endif %}\n {%- endfor -%}\n {{- \"<|eot_id|>\" }}\n {%- elif message.role == \"tool\" %}\n {{- \"<|start_header_id|>ipython<|end_header_id|>\\n\\n\" }}\n {%- if message.content is mapping or message.content is iterable %}\n {{- message.content | tojson }}\n {%- else %}\n {{- message.content }}\n {%- endif %}\n {{- \"<|eot_id|>\" }}\n {%- endif %}\n {%- endfor %}\n {%- if add_generation_prompt %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' }}\n {%- endif %}\n{%- elif template_variant == \"pipeline3\" %}\n{%- macro compact_json(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- elif value is mapping -%}\n {{- \"{\" -}}\n {%- for key, item in value.items() -%}\n {{- key | tojson -}}{{- \":\" -}}{{- compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"}\" -}}\n {%- elif value is iterable -%}\n {{- \"[\" -}}\n {%- for item in value -%}\n {{- compact_json(item) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]\" -}}\n {%- else -%}\n {{- value | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro pipeline3_arguments(value) -%}\n {%- if value is string -%}\n {{- value | tojson -}}\n {%- else -%}\n {%- set encoded = compact_json(value) -%}\n {{- encoded | tojson -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro pipeline3_prefill_content(value) -%}\n {%- if value is string -%}\n {{- value -}}\n {%- elif value is iterable -%}\n {{- value\n | selectattr(\"text\", \"defined\")\n | map(attribute=\"text\")\n | join(\"\\n\\n\") -}}\n {%- else -%}\n {{- value -}}\n {%- endif -%}\n{%- endmacro -%}\n\n{%- macro pipeline3_message(message) -%}\n {%- if message.role == \"assistant\" and message.tool_calls is defined and message.tool_calls | length > 0 -%}\n {{- '{\"role\":' -}}{{- message.role | tojson -}}{{- ',\"content\":' -}}\n {%- if message.content is defined and message.content is not none and message.content != \"\" -%}\n {{- compact_json(message.content) -}}\n {%- else -%}\n {{- \"null\" -}}\n {%- endif -%}\n {%- if message.name is defined and message.name is not none\n and not (message.name == \"prefill\" and not message.content) -%}\n {{- ',\"name\":' -}}{{- message.name | tojson -}}\n {%- endif -%}\n {{- ',\"tool_calls\":[' -}}\n {%- for tool_call in message.tool_calls -%}\n {{- '{\"id\":' -}}{{- tool_call.id | default(\"\") | tojson -}}\n {{- ',\"function\":{\"name\":' -}}{{- tool_call.function.name | tojson -}}\n {{- ',\"arguments\":' -}}{{- pipeline3_arguments(tool_call.function.arguments) -}}{{- \"}\" -}}\n {{- ',\"type\":' -}}{{- tool_call.type | default(\"function\") | tojson -}}{{- \"}\" -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]}\" -}}\n {%- else -%}\n {{- compact_json(message) -}}\n {%- endif -%}\n{%- endmacro -%}\n\n {%- set pipeline3_messages = messages -%}\n {%- set pipeline3_prefill = \"\" -%}\n {%- if pipeline3_messages | length > 0 -%}\n {%- set last_message = pipeline3_messages[-1] -%}\n {%- if last_message.role == \"assistant\" and last_message.name is defined and last_message.name == \"prefill\" and last_message.content -%}\n {%- set pipeline3_prefill = last_message.content -%}\n {%- set pipeline3_messages = pipeline3_messages[:-1] -%}\n {%- endif -%}\n {%- endif -%}\n\n {%- if pipeline3_tool_choice is defined -%}\n {%- set pipeline3_tool_choice_value = pipeline3_tool_choice -%}\n {%- elif tool_choice is defined -%}\n {%- set pipeline3_tool_choice_value = tool_choice -%}\n {%- else -%}\n {%- set pipeline3_tool_choice_value = \"auto\" -%}\n {%- endif -%}\n {%- set include_pipeline3_functions = tools is defined and tools is not none and pipeline3_tool_choice_value != \"none\" -%}\n {%- set named_pipeline3_function = none -%}\n {%- if pipeline3_tool_choice_value is mapping and pipeline3_tool_choice_value.function is defined and pipeline3_tool_choice_value.function.name is defined -%}\n {%- set named_pipeline3_function = pipeline3_tool_choice_value.function.name -%}\n {%- endif -%}\n\n {{- \"### Instruction:\\n\" -}}\n {{- '{\"messages\":[' -}}\n {%- for message in pipeline3_messages -%}\n {{- pipeline3_message(message) -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {{- \"]\" -}}\n {%- if include_pipeline3_functions -%}\n {{- ',\"functions\":[' -}}\n {%- if named_pipeline3_function is not none -%}\n {{- named_pipeline3_function | tojson -}}\n {%- else -%}\n {%- set function_tools = tools\n | selectattr(\"function\", \"defined\")\n | selectattr(\"function.name\", \"defined\")\n | list -%}\n {%- for tool in function_tools -%}\n {{- tool.function.name | tojson -}}\n {%- if not loop.last -%}{{- \",\" -}}{%- endif -%}\n {%- endfor -%}\n {%- endif -%}\n {{- \"]\" -}}\n {%- endif -%}\n {{- \"}\\n\\n### Response:\\n\" -}}\n {{- pipeline3_prefill_content(pipeline3_prefill) -}}\n{%- else %}\n {%- if custom_tools is defined %}\n {%- set tools = custom_tools %}\n {%- endif %}\n {%- if not tools_in_user_message is defined %}\n {%- set tools_in_user_message = true %}\n {%- endif %}\n {%- if not date_string is defined %}\n {%- set date_string = \"26 Jul 2024\" %}\n {%- endif %}\n {%- if not tools is defined %}\n {%- set tools = none %}\n {%- endif %}\n {%- if messages[0]['role'] == 'system' %}\n {%- set system_message = messages[0]['content']|trim %}\n {%- set messages = messages[1:] %}\n {%- else %}\n {%- set system_message = \"\" %}\n {%- endif %}\n {{- \"<|start_header_id|>system<|end_header_id|>\\n\\n\" }}\n {%- if builtin_tools is defined or tools is not none %}\n {{- \"Environment: ipython\\n\" }}\n {%- endif %}\n {%- if builtin_tools is defined %}\n {{- \"Tools: \" + builtin_tools | reject('equalto', 'code_interpreter') | join(\", \") + \"\\n\\n\" }}\n {%- endif %}\n {{- \"Cutting Knowledge Date: December 2023\\n\" }}\n {{- \"Today Date: \" + date_string + \"\\n\\n\" }}\n {%- if tools is not none and not tools_in_user_message %}\n {{- \"You have access to the following functions. To call a function, please respond with JSON for a function call.\" }}\n {{- 'Respond in the format {\"name\": function name, \"parameters\": dictionary of argument name and its value}.' }}\n {{- \"Do not use variables.\\n\\n\" }}\n {%- for t in tools %}\n {{- t | tojson(indent=4) }}\n {{- \"\\n\\n\" }}\n {%- endfor %}\n {%- endif %}\n {{- system_message }}\n {{- \"<|eot_id|>\" }}\n {%- if tools_in_user_message and not tools is none %}\n {%- if messages | length != 0 %}\n {%- set first_user_message = messages[0]['content']|trim %}\n {%- set messages = messages[1:] %}\n {%- else %}\n {{- raise_exception(\"Cannot put tools in the first user message when there's no first user message!\") }}\n {%- endif %}\n {{- '<|start_header_id|>user<|end_header_id|>\\n\\n' -}}\n {{- \"Given the following functions, please respond with a JSON for a function call \" }}\n {{- \"with its proper arguments that best answers the given prompt.\\n\\n\" }}\n {{- 'Respond in the format {\"name\": function name, \"parameters\": dictionary of argument name and its value}.' }}\n {{- \"Do not use variables.\\n\\n\" }}\n {%- for t in tools %}\n {{- t | tojson(indent=4) }}\n {{- \"\\n\\n\" }}\n {%- endfor %}\n {{- first_user_message + \"<|eot_id|>\" }}\n {%- endif %}\n {%- for message in messages %}\n {%- if not (message.role == 'ipython' or message.role == 'tool' or 'tool_calls' in message) %}\n {{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>\\n\\n' + message['content'] | trim + '<|eot_id|>' }}\n {%- elif 'tool_calls' in message %}\n {%- if not message.tool_calls|length == 1 %}\n {{- raise_exception(\"This model only supports single tool-calls at once!\") }}\n {%- endif %}\n {%- set tool_call = message.tool_calls[0].function %}\n {%- if builtin_tools is defined and tool_call.name in builtin_tools %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' -}}\n {{- \"<|python_tag|>\" + tool_call.name + \".call(\" }}\n {%- for arg_name, arg_val in tool_call.arguments | items %}\n {{- arg_name + '=\"' + arg_val + '\"' }}\n {%- if not loop.last %}\n {{- \", \" }}\n {%- endif %}\n {%- endfor %}\n {{- \")\" }}\n {%- else %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' -}}\n {{- '{\"name\": \"' + tool_call.name + '\", ' }}\n {{- '\"parameters\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- \"}\" }}\n {%- endif %}\n {%- if builtin_tools is defined %}\n {{- \"<|eom_id|>\" }}\n {%- else %}\n {{- \"<|eot_id|>\" }}\n {%- endif %}\n {%- elif message.role == \"tool\" or message.role == \"ipython\" %}\n {{- \"<|start_header_id|>ipython<|end_header_id|>\\n\\n\" }}\n {%- if message.content is mapping or message.content is iterable %}\n {{- message.content | tojson }}\n {%- else %}\n {{- message.content }}\n {%- endif %}\n {{- \"<|eot_id|>\" }}\n {%- endif %}\n {%- endfor %}\n {%- if add_generation_prompt %}\n {{- '<|start_header_id|>assistant<|end_header_id|>\\n\\n' }}\n {%- endif %}\n{%- endif %}\n",
|
| 2054 |
"clean_up_tokenization_spaces": true,
|
| 2055 |
"eos_token": "<|eot_id|>",
|
| 2056 |
"model_input_names": [
|