diff --git a/services/worker-indexer/app/tasks/index.py b/services/worker-indexer/app/tasks/index.py index c90e73d..12b5412 100644 --- a/services/worker-indexer/app/tasks/index.py +++ b/services/worker-indexer/app/tasks/index.py @@ -325,8 +325,12 @@ def add_document(doc_data: dict[str, Any], dispatch_embed: bool = True) -> dict[ queue="queue.gpu", ) - # Обогащение полным текстом: скачать PDF по url и пересчитать fingerprints - if settings.FETCH_FULL_TEXT and doc_data.get("url"): + # Обогащение полным текстом: скачать PDF по url и пересчитать fingerprints. + # Если full_text уже есть (например, OCR-фрагмент из ответа поиска + # КиберЛенинки) — не дублируем запрос: страница статьи там HTML, а не PDF, + # enrich_full_text гарантированно ничего не найдёт, только зря нагрузит + # источник (и получит 503 при массовой заливке). + if settings.FETCH_FULL_TEXT and doc_data.get("url") and not doc_data.get("full_text"): celery_app.send_task( "index.enrich_full_text", args=[doc_id, doc_data["url"]],