Händelser
17 mars 21 - 21 mars 10
Gå med i mötesserien för att skapa skalbara AI-lösningar baserat på verkliga användningsfall med andra utvecklare och experter.
Registrera dig nuDen här webbläsaren stöds inte längre.
Uppgradera till Microsoft Edge och dra nytta av de senaste funktionerna och säkerhetsuppdateringarna, samt teknisk support.
Azure Cosmos DB for NoSQL stöder nu en kraftfull hybridsökningsfunktion som kombinerar vektorsökning med fulltextsökning (BM25) med hjälp av funktionen Reciprocal Rank Fusion (RRF).
Anteckning
Fulltext- och hybridsökning är i tidig förhandsversion och kanske inte är tillgängligt i alla regioner just nu.
Hybridsökning utnyttjar fördelarna med både vektorbaserade och traditionella nyckelordsbaserade sökmetoder för att leverera mer relevanta och korrekta sökresultat. Hybridsökning är enkelt att göra i Azure Cosmos DB för NoSQL på grund av möjligheten att lagra både metadata och vektorer i samma dokument.
Hybridsökning i Azure Cosmos DB för NoSQL integrerar två distinkta sökmetoder:
Resultatet från vektorsökning och fulltextsökning kombineras sedan med funktionen Reciprocal Rank Fusion (RRF). RRF är en rankningsaggregeringsmetod som sammanfogar rangordningen från flera sökalgoritmer för att skapa en enda enhetlig rangordning. Detta säkerställer att de slutliga sökresultaten drar nytta av fördelarna med båda sökmetoderna och erbjuder flera fördelar.
Viktigt
För närvarande är vektorprinciper och vektorindex oföränderliga när de har skapats. Skapa en ny samling för att göra ändringar.
{
"vectorEmbeddings": [
{
"path":"/vector",
"dataType":"float32",
"distanceFunction":"cosine",
"dimensions":3
},
}
{
"defaultLanguage": "en-US",
"fullTextPaths": [
{
"path": "/text",
"language": "en-US"
}
]
}
{
"indexingMode": "consistent",
"automatic": true,
"includedPaths": [
{
"path": "/*"
}
],
"excludedPaths": [
{
"path": "/\"_etag\"/?"
},
{
"path": "/vector/*"
}
],
"fullTextIndexes": [
{
"path": "/text"
}
],
"vectorIndexes": [
{
"path": "/vector",
"type": "DiskANN"
}
]
}
Hybridsökningsfrågor kan köras genom att RRF
använda systemfunktionen i en ORDER BY RANK
sats som innehåller både en VectorDistance
funktion och FullTextScore
. Till exempel skulle en parametriserad fråga för att hitta de viktigaste k mest relevanta resultaten se ut så här:
SELECT TOP @k *
FROM c
ORDER BY RANK RRF(VectorDistance(c.vector, @queryVector), FullTextScore(c.content, [@searchTerm1, @searchTerm2, ...]))
Anta att du har ett dokument med vektorbäddningar lagrade i varje dokument i egenskapen c.vector
och textdata som finns i egenskapen c.text. För att hämta de 10 mest relevanta dokumenten med hybridsökning kan frågan skrivas som:
SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(VectorDistance(c.vector, [1,2,3]), FullTextScore(c.text, ["text", "to", "search", "goes" ,"here])
Händelser
17 mars 21 - 21 mars 10
Gå med i mötesserien för att skapa skalbara AI-lösningar baserat på verkliga användningsfall med andra utvecklare och experter.
Registrera dig nuUtbildning
Modul
Utföra vektorsökning och hämtning i Azure AI Search - Training
Utföra vektorsökning och hämtning i Azure AI Search.
Certifiering
Microsoftcertifierad: Azure Cosmos DB-utvecklarspecialitet - Certifications
Skriva effektiva frågor, skapa indexeringsprinciper, hantera och etablera resurser i SQL API och SDK med Microsoft Azure Cosmos DB.