# jina **Repository Path**: monkeycc/jina ## Basic Information - **Project Name**: jina - **Description**: https://github.com/jina-ai/jina - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2022-07-26 - **Last Updated**: 2023-03-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
Build cross-modal and multi-modal applications[?] on the cloud
Jina is a MLOps 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: 🌌 **Universal** - Build applications that deliver fresh insights from multiple data types such as text, image, audio, video, 3D mesh, PDF with [Jina AI's DocArray](https://docarray.jina.ai). - Support all mainstream deep learning frameworks. - Polyglot gateway that supports gRPC, Websockets, HTTP, GraphQL protocols with TLS. ⚡ **Performance** - 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. ☁️ **Cloud-native** - Seamless Docker container integration: sharing, exploring, sandboxing, versioning and dependency control via [Jina Hub](https://hub.jina.ai). - Full observability via Prometheus and Grafana. - Fast deployment to Kubernetes, Docker Compose. 🍱 **Ecosystem** - Improved engineering efficiency thanks to the Jina AI ecosystem, so you can focus on innovating with the data applications you build. - Free CPU/GPU hosting via [Jina Cloud](https://docs.jina.ai/fundamentals/jcloud/). ## [Documentation](https://docs.jina.ai)| ```python from jina import DocumentArray, Executor, requests from .embedding import model class MyExec(Executor): @requests(on='/embed') async def embed(self, docs: DocumentArray, **kwargs): docs.embed(model) ``` | ```yaml jtype: Flow with: port: 12345 executors: - uses: MyExec replicas: 2 ``` |
toy.yml |
executor.py |
|---|---|
| ```yaml jtype: Flow with: port: 51000 protocol: grpc executors: - uses: MyExec name: foo py_modules: - executor.py - uses: MyExec name: bar py_modules: - executor.py ``` | ```python from jina import DocumentArray, Executor, requests class MyExec(Executor): @requests async def add_text(self, docs: DocumentArray, **kwargs): for d in docs: d.text += 'hello, world!' ``` |
toy.yml |
Flowchart |
|---|---|
| ```yaml jtype: Flow with: port: 51000 protocol: grpc executors: - uses: MyExec name: foo py_modules: - executor.py replicas: 2 - uses: MyExec name: bar py_modules: - executor.py replicas: 3 needs: gateway - needs: [foo, bar] name: baz ``` |