Reddit Search APIСпочатку запитання, потім висновки.

Бібліотека читання

Спроєктуйте панель фільтрів, що розкриває припущення

Нехай панель LocalLLaMA пояснює межі: видимі умови, зворотні зміни, читабельний стан запиту та чесні обмеження отриманого матеріалу.

Підпишіть кожен активний фільтр

Панель фільтрів описує матеріал, який запиту дозволено повернути. У запропонованому журналі про квантування покажіть q=quantization, subreddit=LocalLLaMA, limit=3 та page=1 як окремі рішення. Обмеження спільноти не гарантує, що всі потрібні обговорення належать їй або що архів містить кожне з них. Поряд розмістіть питання: наприклад, за яких умов вимірювали пам’ять? Це допомагає відрізнити вибрану межу від непоясненої відсутності запису у відповіді.

Підписуйте елементи відповідно до контракту. Кілька проаналізованих термінів q вимагають збігу всередині відповідного title або text, а не одночасно в обох полях і не суми часткових збігів між ними. kind=comment обмежує тип запису, але не обіцяє повних гілок коментарів. min_score=10 застосовує поріг збереженої оцінки, а не засвідчує авторитетність чи корисність решти записів. Відрізняйте пропущені фільтри від активних обмежень. Приховане звуження за замовчуванням — теж рішення, яке читачеві потрібно розуміти.

Покажіть обмеження, яке можна прибрати

Дозвольте прибрати одну умову, не перебудовуючи весь запит. Зрозуміла дія «Прибрати мінімальну оцінку» може залишати запит, спільноту та інші фільтри незмінними. Покажіть зміну перед надсиланням і почніть нову послідовність зі сторінки 1. Це дає порівняння двох визначених запитів. Воно не гарантує припливу записів і не виявляє точного числа виключених: обидві відповіді обмежені, загальні кількості можуть бути нижніми межами, а повторне отримання не обіцяє стабільного знімка.

Не прив’язуйте до цього елемента розповідь про якість. Прибирання min_score не означає запрошення спаму; додавання не означає відбору експертних свідчень. Запитайте, що поріг дає конкретному дослідженню. Якщо він лише приховує незвичні погляди, не допомагаючи з питанням, його можна залишити вимкненим. Надсилайте явно, а не отримуйте дані після кожної зміни. Кожен успішний запит коштує один кредит, включно з порожнім, тому дослідницькі елементи не мають непомітно ставати потоком платних запитів.

Зберігайте стан URL зрозумілим

URL з активними фільтрами зберігає припущення, зроблені під час пошуку. Ілюстративний запит: https://api.redditsearchapi.com/v1/search?q=quantization&subreddit=LocalLLaMA&limit=3&page=1. Застосунок може показувати відповідний підсумок параметрів і зберігати його в журналі. Правильно кодуйте значення під час побудови URL, залишаючи підписи читабельними. Збережений запит відтворює вибрані умови; він не зберігає колишню відповідь і не гарантує доступності тих самих записів пізніше.

Не додавайте секрет до URL чи спільних знімків екрана. Backend застосунку додає X-API-Key або Authorization: Bearer зі сховища секретів. Значення запитів і примітки також можуть бути чутливими, тому перевіряйте їх перед поширенням. Елементи дат мають записувати from і to як YYYY-MM-DD UTC; to включає весь день. Зміна періоду чи розміру сторінки починає нове порівняння, а не продовжує номер сторінки, попередні межі якої вже мають інший зміст.

Поясніть отримане охоплення

Після надходження відповіді відрізняйте показане від того, що встановлюють метадані. Вкажіть фактично відображену кількість і уточнюйте pagination.total через pagination.relation. Для gte використовуйте «щонайменше», а не знак приблизності; для unknown або null — «загальна кількість невідома». pagination.has_more керує продовженням у підтримуваному вікні, а pagination.window_exhausted позначає його останню межу. Доступні максимум 100 записів і 100 сторінок. Ні межа, ні точне число відповіді не доводять повного охоплення спільноти чи теми.

Зазначайте, що записи надходять в архівному порядку _doc, а не за часом, релевантністю чи оцінкою. Локальне перевпорядкування стосується лише завантаженого матеріалу. Пояснюйте плоску структуру та можливу відсутність заголовка, автора, дати чи посилання. Необов’язкові parent_id або link_id допомагають локально групувати наявні записи, але не є фільтрами чи доказом повної розмови. Готова панель має давати читачеві змогу назвати обмеження й невизначеність, а не плутати точну на вигляд форму з повним чи репрезентативним виглядом Reddit.