Explorar o código

fix server crashes (#2076)

Henri Vasserman %!s(int64=2) %!d(string=hai) anos
pai
achega
1cf14ccef1
Modificáronse 1 ficheiros con 2 adicións e 2 borrados
  1. 2 2
      examples/server/server.cpp

+ 2 - 2
examples/server/server.cpp

@@ -906,7 +906,7 @@ int main(int argc, char ** argv) {
 
             while (llama.has_next_token) {
                 const completion_token_output token_with_probs = llama.doCompletion();
-                const std::string token_text = llama_token_to_str(llama.ctx, token_with_probs.tok);
+                const std::string token_text = token_with_probs.tok == -1 ? "" : llama_token_to_str(llama.ctx, token_with_probs.tok);
 
                 stop_pos = llama.findStoppingStrings(llama.generated_text,
                     token_text.size(), STOP_FULL);
@@ -933,7 +933,7 @@ int main(int argc, char ** argv) {
 
                 while (llama.has_next_token) {
                     const completion_token_output token_with_probs = llama.doCompletion();
-                    const std::string token_text = llama_token_to_str(llama.ctx, token_with_probs.tok);
+                    const std::string token_text = token_with_probs.tok == -1 ? "" : llama_token_to_str(llama.ctx, token_with_probs.tok);
                     if (llama.multibyte_pending > 0) {
                         continue;
                     }