Superlinkedは、構造化されたデータと非構造化データを組み合わせた高性能検索および推奨アプリケーションを構築するAIエンジニア向けのPythonフレームワークです。開始するにはドキュメントを確認してください。
sentence-transformers 、 open-clip 、カスタムエンコーダーからの事前訓練を受けたエンコーダーからカスタムデータとクエリの埋め込みモデルを構築します。例については、以下の機能とユースケースのノートブックを参照してください。あなたが私たちがしていることが好きなら、私たちに星を与えてください!
機能と概念の完全なリストを確認できます。
ノートブックとともに、各ユースケースがスーパーリンクされたフレームワークからどのように利益をもたらすかについて深く掘り下げます。
ここで、例の完全なリストを確認できます。
製品の説明と評価を理解するeコマース製品検索を作成しましょう。
%pip install superlinked
最初の実行は、埋め込みモデルをダウンロードするのに1分かかります。
import json
import os
from superlinked import framework as sl
class Product ( sl . Schema ):
id : sl . IdField
description : sl . String
rating : sl . Integer
product = Product ()
description_space = sl . TextSimilaritySpace (
text = product . description , model = "Alibaba-NLP/gte-large-en-v1.5"
)
rating_space = sl . NumberSpace (
number = product . rating , min_value = 1 , max_value = 5 , mode = sl . Mode . MAXIMUM
)
index = sl . Index ([ description_space , rating_space ], fields = [ product . rating ])
# Define your query and parameters to set them directly at query-time
# or let an LLM fill them in for you using the `natural_language_query` param.
# Don't forget to set your OpenAI API key to unlock this feature.
query = (
sl . Query (
index ,
weights = {
description_space : sl . Param ( "description_weight" ),
rating_space : sl . Param ( "rating_weight" ),
},
)
. find ( product )
. similar (
description_space ,
sl . Param (
"description_query" ,
description = "The text in the user's query that refers to product descriptions." ,
),
)
. limit ( sl . Param ( "limit" ))
. with_natural_query (
sl . Param ( "natural_language_query" ),
sl . OpenAIClientConfig ( api_key = os . environ [ "OPEN_AI_API_KEY" ], model = "gpt-4o" )
)
)
# Run the app in-memory (server & Apache Spark executors available too!).
source = sl . InMemorySource ( product )
executor = sl . InMemoryExecutor ( sources = [ source ], indices = [ index ])
app = executor . run ()
# Ingest data into the system - index updates and other processing happens automatically.
source . put ([
{
"id" : 1 ,
"description" : "Budget toothbrush in black color. Just what you need." ,
"rating" : 1 ,
},
{
"id" : 2 ,
"description" : "High-end toothbrush created with no compromises." ,
"rating" : 5 ,
},
{
"id" : 3 ,
"description" : "A toothbrush created for the smart 21st century man." ,
"rating" : 3 ,
},
])
result = app . query ( query , natural_query = "best toothbrushes" , limit = 1 )
# Examine the extracted parameters from your query
print ( json . dumps ( result . knn_params , indent = 2 ))
# The result is the 5-star rated product.
result . to_pandas ()単一のコマンドを使用すると、レストAPIサーバーとしてローカルまたはスーパーリンクサーバーを使用してクラウドでスーパーリンクして実行できます。データの摂取とクエリAPI、埋め込みモデルの推論、ディープベクターデータベースの統合を無料で入手してください!
単一の宣言的なPythonコードベースを使用して、評価、摂取、サービングスタックを統合します。 Superlinkedを有効にして、データスキーマ、ベクトルインデックス、およびそれらを一度にリンクする計算DAGを定義できるようにし、メモリまたはサーバー(インメモリまたはサーバー)に適切なエグゼキューターを選択できます。
大規模なランニングについて詳しく学ぶことに興味がある場合は、マネージドクラウドに早期にアクセスするためのデモを予約してください。
スーパーリンクされたベクトルは、ベクターデータベースにベクトルを保存し、次のような深い統合を備えています。
一般的にVectorデータベースの長所と短所に興味がありますか?私たちのコミュニティは、30以上の機能で44のベクトルデータベースを比較しました。
スーパーリンクされたフレームワークログには、プロセスIDやパッケージスコープなどのコンテキスト情報が含まれます。個人的に識別可能な情報(PII)はデフォルトで除外されますが、 SUPERLINKED_EXPOSE_PII環境変数をtrueに露出させることができます。
助けが必要ですか?私たちはあなたをサポートするためにここにいます:
各トピックの個別の問題/ディスカッションを作成して、フィードバックに適切に対処するのに役立ちます。貢献していただきありがとうございます!