Add oobabooga streaming

This commit is contained in:
SillyLossy
2023-04-12 19:17:02 +03:00
parent 83982cf1fc
commit d495503ac1
4 changed files with 220 additions and 47 deletions

View File

@ -1,10 +1,12 @@
import {
saveSettingsDebounced,
token,
} from "../script.js";
export {
textgenerationwebui_settings,
loadTextGenSettings,
generateTextGenWithStreaming,
}
let textgenerationwebui_settings = {
@ -23,8 +25,11 @@ let textgenerationwebui_settings = {
early_stopping: false,
seed: -1,
preset: 'Default',
add_bos_token: true,
add_bos_token: true,
custom_stopping_strings: [],
truncation_length: 2048,
ban_eos_token: false,
streaming: false,
};
let textgenerationwebui_presets = [];
@ -136,3 +141,33 @@ function setSettingByName(i, value, trigger) {
$(`#${i}_textgenerationwebui`).trigger('input');
}
}
async function generateTextGenWithStreaming(generate_data, finalPromt) {
const response = await fetch('/generate_textgenerationwebui', {
headers: {
'X-CSRF-Token': token,
'Content-Type': 'application/json',
'X-Response-Streaming': true,
},
body: JSON.stringify(generate_data),
method: 'POST',
});
return async function* streamData() {
const decoder = new TextDecoder();
const reader = response.body.getReader();
let getMessage = '';
while (true) {
const { done, value } = await reader.read();
let response = decoder.decode(value);
getMessage += response;
if (done) {
return;
}
yield getMessage;
}
}
}