Skip to main content

The Argilla python server SDK

Project description

Argilla
Argilla

Work on data together, make your model outputs better!

CI Codecov CI

Argilla is a collaboration tool for AI engineers and domain experts who need to build high-quality datasets for their projects. If you just want to get started, we recommend our UI demo or our free Hugging Face Spaces deployment integration. Curious, and want to know more? Read our documentation.

Why use Argilla?

Whether you are working on monitoring and improving complex generative tasks involving LLM pipelines with RAG, or you are working on a predictive task for things like AB-testing of span- and text-classification models. Our versatile platform helps you ensure your data work pays off.

Improve your AI output quality through data quality

Compute is expensive and output quality is important. We help you focus on data, which tackles the root cause of both of these problems at once. Argilla helps you to achieve and keep high-quality standards for your data. This means you can improve the quality of your AI output.

Take control of your data and models

Most AI tools are black boxes. Argilla is different. We believe that you should be the owner of both your data and your models. That's why we provide you with all the tools your team needs to manage your data and models in a way that suits you best.

Improve efficiency by quickly iterating on the right data and models

Gathering data is a time-consuming process. Argilla helps by providing a platform that allows you to interact with your data in a more engaging way. This means you can quickly and easily label your data with filters, AI feedback suggestions and semantic search. So you can focus on training your models and monitoring their performance.

🏘️ Community

We are an open-source community-driven project and we love to hear from you. Here are some ways to get involved:

  • Community Meetup: listen in or present during one of our bi-weekly events.

  • Discord: get direct support from the community in #argilla-distilabel-general and #argilla-distilabel-help.

  • Roadmap: plans change but we love to discuss those with our community so feel encouraged to participate.

What do people build with Argilla?

Open-source datasets and models

The community uses Argilla to create amazing open-source datasets and models.

  • Cleaned UltraFeedback dataset used to fine-tune the Notus and Notux models. The original UltraFeedback dataset was curated using Argilla UI filters to find and report a bug in the original data generation code. Based on this data curation process, Argilla built this new version of the UltraFeedback dataset and fine-tuned Notus, outperforming Zephyr on several benchmarks.
  • distilabeled Intel Orca DPO dataset used to fine-tune the improved OpenHermes model. This dataset was built by combining human curation in Argilla with AI feedback from distilabel, leading to an improved version of the Intel Orca dataset and outperforming models fine-tuned on the original dataset.

Examples Use cases

AI teams from companies like the Red Cross, Loris.ai and Prolific use Argilla to improve the quality and efficiency of AI projects. They shared their experiences in our AI community meetup.

  • AI for good: the Red Cross presentation showcases how the Red Cross domain experts and AI team collaborated by classifying and redirecting requests from refugees of the Ukrainian crisis to streamline the support processes of the Red Cross.
  • Customer support: during the Loris meetup they showed how their AI team uses unsupervised and few-shot contrastive learning to help them quickly validate and gain labelled samples for a huge amount of multi-label classifiers.
  • Research studies: the showcase from Prolific announced their integration with our platform. They use it to actively distribute data collection projects among their annotating workforce. This allows Prolific to quickly and efficiently collect high-quality data for research studies.

👨‍💻 Getting started

Installation

First things first! You can install the SDK with pip as follows:

pip install argilla

After that, you will need to deploy Argilla Server. The easiest way to do this is through our free Hugging Face Spaces deployment integration.

To use the client, you need to import the Argilla class and instantiate it with the API URL and API key.

import argilla as rg

client = rg.Argilla(api_url="https://[your-owner-name]-[your_space_name].hf.space", api_key="owner.apikey")

Create your first dataset

We can now create a dataset with a simple text classification task. First, you need to define the dataset settings.

settings = rg.Settings(
    guidelines="Classify the reviews as positive or negative.",
    fields=[
        rg.TextField(
            name="review",
            title="Text from the review",
            use_markdown=False,
        ),
    ],
    questions=[
        rg.LabelQuestion(
            name="my_label",
            title="In which category does this article fit?",
            labels=["positive", "negative"],
        )
    ],
)
dataset = rg.Dataset(
    name=f"my_first_dataset",
    settings=settings,
    client=client,
)
dataset.create()

Next, we can add records to the dataset.

pip install datasets
from datasets import load_dataset

data = load_dataset("imdb", split="train[:100]").to_list()
dataset.records.log(records=data, mapping={"text": "review"})

🎉 You have successfully created your first dataset with Argilla. You can now access it in the Argilla UI and start annotating the records. Need more info, check out our docs.

🥇 Contributors

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.

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-2.4.0.tar.gz (118.8 kB view details)

Uploaded Source

Built Distribution

argilla-2.4.0-py3-none-any.whl (157.7 kB view details)

Uploaded Python 3

File details

Details for the file argilla-2.4.0.tar.gz.

File metadata

  • Download URL: argilla-2.4.0.tar.gz
  • Upload date:
  • Size: 118.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.19.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for argilla-2.4.0.tar.gz
Algorithm Hash digest
SHA256 13e31d1daaa9036e32768f1b527b1dbf08cebf365d1e0f9af6540db6cbbb7ed4
MD5 f198044d290dda0e736e1e9406943f32
BLAKE2b-256 fff2794b902e11faee69c8b86bd238ef47faafa226efc4fa3ce0301d2e6815aa

See more details on using hashes here.

File details

Details for the file argilla-2.4.0-py3-none-any.whl.

File metadata

  • Download URL: argilla-2.4.0-py3-none-any.whl
  • Upload date:
  • Size: 157.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.19.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for argilla-2.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fc3c33700a9a43f8a41c9f8487328eca12cef684d4c56973c704149d79e8d012
MD5 1394f87a9451e31d2da270c3fd8568c2
BLAKE2b-256 77f9daf91cecae652d26b6d8b3b4ccc9db01da2943c0aafa99976d9adc60b103

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