Lesebibliothek
Leere Ergebnisse und Übertragungsfehler unterschiedlich darstellen
Trennen Sie eine erfolgreiche leere Quantisierungssuche von HTTP-Fehlern und fehlenden Antworten. Bewahren Sie die abgesendete Frage und machen Sie Wiederholungen bewusst.
Antwortklassen definieren
Ein leerer Ergebnisbereich erklärt nicht, was mit einer Suche geschehen ist. Unterscheiden Sie im vorgeschlagenen LocalLLaMA-Protokoll eine laufende Anfrage, eine erfolgreiche Antwort mit Datensätzen, eine erfolgreiche Antwort mit leerem data-Array, einen HTTP-Fehler und einen Übertragungsversuch ohne nutzbare Antwort. Das sind verschiedene Beobachtungen. Insbesondere beweist ein leerer Erfolg nicht, dass das Archiv keine relevante Diskussion enthält; eine verlorene Antwort zeigt nicht, ob der Server die Anfrage abgeschlossen hat. Legen Sie diese Deutungen nicht in der Kurzmeldung „keine Ergebnisse“ zusammen.
Verwenden Sie HTTP-Status und geprüfte Antwortstruktur gemeinsam. Eine Antwort mit 200 und data: [] ist ein erfolgreicher leerer Abruf. HTTP 400, 401, 402, 429 und 502 sind Fehlerantworten, keine Varianten erfolgreicher leerer Daten. Bei einer Netzwerkausnahme kann jeder HTTP-Status fehlen. Schließen Sie aus einem Fehler allein nicht, ob die Anfrage alle Backend-Stufen erreicht hat. Bewahren Sie abgesendete Parameter und eine Anwendungs-Anfragekennung mit jedem Ergebnis auf, damit spätere Antworten der richtigen Suche zugeordnet werden können.
Aktionen für leere Ergebnisse formulieren
Verwenden Sie eine zurückhaltende Meldung wie „Für diese Anfrage wurden keine Datensätze zurückgegeben“. Zeigen Sie q=quantization und subreddit=LocalLLaMA sowie aktive Datums- oder Bewertungsgrenzen daneben. Bieten Sie eine bewusste Möglichkeit, eine Bedingung zu ändern und erneut abzusenden. Ersetzen Sie die leere Antwort weder durch erfundene beliebte Diskussionen noch verbreitern Sie die Anfrage automatisch bei unverändertem Titel. Entfernt der Leser einen Filter, gehört das nächste Ergebnis zur geänderten Anfrage und beginnt eine neue Folge auf Seite 1.
Erklären Sie eine relevante Einschränkung, ohne die Ursache des Fehlens vorzutäuschen. Bei quantization memory müssen alle analysierten Begriffe innerhalb eines passenden title- oder text-Feldes vorkommen; ihre Aufteilung über beide Felder reicht nicht. Das ist ein möglicher Gesichtspunkt, kein Beweis, weshalb diese Antwort leer war. Erhalten Sie die Abrechnungsunterscheidung: Ein erfolgreicher leerer Abruf kostet einen Credit. Auch eine leere tiefe Seite kann eine unbekannte Gesamtzahl haben. Machen Sie daraus weder null Treffer im gesamten Archiv noch einen Grund für unbegrenzte weitere Seitenanfragen.
Aktionen für Fehler formulieren
Ordnen Sie den Fehler der Person zu, die handeln kann. Bei HTTP 400 muss die tatsächliche Eingabe geprüft werden, etwa ein nicht unterstützter Parameter oder ein Datum außerhalb des Formats YYYY-MM-DD. HTTP 401 betrifft den Dienst-API-Schlüssel, 402 die verfügbaren Credits des Dienstkontos; beides belegt nicht, dass die Anmeldung des Lesers in seiner eigenen Anwendung abgelaufen ist. Möglicherweise muss der Betreiber die Backend-Zugangsdaten korrigieren oder den Kontostand prüfen. Fordern Sie den Leser nicht auf, einen Dienstschlüssel in ein öffentliches Suchfeld einzufügen.
Beachten Sie bei 429 Retry-After und reduzieren Sie wiederholtes Absenden. Bei 502 erhalten Sie die Anfrage und bieten bei Bedarf eine bewusste Wiederholung an; Rückerstattungen reservierter Credits können noch abgeglichen werden müssen. Eine fehlende Antwort verlangt eine andere Meldung: Das Ergebnis ist unbekannt, einschließlich einer möglichen Berechnung eines erfolgreichen Abrufs. Vor der Reservierung abgewiesene ungültige Anfragen sind kostenlos; ein Verbindungsfehler beweist aber keine solche Abweisung. Die kostenlose Route /v1/status liefert eine statische Dienstbeschreibung und HTTP-Erreichbarkeit; sie klärt weder die verlorene Anfrage noch prüft sie die Suchfunktion.
Kontinuität beim Navigieren prüfen
Zur Kontinuität gehört auch der Erhalt der Eingaben. Planen Sie lokale Fixtures für eine gültige leere Antwort, einen HTTP-Fehler und eine Netzwerkausnahme vor Eingang einer Antwort. Verwenden Sie ausdrücklich künstliches Material; diese Fixtures würden Ihre Oberfläche prüfen, nicht die Archivverfügbarkeit belegen. Prüfen Sie unterschiedliche Meldungen und den fortbestehenden Zugriff auf die abgesendete Anfrage. Ergänzen Sie einen Fall, in dem das Formular während einer laufenden Anfrage geändert wird: Das alte Ergebnis darf nicht als Antwort auf die neue Formulierung erscheinen.
Bei einer fehlgeschlagenen Folgeseite bleiben die bereits geladenen Datensätze erhalten; trennen Sie ihren abgeschlossenen Zustand von der misslungenen Fortsetzung. Lassen Sie die Seite bewusst erneut anfordern oder zum Formular zurückkehren, ohne still eine weitere Anfrage auszulösen. Eine verspätete Antwort in der Oberfläche zu ignorieren garantiert keinen Abbruch serverseitiger Arbeit. Halten Sie tatsächlich geprüfte Übergänge getrennt von bloß vorgeschlagenen fest. Ziel ist eine Anzeige des Bekannten samt sinnvoller nächster Aktion, keine beruhigende, aber von der Antwort nicht gedeckte Meldung.