معرفی جاسازی‌های متن و کد در OpenAI API PlatoBlockchain Data Intelligence. جستجوی عمودی Ai.

معرفی جاسازی متن و کد در OpenAI API

معرفی جاسازی متن و کد در OpenAI API

ما در حال معرفی جاسازی‌ها هستیم، یک نقطه پایانی جدید در OpenAI API که انجام وظایف زبان طبیعی و کد مانند جستجوی معنایی، خوشه‌بندی، مدل‌سازی موضوع و طبقه‌بندی را آسان می‌کند. تعبیه‌ها نمایش‌های عددی مفاهیم تبدیل شده به دنباله‌های عددی هستند که درک روابط بین آن مفاهیم را برای رایانه‌ها آسان می‌کنند. جاسازی‌های ما در 3 معیار استاندارد، از جمله بهبود نسبی 20 درصدی در جستجوی کد، از مدل‌های برتر بهتر عمل می‌کنند.

اسناد را بخوانیدکاغذ بخوانید

جاسازی‌ها برای کار با زبان و کد طبیعی مفید هستند، زیرا می‌توان آن‌ها را به آسانی با سایر مدل‌ها و الگوریتم‌های یادگیری ماشینی مانند خوشه‌بندی یا جستجو مقایسه کرد.

معرفی جاسازی متن و کد در OpenAI API
معرفی جاسازی متن و کد در OpenAI API
معرفی جاسازی متن و کد در OpenAI API
معرفی جاسازی متن و کد در OpenAI API
معرفی جاسازی متن و کد در OpenAI API
معرفی جاسازی متن و کد در OpenAI API

جاسازی هایی که از نظر عددی مشابه هستند از نظر معنایی نیز مشابه هستند. به عنوان مثال، بردار جاسازی «اصحاب سگ می گویند» بیشتر شبیه بردار جاسازی «ووف» است تا «میو».

معرفی جاسازی متن و کد در OpenAI API
معرفی جاسازی متن و کد در OpenAI API

نقطه پایانی جدید از مدل‌های شبکه عصبی، که از نسل GPT-3 هستند، برای نگاشت متن و کد به یک نمایش برداری استفاده می‌کند و آنها را در فضایی با ابعاد بالا «جاسازی» می‌کند. هر بعد جنبه ای از ورودی را به تصویر می کشد.

جدید / embeddings نقطه پایانی در AI API را باز کنید متن و کد را با چند خط کد ارائه می دهد:

import openai
response = openai.Embedding.create( input="canine companions say", engine="text-similarity-davinci-001")

ما سه خانواده از مدل‌های جاسازی را منتشر می‌کنیم که هر کدام به گونه‌ای تنظیم شده‌اند که در عملکردهای مختلف عملکرد خوبی داشته باشند: شباهت متن، جستجوی متن، و جستجوی کد. مدل‌ها متن یا کد را به عنوان ورودی می‌گیرند و یک بردار جاسازی را برمی‌گردانند.

مدل موارد را استفاده کنید
شباهت متن: شباهت معنایی بین قطعات متن را نشان می دهد. متن-شباهت-{ada، babbage، curie، davinci}-001 خوشه بندی، رگرسیون، تشخیص ناهنجاری، تجسم
جستجوی متن: بازیابی اطلاعات معنایی از روی اسناد. متن-جستجو-{آدا، بابیج، کوری، داوینچی}-{پرس و جو، سند}-001 جستجو، ارتباط با زمینه، بازیابی اطلاعات
جستجوی کد: کد مربوطه را با پرس و جو به زبان طبیعی پیدا کنید. کد-جستجو-{ada، babbage}-{کد، متن}-001 جستجوی کد و ارتباط

مدل های شباهت متن

مدل‌های تشابه متن، تعبیه‌هایی را ارائه می‌کنند که شباهت معنایی قطعات متن را نشان می‌دهد. این مدل ها برای بسیاری از کارها از جمله مفید هستند خوشه بندی, تجسم داده هاو طبقه بندی.

تجسم تعاملی زیر، جاسازی نمونه‌های متنی از مجموعه داده DBpedia را نشان می‌دهد:

بکشید تا حرکت دهید، پیمایش کنید یا برای بزرگنمایی آن را به هم نزدیک کنید

جاسازی ها از text-similarity-babbage-001 مدل، اعمال شده به DBpedia مجموعه داده ما به طور تصادفی 100 نمونه از مجموعه داده را انتخاب کردیم که شامل 5 دسته بود و جاسازی ها را از طریق / embeddings نقطه پایانی دسته های مختلف به صورت 5 خوشه واضح در فضای جاسازی نشان داده می شوند. برای تجسم فضای جاسازی، ابعاد جاسازی را با استفاده از 2048 به 3 کاهش دادیم. PCA. کد نحوه تجسم فضای تعبیه شده در ابعاد سه بعدی در دسترس است اینجا کلیک نمایید.

برای مقایسه شباهت دو تکه متن، کافی است از عبارت استفاده کنید محصول نقطه روی جاسازی های متن نتیجه یک "نمره شباهت" است که گاهی اوقات به نام "شباهت کسینوسبین 1- و 1 که عدد بالاتر به معنای شباهت بیشتر است. در اکثر برنامه ها، جاسازی ها را می توان از قبل محاسبه کرد و سپس مقایسه محصول نقطه ای بسیار سریع انجام می شود.

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)

یکی از کاربردهای رایج جاسازی ها، استفاده از آنها به عنوان ویژگی در وظایف یادگیری ماشینی، مانند طبقه بندی است. در ادبیات یادگیری ماشین، هنگام استفاده از طبقه‌بندی‌کننده خطی، این وظیفه طبقه‌بندی «کاوشگر خطی» نامیده می‌شود. مدل‌های شباهت متنی ما به نتایج پیشرفته‌ای در طبقه‌بندی کاوشگر خطی دست می‌یابند SentEval (کونیو و همکاران، 2018) یک معیار رایج برای ارزیابی کیفیت جاسازی.

طبقه بندی کاوشگر خطی در 7 مجموعه داده
٪۱۰۰
text-similarity-davinci-001
٪۱۰۰
بیشتر نشان بده، اطلاعات بیشتر

مدل های جستجوی متن

مدل‌های جستجوی متن، جاسازی‌هایی را ارائه می‌کنند که کارهای جستجوی مقیاس بزرگ را امکان‌پذیر می‌سازد، مانند یافتن یک سند مرتبط در میان مجموعه‌ای از اسناد داده‌شده به یک درخواست متنی. جاسازی برای اسناد و پرس و جو به طور جداگانه تولید می شود و سپس از شباهت کسینوس برای مقایسه شباهت بین پرس و جو و هر سند استفاده می شود.

جستجوی مبتنی بر جاسازی می‌تواند بهتر از تکنیک‌های همپوشانی کلمات مورد استفاده در جستجوی کلیدواژه کلاسیک تعمیم یابد، زیرا معنای معنایی متن را به تصویر می‌کشد و به عبارات یا کلمات دقیق حساسیت کمتری دارد. ما عملکرد مدل جستجوی متن را در مورد ارزیابی می کنیم BEIR (تاکور و همکاران 2021) مجموعه ارزیابی جستجو و به دست آوردن عملکرد جستجوی بهتر نسبت به روش های قبلی. ما راهنمای جستجوی متن جزئیات بیشتری در مورد استفاده از جاسازی ها برای کارهای جستجو ارائه می دهد.

مدل های جستجوی کد

مدل‌های جستجوی کد، کد و متن را برای کارهای جستجوی کد ارائه می‌کنند. با توجه به مجموعه ای از بلوک های کد، وظیفه یافتن بلوک کد مربوطه برای یک جستار زبان طبیعی است. ما مدل های جستجوی کد را بر روی آن ارزیابی می کنیم CodeSearchNet (هوسیان و همکاران، 2019) مجموعه ارزیابی که در آن جاسازی‌های ما به نتایج قابل‌توجهی بهتر از روش‌های قبلی دست می‌یابند. بررسی کنید راهنمای جستجوی کد برای استفاده از جاسازی ها برای جستجوی کد.

دقت متوسط ​​بیش از 6 زبان برنامه نویسی
٪۱۰۰
code-search-babbage-{doc, query}-001
٪۱۰۰
بیشتر نشان بده، اطلاعات بیشتر

نمونه هایی از Embeddings API in Action

تحقیقات مغز جت

تحقیقات JetBrains آزمایشگاه فیزیک ذرات اختر تجزیه و تحلیل داده ها مانند تلگرام ستاره شناس و ناسا بخشنامه های GCN، که گزارش هایی هستند که حاوی رویدادهای نجومی هستند که توسط الگوریتم های سنتی قابل تجزیه نیستند.

با استفاده از تعبیه‌های OpenAI از این گزارش‌های نجومی، محققان اکنون می‌توانند رویدادهایی مانند انفجارهای تپ‌اختر خرچنگ را در پایگاه‌های اطلاعاتی و انتشارات متعدد جستجو کنند. تعبیه‌ها همچنین به دقت 99.85 درصد در طبقه‌بندی منبع داده از طریق خوشه‌بندی k-means دست یافتند.

FineTune Learning

FineTune Learning شرکتی است که راه حل های ترکیبی انسان-هوش مصنوعی را برای یادگیری می سازد، مانند حلقه های یادگیری تطبیقی که به دانش آموزان کمک می کند تا به استانداردهای علمی دست یابند.

تعبیه‌های OpenAI به طور قابل توجهی وظیفه یافتن محتوای کتاب درسی را بر اساس اهداف یادگیری بهبود بخشید. با دستیابی به دقت 5 درصدی، مدل تعبیه‌های جستجوی متنی OpenAI از رویکردهای قبلی مانند Sentence-BERT (89.1 درصد) بهتر عمل کرد. در حالی که کارشناسان انسانی هنوز بهتر هستند، تیم FineTune اکنون قادر است کل کتاب‌های درسی را در عرض چند ثانیه برچسب‌گذاری کند، برخلاف ساعت‌هایی که متخصصان طول کشیده‌اند.

مقایسه جاسازی‌های ما با جمله-BERT، جستجوی GPT-3 و متخصصان موضوع انسانی برای تطبیق محتوای کتاب درسی با اهداف آموخته شده. ما گزارش می دهیم دقت@k، تعداد دفعاتی که پاسخ صحیح در پیش بینی های top-k قرار دارد.

فابیوس

فابیوس به شرکت ها کمک می کند تا مکالمات مشتری را به بینش های ساختاری تبدیل کنند که برنامه ریزی و اولویت بندی را مشخص می کند. تعبیه‌های OpenAI به شرکت‌ها این امکان را می‌دهد که راحت‌تر رونوشت تماس‌های مشتری را با درخواست‌های ویژگی پیدا کرده و برچسب‌گذاری کنند.

به عنوان مثال، مشتریان ممکن است از کلماتی مانند «خودکار» یا «استفاده آسان» برای درخواست پلتفرم سلف سرویس بهتر استفاده کنند. پیش از این، فابیوس از جستجوی کلمه کلیدی فازی برای برچسب گذاری آن رونوشت ها با برچسب پلت فرم سلف سرویس استفاده می کرد. با تعبیه‌های OpenAI، آن‌ها اکنون می‌توانند به طور کلی ۲ برابر نمونه‌های بیشتر و ۶ تا ۱۰ برابر بیشتر نمونه‌های بیشتری را برای ویژگی‌هایی با موارد استفاده انتزاعی که کلیدواژه واضحی ندارند، پیدا کنند.

همه مشتریان API می توانند با آن شروع کنند اسناد تعبیه شده برای استفاده از embedding ها در برنامه های خود.

اسناد را بخوانید


تشکر و قدردانی

با تشکر از افراد زیر برای مشارکت در این نسخه:

تائو خو، کریس هالاسی، رائول پوری، الک رادفورد، جسی مایکل هان، جری توورک، کیمینگ یوان، نیکولاس تزاک، جونگ ووک کیم، یوهانس هایدکه، پراناو شیام، تاینا الوندو نکول، گیریش ساستری، گرچن کروگر، دیوید شنور، فیلیپه از جمله کنی هسو، مادلین تامپسون، تابارک خان و توکی شرباکوف.

از افراد زیر برای بازخوردشان در مورد این پست متشکریم: تام کلین پیتر، مورگان گالانت، سام آلتمن، ایلیا سوتسکور، استیو داولینگ، ریچل لیم، آرون ویجایورگیا، راجیو نایاک، پیتر ولیندر، جاستین جی وانگ.

.vector-diagram img { display: none;
}
.vector-diagram img:first-child { display: block;
}

var printResponse = تابع (btn) { // ضمیمه پاسخ var answerEl = سند .querySelector('.endpoint-code-response') .querySelector('code') var callParentEl = document .querySelector('.endpoint-code-call'. ) .querySelector('pre') if (!responseEl || !callParentEl) بازگشت; callParentEl.appendChild(responseEl); // دکمه پنهان کردن btn.style.display= 'هیچکدام';
} var initRotate = تابع () { var rotates = document.querySelectorAll('.js-rotate'); if (!rotates.length) return; // برای هر مجموعه rotates rotates.forEach(function (r) { // انتقال فرزند اول به پایان هر n ثانیه window.setInterval(function(){ moveToEnd(r, r.firstElementChild); }, 1500); }) ;
};
var moveToEnd = تابع (والد، فرزند) { parent.removeChild(child); parent.appendChild(child); // به والد اضافه شود
}; var initShowMore = تابع () { 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'); اگر (!بیشتر) بازگشت؛ more.style.display = 'block'; this.style.display = 'هیچکدام'؛ })؛ });
}; // شروع
document.addEventListener('DOMContentLoaded', function () { initRotate(); initShowMore();
})؛
وارد کردن {Runtime, Inspector, Library} از "https://unpkg.com/@observablehq/runtime@4.5.0/dist/runtime.js"؛
import notebook_topk from “https://api.observablehq.com/d/20c1e51d6e663e6d.js?v=3”;
وارد کردن notebook_embed3d از "https://api.observablehq.com/d/fef0801cb0a0b322.js?v=3" const customWidth = function (انتخابگر) { return (new Library).Generators.observe(function(change) { var width = change(document.querySelector(selector).clientWidth);function resized() {var w = document.querySelector(selector).clientWidth; if (w !== width) change(width = w)؛ } window.addEventListener(" resize", resized); return function() { window.removeEventListener("تغییر اندازه"، تغییر اندازه); }; });
}; const topk_renders = { “chart”: “#topk-chart”,
};
new Runtime(Object.assign(new Library, {width: customWidth("#topk-chart")})).module(notebook_topk, name => {const selector = topk_renders[name]; if (selector) { // key وجود دارد بازگشت بازرس جدید(document.querySelector(انتخاب کننده))؛ } 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, name => {const selector = embed3d_renders[name]; if (selector) { // key وجود دارد بازگشت بازرس جدید(document.querySelector(انتخاب کننده))؛ } else {return true; }
})؛

تمبر زمان:

بیشتر از OpenAI