Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 15 additions & 21 deletions docs/get-started/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,15 +53,15 @@ In addition to `common`, the following dependencies are installed to enable full

| Package | Used in |
|---|---|
| `scipy` | for sparse embedding, tensors |
| `av` | for video processing and IO |
| `trimesh` | for 3D mesh processing and IO |
| `strawberry-graphql` | for GraphQL support |
| `scipy` | sparse embedding, tensors |
| `av` | video processing and IO |
| `trimesh` | 3D mesh processing and IO |
| `strawberry-graphql` | GraphQL support |

Alternatively, you can first do basic installation and then install missing dependencies on-demand.
````

````{tab} Developement install
````{tab} Development install

```bash
pip install "docarray[full,test]"
Expand All @@ -84,17 +84,17 @@ This installs all requirements for reproducing tests on your local dev environme

## On Apple Silicon

If you own a MacOS device with an Apple Silicon M1/M2 chip, you can run DocArray **natively** on it (instead of running under Rosetta) and enjoy much better performance. This section summarizes how to install DocArray on Apple Silicon device.
If you own a macOS device with an Apple Silicon M1/M2 chip, you can run DocArray **natively** on it (instead of running under Rosetta) and enjoy much better performance. This section summarizes how to install DocArray on Apple Silicon devices.

### Check terminal and device

To make sure you are using the right terminal, run
To make sure you are using the right terminal, run:

```bash
uname -m
```

and it should return
and it should return:

```text
arm64
Expand All @@ -103,7 +103,7 @@ arm64

### Install Homebrew

`brew` is a package manager for macOS. If you already install it you need to confirm it is actually installed for Apple Silicon not for Rosetta. To check that, run
`brew` is a package manager for macOS. If you have already installed it you need to confirm it is actually installed for Apple Silicon not for Rosetta. To check that, run:

```bash
which brew
Expand All @@ -113,10 +113,10 @@ which brew
/opt/homebrew/bin/brew
```

If you find it is installed under `/usr/local/` instead of `/opt/homebrew/`, it means your `brew` is installed for Rosetta not for Apple Silicon. You need to reinstall it. [Here is an article on how to do it](https://apple.stackexchange.com/a/410829).
If you find that it's installed under `/usr/local/` (rather than `/opt/homebrew/`), it means your `brew` is installed for Rosetta not for Apple Silicon. You need to [reinstall it](https://apple.stackexchange.com/a/410829).

```{danger}
Reinstalling `brew` can be a destructive operation. Please make sure you have backed up your data before proceeding.
Reinstalling `brew` can be a destructive operation. Make sure you have backed up your data before proceeding.
```

To (re)install brew, run
Expand All @@ -129,28 +129,28 @@ You may want to observe the output to check if it contains `/opt/homebrew` to ma

### Install Python

Python has to be installed natively for Apple Silicon as well. It is possible it is installed for Rosetta, and you are not aware of that. To confirm, run
Python has to be installed natively for Apple Silicon as well. It is possible it is installed for Rosetta, and you are not aware of that. To confirm, run:

```python
import platform

platform.machine()
```

which should give
which should give:

```text
'arm64'
```

If not, then you are using Python under Rosetta, and you need to install Python for Apple Silicon with `brew`.
If not, then you are using Python under Rosetta, and you need to install Python for Apple Silicon with `brew`:


```bash
brew install python3
```

As of Aug 2022, this installs Python 3.10 natively for Apple Silicon.
As of August 2022, this installs Python 3.10 natively for Apple Silicon.

Make sure to note down where `python` and `pip` are installed to. In this example, they are installed to `/opt/homebrew/bin/python3` and `/opt/homebrew/opt/[email protected]/libexec/bin/pip` respectively.

Expand All @@ -170,10 +170,8 @@ Now you can install Jina via `pip`. Note you need to use the right one:
/opt/homebrew/opt/[email protected]/libexec/bin/pip install docarray
```


Congratulations! You have successfully installed Jina on Apple Silicon.


````{tip}

To install MPS-enabled PyTorch, run
Expand All @@ -182,7 +180,3 @@ To install MPS-enabled PyTorch, run
/opt/homebrew/opt/[email protected]/libexec/bin/pip install -U --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu
```
````