ホームページ > テクノロジー周辺機器 > AI > Text-Medding-3-Largeの探索:新しいOpenai埋め込みの包括的なガイド

Text-Medding-3-Largeの探索:新しいOpenai埋め込みの包括的なガイド

Jennifer Aniston
リリース: 2025-03-07 09:41:10
オリジナル
293 人が閲覧しました

Openaiの最新のテキスト埋め込みモデル、

およびtext-embedding-3-largeは、テキスト分析に革命をもたらしています。この記事では、能力、アプリケーション、および実用的な使用法について説明します text-embedding-3-small埋め込みは、人間の言語を機械読み取り可能な形式に変換します。これは、AIタスクに重要です。 Openaiの新しいモデルは、開発者とデータサイエンティストにとってこのプロセスを大幅に改善します。 それらのコア機能、アプリケーション、および効果的な実装をカバーします。

テキストの埋め込みを理解

テキストの埋め込みは、テキストの意味的な意味をキャプチャする数値表現です。 これらは、感情分析やテキスト分類など、さまざまなNLPタスクに不可欠です。 私たちのガイド「Openai APIを使用したテキスト埋め込みの紹介」は、作成の作成にOpenai APIを使用する包括的な概要を提供します。

Exploring Text-Embedding-3-Large: A Comprehensive Guide to the new OpenAI Embeddings テキスト埋め込み図イラスト埋め込みの新人は、「Openai APIを使用した埋め込みの紹介」コースを参照する必要があります。

Openaiの新しい埋め込みモデル

2024年1月25日にリリースされたこれらのモデルは、理解を向上させるための高次元空間のテキストを表しています。

速度とストレージに優先順位を付け、

は優れた精度を提供します。 パラメーターでは、から1536の寸法(ネイティブ3072から)を重大なパフォーマンス損失なしに調整することができます。

ベンチマークtext-embedding-3-smalltext-embedding-3-large dimensionstext-embedding-3-largeMIRACLおよびMTEBベンチマークの以前のモデル(

を含む)を上回ります。 以下の表は、比較をまとめたものです

width = "99"> width = "75">
モデル 寸法

8191 9月2021 0.0001 31.4 61.0
Text-embedding-3-small 0.00002 44.0 6 2.3
Text-embedding-3-large 3072 0.00013 54.9 64.6

text-embedding-3-large(3072対1536)の高次元)はパフォーマンスを向上させますが、コストを増加させます。モデルの選択は、タスク要件(多言語のニーズ、テキストの複雑さ、予算)に依存します。 text-embedding-3-large複雑で多言語のシナリオで優れていますが、text-embedding-3-smallは予算に配慮したアプリケーションに適しています。

アプリケーション

両方のモデルが多様なアプリケーションを見つけます:

アプリケーション:text-embedding-3-large

Exploring Text-Embedding-3-Large: A Comprehensive Guide to the new OpenAI Embeddings

Text-rembedding-3-large(GPT-4を使用して生成された画像)のアプリケーション

    多言語のカスタマーサポート自動化(18言語)
  • 高度なセマンティック検索エンジン
  • 間隔のコンテンツ推奨システム

アプリケーション:text-embedding-3-small

Exploring Text-Embedding-3-Large: A Comprehensive Guide to the new OpenAI Embeddings

Text-rembedding-3-Smallのアプリケーション(GPT-4を使用して生成された画像)

    費用対効果の高いセンチメント分析
  • スケーラブルなコンテンツ分類
  • 効率的な言語学習ツール

ステップバイステップガイド:類似性を文書

このガイドでは、Cord-19データセット(Kaggleで利用可能)を使用して、3つのモデルすべてを使用してドキュメントの類似性を示します。 必要なライブラリをインストールする:

pip -q install tiktoken openai
ログイン後にコピー
インポートライブラリ:

import os
import tiktoken
import numpy as np
import pandas as pd
from openai import OpenAI
from sklearn.metrics.pairwise import cosine_similarity
ログイン後にコピー
ロードとプリプロセスデータ(1000ドキュメントサンプルが簡潔に使用されています):

scientific_docs = pd.read_parquet("./data/cord19_df_sample.parquet")

def concatenate_columns_with_null_handling(df, body_text_column, abstract_column, title_column, new_col_name):
    df[new_col_name] = df[body_text_column].fillna('') + df[abstract_column].fillna('') + df[title_column].fillna('')
    return df

new_scientific_docs = concatenate_columns_with_null_handling(scientific_docs, "body_text", "abstract", "title", "concatenated_text")

def num_tokens_from_text(text: str, encoding_name="cl100k_base"):
    encoding = tiktoken.get_encoding(encoding_name)
    num_tokens = len(encoding.encode(text))
    return num_tokens

new_scientific_docs['num_tokens'] = new_scientific_docs["concatenated_text"].apply(lambda x: num_tokens_from_text(x))
smaller_tokens_docs = new_scientific_docs[new_scientific_docs['num_tokens'] <= 8191]
smaller_tokens_docs_reset = smaller_tokens_docs.reset_index(drop=True)
ログイン後にコピー
OpenAI APIキーを設定し、クライアントを作成します:

os.environ["OPENAI_API_KEY"] = "YOUR KEY"
client = OpenAI()
ログイン後にコピー
埋め込みを生成:

def get_embedding(text_to_embbed, model_ID):
    text = text_to_embbed.replace("\n", " ")
    return client.embeddings.create(input=[text_to_embbed], model=model_ID).data[0].embedding

smaller_tokens_docs_reset['text-embedding-3-small'] = smaller_tokens_docs_reset["concatenated_text"].apply(lambda x: get_embedding(x, "text-embedding-3-small"))
smaller_tokens_docs_reset['text-embedding-3-large'] = smaller_tokens_docs_reset["concatenated_text"].apply(lambda x: get_embedding(x, "text-embedding-3-large"))
smaller_tokens_docs_reset['text-embedding-ada-002'] = smaller_tokens_docs_reset["concatenated_text"].apply(lambda x: get_embedding(x, "text-embedding-ada-002"))
ログイン後にコピー
Cosineの類似性を使用して同様のドキュメントを見つけます:

def find_top_N_similar_documents(df, chosen_index, embedding_column_name, top_N=3):
    chosen_document_embedding = np.array(df.iloc[chosen_index][embedding_column_name]).reshape(1, -1)
    embedding_matrix = np.vstack(df[embedding_column_name])
    similarity_scores = cosine_similarity(chosen_document_embedding, embedding_matrix)[0]
    df_temp = df.copy()
    df_temp['similarity_to_chosen'] = similarity_scores
    similar_documents = df_temp.drop(index=chosen_index).sort_values(by='similarity_to_chosen', ascending=False)
    top_N_similar = similar_documents.head(top_N)
    return top_N_similar[["concatenated_text", 'similarity_to_chosen']]

chosen_index = 0
top_3_similar_3_small = find_top_N_similar_documents(smaller_tokens_docs_reset, chosen_index, "text-embedding-3-small")
top_3_similar_3_large = find_top_N_similar_documents(smaller_tokens_docs_reset, chosen_index, "text-embedding-3-large")
top_3_similar_ada_002 = find_top_N_similar_documents(smaller_tokens_docs_reset, chosen_index, "text-embedding-ada-002")

print("Top 3 Similar Documents with:")
print("--> text-embedding-3-small")
print(top_3_similar_3_small)
print("\n")
print("--> text-embedding-3-large")
print(top_3_similar_3_large)
print("\n")
print("--> text-embedding-ada-002")
print(top_3_similar_ada_002)
print("\n")
ログイン後にコピー

結論

Openaiの新しい埋め込みモデルは、NLPの大幅な改善を提供します。

text-embedding-3-largeの選択は、特定のアプリケーションのニーズ、精度とコストのバランスをとることに依存します。 このガイドは、さまざまなプロジェクトでこれらの強力なモデルを効果的に利用するためのツールを提供します。 Openai APIと微調整のさらなるリソースが利用可能です。

以上がText-Medding-3-Largeの探索:新しいOpenai埋め込みの包括的なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート