Powrót do katalogu

Safetensors

SafeTensors • safetensors format • Safetensors tensor format

InneAktywny
Rok wprowadzenia: 2022Status: AktywnyMechanizmy: 7
Safetensors to format plików oraz biblioteka zaprojektowana do bezpiecznego przechowywania i odczytu tensorów wykorzystywanych w modelach uczenia maszynowego. Został opracowany jako alternatywa dla formatów opartych na pickle, które mogą wykonywać dowolny kod podczas deserializacji. Safetensors koncentruje się na prostocie, bezpieczeństwie oraz wydajności, umożliwiając szybkie ładowanie wag modeli, w tym odczyt zero-copy w wielu scenariuszach. Format jest szeroko stosowany w ekosystemie Hugging Face oraz w narzędziach do inferencji i dystrybucji modeli, szczególnie tam, gdzie istotne są bezpieczeństwo łańcucha dostaw modeli, szybkość ładowania i interoperacyjność między frameworkami.

Jak działa

Safetensors zapisuje tensory w prostym binarnym formacie z nagłówkiem metadanych opisującym nazwy tensorów, ich typy danych, kształty oraz offsety w pliku. Dzięki temu biblioteka może odczytywać zawartość bez potrzeby wykonywania kodu zawartego w pliku. Format został zaprojektowany tak, aby umożliwiać szybki dostęp do danych i wspierać scenariusze zero-copy lub częściowego mapowania pliku do pamięci, zależnie od używanego frameworka i środowiska. Implementacje istnieją dla popularnych ekosystemów, takich jak PyTorch, TensorFlow, JAX, PaddlePaddle i NumPy.

Problem rozwiązywany

Safetensors rozwiązuje problem niebezpiecznej deserializacji wag modeli w formatach takich jak pickle oraz powiązanych z tym ryzyk bezpieczeństwa. Tradycyjne formaty checkpointów mogą wykonywać kod przy ładowaniu, co stwarza zagrożenie podczas pobierania modeli z zewnętrznych źródeł. Dodatkowo wiele starszych formatów nie było projektowanych z myślą o szybkim, prostym i przewidywalnym dostępie do tensorów na dużą skalę. Safetensors ogranicza te ryzyka, oferując bezpieczny, prosty i wydajny format do przechowywania tensorów.

Kluczowe mechanizmy

Bezpieczna deserializacja bez wykonywania arbitralnego kodu
Ustrukturyzowany nagłówek metadanych tensorów
Przechowywanie nazw, kształtów, typów danych i offsetów tensorów
Szybki odczyt tensorów z minimalnym narzutem
Wsparcie dla scenariuszy zero-copy lub memory-mapped access
Interoperacyjność między wieloma frameworkami ML
Lepsze bezpieczeństwo dystrybucji checkpointów modeli

Ocena

Mocne strony

  • Eliminuje ryzyko wykonywania złośliwego kodu przy deserializacji
  • Jest prosty i przewidywalny jako format plików
  • Zapewnia szybki odczyt tensorów
  • Wspiera nowoczesne workflow dystrybucji modeli
  • Dobrze integruje się z ekosystemem Hugging Face
  • Obsługuje wiele popularnych frameworków ML
  • Nadaje się do zastosowań produkcyjnych i open-weight

Ograniczenia

  • Nie przechowuje pełnej logiki obiektów jak bardziej ogólne formaty serializacji
  • Jest wyspecjalizowany głównie do tensorów i wag modeli
  • Może wymagać konwersji starszych checkpointów z innych formatów
  • Nie zastępuje pełnych mechanizmów wersjonowania modeli i governance
  • Korzyści wydajnościowe zależą od frameworka i sposobu użycia

Uwagi o benchmarkach

Safetensors nie jest benchmarkiem ani architekturą modelu. Jest technologią formatu i serializacji, dlatego jego ocena dotyczy głównie bezpieczeństwa, szybkości ładowania, prostoty integracji oraz wpływu na workflow dystrybucji i inferencji modeli.

Źródła

TytułWydawcaTypData dostępu
Safetensors DocumentationHugging Facedocumentation20 mar 2026
huggingface/safetensorsGitHubrepository20 mar 2026
Safetensors Security AuditHugging Faceblog20 mar 2026
Safetensors in Text Generation InferenceHugging Facedocumentation20 mar 2026
safetensors on PyPIPyPIrepository20 mar 2026