Skip to content
Merged
Show file tree
Hide file tree
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
1 change: 1 addition & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
"settings": {
"python.testing.pytestEnabled": true,
"python.testing.cwd": "${workspaceFolder}/tests",
"python.envFile": "${workspaceFolder}/argilla/.env.test",
"python.testing.pytestArgs": [ "-vs", "--disable-warnings" ],
"python.defaultInterpreterPath": "/opt/conda/bin/python",
"python.condaPath": "/usr/local/bin/micromamba",
Expand Down
8 changes: 4 additions & 4 deletions .devcontainer/docker-compose/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -100,18 +100,18 @@
"python.testing.cwd": "${workspaceFolder}/argilla/",
"python.testing.pytestArgs": [
"-vv",
"--disable-warnings",
"--cov",
"--cov-report=xml:coverage.xml",
"--disable-warnings"
],
"python.defaultInterpreterPath": "/opt/conda/bin/python",
"python.condaPath": "/usr/local/bin/micromamba",
"python.envFile": "${workspaceFolder}/argilla/.env.test",
"search.exclude": {
"argilla-server/src/argilla_server/static/": true,
"argilla-frontend/dist/": true,
"_nuxt/": true,
"node_modules/": true,
".venv/": true
".venv/": true,
"**/*.png": true
},
"files.watcherExclude": {
"argilla-server/src/argilla_server/static/": true,
Expand Down
3 changes: 1 addition & 2 deletions .devcontainer/docker-compose/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ channels:
- huggingface
- defaults
dependencies:
- python~=3.9.7
- python~=3.12
- pip>=2.22.0
- pdm
# pyparsing 3.0.5 seems to be buggy
Expand All @@ -17,7 +17,6 @@ dependencies:
- pytest-asyncio==0.21.1 # Pinning version 0.21.1, version 0.23.2 is causing problems with GitHub workflows
- pytest-env
- factory_boy~=3.2.1
# docs, pandoc needs conda ...
- pandoc==2.12
# we need this to ensure syntax highlighting in the notebook code cells for the docs
- ipython<8.0.0
Expand Down
2 changes: 2 additions & 0 deletions .devcontainer/docker-compose/setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
# Perform the pip editable install
if ! pip list | grep -q "extralit"; then
echo "Installing required packages and editable installs..."
pdm config use_uv true
pdm config python.install_root /opt/conda/
uv pip install -q "sentence-transformers<3.0.0" transformers "textdescriptives<3.0.0" \
-e /workspaces/extralit/argilla-server/ && \
uv pip install -q -e /workspaces/extralit/argilla/
Expand Down
2 changes: 2 additions & 0 deletions .devcontainer/setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ fi
# Perform the pip editable install
if ! pip list | grep -q "extralit"; then
echo 'Installing required packages and editable installs...'
pdm config use_uv true
pdm config python.install_root /opt/conda/
uv pip install -e /workspaces/extralit/argilla-server/
uv pip install -e /workspaces/extralit/argilla/
else
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/argilla.yml
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ jobs:
fail_ci_if_error: false

- name: Check test status
if: steps.tests-unit.outcome == 'failure'
if: steps.tests-unit.outcome == 'failure' || steps.tests-integration.outcome == 'failure'
run: exit 1

- name: Build package
Expand Down
25 changes: 23 additions & 2 deletions argilla-server/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,26 @@ These are the section headers that we use:
* "Security" in case of vulnerabilities.
-->

## [Extralit] [0.5.0](https://github.com/extralit/extralit/compare/v0.4.1...v0.5.0)
## [Extralit] [0.5.0](https://github.com/extralit/extralit/compare/v0.4.0...v0.5.0)

### Added
- Added new fields (file_name and reference) to the Document model for improved metadata management.
- Updated WorkspacesAPI to handle document creation from file paths and URLs.
- Added unit tests for workspace files and schemas API, and improved test configurations.
- Enhanced CLI commands for adding documents to include reference and improved error handling.
- Added `from_file` method to Document for creating instances from file paths or URLs.


### Fixed
- LocalFileStorage implementation to mimic Minio or S3 storage.
- Fixed `argilla-hf-spaces` s3 environment files.
- Used `uv` in `argilla-server` and `argilla-hf-spaces` Dockerfiles

### Changed
- Updated elasticsearch to 8.17.0
- Adjustments to Dockerfiles for clarity and consistency.
- Updated `argilla-server` Dockerfile to use `uv` for installing server dependencies.
- Refactored API schemas to use `DocumentCreate` and `DocumentDelete` for better clarity.
- Updated elasticsearch to 8.17.0 in `argilla-hf-spaces` Dockerfile.


## [Argilla] [2.8.0](https://github.com/argilla-io/argilla/compare/v2.7.1...v2.8.0)
Expand Down Expand Up @@ -56,6 +72,11 @@ These are the section headers that we use:
- Added `argilla.share_your_progress_enabled` attribute to `GET /api/v1/settings` endpoint. ([#5739](https://github.com/argilla-io/argilla/pull/5739))
- Added new environment variable `ARGILLA_ENABLE_SHARE_YOUR_PROGRESS` to enable or disable the share your progress feature. ([#5727](https://github.com/argilla-io/argilla/pull/5727))

## [Extralit] [0.4.0](https://github.com/extralit/extralit/compare/v0.3.0...v0.4.0)

### Added
- Added LocalFileStorage to replace Minio or S3 storage

## [Argilla] [2.5.0](https://github.com/argilla-io/argilla/compare/v2.4.1...v2.5.0)

### Added
Expand Down
27 changes: 6 additions & 21 deletions argilla-server/docker/argilla-hf-spaces/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Multi-stage build to reduce image size
ARG ARGILLA_VERSION=latest
ARG ARGILLA_SERVER_IMAGE=extralitdev/argilla-server
ARG ARGILLA_SERVER_IMAGE=extralit/argilla-server

# Base stage with common dependencies
FROM ${ARGILLA_SERVER_IMAGE}:${ARGILLA_VERSION} AS base
Expand All @@ -21,36 +21,27 @@ RUN apt-get update && \
wget -qO - https://packages.redis.io/gpg | gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg && \
apt-get install -y --no-install-recommends lsb-release && \
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
apt-get update

# Create data directory
RUN mkdir /data

# Install Elasticsearch - separate step to manage memory usage
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends elasticsearch=8.15.0 && \
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends elasticsearch=8.17.0 && \
chown -R argilla:argilla /usr/share/elasticsearch /etc/elasticsearch /var/lib/elasticsearch /var/log/elasticsearch && \
chown argilla:argilla /etc/default/elasticsearch && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
chown argilla:argilla /etc/default/elasticsearch

# Install Redis - separate step to avoid memory allocation issues
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends redis && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends redis

# Install Python dependencies and additional utilities
RUN pip install --no-cache-dir -r /packages/requirements.txt && \
chmod +x /home/argilla/start.sh && \
chmod +x /home/argilla/start_argilla_server.sh && \
apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl jq pwgen && \
apt-get remove -y wget gnupg && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /packages && \
rm -rf /var/lib/apt/lists/* /packages && \
# Give ownership of the data directory to the argilla user
chown -R argilla:argilla /data

Expand All @@ -68,10 +59,4 @@ ENV ES_JAVA_OPTS="-Xms1g -Xmx1g"
ENV ARGILLA_HOME_PATH=/data/argilla
ENV REINDEX_DATASETS=1

ENV ARGILLA_DATABASE_URL=""
ENV ARGILLA_S3_ENDPOINT=""
ENV ARGILLA_S3_ACCESS_KEY=""
ENV ARGILLA_S3_SECRET_KEY=""
ENV ARGILLA_EXTRALIT_URL=""

CMD ["/bin/bash", "start.sh"]
26 changes: 15 additions & 11 deletions argilla-server/docker/server/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
FROM python:3.13-slim AS builder

# Install uv
COPY --from=ghcr.io/astral-sh/uv:0.7.12 /uv /uvx /bin/
# Copying argilla distribution files
COPY dist/*.whl /packages/
RUN python -m venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
RUN apt-get update && \
ENV MAMBA_ROOT_PREFIX=/opt/venv
ENV CONDA_PREFIX=/opt/venv

RUN --mount=type=cache,target=/root/.cache/uv \
apt-get update && \
apt-get upgrade -y && \
apt-get install -y python-dev-is-python3 libpq-dev gcc && \
pip install --upgrade pip && \
pip install uvicorn[standard] && \
for wheel in /packages/*.whl; do pip install "$wheel"[server,postgresql]; done && \
apt-get remove -y python-dev-is-python3 libpq-dev gcc && \
apt-get install -y --no-install-recommends libc6-dev libpq-dev gcc && \
for wheel in /packages/*.whl; do uv pip install "$wheel"[server,postgresql]; done && \
apt-get purge -y --auto-remove libc6-dev libpq-dev gcc && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /packages
rm -rf /var/lib/apt/lists/* /packages

FROM python:3.13-slim

Expand All @@ -35,17 +38,18 @@ RUN mkdir -p "$ARGILLA_HOME_PATH" && \
chown argilla:argilla "$ARGILLA_HOME_PATH" && \
apt-get update && \
apt-get upgrade -y && \
apt-get install -y libpq-dev && \
apt-get install -y --no-install-recommends libpq-dev && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /packages
rm -rf /var/lib/apt/lists/* /packages
VOLUME $ARGILLA_HOME_PATH

COPY scripts/start_argilla_server.sh /home/argilla
# Destination folder must be the same as the builder one. Otherwise installed script won't work (since the installation fixes the path inside the script)
COPY --chown=argilla:argilla --from=builder /opt/venv /opt/venv

ENV PATH="/opt/venv/bin:$PATH"
ENV MAMBA_ROOT_PREFIX=/opt/venv
ENV CONDA_PREFIX=/opt/venv

WORKDIR /home/argilla
RUN chmod +x start_argilla_server.sh
Expand Down
Loading
Loading