Welcome to Jina!#
Jina is a framework that empowers anyone to build cross-modal and multi-modal[*] applications on the cloud. It uplifts a PoC into a production-ready service. Jina handles the infrastructure complexity, making advanced solution engineering and cloud-native technologies accessible to every developer.
Applications built with Jina enjoy the following features out-of-the-box:
Build applications that deliver fresh insights from multiple data types such as text, image, audio, video, 3D mesh, PDF with Jina AI’s DocArray.
Support all mainstream deep learning frameworks.
Polyglot gateway that supports gRPC, Websockets, HTTP, GraphQL protocols with TLS.
Intuitive design pattern for high-performance microservices.
Scaling at ease: set replicas, sharding in one line.
Duplex streaming between client and server.
Async and non-blocking data processing over dynamic flows.
Seamless Docker container integration: sharing, exploring, sandboxing, versioning and dependency control via Jina Hub.
Fast deployment to Kubernetes, Docker Compose and Jina Cloud.
Full observability via Prometheus and Grafana.
Improved engineering efficiency thanks to the Jina AI ecosystem, so you can focus on innovating with the data applications you build.
Make sure that you have Python 3.7+ installed on Linux/MacOS/Windows.
pip install -U jina
conda install jina -c conda-forge
docker pull jinaai/jina:latest
Now that you’re set up, let’s dive into more of how Jina works and how to build great apps.
Join our Slack community and chat with other community members about ideas.
Join our Engineering All Hands meet-up to discuss your use case and learn Jina’s new features.
Subscribe to the latest video tutorials on our YouTube channel
In order to help Jina build better solutions for the community, Jina collects some usage statistics when using it. It is impossible for Jina or any other party to identify users with the data collected,
you can see easily in the code which data is being collected by checking the code in
The data collected is:
Other packages versions
A random unique user identifier
A random unique session identifier
Event emitting the statistics. Flow start or Runtime start
If you’d like to opt out of usage statistics, make sure to add the
optout-telemetry argument to the different Flows and Executors or set the
JINA_OPTOUT_TELEMETRY environment variable.