server : add parse_special option to /tokenize endpoint (#14783)

This commit is contained in:
IsaacDynamo
2025-07-21 09:24:51 +02:00
committed by GitHub
parent 2be60cbc27
commit b4efd77f8a
2 changed files with 4 additions and 1 deletions

View File

@ -575,6 +575,8 @@ These words will not be included in the completion, so make sure to add them to
`add_special`: (Optional) Boolean indicating if special tokens, i.e. `BOS`, should be inserted. Default: `false`
`parse_special`: (Optional) Boolean indicating if special tokens should be tokenized. When `false` special tokens are treated as plaintext. Default: `true`
`with_pieces`: (Optional) Boolean indicating whether to return token pieces along with IDs. Default: `false`
**Response:**

View File

@ -4516,9 +4516,10 @@ int main(int argc, char ** argv) {
json tokens_response = json::array();
if (body.count("content") != 0) {
const bool add_special = json_value(body, "add_special", false);
const bool parse_special = json_value(body, "parse_special", true);
const bool with_pieces = json_value(body, "with_pieces", false);
llama_tokens tokens = tokenize_mixed(ctx_server.vocab, body.at("content"), add_special, true);
llama_tokens tokens = tokenize_mixed(ctx_server.vocab, body.at("content"), add_special, parse_special);
if (with_pieces) {
for (const auto& token : tokens) {