Hub documentation
Argilla
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.
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.Settingsiç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,SuggestionsveResponses. 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)