Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerking
Azure AI Zoeken is beschikbaar via de Azure-portal, REST API's en Azure-SDK's. Het vormt ook een basis voor Foundry IQ, de beheerde kennislaag die bedrijfsinhoud transformeert in herbruikbare, machtigingsbewuste knowledge bases voor agents in de Microsoft Foundry-portal.
Belangrijk
Functies, mogelijkheden of eigenschappen die zijn gemarkeerd (preview) vallen niet onder een service level agreement, worden niet aanbevolen voor productieworkloads en kunnen worden gewijzigd of beperkt voordat ze algemeen beschikbaar worden. De Azure AI Zoeken preview-voorwaarden zijn van toepassing op alle preview-functionaliteit, ongeacht of deze zelfstandig is of deel uitmaakt van een algemeen beschikbare functie.
In dit artikel leert u hoe u Microsoft Foundry-modelcatalogusmodellen kunt gebruiken voor geïntegreerde vectorisatie (preview) tijdens het indexeren en uitvoeren van query's in Azure AI Zoeken.
Voor de werkstroom moet u een model implementeren vanuit de catalogus, waaronder het insluiten van modellen van Microsoft en andere bedrijven. Het implementeren van een model is factureerbaar volgens de factureringsstructuur van elke provider.
Nadat het model is geïmplementeerd, kunt u het gebruiken met de AML-vaardigheid voor geïntegreerde vectorisatie tijdens het indexeren of met de Microsoft Foundry-modelcatalogusvectorizer voor query's.
Tip
Gebruik de wizard Gegevens importeren om een vaardighedenset te genereren die een AML-vaardigheid bevat voor geïmplementeerde insluitingsmodellen in Foundry. De AML-vaardigheidsdefinitie voor invoer, uitvoer en toewijzingen wordt gegenereerd door de wizard, waarmee u een model eenvoudig kunt testen voordat u code schrijft.
Voorwaarden
Een Azure AI Zoeken service in elke regio en in elke prijscategorie.
Ondersteunde insluitingsmodellen
Ondersteunde insluitingsmodellen uit de modelcatalogus variëren per gebruiksmethode:
Zie de AML skill and Microsoft Foundry model catalog vectorizer verwijzingen voor de nieuwste lijst met modellen die programmatisch worden ondersteund.
Zie Quickstart: Vector search in the Azure portal and Quickstart: Multimodal search in the Azure portal voor de meest recente lijst met modellen die worden ondersteund in de Azure portal.
Een insluitmodel implementeren vanuit de modelcatalogus
Volg deze portalinstructies voor het implementeren van een ondersteund model in uw project.
Noteer de doel-URI, sleutel en modelnaam. U hebt deze waarden nodig voor de vectorizerdefinitie in een zoekindex en voor de vaardighedenset die de modeleindpunten aanroept tijdens het indexeren.
Als u liever tokenverificatie gebruikt voor verificatie op basis van sleutels, hoeft u alleen de modelnaam te kopiëren. Noteer echter de regio waarnaar het model is geïmplementeerd.
Configureer een zoekindex en indexeerfunctie om het geïmplementeerde model te gebruiken.
Als u het model tijdens het indexeren wilt gebruiken, raadpleegt u Hoe u geïntegreerde vectorisatie gebruikt. Zorg ervoor dat u de AML-vaardigheid gebruikt, niet de vaardigheid Azure OpenAI Embedding. In de volgende sectie wordt de configuratie van de vaardigheid beschreven.
Zie Een vectorizer configureren om het model te gebruiken als vectorizer tijdens het uitvoeren van query's. Zorg ervoor dat u de Microsoft Foundry model catalog vectorizer gebruikt voor deze stap.
Een insluitmodel implementeren als een serverloze implementatie
De AML-vaardigheid en de vectorisator van de Foundry-modelcatalogus van Microsoft accepteren alleen serverloze implementaties van Cohere-embeddingmodellen. Serverloze implementaties via de Microsoft Foundry-portal worden niet ondersteund voor deze modellen. Gebruik daarom de Azure CLI om de implementatie te maken. Zie Modellen implementeren als serverloze API-implementaties voor meer informatie.
Een serverloze cohere-implementatie maken:
Installeer de Azure CLI met de extensie
ml.az extension add -n mlMeld u aan bij Azure en stel de standaardinstellingen in.
az login az account set --subscription <subscription-id> az configure --defaults workspace=<project-name> group=<resource-group>Maak een
subscribe.yamlbestand om u te abonneren op het Marketplace-abonnement voor het model.name: cohere-embed-v3-english-subscription model_id: azureml://registries/azureml-cohere/models/Cohere-embed-v3-englishVoor andere ondersteunde modellen vervangt u de model-id door een van de volgende waarden.
Model Model-ID Cohere-embed-v3-english azureml://registries/azureml-cohere/models/Cohere-embed-v3-englishCohere-embed-v3-multilingual azureml://registries/azureml-cohere/models/Cohere-embed-v3-multilingualCohere-embed-v4 azureml://registries/azureml-cohere/models/Cohere-embed-v4Voer de volgende opdracht uit om het abonnement te maken.
az ml marketplace-subscription create --file subscribe.yamlMaak een
endpoint.yamlbestand om het serverloze eindpunt te maken.name: cohere-embed-v3-english-endpoint model_id: azureml://registries/azureml-cohere/models/Cohere-embed-v3-englishVoer de volgende opdracht uit om het eindpunt te maken.
az ml serverless-endpoint create --file endpoint.yamlVoor sleutelgebaseerde authenticatie haalt u de eindpunt-URI en sleutel op voor gebruik in de skill of vectorizer.
az ml serverless-endpoint show --name cohere-embed-v3-english-endpoint --query "scoring_uri" az ml serverless-endpoint get-credentials --name cohere-embed-v3-english-endpoint
Voorbeeld van nettolading van AML-vaardigheden
Wanneer u insluitmodellen uit de modelcatalogus implementeert, maakt u er verbinding mee met behulp van de AML-vaardigheid in Azure AI Zoeken voor het indexeren van workloads.
In deze sectie worden de AML-vaardigheidsdefinities en indextoewijzingen beschreven. Het bevat een voorbeeld van een gegevenslading die al is geconfigureerd voor gebruik met het overeenkomstige geïmplementeerde API-eindpunt. Zie Vaardigheidscontext en invoeraantekeningstaal voor meer informatie.
Cohere embeddingmodellen
Deze AML-vaardigheidspayload werkt met de volgende embeddingmodellen:
- Cohere-embed-v3-english
- Cohere-embed-v3-multilingual
- Cohere-embed-v4
Hierbij wordt ervan uitgegaan dat u uw inhoud opsplitst met behulp van de vaardigheid Tekst splitsen en dat uw tekst die moet worden gevectoriseerd, zich in het /document/pages/* pad bevindt. Als uw tekst afkomstig is van een ander pad, moet u alle verwijzingen naar het /document/pages/* pad dienovereenkomstig bijwerken.
U moet het /v1/embed pad toevoegen aan het einde van de URL die u hebt gekopieerd uit uw Foundry-implementatie. U kunt ook de waarden voor de input_type, truncateen embedding_types invoer wijzigen zodat deze beter bij uw gebruiksscenario past. Raadpleeg de naslaginformatie over de insluit-API voor Cohere voor meer informatie over de beschikbare opties.
De URI en sleutel worden gegenereerd wanneer u het model vanuit de catalogus implementeert. Zie Cohere Embed-modellen implementeren met Foundry voor meer informatie over deze waarden.
{
"@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
"context": "/document/pages/*",
"uri": "https://cohere-embed-v3-multilingual-hin.eastus.models.ai.azure.com/v1/embed",
"key": "aaaaaaaa-0b0b-1c1c-2d2d-333333333333",
"inputs": [
{
"name": "texts",
"source": "=[$(/document/pages/*)]"
},
{
"name": "input_type",
"source": "='search_document'"
},
{
"name": "truncate",
"source": "='NONE'"
},
{
"name": "embedding_types",
"source": "=['float']"
}
],
"outputs": [
{
"name": "embeddings",
"targetName": "aml_vector_data"
}
]
}
Bovendien is de uitvoer van het Cohere-model niet rechtstreeks de insluitingsmatrix, maar eerder een JSON-object dat het bevat. U moet deze op de juiste manier selecteren wanneer u deze toewijst aan de indexdefinitie via indexProjections of outputFieldMappings. Hier is een voorbeeld indexProjections van een gegevenspakket waarmee u deze mapping kunt implementeren.
Als u een andere optie in uw vaardigheidsdefinitie hebt geselecteerd, moet u het embedding_types in het float-pad wijzigen naar het type dat u hebt geselecteerd.
"indexProjections": {
"selectors": [
{
"targetIndexName": "<YOUR_TARGET_INDEX_NAME_HERE>",
"parentKeyFieldName": "ParentKey", // Change this to the name of the field in your index definition where the parent key will be stored
"sourceContext": "/document/pages/*",
"mappings": [
{
"name": "aml_vector", // Change this to the name of the field in your index definition where the Cohere embedding will be stored
"source": "/document/pages/*/aml_vector_data/float/0"
}
]
}
],
"parameters": {}
}
Voorbeeld van vectorizer-nettolading
De Microsoft Foundry-modelcatalogusvectorizer, in tegenstelling tot de AML-vaardigheid, is aangepast om alleen te werken met insluitmodellen die kunnen worden geïmplementeerd via de modelcatalogus. Het belangrijkste verschil is dat u zich geen zorgen hoeft te maken over de payload van de aanvraag en het antwoord. U moet echter de modelName, die overeenkomt met de 'model-id' die u hebt gekopieerd na het implementeren van het model opgeven.
Hier volgt een voorbeeld van hoe u de vectorizer in uw indexdefinitie configureert op basis van de eigenschappen die uit Foundry zijn gekopieerd.
Voor Cohere-modellen moet u niet het /v1/embed pad toevoegen aan het einde van uw URL, zoals u dat met de skill hebt gedaan.
"vectorizers": [
{
"name": "<YOUR_VECTORIZER_NAME_HERE>",
"kind": "aml",
"amlParameters": {
"uri": "<YOUR_URL_HERE>",
"key": "<YOUR_PRIMARY_KEY_HERE>",
"modelName": "<YOUR_MODEL_ID_HERE>"
},
}
]
Verbinding maken met behulp van tokenverificatie
Als u geen verificatie op basis van sleutels kunt gebruiken, kunt u de AML-vaardigheid en Microsoft Vectorizer-verbinding voor de foundry-modelcatalogus configureren voor tokenverificatie via op rollen gebaseerd toegangsbeheer op Azure.
Uw zoekservice moet een door het systeem of de gebruiker toegewezen beheerde identiteit hebben en de identiteit moet de machtiging Eigenaar of Inzender hebben voor uw project. Vervolgens kunt u het key veld verwijderen uit uw vaardigheids- en vectorizerdefinitie, waarbij u het vervangt door resourceId. Als uw project en zoekservice zich in verschillende regio's bevinden, geeft u ook het region veld op.
"uri": "<YOUR_URL_HERE>",
"resourceId": "subscriptions/<YOUR_SUBSCRIPTION_ID_HERE>/resourceGroups/<YOUR_RESOURCE_GROUP_NAME_HERE>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR_AML_WORKSPACE_NAME_HERE>/onlineendpoints/<YOUR_AML_ENDPOINT_NAME_HERE>",
"region": "westus", // Only needed if project is in different region from search service
Opmerking
Deze integratie biedt momenteel geen ondersteuning voor tokenverificatie voor Cohere-modellen. U moet gebruikmaken van verificatie op basis van sleutels.