Format Atlas

Comparar

Safetensors frente a ONNX: pesos o grafos del modelo

Safetensors almacena tensores con nombre. ONNX representa un modelo con grafo de cálculo, entradas, salidas y versiones de operadores.

¿Qué formato deberías elegir?

Considere Safetensors para cargar pesos en un modelo compatible, u ONNX para entregar un grafo a un entorno de ejecución compatible.

Adecuado para Safetensors

Guardar y distribuir pesos tensoriales de aprendizaje automático · Cargar pesos entre frameworks compatibles

  • Intercambiar tensores y metadatos básicos en lugar de objetos Python arbitrarios
  • Flujos que inspeccionan y cargan tensores seleccionados

Adecuado para ONNX

Intercambiar grafos computacionales y pesos de aprendizaje automático con runtimes compatibles · Trasladar modelos entre frameworks de entrenamiento y entornos de inferencia

  • Inferencia con runtimes compatibles con los operadores y opset del modelo
  • Intercambio de grafos con entradas salidas y tipos

Información básica

CampoSafetensorsONNX
Extensión.safetensors.onnx
Tipo MIMEapplication/octet-streamapplication/octet-stream
Usos habitualesGuardar y distribuir pesos tensoriales de aprendizaje automático · Cargar pesos entre frameworks compatiblesIntercambiar grafos computacionales y pesos de aprendizaje automático con runtimes compatibles · Trasladar modelos entre frameworks de entrenamiento y entornos de inferencia
Cómo abrirUsa una biblioteca o herramienta de modelos compatible con Safetensors. Las herramientas compatibles permiten consultar nombres, tipos y formas antes de cargar todos los pesos en un dispositivo. Que la cabecera sea JSON no convierte todo el archivo en texto JSON.Cárgalo con un validador ONNX o runtime compatible. Antes de desplegar, revisa versiones IR y opset, operadores, tipos y formas de entrada/salida y soporte del runtime; compara las salidas con el modelo original usando entradas representativas.
Exportar o convertirGuarda los pesos tensoriales mediante una API compatible con el framework. Convertir desde una entrada basada en pickle puede deserializarla; no cargues a la ligera un archivo de origen no confiable. Tras convertir, compara nombres, formas, tipos, número de elementos y resultados del modelo.Exporta con la herramienta ONNX del framework de origen y valida la estructura con ONNX checker. Una conversión correcta no garantiza equivalencia numérica ni ejecución en el dispositivo objetivo. Si hay datos externos, distribuye juntos el modelo y todos los archivos referenciados.

Elegir según el uso

Intercambiar tensores y metadatos básicos en lugar de objetos Python arbitrarios

Guardar y distribuir pesos tensoriales de aprendizaje automático · Cargar pesos entre frameworks compatibles

Safetensors

Flujos que inspeccionan y cargan tensores seleccionados

Guardar y distribuir pesos tensoriales de aprendizaje automático · Cargar pesos entre frameworks compatibles

Safetensors

Inferencia con runtimes compatibles con los operadores y opset del modelo

Intercambiar grafos computacionales y pesos de aprendizaje automático con runtimes compatibles · Trasladar modelos entre frameworks de entrenamiento y entornos de inferencia

ONNX

Intercambio de grafos con entradas salidas y tipos

Intercambiar grafos computacionales y pesos de aprendizaje automático con runtimes compatibles · Trasladar modelos entre frameworks de entrenamiento y entornos de inferencia

ONNX

Punto clave 1

Safetensors por sí solo no define la arquitectura ni el código de inferencia.

Más sobre las diferencias

Punto clave 2

ONNX puede contener tensores inicializadores y referenciar datos externos.

Más sobre las diferencias

Más sobre las diferencias

No son sustitutos directos. Crear ONNX a partir de pesos requiere definir el modelo y un proceso de exportación compatible. Cambiar la extensión no crea un grafo.

  • La cabecera Safetensors registra nombres, dtype, shape y rangos de datos. Compruebe aparte índices de fragmentos, configuración, tokenizadores y otros requisitos.
  • Compruebe IR/opset, operadores y tipos ONNX con el entorno de ejecución; conserve las referencias a pesos externos. Compare salidas con el mismo preprocesamiento y entradas representativas; comprobar la estructura no garantiza precisión ni velocidad.

Preguntas frecuentes

¿Safetensors es fiable independientemente de su origen?

No. Evita reconstruir objetos arbitrarios con pickle, pero no garantiza la seguridad del origen, lector, código dependiente ni modelo.

Más información

Usos y comprobaciones relacionados

Comprobaciones antes de entregar un modelo de IA

Referencias y especificaciones