logreader / README.md
PatrickRedStar's picture
add
d76ef9a

A newer version of the Gradio SDK is available: 6.3.0

Upgrade
metadata
title: Анализатор логов
emoji: 🧠
colorFrom: blue
colorTo: green
sdk: gradio
sdk_version: 4.44.1
app_file: app.py
pinned: false

Анализатор логов

Gradio‑демо: вставляете логи/стектрейс, получаете тип инцидента, человеческое объяснение, вероятную причину, набор проверок и локальные ранбуки. Пайплайн использует трансформеры (zero-shot классификатор, summarizer, sentence-embedding retriever, при желании reranker и NLI).

Установка локально

pip install -r requirements.txt

Запуск локально

python app.py

По умолчанию приложение слушает 127.0.0.1:7860 без публичного шаринга. Чтобы открыть интерфейс наружу, задайте:

GRADIO_HOST=0.0.0.0 GRADIO_SHARE=1 python app.py

или выставьте нужный GRADIO_SERVER_NAME / PORT.

Запуск на Hugging Face Spaces

  • Создайте Space (Gradio) и залейте содержимое репозитория.
  • app.py сам определяет окружение Spaces (SPACE_ID/HF_SPACE) и не включает share там.
  • Опционально добавьте runtime.txt с python-3.10.

Использование

  • Вставьте логи/стектрейс, выберите источник (auto/python/java/node/k8s).
  • Опции: поиск по локальной базе (kb/), NLI-проверка гипотез, слайдер детализации объяснения.
  • Нажмите Анализировать: вкладки покажут тип инцидента, пояснение, причину/проверки, найденные ранбуки, проверку гипотез и шаблон тикета. Можно выгрузить JSON.

Примеры

  • samples/sample_python.txt — HTTP timeout.
  • samples/sample_k8s.txt — под с CrashLoop/OOMKilled.
  • samples/sample_java.txt — NullPointerException из-за auth failure.

Состав

  • app.py — Gradio UI.
  • pipeline.py — классификация, суммаризация, retrieval, NLI.
  • preprocess.py — маскировка/сигнатуры/обрезка.
  • retrieval.py — эмбеддинговый поиск по kb/.
  • kb/ — локальные ранбуки.
  • samples/ — примеры логов.

Примечания

  • Модели: facebook/bart-large-mnli, sshleifer/distilbart-cnn-12-6, sentence-transformers/all-MiniLM-L6-v2, опционально cross-encoder/ms-marco-MiniLM-L-6-v2, NLI typeform/distilbert-base-uncased-mnli.
  • Держите numpy<2.0 чтобы избежать ABI-конфликтов с PyTorch/Transformers (pip install 'numpy<2' --upgrade при необходимости).