Funkcja OData search.score w usłudze Wyszukiwanie AI platformy Azure

Uwaga

Wyszukiwanie AI platformy Azure jest dostępna za pośrednictwem portalu Azure, interfejsów API REST i Azure SDKs. Jest także podstawą Foundry IQ — zarządzanej warstwy wiedzy, która przekształca treści przedsiębiorstwa w bazy wiedzy wielokrotnego użytku z uwzględnieniem uprawnień dla agentów w portalu Microsoft Foundry.

Po wysłaniu zapytania do Wyszukiwanie AI platformy Azure bez parametru $orderby otrzymane wyniki będą posortowane w kolejności malejącej według wyniku istotności. Nawet jeśli używasz $orderby, wynik istotności jest domyślnie używany do rozstrzygania remisów. Jednak czasami warto użyć oceny istotności jako początkowego kryterium sortowania, a inne kryteria jako kryterium rozstrzygające. W przykładzie w tym artykule pokazano użycie funkcji do sortowania search.score .

Uwaga

Wynik istotności jest obliczany przez algorytm klasyfikacji istotności, a zakres różni się w zależności od używanego algorytmu. Aby uzyskać więcej informacji, zobacz Istotność i ocenianie w usłudze Wyszukiwanie AI platformy Azure.

Składnia

Składnia dla search.score w $orderby to search.score(). Funkcja search.score nie pobiera żadnych parametrów. W przypadku zapytań pełnotekstowych można go używać ze specyfikatorem asc kolejności sortowania lub desc podobnie jak w przypadku każdej innej klauzuli w parametrze $orderby . Może ona być wyświetlana w dowolnym miejscu na liście kryteriów sortowania.

Przykład

Sortuj hotele w kolejności malejącej według search.score i rating, a następnie w kolejności rosnącej według odległości od wskazanych współrzędnych, tak aby spośród dwóch hoteli z identycznymi wynikami trafności i ocenami najbliższy hotel był wyświetlany jako pierwszy:

    search.score() desc,rating desc,geo.distance(location, geography'POINT(-122.131577 47.678581)') asc

Limitations

Nie można używać search.score() w $orderby dla czystych zapytań wektorowych lub hybrydowych. Usługa odrzuca te żądania z błędem HTTP 400 InvalidRequestParameter . Aby poprawić żądanie, usuń je search.score() z $orderby.

Następne kroki