Reddit Search APILes questions avant les conclusions.

Bibliothèque de lecture

Concevez un panneau de filtres qui explicite les hypothèses

Faites apparaître les limites d'un panneau de filtres LocalLLaMA : conditions visibles, modifications réversibles, paramètres lisibles et portée réelle des résultats.

Nommez chaque filtre actif

Un panneau de filtres décrit les données qu'une requête est autorisée à renvoyer. Dans le carnet de recherche sur la quantification proposé ici, présentez q=quantization, subreddit=LocalLLaMA, limit=3 et page=1 comme des choix distincts. Restreindre la recherche à cette communauté ne garantit ni que toutes les discussions pertinentes s'y trouvent, ni que l'archive conserve toutes ses discussions. Affichez à proximité la question de lecture : par exemple, quelles conditions ont été indiquées pour une mesure de mémoire ? Le lecteur pourra ainsi distinguer une limite choisie d'une absence inexpliquée dans la réponse.

Employez des libellés conformes au contrat réel. Plusieurs termes analysés de q doivent correspondre dans un même champ title ou text, sans exiger les deux champs simultanément ni réunir des correspondances partielles réparties entre eux. kind=comment restreint le type d'enregistrement ; il ne promet pas des fils de commentaires complets. min_score=10 applique un seuil au score enregistré, sans juger l'autorité ni l'utilité des éléments conservés. Distinguez visuellement les filtres absents des restrictions actives. Une valeur par défaut qui réduit discrètement la recherche reste un choix que le lecteur doit comprendre.

Permettez de retirer une contrainte

Le lecteur doit pouvoir retirer une condition sans reconstruire toute sa requête. Une action clairement nommée « Retirer le score minimum » peut conserver les mots recherchés, la communauté et les autres filtres. Montrez le changement de paramètre avant l'envoi et recommencez la séquence de résultats à la page 1. Cela permet de comparer deux requêtes explicites. Cela ne garantit ni davantage d'enregistrements, ni un décompte exact des éléments exclus : les deux réponses restent bornées, les totaux peuvent être des bornes inférieures et des récupérations successives ne sont pas promises comme un instantané stable.

N'associez pas à ce contrôle un jugement de qualité. Retirer min_score ne revient pas à inviter le spam ; l'ajouter ne sélectionne pas des preuves d'experts. Demandez au lecteur ce que ce seuil apporte à son enquête précise. S'il ne fait que masquer des points de vue inhabituels sans aider à répondre, le laisser désactivé peut être raisonnable. Exigez un envoi explicite plutôt qu'une récupération à chaque réglage. Chaque récupération réussie coûte un crédit, même si le résultat est vide : les contrôles d'exploration ne doivent pas devenir discrètement une succession de requêtes payantes.

Gardez les paramètres d'URL lisibles

Une URL contenant les filtres actifs garde une trace des hypothèses retenues pour la recherche. Voici une requête illustrative : https://api.redditsearchapi.com/v1/search?q=quantization&subreddit=LocalLLaMA&limit=3&page=1. Votre application peut présenter un résumé équivalent des paramètres et le conserver dans un carnet. Encodez correctement les valeurs lors de la construction des URL, tout en affichant des libellés lisibles dans l'interface. Une requête enregistrée permet de reprendre les conditions choisies ; elle ne conserve pas l'ancienne réponse et ne garantit pas que les mêmes enregistrements seront disponibles plus tard.

Gardez l'identifiant secret hors de cette URL et des captures partagées. Le backend de l'appelant ajoute X-API-Key ou Authorization: Bearer depuis son stockage de secrets. Les valeurs recherchées et les annotations peuvent elles-mêmes être sensibles : relisez-les avant de les partager. Les contrôles de date doivent sérialiser from et to au format YYYY-MM-DD en UTC ; to inclut toute la journée UTC indiquée. Modifier la période ou la taille d'une page commence une nouvelle comparaison, au lieu de poursuivre un numéro de page dont les anciennes limites n'ont plus le même sens.

Expliquez la portée du résultat

À la réception d'une réponse, distinguez ce qui a été affiché de ce que ses métadonnées établissent. Indiquez le nombre réellement présenté et accompagnez pagination.total de pagination.relation. Pour gte, écrivez « au moins », pas un symbole d'approximation ; pour unknown ou null, indiquez que le total est inconnu. pagination.has_more détermine la poursuite dans la fenêtre prise en charge, tandis que pagination.window_exhausted signale la limite de cette fenêtre. Les requêtes autorisent au maximum 100 enregistrements par page et 100 pages. Ni cette limite ni un décompte exact dans une réponse ne prouvent une couverture complète de la communauté ou du sujet du lecteur.

Précisez que les enregistrements suivent l'ordre _doc de l'archive, et non un ordre chronologique, de pertinence ou de score. Un réagencement local ne concerne que les données déjà chargées. Expliquez que les enregistrements sont à plat et que le titre, l'auteur, la date ou le lien source peuvent manquer. Des valeurs facultatives parent_id ou link_id peuvent aider à regrouper localement les éléments disponibles ; ce ne sont ni des filtres de recherche ni la preuve d'une conversation complète. Le panneau doit permettre au lecteur de nommer restrictions et incertitudes, sans prendre un formulaire apparemment précis pour une vue complète ou représentative de Reddit.