Nhúng là biểu diễn số của các khái niệm được chuyển đổi thành chuỗi số, giúp máy tính dễ dàng hiểu được mối quan hệ giữa các khái niệm đó. Nhúng của chúng tôi vượt trội hơn các mô hình hàng đầu trong 3 chuẩn mực, bao gồm cải thiện tương đối 20% trong tìm kiếm mã.
Nhúng rất hữu ích khi làm việc với ngôn ngữ tự nhiên và mã vì chúng có thể dễ dàng được sử dụng và so sánh bởi các mô hình và thuật toán học máy khác như phân cụ hoặc tìm kiếm.
Các nhúng có số lượng tương tự cũng tương tự về mặt ngữ nghĩa. Ví dụ, vectơ nhúng của “canine companions say” sẽ giống với vectơ nhúng của “woof” hơn là “meow”.
.png)
Điểm cuối mới sử dụng các mô hình mạng nơ-ron, là hậu duệ của GPT-3, để ánh xạ văn bản và mã thành biểu diễn vectơ—“nhúng” chúng vào không gian nhiều chiều. Mỗi chiều nắm bắt một khía cạnh nào đó của đầu vào.
/embeddings mới (mở trong cửa sổ mới) điểm cuối trong API OpenAI (mở trong cửa sổ mới) cung cấp nhúng văn bản và mã với một vài dòng mã:
import openai
response = openai.Embedding.create( input="canine companions say", engine="text-similarity-davinci-001")
Chúng tôi đang phát hành ba họ mô hình nhúng, mỗi họ được điều chỉnh để thực hiện tốt các chức năng khác nhau: tính tương tự văn bản, tìm kiếm văn bản và tìm kiếm mã. Các mô hình lấy văn bản hoặc mã làm đầu vào và trả về một vectơ nhúng.
Mô hình | Các trường hợp sử dụng | |
Nắm bắt sự tương đồng về mặt ngữ nghĩa giữa các đoạn văn bản. | văn bản-tương tự-{ada, babbage, curie, davinci}-001 | Phân cụm, hồi quy, phát hiện dị thường, trực quan hóa |
Truy xuất thông tin ngữ nghĩa trên tài liệu. | tìm kiếm văn bản-{ada, babbage, curie, davinci}-{truy vấn, doc}-001 | Tìm kiếm, liên quan đến ngữ cảnh, truy xuất thông tin |
Tìm mã có liên quan bằng truy vấn bằng ngôn ngữ tự nhiên. | tìm kiếm mã-{ada, babbage}-{mã, văn bản}-001 | Tìm kiếm mã và sự liên quan |
Mô hình tương tự văn bản
Các mô hình tương tự văn bản cung cấp các nhúng nắm bắt được sự tương tự về mặt ngữ nghĩa của các đoạn văn bản. Các mô hình này hữu ích cho nhiều tác vụ bao gồm cả phân cụm (mở trong cửa sổ mới), trực quan hóa dữ liệu (mở trong cửa sổ mới)và phân loại(mở trong cửa sổ mới).
Nhúng từ text-similarity-babbage-001
mô hình, áp dụng cho tập dữ liệu DBpedia . Chúng tôi đã chọn ngẫu nhiên 100 mẫu từ tập dữ liệu bao gồm 5 danh mục và tính toán nhúng thông qua điểm cuối /embeddings . Các danh mục khác nhau hiển thị dưới dạng 5 cụm rõ ràng trong không gian nhúng. Để trực quan hóa không gian nhúng, chúng tôi đã giảm chiều nhúng từ 2048 xuống còn 3 bằng PCA . Mã về cách trực quan hóa không gian nhúng trong chiều 3D có sẵn tại đây .
Để so sánh mức độ tương đồng của hai đoạn văn bản, bạn chỉ cần sử dụng tích vô hướng (mở trong cửa sổ mới) trên các nhúng văn bản. Kết quả là một “điểm tương đồng”, đôi khi được gọi là “ điểm tương đồng cosin (mở trong cửa sổ mới),” nằm giữa –1 và 1, trong đó số cao hơn có nghĩa là độ tương đồng cao hơn. Trong hầu hết các ứng dụng, nhúng có thể được tính toán trước, sau đó so sánh tích vô hướng được thực hiện cực kỳ nhanh chóng.
import openai, numpy as np
resp = openai.Embedding.create(
input=["feline friends say", "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)
Một cách sử dụng phổ biến của nhúng là sử dụng chúng như các tính năng trong các tác vụ học máy, chẳng hạn như phân loại. Trong tài liệu học máy, khi sử dụng trình phân loại tuyến tính, tác vụ phân loại này được gọi là "thăm dò tuyến tính". Các mô hình tương tự văn bản của chúng tôi đạt được kết quả tiên tiến mới về phân loại thăm dò tuyến tính trong SentEval (mở trong cửa sổ mới) ( Conneau và cộng sự, 2018(mở trong cửa sổ mới)), một chuẩn mực thường được sử dụng để đánh giá chất lượng nhúng.
- Trong tay tài khoản ChatGPT 4 với nhiều ưu đãi đặc biệt hấp dẫn trong ngày hôm nay
Mô hình tìm kiếm văn bản
Các mô hình tìm kiếm văn bản cung cấp các nhúng cho phép thực hiện các tác vụ tìm kiếm quy mô lớn, như tìm một tài liệu có liên quan trong một tập hợp các tài liệu được đưa ra một truy vấn văn bản. Nhúng cho các tài liệu và truy vấn được tạo riêng biệt, sau đó độ tương tự cosin được sử dụng để so sánh độ tương tự giữa truy vấn và từng tài liệu.
Tìm kiếm dựa trên nhúng có thể khái quát hóa tốt hơn các kỹ thuật chồng chéo từ được sử dụng trong tìm kiếm từ khóa cổ điển, vì nó nắm bắt được ý nghĩa ngữ nghĩa của văn bản và ít nhạy cảm hơn với các cụm từ hoặc từ chính xác. Chúng tôi đánh giá hiệu suất của mô hình tìm kiếm văn bản trên BEIR (mở trong cửa sổ mới) ( Thakur và cộng sự 2021(mở trong cửa sổ mới)) bộ đánh giá tìm kiếm và có được hiệu suất tìm kiếm tốt hơn so với các phương pháp trước đây. Hướng dẫn tìm kiếm văn bản của chúng tôi (mở trong cửa sổ mới) cung cấp thêm thông tin chi tiết về việc sử dụng nhúng cho tác vụ tìm kiếm.
Mô hình tìm kiếm mã
Các mô hình tìm kiếm mã cung cấp nhúng mã và văn bản cho các tác vụ tìm kiếm mã. Với một tập hợp các khối mã, nhiệm vụ là tìm khối mã có liên quan cho truy vấn ngôn ngữ tự nhiên. Chúng tôi đánh giá các mô hình tìm kiếm mã trên CodeSearchNet (mở trong cửa sổ mới) ( Husain và cộng sự, 2019 (mở trong cửa sổ mới)) bộ đánh giá nơi nhúng của chúng tôi đạt được kết quả tốt hơn đáng kể so với các phương pháp trước đây. Kiểm tra hướng dẫn tìm kiếm mã(mở trong cửa sổ mới) sử dụng nhúng để tìm kiếm mã.
Ví dụ về API nhúng trong hành động
Nghiên cứu JetBrains
Phòng thí nghiệm Vật lý hạt thiên văn của JetBrains Research (mở trong cửa sổ mới) phân tích dữ liệu như The Astronomer's Telegram (mở trong cửa sổ mới) và Thông tư GCN của NASA (mở trong cửa sổ mới), là các báo cáo có chứa các sự kiện thiên văn mà các thuật toán truyền thống không thể phân tích được.
Được hỗ trợ bởi các nhúng của OpenAI về các báo cáo thiên văn này, các nhà nghiên cứu hiện có thể tìm kiếm các sự kiện như "crab pulsar bursts" trên nhiều cơ sở dữ liệu và ấn phẩm. Các nhúng cũng đạt được độ chính xác 99,85% về phân loại nguồn dữ liệu thông qua phân cụm k-means.
Học tập tinh chỉnh
Học tập tinh chỉnh (mở trong cửa sổ mới) là một công ty xây dựng các giải pháp AI lai giữa con người và học tập, như các vòng lặp học tập thích ứng (mở trong cửa sổ mới) giúp học sinh đạt được tiêu chuẩn học tập.
Các nhúng của OpenAI đã cải thiện đáng kể nhiệm vụ tìm kiếm nội dung sách giáo khoa dựa trên mục tiêu học tập. Đạt được độ chính xác top-5 là 89,1%, mô hình nhúng text-search-curie của OpenAI đã vượt trội hơn các phương pháp tiếp cận trước đây như Sentence-BERT (64,5%). Mặc dù các chuyên gia con người vẫn giỏi hơn, nhưng nhóm FineTune hiện có thể dán nhãn toàn bộ sách giáo khoa chỉ trong vài giây, trái ngược với nhiều giờ mà các chuyên gia phải mất.
Fabius
Fabius (mở trong cửa sổ mới) giúp các công ty chuyển đổi các cuộc trò chuyện của khách hàng thành thông tin chi tiết có cấu trúc giúp lập kế hoạch và ưu tiên. Các nhúng của OpenAI cho phép các công ty dễ dàng tìm và gắn thẻ bản ghi cuộc gọi của khách hàng với các yêu cầu về tính năng hơn.
Ví dụ, khách hàng có thể sử dụng các từ như "tự động" hoặc "dễ sử dụng" để yêu cầu một nền tảng tự phục vụ tốt hơn. Trước đây, Fabius đã sử dụng tìm kiếm từ khóa mờ để cố gắng gắn nhãn các bản ghi đó với nhãn nền tảng tự phục vụ. Với các nhúng của OpenAI, giờ đây họ có thể tìm thấy nhiều hơn 2x ví dụ nói chung và nhiều hơn 6x–10x ví dụ cho các tính năng có trường hợp sử dụng trừu tượng không có từ khóa rõ ràng mà khách hàng có thể sử dụng.
Tất cả khách hàng API có thể bắt đầu với tài liệu nhúng (mở trong cửa sổ mới) để sử dụng nhúng trong ứng dụng của họ.
Xem thêm: mua tài khoản ChatGPT Plus chính hãng giá rẻ!