Skip to main content

Open-source tool for exploring, labeling, and monitoring data for NLP projects.

Project description

Argilla
Argilla

Work on data together, make your model outputs better!

CI Codecov CI

Argilla is a collaboration platform for AI engineers and domain experts that require high-quality outputs, full data ownership, and overall efficiency.

[!NOTE] This README represents the release candidate for the 2.0.0 SDK version. The README for the last stable version of the 1x SDK can be found 1.x

This repository only contains developer info about the backend server. If you want to get started, we recommend taking a look at our main repository or our documentation.

Are you a contributor or do you want to understand what is going on under the hood, please keep reading the documentation below.

Source code folder structure

The following is a high-level overview of relevant folders and files in the argilla-server source code:

/argilla_server
  /api # Including all the API endpoints and related code
    /errors # Custom exceptions and error handlers
      /v1
    /handlers # Request FastAPI handlers
      /v1
    /policies # Authorization policies for resources
      /v1
    /schemas # Pydantic schemas for request and response bodies
      /v1
  /contexts # Domain contexts for the application including business logic
    accounts.py
    datasets.py
    search.py
    ...
  /models # SQLAlchemy ORM models for the database
    database.py

Folders inside /api are organized by API version, having right now only v1 implemented. This is in contrast to /contexts and /models folders that are not versioned. This is because the business logic and canonical database models are not exposed directly to the API, and therefore are not subject to versioning.

Development environment

By default all commands executed with pdm run will get environment variables from .env.dev except command pdm test that will overwrite some of them using values coming from .env.test file.

These environment variables can be override if necessary so feel free to defined your own ones locally.

Run cli

pdm cli

Run database migrations

By default a SQLite located at ~/.argilla/argilla.db will be used. You can create the database and run migrations with the following custom PDM command:

pdm migrate

Run tests

A SQLite database located at ~/.argilla/argilla-test.db will be automatically created to run tests. You can run the entire test suite using the following custom PDM command:

pdm test

Run development server

Note: If you need to run the frontend server you can follow the instructions at the argilla-frontend project

Run uvicorn development server

pdm server

🫱🏾‍🫲🏼 Contribute

To help our community with the creation of contributions, we have created our community docs. Additionally, you can always schedule a meeting with our Developer Advocacy team so they can get you up to speed.

🗺️ Roadmap

We continuously work on updating our plans and our roadmap and we love to discuss those with our community. Feel encouraged to participate.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

argilla_server-2.0.0rc1.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

argilla_server-2.0.0rc1-py3-none-any.whl (2.3 MB view details)

Uploaded Python 3

File details

Details for the file argilla_server-2.0.0rc1.tar.gz.

File metadata

  • Download URL: argilla_server-2.0.0rc1.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.15.4 CPython/3.10.12 Linux/6.5.0-1022-azure

File hashes

Hashes for argilla_server-2.0.0rc1.tar.gz
Algorithm Hash digest
SHA256 f2ae6dd2ff3f73afd9e35ce6499f7b1c8c381e1a495482743f9c7fd7e3c6c546
MD5 8ed4e021a85ac180b9b36cc52fd72be4
BLAKE2b-256 18237efa80a385b8ee25de2305a0f48f67fb776c842fa9d930c3881d6bfa4790

See more details on using hashes here.

File details

Details for the file argilla_server-2.0.0rc1-py3-none-any.whl.

File metadata

  • Download URL: argilla_server-2.0.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.15.4 CPython/3.10.12 Linux/6.5.0-1022-azure

File hashes

Hashes for argilla_server-2.0.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 9cb08697be78be980003f0c3c135b06e14af9a32a770b3c7e7396e5c769fb427
MD5 8fae99020d2578d7f5f75dd48b570fbd
BLAKE2b-256 67cc6ccd5d3c5366181394dd603a374511bf7284c6061468761cc4a61e560e39

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page