mirror of
https://github.com/TriliumNext/Notes.git
synced 2025-08-10 18:39:22 +08:00
appropriately show if there are any notes still in the queue
This commit is contained in:
parent
34940b5258
commit
3d70a6c42e
@ -530,8 +530,23 @@ export default class LlmChatPanel extends BasicWidget {
|
||||
const defaultIsEnabled = enabledProviders.includes(defaultProvider);
|
||||
const allPrecedenceEnabled = precedenceList.every((p: string) => enabledProviders.includes(p));
|
||||
|
||||
// Get embedding queue status
|
||||
const embeddingStats = await server.get('embeddings/stats') as {
|
||||
success: boolean,
|
||||
stats: {
|
||||
totalNotesCount: number;
|
||||
embeddedNotesCount: number;
|
||||
queuedNotesCount: number;
|
||||
failedNotesCount: number;
|
||||
lastProcessedDate: string | null;
|
||||
percentComplete: number;
|
||||
}
|
||||
};
|
||||
const queuedNotes = embeddingStats?.stats?.queuedNotesCount || 0;
|
||||
const hasEmbeddingsInQueue = queuedNotes > 0;
|
||||
|
||||
// Show warning if there are issues
|
||||
if (!defaultInPrecedence || !defaultIsEnabled || !allPrecedenceEnabled) {
|
||||
if (!defaultInPrecedence || !defaultIsEnabled || !allPrecedenceEnabled || hasEmbeddingsInQueue) {
|
||||
let message = '<i class="bx bx-error-circle me-2"></i><strong>AI Provider Configuration Issues</strong>';
|
||||
|
||||
message += '<ul class="mb-1 ps-4">';
|
||||
@ -549,6 +564,10 @@ export default class LlmChatPanel extends BasicWidget {
|
||||
message += `<li>The following providers in your precedence list are not enabled: ${disabledProviders.join(', ')}.</li>`;
|
||||
}
|
||||
|
||||
if (hasEmbeddingsInQueue) {
|
||||
message += `<li>Currently processing embeddings for ${queuedNotes} notes. Some AI features may produce incomplete results until processing completes.</li>`;
|
||||
}
|
||||
|
||||
message += '</ul>';
|
||||
message += '<div class="mt-2"><a href="javascript:" class="settings-link btn btn-sm btn-outline-secondary"><i class="bx bx-cog me-1"></i>Open AI Settings</a></div>';
|
||||
|
||||
|
@ -1366,6 +1366,9 @@ export default class AiSettingsWidget extends OptionsWidget {
|
||||
if (!silent) {
|
||||
await this.refreshIndexRebuildStatus(silent);
|
||||
}
|
||||
|
||||
// Update validation warnings as embeddings status may have changed
|
||||
await this.displayValidationWarnings();
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("Error fetching embedding stats:", error);
|
||||
@ -1599,6 +1602,8 @@ export default class AiSettingsWidget extends OptionsWidget {
|
||||
if (!this.$widget) return;
|
||||
|
||||
const $warningDiv = this.$widget.find('.provider-validation-warning');
|
||||
let hasWarnings = false;
|
||||
let message = 'There are issues with your AI provider configuration:';
|
||||
|
||||
try {
|
||||
// Get required data from current settings
|
||||
@ -1658,9 +1663,9 @@ export default class AiSettingsWidget extends OptionsWidget {
|
||||
const defaultIsEnabled = enabledProviders.includes(defaultProvider);
|
||||
const allPrecedenceEnabled = precedenceList.every(p => enabledProviders.includes(p));
|
||||
|
||||
// Build warning message if there are issues
|
||||
// Check for provider configuration issues
|
||||
if (!defaultInPrecedence || !defaultIsEnabled || !allPrecedenceEnabled) {
|
||||
let message = 'There are issues with your AI provider configuration:';
|
||||
hasWarnings = true;
|
||||
|
||||
if (!defaultInPrecedence) {
|
||||
message += `<br>• The default embedding provider "${defaultProvider}" is not in your provider precedence list.`;
|
||||
@ -1674,9 +1679,19 @@ export default class AiSettingsWidget extends OptionsWidget {
|
||||
const disabledProviders = precedenceList.filter(p => !enabledProviders.includes(p));
|
||||
message += `<br>• The following providers in your precedence list are not enabled: ${disabledProviders.join(', ')}.`;
|
||||
}
|
||||
}
|
||||
|
||||
// Check if embeddings are still being processed
|
||||
const queuedNotes = parseInt(this.$widget.find('.embedding-queued-notes').text(), 10);
|
||||
if (!isNaN(queuedNotes) && queuedNotes > 0) {
|
||||
hasWarnings = true;
|
||||
message += `<br>• There are currently ${queuedNotes} notes in the embedding processing queue.`;
|
||||
message += ` Some AI features may produce incomplete results until processing completes.`;
|
||||
}
|
||||
|
||||
// Show warning message if there are any issues
|
||||
if (hasWarnings) {
|
||||
message += '<br><br>Please check your AI settings.';
|
||||
|
||||
$warningDiv.html(message);
|
||||
$warningDiv.show();
|
||||
} else {
|
||||
|
Loading…
x
Reference in New Issue
Block a user