Toolverse
Wszystkie skille

mlops-validation

autor: fmind

Automatyczna walidacja kodu Python: typowanie, linting, testy i bezpieczeństwo w jednym przepływie.

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Autor
fmind
Kategoria
Testowanie
Wyświetlenia
5

O skillu

Umiejętność MLOps Validation to przewodnik do wdrożenia rygorystycznych warstw kontroli jakości w projektach Python. Obejmuje statyczną analizę kodu (typowanie za pomocą mypy, linting za pomocą ruff), kompleksowe testowanie (pytest), strukturalne logowanie (loguru) oraz skanowanie bezpieczeństwa. Narzędzie wymusza pełne typowanie funkcji, zerową tolerancję dla błędów lintera i wysokie pokrycie testami (powyżej 80%). Idealne dla zespołów pracujących nad pipelinami ML i systemami produkcyjnymi, gdzie niezawodność i bezpieczeństwo są krytyczne.

Jak używać

  1. Upewnij się, że masz zainstalowany Python i menedżer pakietów uv. Umiejętność wymaga środowiska Python do pracy z narzędziami walidacji.

  2. Skonfiguruj typowanie kodu za pomocą mypy. Dodaj pełne adnotacje typów do wszystkich funkcji i unikaj używania Any chyba że jest to absolutnie konieczne. Do walidacji struktur DataFrame użyj pandera, a do modelowania danych i walidacji w runtime użyj pydantic.

  3. Wdrożyć linting i formatowanie za pomocą ruff. Narzędzie zastępuje black, isort, pylint i flake8. Scentralizuj konfigurację w pliku pyproject.toml i utrzymuj zerową tolerancję dla błędów lintera — używaj noqa rzadko i zawsze z uzasadnieniem.

  4. Napisz testy za pomocą pytest. Lustrzuj strukturę katalogu src/ w katalogu tests/ (np. src/pkg/mod.py odpowiada tests/test_mod.py). Używaj tests/conftest.py do współdzielonych ustawień i danych testowych. Dążyć do pokrycia powyżej 80% dla logiki biznesowej.

  5. Zastosuj strukturalne logowanie za pomocą loguru zamiast standardowego modułu logging. Loguj w formacie JSON, aby umożliwić obserwowalność i ułatwić debugowanie w produkcji.

  6. Uruchom wszystkie walidacje przed merge'owaniem kodu. Przepływ obejmuje statyczną analizę (typowanie i linting), uruchomienie testów z pomiarem pokrycia oraz skanowanie bezpieczeństwa — razem tworzą warstwę ochrony przed błędami i zagrożeniami bezpieczeństwa.

Podobne skille