zames_pro 2.4.5 → 2.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.js +11 -0
- package/package.json +1 -1
package/dist/browser.js
CHANGED
|
@@ -574,13 +574,24 @@ export class DeepSeekBrowser {
|
|
|
574
574
|
}
|
|
575
575
|
// Ждём, пока ответ перестанет меняться. Условие "не генерируется"
|
|
576
576
|
// проверяем через рост текста, а НЕ через _isGenerating().
|
|
577
|
+
// Параллельно ловим тост лимита частоты, если он всплывёт во время
|
|
578
|
+
// генерации (читаем только тосты, ложных срабатываний нет).
|
|
577
579
|
const deadline = Date.now() + timeout;
|
|
578
580
|
let last = '';
|
|
579
581
|
let stable = 0;
|
|
582
|
+
let tick = 0;
|
|
580
583
|
while (Date.now() < deadline) {
|
|
581
584
|
if (this._abort) {
|
|
582
585
|
return last || '(прервано пользователем)';
|
|
583
586
|
}
|
|
587
|
+
// Тост лимита проверяем не каждый тик, а раз в ~5 тиков, чтобы не
|
|
588
|
+
// дёргать DOM лишний раз.
|
|
589
|
+
if (tick++ % 5 === 0) {
|
|
590
|
+
const pageText = await this._readPageText();
|
|
591
|
+
if (isRateLimitText(pageText)) {
|
|
592
|
+
throw new RateLimitError(pageText.slice(0, 300));
|
|
593
|
+
}
|
|
594
|
+
}
|
|
584
595
|
const cur = await this._readLastAnswerTextClean().catch(() => '');
|
|
585
596
|
if (cur && cur === last) {
|
|
586
597
|
stable++;
|