only rm when params.escape, rm space if possible which is added back or rm added space token

This commit is contained in:
vvhg1 2023-10-07 09:08:30 +02:00
parent b4046aabbf
commit 0526560759
2 changed files with 13 additions and 4 deletions

View file

@ -344,11 +344,16 @@ struct llama_server_context
void loadInfill()
{
params.input_suffix.erase(0, params.input_suffix.find_first_not_of(" "));
bool suff_rm_leading_spc = params.escape;
if (suff_rm_leading_spc && params.input_suffix.find_first_of(" ") == 0 && params.input_suffix.size() > 1) {
params.input_suffix.erase(0, 1);
suff_rm_leading_spc = false;
}
auto prefix_tokens = tokenize(params.input_prefix, false);
auto suffix_tokens = tokenize(params.input_suffix, false);
const int space_token = 29871;
if (params.escape && suffix_tokens.size() > 1 && suffix_tokens[0] == space_token) {
if (suff_rm_leading_spc && suffix_tokens[0] == space_token) {
suffix_tokens.erase(suffix_tokens.begin());
}
prefix_tokens.insert(prefix_tokens.begin(), llama_token_prefix(ctx));