OpenAI API'sinde anlamsal arama, kümeleme, konu modelleme ve sınıflandırma gibi doğal dil ve kod görevlerini gerçekleştirmeyi kolaylaştıran yeni bir uç nokta olan yerleştirmeleri sunuyoruz. Gömmeler, bilgisayarların bu kavramlar arasındaki ilişkileri anlamasını kolaylaştıran, sayı dizilerine dönüştürülmüş kavramların sayısal temsilleridir. Yerleştirmelerimiz, kod aramada %3 göreli iyileştirme dahil olmak üzere 20 standart karşılaştırmada en iyi modellerden daha iyi performans gösterir.
Gömmeler, doğal dil ve kodla çalışmak için kullanışlıdır, çünkü bunlar, kümeleme veya arama gibi diğer makine öğrenimi modelleri ve algoritmaları tarafından kolayca tüketilebilir ve karşılaştırılabilir.
Sayısal olarak benzer olan gömmeler de anlamsal olarak benzerdir. Örneğin, "köpek arkadaşları söylüyor" ifadesinin yerleştirme vektörü, "miyav"dan çok "hav" yerleştirme vektörüne benzer olacaktır.
Yeni uç nokta, metin ve kodu bir vektör temsiline eşlemek için GPT-3'ün soyundan gelen sinir ağı modellerini kullanır ve bunları yüksek boyutlu bir uzaya "gömür". Her boyut, girdinin bir yönünü yakalar.
Yeni /gömmeler uç nokta OpenAI API'sı birkaç satır kod ile metin ve kod yerleştirmeleri sağlar:
import openai
response = openai.Embedding.create( input="canine companions say", engine="text-similarity-davinci-001")
Her biri farklı işlevlerde iyi performans gösterecek şekilde ayarlanmış üç yerleştirme modeli ailesini piyasaya sürüyoruz: metin benzerliği, metin arama ve kod arama. Modeller, girdi olarak metin veya kod alır ve bir gömme vektörü döndürür.
Modeller | Kullanım ÇÖZÜMLER | |
---|---|---|
Metin benzerliği: Metin parçaları arasındaki anlamsal benzerliği yakalar. | metin benzerliği-{ada, babbage, curie, davinci}-001 | Kümeleme, regresyon, anomali tespiti, görselleştirme |
Metin arama: Belgeler üzerinden anlamsal bilgi alma. | metin arama-{ada, babbage, curie, davinci}-{sorgu, doc}-001 | Arama, bağlam alaka düzeyi, bilgi alma |
Kod araması: Doğal dilde bir sorgu ile ilgili kodu bulun. | kod arama-{ada, babbage}-{kod, metin}-001 | Kod arama ve alaka düzeyi |
Metin Benzerlik Modelleri
Metin benzerliği modelleri, metin parçalarının anlamsal benzerliğini yakalayan yerleştirmeler sağlar. Bu modeller, aşağıdakiler de dahil olmak üzere birçok görev için kullanışlıdır: kümeleme, veri goruntuleme, ve sınıflandırma.
Aşağıdaki etkileşimli görselleştirme, DBpedia veri kümesinden metin örneklerinin gömülmesini gösterir:
İki metin parçasının benzerliğini karşılaştırmak için nokta ürün metin yerleştirmelerinde. Sonuç, bazen “benzerlik puanı” olarak adlandırılan bir “benzerlik puanı”dır.kosinüs benzerliği”, –1 ile 1 arasında, burada daha yüksek bir sayı daha fazla benzerlik anlamına gelir. Çoğu uygulamada, gömmeler önceden hesaplanabilir ve daha sonra nokta çarpım karşılaştırmasını gerçekleştirmek son derece hızlıdır.
import openai, numpy as np resp = openai.Embedding.create( input=["feline friends go", "meow"], engine="text-similarity-davinci-001") embedding_a = resp['data'][0]['embedding']
embedding_b = resp['data'][1]['embedding'] similarity_score = np.dot(embedding_a, embedding_b)
Gömmelerin popüler bir kullanımı, bunları sınıflandırma gibi makine öğrenimi görevlerinde özellik olarak kullanmaktır. Makine öğrenimi literatüründe, doğrusal bir sınıflandırıcı kullanıldığında, bu sınıflandırma görevine "doğrusal araştırma" adı verilir. Metin benzerliği modellerimiz, doğrusal prob sınıflandırmasında en son teknolojiye sahip yeni sonuçlar elde etmektedir. GönderilenEval (Conneau ve diğerleri, 2018), gömme kalitesini değerlendirmek için yaygın olarak kullanılan bir ölçüt.
Metin Arama Modelleri
Metin arama modelleri, metin sorgusu verilen bir belge koleksiyonu arasında ilgili bir belgeyi bulmak gibi büyük ölçekli arama görevlerini etkinleştiren yerleştirmeler sağlar. Belgeler ve sorgu için gömme ayrı olarak üretilir ve ardından sorgu ile her belge arasındaki benzerliği karşılaştırmak için kosinüs benzerliği kullanılır.
Gömme tabanlı arama, metnin anlamsal anlamını yakaladığı ve tam ifadelere veya kelimelere daha az duyarlı olduğu için, klasik anahtar kelime aramasında kullanılan kelime örtüşme tekniklerinden daha iyi genelleme yapabilir. Metin arama modelinin performansını BIR (Thakur ve ark. 2021) değerlendirme paketini arayın ve önceki yöntemlerden daha iyi arama performansı elde edin. Bizim metin arama kılavuzu arama görevleri için yerleştirmeleri kullanma hakkında daha fazla ayrıntı sağlar.
Kod Arama Modelleri
Kod arama modelleri, kod arama görevleri için kod ve metin yerleştirmeleri sağlar. Bir kod blokları koleksiyonu verildiğinde, görev bir doğal dil sorgusu için ilgili kod bloğunu bulmaktır. Üzerinde kod arama modellerini değerlendiriyoruz. KodArama Ağı (Husian ve diğerleri, 2019) yerleştirmelerimizin önceki yöntemlerden önemli ölçüde daha iyi sonuçlar elde ettiği değerlendirme paketi. Kontrol et kod arama kılavuzu kod araması için yerleştirmeleri kullanmak için.
Gömme API'sinin Eylemdeki Örnekleri
JetBrains Araştırması
JetBrains Araştırmaları Astropartikül Fizik Laboratuvarı gibi verileri analiz eder Gökbilimcinin Telgrafı ve NASA'nın GCN Genelgelerigeleneksel algoritmalar tarafından ayrıştırılamayan astronomik olayları içeren raporlardır.
OpenAI'nin bu astronomik raporları yerleştirmesiyle güçlendirilen araştırmacılar, artık birden fazla veri tabanı ve yayında “yengeç pulsar patlamaları” gibi olayları arayabiliyor. Gömmeler ayrıca k-ortalama kümeleme yoluyla veri kaynağı sınıflandırmasında %99.85 doğruluk elde etti.
İnce Ayar Öğrenimi
İnce Ayar Öğrenimi gibi öğrenme için hibrit insan-AI çözümleri oluşturan bir şirkettir. uyarlanabilir öğrenme döngüleri öğrencilerin akademik standartlara ulaşmalarına yardımcı olur.
OpenAI'nin yerleştirmeleri, öğrenme hedeflerine dayalı ders kitabı içeriği bulma görevini önemli ölçüde iyileştirdi. %5'lik bir ilk 89.1 doğruluğa ulaşan OpenAI'nin metin arama-küre yerleştirme modeli, Cümle-BERT (%64.5) gibi önceki yaklaşımlardan daha iyi performans gösterdi. İnsan uzmanlar hala daha iyi olsa da, FineTune ekibi artık tüm ders kitaplarını, uzmanların harcadığı saatlerin aksine, birkaç saniye içinde etiketleyebiliyor.
Fabius
Fabius şirketlerin müşteri konuşmalarını, planlama ve önceliklendirme konusunda bilgi veren yapılandırılmış içgörülere dönüştürmesine yardımcı olur. OpenAI'nin yerleştirmeleri, şirketlerin müşteri arama dökümlerini özellik istekleriyle daha kolay bulmasına ve etiketlemesine olanak tanır.
Örneğin, müşteriler daha iyi bir self servis platformu istemek için "otomatik" veya "kullanımı kolay" gibi kelimeler kullanabilir. Daha önce Fabius, bu dökümleri self servis platform etiketiyle etiketlemeye çalışmak için bulanık anahtar kelime araması kullanıyordu. OpenAI'nin yerleştirmeleriyle, artık genel olarak 2 kat daha fazla örnek ve müşterilerin kullanabileceği net bir anahtar kelimeye sahip olmayan soyut kullanım durumlarına sahip özellikler için 6 kat – 10 kat daha fazla örnek bulabiliyorlar.
Tüm API müşterileri şunları kullanmaya başlayabilir: yerleştirme belgeleri uygulamalarında gömme kullanmak için.
.vector-diagram img { görüntü: yok;
}
.vector-diagram img:ilk-çocuk { ekran: blok;
}
var printResponse = function (btn) { // yanıt ekle var answerEl = belge .querySelector('.endpoint-code-response') .querySelector('code') var callParentEl = document .querySelector('.endpoint-code-call' ) .querySelector('pre') if (!responseEl || !callParentEl) dönerse; callParentEl.appendChild(responseEl); // butonu gizle btn.style.display= 'yok';
}; var initRotate = function () { var döndürmeler = document.querySelectorAll('.js-rotate'); if (!rotates.length) dönüşü; // her döndürme grubu için rotarys.forEach(function (r) { // ilk çocuğu her n saniyede bir sona taşıyın window.setInterval(function(){ moveToEnd(r, r.firstElementChild); }, 1500); }) ;
};
var moveToEnd = function (ebeveyn, çocuk) { parent.removeChild(alt); parent.appendChild(çocuk); // ebeveyne ekle
}; var initShowMore = function () { var showmores = document.querySelectorAll('.js-showmore'); showmores.forEach(function (e) { e.addEventListener('click', function () { var showmoreparent = this.parentElement; if (!showmoreparent) return; var more = showmoreparent.querySelector('.js-more'); if (!more) döner; more.style.display = 'blok'; this.style.display = 'none'; }); });
}; // içinde
document.addEventListener('DOMContentLoaded', function () { initRotate(); initShowMore();
});
{Runtime, Inspector, Library}'yi "https://unpkg.com/@observablehq/runtime@4.5.0/dist/runtime.js" adresinden içe aktarın;
import notebook_topk from “https://api.observablehq.com/d/20c1e51d6e663e6d.js?v=3”;
notebook_embed3d'yi "https://api.observablehq.com/d/fef0801cb0a0b322.js?v=3"den içe aktar const customWidth = function (selektör) { return (new Library).Generators.observe(function(change) { var width = change(document.querySelector(selector).clientWidth); function resize() { var w = document.querySelector(selector).clientWidth; if (w !== genişlik) change(width = w); } window.addEventListener(“ yeniden boyutlandır”, yeniden boyutlandır); dönüş işlevi() { window.removeEventListener(“yeniden boyutlandır”, yeniden boyutlandır); }; });
}; const topk_renders = { "chart": "#topk-chart",
};
new Runtime(Object.assign(new Library, {width: customWidth(“#topk-chart”)})).module(notebook_topk, name => { const selector = topk_render[name]; if (selektör) { // key var return new Inspector(document.querySelector(selector)); } else { return true; }
}); const embed3d_renders = { "chart": "#embed3d-chart", "legend": "#embed3d-legend",
};
new Runtime(Object.assign(new Library, {width: customWidth(“#embed3d-chart”)})).module(notebook_embed3d, ad => { const seçici = embed3d_render[ad]; if (seçici) { // anahtar var return new Inspector(document.querySelector(selector)); } else { return true; }
});
- '
- 100
- 11
- 3d
- 7
- elde
- karşısında
- algoritmalar
- arasında
- api
- uygulamaları
- mevcut
- kıyaslama
- Engellemek
- bina
- çağrı
- Alabilirsin
- durumlarda
- değişiklik
- çocuk
- sınıflandırma
- kod
- Toplamak
- Şirketler
- şirket
- karşılaştırıldığında
- bilgisayarlar
- içerik
- konuşmaları
- Müşteriler
- veri
- veritabanları
- Bulma
- farklı
- Boyut
- ekran
- evraklar
- kolayca
- Son nokta
- olaylar
- örnek
- uzmanlara göre
- aileleri
- HIZLI
- Özellikler(Hazırlık aşamasında)
- Özellikler
- geribesleme
- Ad
- takip etme
- işlev
- genel
- yükseklik
- yardım et
- yardımcı olur
- gizlemek
- Ne kadar
- Nasıl Yapılır
- HTTPS
- melez
- Dahil olmak üzere
- bilgi
- anlayışlar
- interaktif
- IT
- anahtar
- dil
- öğrendim
- öğrenme
- Kütüphane
- Edebiyat
- makine
- makine öğrenme
- harita
- uygun
- Mesele
- anlam
- Metrikleri
- model
- modelleri
- Morgan
- çoğu
- hareket
- Nasa
- Doğal (Madenden)
- ağ
- numara
- Diğer
- performans
- ifadeler
- Fizik
- planlama
- platform
- Popüler
- Tahminler
- sonda
- Üretilmiş
- PLATFORM
- Programlama
- sağlamak
- sağlar
- kalite
- RE
- İlişkiler
- serbest
- rapor
- Raporlar
- yanıt
- Sonuçlar
- Ara
- seçilmiş
- set
- benzer
- Çözümler
- uzay
- standartlar
- başladı
- state-of-the-art
- stil
- görevleri
- takım
- teknikleri
- İçinden
- üst
- geleneksel
- anlamak
- kullanım
- görüntüleme
- W
- W3
- Vikipedi
- içinde
- sözler
- çalışma
- Yuan