fix: handle non utf-8 / utf-16 error
parent
eb34850a5e
commit
acb3a33d78
|
|
@ -246,9 +246,14 @@ class TextInferenceEngineImpl : public TextInferenceEngine {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request.multibyte_pending == 0) {
|
if (request.multibyte_pending == 0) {
|
||||||
rust::String generated_text = is_eos ? "" : request.generated_text;
|
rust::String generated_text;
|
||||||
result.push_back({request.id, generated_text});
|
try {
|
||||||
|
generated_text = is_eos ? "" : request.generated_text;
|
||||||
|
} catch (const std::invalid_argument& e) {
|
||||||
|
fprintf(stderr, "%s:%d [%s] - ignoring non utf-8/utf-16 output\n", __FILE__, __LINE__, __func__);
|
||||||
|
}
|
||||||
|
|
||||||
|
result.push_back({request.id, generated_text});
|
||||||
request.generated_text.clear();
|
request.generated_text.clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,9 @@ impl AsyncTextInferenceEngine {
|
||||||
|
|
||||||
let result = match engine.as_mut().unwrap().step() {
|
let result = match engine.as_mut().unwrap().step() {
|
||||||
Ok(result) => result,
|
Ok(result) => result,
|
||||||
Err(err) => panic!("Failed to step: {}", err),
|
Err(err) => {
|
||||||
|
panic!("Failed to step: {}", err)
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
for ffi::StepOutput { request_id, text } in result {
|
for ffi::StepOutput { request_id, text } in result {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue