Hub documentation

Argilla

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Argilla

Argilla, projeleri için yüksek kaliteli veri setleri oluşturmak zorunda olan yapay zeka mühendisleri ve alan uzmanları için bir iş birliği aracıdır.

image

Argilla, geleneksel NLP (metin sınıflandırma, NER vb.), LLM'ler (RAG, tercih ayarı vb.) veya çok modlu modeller (metinden görüntüye vb.) gibi geniş bir yelpazedeki yapay zeka projeleri için insan geri bildirimi toplamak amacıyla kullanılabilir. Argilla'nın programatik yaklaşımı, sürekli değerlendirme ve model iyileştirme için iş akışları oluşturmanızı sağlar. Argilla'nın amacı, doğru veriler ve modeller üzerinde hızlıca iterasyon yaparak veri çalışmalarınızın karşılığını vermesini sağlamaktır.

İnsanlar Argilla ile neler geliştiriyor?

Topluluk, harika açık kaynak veri kümeleri ve modeller oluşturmak için Argilla'yı kullanır.

Açık kaynak veri setleri ve modeller

Argilla, açık kaynak dünyasına bazı modeller ve veri setleri de katkıda bulundu.

  • Temizlenmiş UltraFeedback veri seti, Notus ve Notux modellerinin ince ayarında kullanıldı. Orijinal UltraFeedback veri seti, orijinal veri üretim kodundaki bir hatayı bulmak ve raporlamak için Argilla UI filtreleri kullanılarak derlendi. Bu veri kürasyonu sürecine dayanarak Argilla, UltraFeedback veri setinin bu yeni sürümünü oluşturdu ve Notus'un ince ayarını yaptı; Notus, çeşitli benchmark'larda Zephyr'den daha iyi performans gösterdi.
  • distilabeled Intel Orca DPO veri seti, geliştirilmiş OpenHermes modelinin ince ayarında kullanıldı. Bu veri seti, Argilla'daki insan kürasyonu ile distilabel'den gelen yapay zekâ geri bildirimlerinin birleştirilmesiyle oluşturuldu; bu sayede Intel Orca veri setinin geliştirilmiş bir sürümü elde edildi ve orijinal veri seti üzerinde ince ayar yapılan modelleri geride bıraktı.

Örnekler Kullanım senaryoları

Kızılhaç, Loris.ai ve Prolific gibi şirketlerin yapay zeka ekipleri, yapay zeka projelerinin kalitesini ve verimliliğini artırmak için Argilla kullanıyor. Deneyimlerini yapay zeka topluluğu buluşmamızda paylaştılar.

  • İyi amaçlı yapay zeka: Kızılhaç sunumu, Ukrayna krizinden kaçan mültecilerden gelen istekleri sınıflandırıp yönlendirerek Kızılhaç destek süreçlerini hızlandırmak için Kızılhaç alan uzmanları ile yapay zeka ekibinin nasıl iş birliği yaptığını gösteriyor.
  • Müşteri desteği: Loris buluşması sırasında, yapay zeka ekibinin, çok sayıda çok etiketli sınıflandırıcı için hızlıca doğrulama yapabilmek ve etiketli örnekler elde edebilmek adına denetimsiz ve az örnekli kontrastif öğrenmeyi nasıl kullandıklarını gösterdiler.
  • Araştırma çalışmaları: Prolific'in tanıtımı platformumuzla entegrasyonlarını duyurdu. Bunu, veri toplama projelerini aktif olarak etiketleme iş gücü arasında dağıtmak için kullanıyorlar. Bu, Prolific'in araştırma çalışmaları için yüksek kaliteli verileri hızlı ve verimli bir şekilde toplamasını sağlıyor.

Ön koşullar

Önce Hugging Face hesabınızla oturum açın:

hf auth login

argilla>=2.0.0 yüklü olduğundan emin olun:

pip install -U argilla

Son olarak, Argilla sunucusunu ve arayüzünü dağıtmanız gerekecektir; bu işlem Hugging Face Hub üzerinde kolayca yapılabilir.

Veri kümelerini ve kayıtları içe ve dışa aktarma

Bu kılavuz, veri setinizi Hugging Face Hub'a nasıl içe aktaracağınızı ve dışa aktaracağınızı gösterir.

Argilla'da bir veri setinin iki ana bileşenini içe/dışa aktarabilirsiniz:

  • Veri setinin rg.Settings içinde tanımlanan tam yapılandırması. Argilla'da geri bildirim görevinizi paylaşmak veya daha sonra geri yüklemek istiyorsanız bu işe yarar.
  • Veri setinde saklanan kayıtlar, bunların arasında Metadata, Vectors, Suggestions ve Responses. Argilla dışında veri setinizin kayıtlarını kullanmak istiyorsanız bu işe yarar.

Argilla veri setini Hugging Face Hub'a gönder

Argilla'dan bir veri setini Hugging Face Hub'a yükleyebilirsiniz. Bu, veri setinizi toplulukla paylaşmak veya sürüm kontrolü yapmak istediğinizde kullanışlıdır. Veri setini rg.Dataset.to_hub yöntemini kullanarak Hugging Face Hub'a yükleyebilirsiniz.

import argilla as rg

client = rg.Argilla(api_url="<api_url>", api_key="<api_key>")
dataset = client.datasets(name="my_dataset")
dataset.to_hub(repo_id="<repo_id>")

Kayıtlarla veya kayıtlarsız

Yukarıdaki örnek, veri setinin Settings ayarlarını ve kayıtlarını hub'a gönderir. Sadece veri setinin yapılandırmasını göndermek istiyorsanız, with_records parametresini False olarak ayarlayabilirsiniz. Bu, yalnızca belirli bir veri seti şablonuyla ilgilendiğinizde veya veri seti ayarlarında ve/veya kayıtlarında değişiklik yapmak istediğinizde kullanışlıdır.

dataset.to_hub(repo_id="<repo_id>", with_records=False)

Hugging Face Hub'dan bir Argilla veri seti çekin

Bir veri setini Hugging Face Hub'dan Argilla'ya çekebilirsiniz. Bir veri setini ve yapılandırmasını geri yüklemek istiyorsanız bu işe yarar. Veri setini Hugging Face Hub'dan rg.Dataset.from_hub yöntemini kullanarak çekebilirsiniz.


import argilla as rg

client = rg.Argilla(api_url="<api_url>", api_key="<api_key>")
dataset = rg.Dataset.from_hub(repo_id="<repo_id>")

rg.Dataset.from_hub metodu, veri seti deposundan yapılandırmayı ve kayıtları yükler. Yalnızca kayıtları yüklemek istiyorsanız, datasets.Dataset nesnesini rg.Dataset.log metoduna iletebilirsiniz. Bu, kendi veri setinizi yapılandırmanıza ve mevcut Hub veri setlerini yeniden kullanmanıza olanak tanır.

Kayıtlarla veya kayıtlarsız

Yukarıdaki örnek, veri setinin Settings ve kayıtlarını hub'dan çekecektir. Sadece veri setinin yapılandırmasını çekmek istiyorsanız, with_records parametresini False olarak ayarlayabilirsiniz. Bu, yalnızca belirli bir veri seti şablonuyla ilgilendiğinizde veya veri seti ayarlarında ve/veya kayıtlarında değişiklik yapmak istediğinizde kullanışlıdır.

dataset = rg.Dataset.from_hub(repo_id="<repo_id>", with_records=False)

Veri setinin yapılandırmasıyla veri setinde değişiklikler yapabilirsiniz. Örneğin, veri setinin ayarlarını farklı bir görev için uyarlayabilirsiniz:

dataset.settings.questions = [rg.TextQuestion(name="answer")]

Ardından datasets paketinin load_dataset yöntemini kullanarak veri setinin kayıtlarını günlüğe alabilir ve veri setini rg.Dataset.log yöntemine iletebilirsiniz.

hf_dataset = load_dataset("<repo_id>")
dataset.log(hf_dataset)

📚 Kaynaklar

Update on GitHub