char-fork/llama.cpp

git clone https://git.t4t.associates/char-fork/llama.cpp

Jesus Talaverachat : add Granite 4.1 chat template (#23518)bb771cbd2

char/aliceai-t5-moe
2.2 KiB75 linesraw
1#pragma once
2
3#include <string>
4#include <vector>
5#include <cstdint>
6
7enum llm_chat_template {
8    LLM_CHAT_TEMPLATE_CHATML,
9    LLM_CHAT_TEMPLATE_LLAMA_2,
10    LLM_CHAT_TEMPLATE_LLAMA_2_SYS,
11    LLM_CHAT_TEMPLATE_LLAMA_2_SYS_BOS,
12    LLM_CHAT_TEMPLATE_LLAMA_2_SYS_STRIP,
13    LLM_CHAT_TEMPLATE_MISTRAL_V1,
14    LLM_CHAT_TEMPLATE_MISTRAL_V3,
15    LLM_CHAT_TEMPLATE_MISTRAL_V3_TEKKEN,
16    LLM_CHAT_TEMPLATE_MISTRAL_V7,
17    LLM_CHAT_TEMPLATE_MISTRAL_V7_TEKKEN,
18    LLM_CHAT_TEMPLATE_PHI_3,
19    LLM_CHAT_TEMPLATE_PHI_4,
20    LLM_CHAT_TEMPLATE_FALCON_3,
21    LLM_CHAT_TEMPLATE_ZEPHYR,
22    LLM_CHAT_TEMPLATE_MONARCH,
23    LLM_CHAT_TEMPLATE_GEMMA,
24    LLM_CHAT_TEMPLATE_ORION,
25    LLM_CHAT_TEMPLATE_OPENCHAT,
26    LLM_CHAT_TEMPLATE_VICUNA,
27    LLM_CHAT_TEMPLATE_VICUNA_ORCA,
28    LLM_CHAT_TEMPLATE_DEEPSEEK,
29    LLM_CHAT_TEMPLATE_DEEPSEEK_2,
30    LLM_CHAT_TEMPLATE_DEEPSEEK_3,
31    LLM_CHAT_TEMPLATE_DEEPSEEK_OCR,
32    LLM_CHAT_TEMPLATE_COMMAND_R,
33    LLM_CHAT_TEMPLATE_LLAMA_3,
34    LLM_CHAT_TEMPLATE_CHATGLM_3,
35    LLM_CHAT_TEMPLATE_CHATGLM_4,
36    LLM_CHAT_TEMPLATE_GLMEDGE,
37    LLM_CHAT_TEMPLATE_MINICPM,
38    LLM_CHAT_TEMPLATE_EXAONE_3,
39    LLM_CHAT_TEMPLATE_EXAONE_4,
40    LLM_CHAT_TEMPLATE_EXAONE_MOE,
41    LLM_CHAT_TEMPLATE_RWKV_WORLD,
42    LLM_CHAT_TEMPLATE_GRANITE_3_X,
43    LLM_CHAT_TEMPLATE_GRANITE_4_0,
44    LLM_CHAT_TEMPLATE_GRANITE_4_1,
45    LLM_CHAT_TEMPLATE_GIGACHAT,
46    LLM_CHAT_TEMPLATE_MEGREZ,
47    LLM_CHAT_TEMPLATE_YANDEX,
48    LLM_CHAT_TEMPLATE_BAILING,
49    LLM_CHAT_TEMPLATE_BAILING_THINK,
50    LLM_CHAT_TEMPLATE_BAILING2,
51    LLM_CHAT_TEMPLATE_LLAMA4,
52    LLM_CHAT_TEMPLATE_SMOLVLM,
53    LLM_CHAT_TEMPLATE_DOTS1,
54    LLM_CHAT_TEMPLATE_HUNYUAN_MOE,
55    LLM_CHAT_TEMPLATE_OPENAI_MOE,
56    LLM_CHAT_TEMPLATE_HUNYUAN_DENSE,
57    LLM_CHAT_TEMPLATE_HUNYUAN_VL,
58    LLM_CHAT_TEMPLATE_KIMI_K2,
59    LLM_CHAT_TEMPLATE_SEED_OSS,
60    LLM_CHAT_TEMPLATE_GROK_2,
61    LLM_CHAT_TEMPLATE_PANGU_EMBED,
62    LLM_CHAT_TEMPLATE_SOLAR_OPEN,
63    LLM_CHAT_TEMPLATE_UNKNOWN,
64};
65
66struct llama_chat_message;
67
68llm_chat_template llm_chat_template_from_str(const std::string & name);
69
70llm_chat_template llm_chat_detect_template(const std::string & tmpl);
71
72int32_t llm_chat_apply_template(
73    llm_chat_template tmpl,
74    const std::vector<const llama_chat_message *> & chat,
75    std::string & dest, bool add_ass);