How to Manage Jina Resources with Namespace
guoliwu
Posted on February 24, 2023
Over the past year, we’ve been rapidly expanding Jina AI Cloud, starting with our Executor Hub, and now encompassing DocumentArray storage, hosted Flows and cloud apps.
Jina AI Cloud:https://cloud.jina.ai/
That’s a lot of stuff to manage! We’re introducing user namespaces to make things easier for all our users.
Namespace
Previously, if Alice and Bob both wanted to push a DocumentArray called fashion-mnist
, whoever pushed first would get the name. That means Bob might have to go with fashion-mnist2
or similar. With more people using Jina AI Cloud, naming conflicts could become commonplace.
With user namespaces, both Alice and Bob can have their own fashion_mnist
DocumentArrays (or Executors with the same name) with no fear of naming conflicts.
The new namespace apply to two important resources inside Jina AI ecosystem: DocumentArray and Executor.
Schema
Moving forwards, names for DocumentArrays and Hub Executors will follow the new schema, namespace/resource
:
💡Note that Executors now use
jinaai://
as the prefix (notjinahub://
) and no longer need secrets (as you already logged in).
Access scope
For both DocumentArray and Executor, the user enjoys the following accessibility:
Does this break anything?
- There are no breaking changes for existing Executors on Executor Hub.
- You can still pull old DocumentArrays by their original name, but you can’t update them. Newly-pushed DocumentArrays must follow the
username/da-name
scheme.
Managing your resources under the namespace
Manage DocumentArrays
- Create a Jina AI account at cloud.jina.ai.
Upgrade
docarray
to>=0.19.1
version withpip install -U docarray
.Log in via
docarray.login()
and start pushing and pulling DocumentArrays:
from docarray import DocumentArray
docarray.login() # log in as 'alice'
docs = DocumentArray.pull('alice/fashion_mnist')
docs.push('alice/fashion_mnist_updated')
- Manage your pushed DocumentArrays on Jina AI Cloud in the "Storage" tab:
Manage Executors
Upgrade jina
to the latest version with pip install -U jina
.
1.Create a Jina AI account at cloud.jina.ai.
2.Use an existing Executor in your Flow (in Python):
from jina import Flow
flow = Flow().add(uses='jinaai+docker://alice/MyExecutor') # note jinaai
with flow:
...
3.Or push your own Executor to Executor Hub (from the CLI):
jina auth login
jina hub push MyExecutor
4.Manage your Executors on Executor Hub on the "Executors" tab:
Posted on February 24, 2023
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.