Tutvustame manustamist, OpenAI API uut lõpp-punkti, mis muudab loomuliku keele ja koodiülesannete (nt semantiline otsing, rühmitamine, teemade modelleerimine ja klassifitseerimine) täitmise lihtsaks. Manustused on mõistete arvulised esitused, mis on teisendatud numbrijadadeks, mis hõlbustavad arvutitel nende mõistete vaheliste seoste mõistmist. Meie manused ületavad tippmudeleid kolme standardse võrdlusaluse osas, sealhulgas 3% suhteline paranemine koodiotsingus.
Manustused on kasulikud loomuliku keele ja koodiga töötamiseks, kuna neid saab hõlpsasti tarbida ja võrrelda teiste masinõppemudelite ja algoritmidega, nagu rühmitamine või otsing.
Manustused, mis on arvuliselt sarnased, on ka semantiliselt sarnased. Näiteks on sõna "koerte kaaslased ütlevad" manustamisvektor sarnasem sõna "woof" manustamisvektoriga kui "mjäu".
Uus lõpp-punkt kasutab närvivõrgu mudeleid, mis on GPT-3 järeltulijad, et vastendada tekst ja kood vektoresitluseks - "kinnitada" need suuremõõtmelisse ruumi. Iga mõõde kajastab sisendi mõnda aspekti.
Uus /manused lõpp-punktis OpenAI API pakub teksti ja koodi manuseid koos mõne koodireaga:
import openai
response = openai.Embedding.create( input="canine companions say", engine="text-similarity-davinci-001")
Anname välja kolm manustamismudelite perekonda, millest igaüks on häälestatud toimima hästi erinevate funktsioonide puhul: teksti sarnasus, tekstiotsing ja koodiotsing. Mudelid võtavad sisendiks teksti või koodi ja tagastavad manustusvektori.
Mudelid | Kasutage kohtuasju | |
---|---|---|
Teksti sarnasus: tabab tekstiosade semantilise sarnasuse. | text-sarnasus-{ada, babbage, curie, davinci}-001 | Klasterdamine, regressioon, anomaaliate tuvastamine, visualiseerimine |
Tekstiotsing: Semantilise teabe otsimine dokumentidest. | text-search-{ada, babbage, curie, davinci}-{query, doc}-001 | Otsing, konteksti asjakohasus, teabe hankimine |
Koodiotsing: otsige asjakohast koodi päringuga loomulikus keeles. | koodiotsing-{ada, babbage}-{kood, tekst}-001 | Koodiotsing ja asjakohasus |
Teksti sarnasuse mudelid
Teksti sarnasuse mudelid pakuvad manuseid, mis fikseerivad tekstiosade semantilise sarnasuse. Need mudelid on kasulikud paljude ülesannete, sealhulgas Klastrite loomine, andmete visualiseerimineja klassifikatsioon.
Järgmine interaktiivne visualiseerimine näitab DBpedia andmestiku tekstinäidiste manuseid:
Kahe tekstiosa sarnasuse võrdlemiseks kasutage lihtsalt punktitoode teksti manustamisel. Tulemuseks on "sarnasusskoor", mida mõnikord nimetatakse "koosinuse sarnasus”, vahemikus –1 kuni 1, kus suurem arv tähendab suuremat sarnasust. Enamikus rakendustes saab manuseid eelnevalt välja arvutada ja seejärel on punkttoodete võrdlus väga kiire.
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)
Üks populaarne manustamisviis on kasutada neid masinõppeülesannete funktsioonidena, näiteks klassifitseerimisel. Masinõppekirjanduses nimetatakse seda klassifitseerimisülesannet lineaarse klassifikaatori kasutamisel "lineaarseks sondiks". Meie tekstisarnasuse mudelid saavutavad uusi tipptasemel tulemusi lineaarse sondi klassifitseerimisel SentEval (Conneau jt, 2018), sageli kasutatav võrdlusalus manustamise kvaliteedi hindamiseks.
Tekstiotsingu mudelid
Tekstiotsingu mudelid pakuvad manuseid, mis võimaldavad suuremahulisi otsinguülesandeid, nagu tekstipäringuga dokumentide hulgast asjakohase dokumendi leidmine. Dokumentide ja päringu manustamine luuakse eraldi ning päringu ja iga dokumendi sarnasuse võrdlemiseks kasutatakse koosinussarnasust.
Manuspõhine otsing võib üldistada paremini kui klassikalises märksõnaotsingus kasutatavad sõnade kattumise tehnikad, kuna see tabab teksti semantilist tähendust ja on vähem tundlik täpsete fraaside või sõnade suhtes. Hindame tekstiotsingu mudeli toimivust BEIR (Thakur et al. 2021. aasta) otsige hindamiskomplekti ja saavutage varasematest meetoditest paremad otsingutulemused. Meie tekstiotsingu juhend pakub rohkem üksikasju otsinguülesannete manustamise kasutamise kohta.
Koodiotsingu mudelid
Koodiotsingu mudelid pakuvad koodiotsingu ülesannete jaoks koodi ja teksti manustamist. Arvestades koodiplokkide kogumit, on ülesandeks leida loomuliku keele päringu jaoks asjakohane koodiplokk. Hindame koodiotsingu mudeleid CodeSearchNet (Husian jt, 2019) hindamiskomplekt, kus meie manused saavutavad oluliselt paremaid tulemusi kui varasemad meetodid. Tutvuge koodiotsingu juhend kasutada koodiotsinguks manuseid.
Näited Embeddings API kohta töös
JetBrainsi uurimine
JetBrains Research's Astroparticle Physics Lab analüüsib andmeid nagu Astronoomi telegramm ja NASA omad GCN ringkirjad, mis on aruanded, mis sisaldavad astronoomilisi sündmusi, mida traditsioonilised algoritmid ei saa sõeluda.
Nende astronoomiliste aruannete OpenAI manustatud toel saavad teadlased nüüd otsida selliseid sündmusi nagu "krabipulsari pursked" mitmest andmebaasist ja väljaandest. Manustused saavutasid ka 99.85% täpsuse andmeallika klassifitseerimisel k-keskmiste klastrite abil.
FineTune Learning
FineTune Learning on ettevõte, mis loob õppimiseks hübriidseid inim-AI lahendusi, nagu adaptiivsed õppetsüklid mis aitavad õpilastel saavutada akadeemilisi standardeid.
OpenAI manustused parandasid oluliselt õpikute sisu leidmise ülesannet õpieesmärkide alusel. OpenAI tekstiotsingu-curie manustamismudel saavutas viie parima täpsusega 5%, ületas varasemaid lähenemisviise, nagu lause-BERT (89.1%). Kuigi inimeksperdid on endiselt paremad, suudab FineTune'i meeskond nüüd tervetele õpikutele sildistada mõne sekundiga, erinevalt ekspertidel kulunud tundidest.
Fabius
Fabius aitab ettevõtetel muuta kliendivestlused struktureeritud arusaamadeks, mis annavad teavet planeerimise ja prioriteetide seadmise kohta. OpenAI manustused võimaldavad ettevõtetel hõlpsamini leida ja märgistada klientide kõnede ärakirju funktsioonitaotlustega.
Näiteks võivad kliendid parema iseteenindusplatvormi taotlemiseks kasutada sõnu nagu "automaatne" või "lihtne kasutada". Varem kasutas Fabius ähmast märksõnaotsingut, et püüda neid ärakirju iseteenindusplatvormi sildiga märgistada. OpenAI manustega saavad nad nüüd leida 2x rohkem näiteid üldiselt ja 6x–10x rohkem näiteid abstraktsete kasutusjuhtudega funktsioonide kohta, millel puudub selge märksõna, mida kliendid võiksid kasutada.
Kõik API kliendid saavad rakendusega alustada manustamise dokumentatsioon manustamist oma rakendustes.
.vector-diagram img { kuva: puudub;
}
.vector-diagram img:first-child { kuva: plokk;
}
var printResponse = function (btn) { // lisa vastuse var responseEl = document .querySelector('.endpoint-code-response') .querySelector('code') var callParentEl = document .querySelector('.endpoint-code-call' ) .querySelector('pre') if (!responseEl || !callParentEl) return; callParentEl.appendChild(responseEl); // peida nupp btn.style.display= 'puudub';
}; var initRotate = function () { var pöörleb = document.querySelectorAll('.js-rotate'); if (!pöörleb.pikkus) tagasi; // iga pööramiste komplekti rotates.forEach(function (r) { // liigub esimest alamrühma iga n sekundi järel window.setInterval(function(){ moveToEnd(r, r.firstElementChild); }, 1500; }) ;
};
var moveToEnd = funktsioon (vanem, laps) { vanem.eemaldaLaps(laps); vanem.appendLaps(laps); // lisa vanemale
}; 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) return; more.style.display = 'blokeeri'; this.style.display = 'puudub'; }); });
}; // selles
document.addEventListener('DOMContentLoaded', function () { initRotate(); initShowMore();
});
importige {Runtime, Inspector, Library} saidilt „https://unpkg.com/@observablehq/runtime@4.5.0/dist/runtime.js”;
import notebook_topk from “https://api.observablehq.com/d/20c1e51d6e663e6d.js?v=3”;
import notebook_embed3d saidilt “https://api.observablehq.com/d/fef0801cb0a0b322.js?v=3” const customWidth = function (selector) { return (new Library).Generators.observe(function(change) { var width = change(document.querySelector(selector).clientWidth); function resized() { var w = document.querySelector(selector).clientWidth; if (w !== laius) change(width = w); } window.addEventListener(“ suurust muutke", suurust muudeti); return function() { window.removeEventListener("suuruse muutmine", suurust muudetud); }; });
}; const topk_renders = { "diagramm": "#topk-diagramm",
};
new Runtime(Object.assign(new Library, {width: customWidth(“#topk-chart”)})).module(notebook_topk, name => { const selector = topk_renders[name]; if (selector) { // klahv eksisteerib return new Inspector(document.querySelector(selector)); } else { return true; }
}); const embed3d_renders = { "diagramm": "#embed3d-diagramm", "legend": "#embed3d-legend",
};
new Runtime(Object.assign(new Library, {width: customWidth(“#embed3d-chart”)})).module(notebook_embed3d, name => { const selector = embed3d_renders[name]; if (selector) { // klahv eksisteerib return new Inspector(document.querySelector(selector)); } else { return true; }
});
- '
- 100
- 11
- 3d
- 7
- saavutada
- üle
- algoritme
- vahel
- API
- rakendused
- saadaval
- võrrelda
- Blokeerima
- Ehitus
- helistama
- Saab
- juhtudel
- muutma
- laps
- klassifikatsioon
- kood
- kogumine
- Ettevõtted
- ettevõte
- võrreldes
- arvutid
- sisu
- vestlused
- Kliendid
- andmed
- andmebaasid
- Detection
- erinev
- mõõde
- Ekraan
- dokumendid
- kergesti
- Lõpp-punkt
- sündmused
- näide
- ekspertide
- peredele
- KIIRE
- tunnusjoon
- FUNKTSIOONID
- tagasiside
- esimene
- Järel
- funktsioon
- Üldine
- kõrgus
- aitama
- aitab
- varjama
- Kuidas
- Kuidas
- HTTPS
- hübriid
- Kaasa arvatud
- info
- teadmisi
- interaktiivne
- IT
- Võti
- keel
- õppinud
- õppimine
- Raamatukogu
- kirjandus
- masin
- masinõpe
- kaart
- sobitamine
- küsimus
- tähendus
- Meetrika
- mudel
- mudelid
- Morgan
- kõige
- liikuma
- Nasa
- Natural
- võrk
- number
- Muu
- jõudlus
- fraasid
- Füüsika
- planeerimine
- inimesele
- populaarne
- Ennustused
- sond
- Toodetud
- Toode
- Programming
- anda
- annab
- kvaliteet
- RE
- Suhted
- vabastama
- aru
- Aruanded
- vastus
- Tulemused
- Otsing
- väljavalitud
- komplekt
- sarnane
- Lahendused
- Ruum
- standardite
- alustatud
- modernne
- stiil
- ülesanded
- meeskond
- tehnikat
- Läbi
- ülemine
- traditsiooniline
- mõistma
- kasutama
- visualiseerimine
- W
- W3
- Wikipedia
- jooksul
- sõnad
- töö
- jüaan