Skip to content

Commit

Permalink
Merge branch 'develop' into hotfix/replace_isort_by_ruff
Browse files Browse the repository at this point in the history
  • Loading branch information
tomaarsen authored Feb 10, 2023
2 parents e05f30e + ff4e79f commit 81ade4f
Show file tree
Hide file tree
Showing 49 changed files with 644 additions and 261 deletions.
14 changes: 12 additions & 2 deletions .github/workflows/package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -222,9 +222,10 @@ jobs:
- 'frontend/**'
- 'pyproject.toml'
- 'setup.py'
- 'scripts/start_argilla_server.sh'
- 'scripts/*.sh'
- '*.Dockerfile'
- '.dockerignore'
- '.github/workflows/package.yml'
- name: Cache pip 👜
uses: actions/cache@v2
if: steps.filter.outputs.code_changes == 'true'
Expand Down Expand Up @@ -267,10 +268,12 @@ jobs:
- image: argilla/argilla-server
dockerfile: release.Dockerfile
readme: README.md
platforms: linux/amd64

- image: argilla/argilla-quickstart
dockerfile: quickstart.Dockerfile
readme: quickstart.README.md
platforms: linux/amd64,linux/arm64

defaults:
run:
Expand All @@ -285,6 +288,12 @@ jobs:
name: python-package
path: dist

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Docker meta
id: meta
uses: crazy-max/ghaction-docker-meta@v2
Expand All @@ -302,9 +311,10 @@ jobs:
with:
context: .
file: ${{ matrix.dockerfile }}
push: true
platforms: ${{ matrix.platforms }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
push: true

- name: Docker Hub Description
uses: peter-evans/dockerhub-description@v3
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ The simplest way is to use`Docker` by running:

```bash

docker run -d --name es-for-argilla -p 9200:9200 -p 9300:9300 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
docker run -d --name elasticsearch-for-argilla --network argilla-net -p 9200:9200 -p 9300:9300 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:8.5.3

```
> :information_source: **Check [the docs](https://docs.argilla.io/en/latest/getting_started/quickstart.html) for further options and configurations for Elasticsearch.**
Expand Down Expand Up @@ -153,7 +153,7 @@ dataset_rg = rg.DatasetForTextClassification.from_pandas(my_dataframe)
rg.log(dataset_rg, name="sst-sentimentclassification")
```

This will create two datasets which you can use to do a quick tour of the core features of Argilla.
This will create two datasets that you can use to do a quick tour of the core features of Argilla.

> 🚒 **If you find issues, get direct support from the team and other community members on the [Slack Community](https://join.slack.com/t/rubrixworkspace/shared_invite/zt-whigkyjn-a3IUJLD7gDbTZ0rKlvcJ5g)**
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.elasticsearch.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: "3.9"
services:

elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.5.0
image: docker.elastic.co/elasticsearch/elasticsearch:8.5.3
ports:
- "9200:9200"
- "9300:9300"
Expand All @@ -23,7 +23,7 @@ services:
volumes:
- elasticsearch-data-8:/usr/share/elasticsearch/data/
kibana:
image: docker.elastic.co/kibana/kibana:8.5.0
image: docker.elastic.co/kibana/kibana:8.5.3
ports:
- "5601:5601"
environment:
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ services:
- argilla

elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.8
image: docker.elastic.co/elasticsearch/elasticsearch:8.5.3
environment:
- node.name=elasticsearch
- cluster.name=es-argilla-local
Expand All @@ -40,7 +40,7 @@ services:
volumes:
- elasticdata:/usr/share/elasticsearch/data/
kibana:
image: docker.elastic.co/kibana/kibana:7.17.8
image: docker.elastic.co/kibana/kibana:8.5.3
ports:
- "5601:5601"
environment:
Expand Down
13 changes: 10 additions & 3 deletions docs/_source/getting_started/argilla.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,29 @@

[Argilla](https://argilla.io) is a **production-ready framework for building and improving datasets** for NLP projects.

```{admonition} Hugging Face Spaces Live Demo 🆕
```{admonition} Argilla on HF Spaces
:class: important
Play with Argilla UI with this [live-demo](https://argilla-live-demo.hf.space) powered by Hugging Face Spaces (login:`argilla`, password:`1234`)
Deploy your own Argilla Server on Spaces with a few clicks:
<a href="https://huggingface.co/new-space?template=argilla/argilla-template-space">
<img src="https://huggingface.co/datasets/huggingface/badges/raw/main/deploy-to-spaces-lg.svg" />
</a>
```


```{admonition} Semantic Search data labelling 🆕
:class: important
🆕 Since `1.2.0` You can add embedding vectors to Argilla records and use them to find the most similar records with the UI. This feature uses vector search combined with traditional search (keyword and filter based).
🆕 Use embeddings to find the most similar records with the UI. This feature uses vector search combined with traditional search (keyword and filter based).
Get started: [Semantic Search Deep-dive guide](../guides/features/semantic-search.ipynb)
```



<iframe width="100%" height="450" src="https://www.youtube.com/embed/jP3anvp7Rto" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## Features
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@
```{grid-item-card} Docker
:link: docker.md
```
```{grid-item-card} Docker Quickstart
:link: docker.md
```
```{grid-item-card} Docker-compose
:link: docker_compose.md
Expand Down Expand Up @@ -34,6 +38,7 @@
:hidden:
docker.md
docker-quickstart.md
docker_compose.md
cloud_providers.md
from_development.md
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,21 @@
# Argilla Docker Quickstart
# Docker Quickstart
Argilla is composed of a Python Server with Elasticsearch as the database layer, and a Python Client to create and
manage datasets.

To get started you just need to run the docker image with following command:

``` bash
docker run -d --name quickstart -p 6900:6900 argilla/argilla-quickstart:latest
docker run -d --network argilla-net --name quickstart -p 6900:6900 argilla/argilla-quickstart:latest
```

<div class="alert alert-warning">

Apple Silicon Issues

Apple Silicon M1/M2 users might have issues with this deployment. To resolve this, use the `--platform linux/arm64` parameter. If this doesn't work, deploying separate images or via docker-compose will work.

</div>

This will run the latest quickstart docker image with 2 users `argilla` and `team`. The password for these users is
`1234` . You can also configure these [environment variables](#environment-variables) as per you needs.

Expand Down
18 changes: 13 additions & 5 deletions docs/_source/getting_started/installation/deployments/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,16 @@ This guide explains how to launch the Elasticsearch backend and Argilla Server u
(setting-up-elasticsearch-via-docker)=
## Elasticsearch

First, you need to create a network to make both standalone containers visibles between them.
Just run the folowing command:
```bash
docker network create argilla-net

Setting up Elasticsearch (ES) via docker is straightforward.
Simply run the following command:

```bash
docker run -d --name elasticsearch-for-argilla -p 9200:9200 -p 9300:9300 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
docker run -d --name elasticsearch-for-argilla --network argilla-net -p 9200:9200 -p 9300:9300 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:8.5.3
```

This will create an ES docker container named *"elasticsearch-for-argilla"* that will run in the background.
Expand All @@ -35,9 +40,11 @@ docker rm elasticsearch-for-argilla
you will loose all your datasets in Argilla!
:::

For more details about the ES installation with docker, see their [official documentation](https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docker.html).
For MacOS and Windows, Elasticsearch also provides [homebrew formulae](https://www.elastic.co/guide/en/elasticsearch/reference/7.10/brew.html) and a [msi package](https://www.elastic.co/guide/en/elasticsearch/reference/7.10/windows.html), respectively.
We recommend ES version 7.10 to work with Argilla.
For more details about the ES installation with docker, see their [official documentation](https://www.elastic.co/guide/en/elasticsearch/reference/8.5/docker.html).
Also, you can visit the [docs](https://www.elastic.co/guide/en/elasticsearch/reference/8.5/install-elasticsearch.html#elasticsearch-install-packages) for other
platforms installation.

We recommend ES version 8.5.x to work with Argilla.

## Argilla Server and UI

Expand All @@ -54,7 +61,7 @@ By default, the Argilla server will look for your Elasticsearch endpoint at `htt
But you can customize this by setting the `ELASTICSEARCH` environment variable.

```bash
docker run -p 6900:6900 -e "ELASTICSEARCH=<your-elasticsearch-endpoint>" --name argilla argilla/argilla-server
docker run --network argilla-net -p 6900:6900 -e "ELASTICSEARCH=http://elasticsearch-for-argilla:9200" --name argilla argilla/argilla-server
```
:::{note}
By default, telemetry is enabled. This helps us to improve our product. For more info about the metrics and disabling them check [telemetry](../../reference/telemetry.md).
Expand All @@ -74,3 +81,4 @@ docker stop argilla
```

If you want to deploy your own Elasticsearch cluster via docker, we refer you to the excellent guide on the [Elasticsearch homepage](https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html).

Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ To this end, **modify the elasticsearch service and create a new volume** in the
```yaml
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.11.1
image: docker.elastic.co/elasticsearch/elasticsearch:8.5.3
container_name: elasticsearch
environment:
- node.name=elasticsearch
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@ If you want to run the web app of the master branch **without** docker, we refer
If you want to use vanilla docker (and have your own Elasticsearch instance running), you can just use our master image:

```bash
docker run -p 6900:6900 -e "ELASTICSEARCH=<your-elasticsearch-endpoint>" --name argilla argilla/argilla-server:develop
docker run -p 6900:6900 -e "ELASTICSEARCH=<your-elasticsearch-endpoint>" --network argilla-net --name argilla argilla/argilla-server:develop
```
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Google Colab
Google Colab is a free tool that allows users to run and share Jupyter notebooks on Google's servers. It can be useful for quickly trying out models and using GPUs for training and prediction tasks. In the context of Argilla, it can be used for experimenting with pre-trained models, active learning, and computing text embeddings.

To use Argilla with Google Colab, the recommended method is to use Hugging Face Spaces, as [described in this guide](huggingface-spaces.md). This is the easiest way to set up Argilla for use with Google Colab. For other installations, we recommend you to read the [cloud providers guide](cloud_providers.md).
You can run all Argilla tutorials using the Open in Colab button at the top of each tutorial page. To use Argilla with Google Colab, the recommended method is to use Hugging Face Spaces, as [described in this guide](huggingface-spaces.md). This is the easiest way to set up Argilla for use with Google Colab. For other installations, we recommend the [deployments guide](cloud_providers.md).

If you want to deploy and run Argilla entirely on Google Colab, check [this tutorial by Moritz Laurer](../../../tutorials/notebooks/deploying-textclassification-colab-activelearning.ipynb).

If you are looking for an end-to-end example using Google Colab and Hugging Face Spaces, check out this [Colab notebook](https://colab.research.google.com/drive/1GeBBuRw8CIZ6SYql5Vdx4Q2Vv74eFa1I?usp=sharing).
Loading

0 comments on commit 81ade4f

Please sign in to comment.