Ragsearchunityでは、Unityエンジン内でセマンティック検索を実装できます。
これは、利用可能な最高のオープンソース検索モデルに力を与えた検索拡張生成(RAG)システムです。
Ragsearchunityは、素晴らしいシャープ変換者とUsearchライブラリの上に構築されています。
Unityでテスト:2021 LTS、2022 LTS、2023
Window > Package Manager+ボタンをクリックして、 Add package from git URLを選択しますhttps://github.com/undreamai/RAGSearchUnity.gitを使用して、 AddをクリックしますRagsearchunityは、検索された生成(RAG)システムを使用して、超高速類似性検索機能を実装しています。
これは次のように機能します。
データを提供するデータの構築(フレーズ、段落、ドキュメント)を提供してデータに追加します
各入力は文(オプション)に分割され、深い学習モデルの埋め込みにエンコードされます。
検索すると、クエリテキスト入力を検索できます。
入力は再びエンコードされ、データ内の最も類似したテキスト入力または文が取得されます。
検索を使用するには:
Add Componentをクリックし、 Embeddingスクリプトを選択します)。スクリプトでは、次のように使用できますか?:
using RAGSearchUnity ;
public class MyScript : MonoBehaviour
{
public Embedding embedding ;
SearchEngine search ;
void Game ( ) {
.. .
string [ ] inputs = new string [ ] {
" Hi! I'm a search system. " , " the weather is nice. I like it. " , " I'm a RAG system "
} ;
// build the embedding
EmbeddingModel model = embedding . GetModel ( ) ;
search = new SearchEngine ( model ) ;
foreach ( string input in inputs ) search . Add ( input ) ;
// get the 2 most similar phrases
string [ ] similar = search . Search ( " hello! " , 2 ) ;
// or get the 2 most similar sentences
string [ ] similarSentences = search . SearchSentences ( " hello! " , 2 ) ;
.. .
}
}埋め込みと一緒にデータを保存できます。
search . Save ( " Embeddings.zip " ) ;ディスクからロードします。
SearchEngine search = SearchEngine . Load ( model , " Embeddings.zip " ) ;また、分離者を使用するか、分割しないように指定することもできます。
// use ".", "!", "?" as delimiters
search = new SearchEngine ( model , " .!? " ) ;
// don't split sentences
search = new SearchEngine ( model , null ) ;複数の独立した検索を管理する場合、Ragsearchunityは、使いやすいためにMultiSearchEngineクラスを提供します。
MultiSearchEngine multisearch = new MultiSearchEngine ( model ) ;
// add a text for a specific search
multisearch . Add ( " hi I'm Luke " , " search1 " ) ;
multisearch . Add ( " Searching, searching, searching... " , " search1 " ) ;
multisearch . Add ( " hi I'm Jane " , " search2 " ) ;
// search for similar text in all searches
string [ ] similar = multisearch . Search ( " hello! " , 2 ) ;
// search for similar texts within a specific search
string [ ] similar = multisearch . Search ( " hi there! " , 1 , " search1 " ) ;それだけです !
HamleTearchサンプルには、ハムレットプレイの例の検索システムが含まれていますか?サンプルをインストールするには:
Window > Package ManagerRAGSearchUnityパッケージを選択します。 Samplesタブから、[サンプルの横にあるImportをクリックします。サンプルは、フォルダー内に含まれるシーン。 Scene.unityシーンで実行できます。
シーンで、 Embedding GameObjectを選択し、モデルの1つをダウンロードします( Download model )。
シーンを保存し、走って楽しんでください!
RagsearchunityのライセンスはMIT(License.MD)であり、MITおよびApacheライセンス(サードパーティの通知)を使用してサードパーティのソフトウェアとモデルを使用します。