$npx skillfedfor your agent

docarray

The data structure for multimodal data

Worth itPyPI Software DevelopmentReleased Mar 2025109.0K downloads / moApache 2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — docarray-0.41.0-py3-none-any.whl
v0.41.0 · released 2025-03-21 · Python <4.0,>=3.8 · 6 runtime deps: pydantic, numpy, orjson, typing-inspect, types-requests, rich

Yes. DocArray is actively maintained, has low install friction, carries a permissive Apache 2.0 license, and solves a real problem for machine learning workflows involving multimodal data. It integrates well with the Python ecosystem and is particularly valuable if you're building systems that need structured tensor and metadata handling. No known vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low install friction with six runtime dependencies (pydantic, numpy, orjson, typing-inspect, types-requests, rich).
  • Active maintenance with last commit on 2026-03-27 and 3125 repository stars.

License · maintenance · safety

Apache 2.0 (permissive) — Licensed under Apache 2.0 (permissive), allowing free use, modification, and distribution in both open-source and commercial projects with minimal restrictions.

last release 2025-03-21 (511 days) · last repo commit 2026-03-27 · 3,125 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 109,045 downloads/mo, #12,531 on PyPI

Verify before relying

pip install docarray

from docarray import BaseDoc, DocVec
from docarray.typing import ImageUrl
import numpy as np

class MyDocument(BaseDoc):
    description: str
    image_url: ImageUrl
    tensor: np.ndarray

vec = DocVec[MyDocument]([
    MyDocument(
        description="A cat",
        image_url="https://example.com/cat.jpg",
        tensor=np.zeros((3, 224, 224)),
    )
])
  • Whether vector database integrations (Weaviate, Qdrant, ElasticSearch, Redis, Mongo Atlas, HNSWLib) are included in base install or require optional dependencies.
  • Performance characteristics when working with very large document collections or high-dimensional tensors.
  • Compatibility details with specific versions of PyTorch, TensorFlow, and JAX beyond the general native support claim.
Same gist for agents: .md · .json

What it is and what it does

DocArray is a Python library for defining, organizing, and working with multimodal data in machine learning workflows. It provides Pydantic-based schema definitions that let you declare document types with typed fields—including tensors with explicit shapes—and then collect them into vectorized or list-based containers for batch processing. The library integrates with NumPy and other tensor frameworks, and is designed to work seamlessly with web frameworks and microservice platforms.

You use DocArray when you need to represent complex, heterogeneous data (images, text, embeddings, metadata) in a structured way that mirrors how machine learning models consume it. It handles both single documents and bulk collections: DocVec stacks tensors for efficient batch operations, while DocList preserves individual tensor structures for streaming or re-ranking. The library also supports nested document composition and can serialize data as JSON over HTTP or Protobuf over gRPC.

Use it for

  • Define typed schemas for multimodal training data with tensor shape validation, then batch them for model training.
  • Build API endpoints that accept and return structured multimodal documents with automatic validation.
  • Organize and transmit image, text, and embedding data together in a single document structure for neural search applications.
  • Compose nested document hierarchies (e.g., a document containing both image and text sub-documents) for complex data pipelines.
  • Serialize multimodal collections to JSON or Protobuf for inter-service communication in microservice architectures.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

DocArray is actively maintained, has low install friction, carries a permissive Apache 2.0 license, and solves a real problem for machine learning workflows involving multimodal data. It integrates well with the Python ecosystem and is particularly valuable if you're building systems that need structured tensor and metadata handling. No known vulnerabilities.

Install

docarray on PyPI

Before you install

Low install friction with six runtime dependencies (pydantic, numpy, orjson, typing-inspect, types-requests, rich). Active maintenance with last commit on 2026-03-27 and 3125 repository stars.

License in practice

Licensed under Apache 2.0 (permissive), allowing free use, modification, and distribution in both open-source and commercial projects with minimal restrictions.

Quickstart

pip install docarray

from docarray import BaseDoc, DocVec
from docarray.typing import ImageUrl
import numpy as np

class MyDocument(BaseDoc):
    description: str
    image_url: ImageUrl
    tensor: np.ndarray

vec = DocVec[MyDocument]([
    MyDocument(
        description="A cat",
        image_url="https://example.com/cat.jpg",
        tensor=np.zeros((3, 224, 224)),
    )
])

Verify before relying

  • Whether vector database integrations (Weaviate, Qdrant, ElasticSearch, Redis, Mongo Atlas, HNSWLib) are included in base install or require optional dependencies.
  • Performance characteristics when working with very large document collections or high-dimensional tensors.
  • Compatibility details with specific versions of PyTorch, TensorFlow, and JAX beyond the general native support claim.

Package facts

LicenseApache 2.0 permissive
Python supportSupports the current Python release <4.0,>=3.8
Install frictionLow. Pure-Python wheel
Runtime dependencies
6 packages
pydanticnumpyorjsontyping-inspecttypes-requestsrich
MaintenanceActively maintained 511 days since the last release
Last repo commit
First released
Downloads109,045 / month, #12,531 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: EducationIntended Audience :: Science/ResearchLicense :: OSI Approved :: Apache Software LicenseLicense :: Other/Proprietary LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Unix ShellTopic :: Database :: Database Engines/ServersTopic :: Internet :: WWW/HTTP :: Indexing/SearchTopic :: Multimedia :: VideoTopic :: Scientific/EngineeringTopic :: Scientific/Engineering :: Artificial IntelligenceTopic :: Scientific/Engineering :: Image RecognitionTopic :: Scientific/Engineering :: MathematicsTopic :: Software DevelopmentTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python Modules

Evidence: docarray-0.41.0-py3-none-any.whl

Tags

Capabilities
multimodal data structuretensor data representationdocument vector storagemachine learning data handlingnested document schemabatch tensor processingpydantic-based data model
Topics
multimodal-datatensor-handlingml-data-structures
PyPI keywords
docarraydeep-learningdata-structures cross-modal multi-modalunstructured-datanested-dataneural-search

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “tensor data representation”

  • docarrayDocArray provides a Python data structure for representing,…
  • onnx-ironnx-ir provides an in-memory intermediate representation for ONNX…
  • torchvizGenerates visual diagrams of PyTorch neural network computation…

Give your agent the search over MCP, or paste the wish link into any chat.

More Software Development packages

typing-extensions Worth it
PyPI · Software Development · released Jul 2026

Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.

PSF-2.0pure Python · 3.9+
1.9Bdownloads / mo
numpy Worth it
PyPI · Software Development · released Aug 2026

NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.

BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0compiled wheel · 3.12+
1.1Bdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
distlib With conditions
PyPI · Software Development · released Jun 2026

Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.

permissive licensepure Python
323.3Mdownloads / mo

See also tensordict · tensordict-nightly · tensorly · autoray · keras · safetensors · numpydantic · xarray · torchtyping · keras-nightly