Delen via


Cohere Embed-modellen implementeren met Azure AI Studio

Belangrijk

Sommige van de functies die in dit artikel worden beschreven, zijn mogelijk alleen beschikbaar in de preview-versie. Deze preview wordt aangeboden zonder een service level agreement en we raden deze niet aan voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt. Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.

In dit artikel leert u hoe u Azure AI Studio gebruikt om de Cohere Embed-modellen te implementeren als serverloze API's met facturering op basis van betalen per gebruik.

Cohere biedt twee insluitmodellen in Azure AI Studio. Deze modellen zijn beschikbaar als serverloze API's met facturering op basis van betalen per gebruik. U kunt door de cohere-familie van modellen in de modelcatalogus bladeren door te filteren op de verzameling Cohere.

Cohere Embed-modellen

In deze sectie leert u meer over de twee Cohere Embed-modellen die beschikbaar zijn in de modelcatalogus:

  • Cohere Embed v3 - Engels
  • Cohere Embed v3 - Meertalige

U kunt door de cohere-familie van modellen in de modelcatalogus bladeren door te filteren op de verzameling Cohere.

Cohere Embed v3 - Engels

Cohere Embed English is het toonaangevende model voor tekstweergave dat wordt gebruikt voor semantische zoekopdrachten, ophalen van augmented generation (RAG), classificatie en clustering. Insluiten Engels heeft topprestaties op de HuggingFace MTEB-benchmark en presteert goed op use cases voor verschillende branches, zoals Finance, Legal en General-Purpose Corpora. Engels insluiten heeft ook de volgende kenmerken:

  • Engels insluiten heeft 1024 dimensies.
  • Contextvenster van het model is 512 tokens

Cohere Embed v3 - Meertalige

Cohere Embed Multilingual is het toonaangevende model voor tekstweergave dat wordt gebruikt voor semantische zoekopdrachten, ophalen van augmented generation (RAG), classificatie en clustering. Insluiten van meertalige ondersteunt meer dan 100 talen en kan worden gebruikt om te zoeken in een taal (bijvoorbeeld zoeken met een Franse query op Franse documenten) en in verschillende talen (bijvoorbeeld zoeken met een Engelse query op Chinese documenten). Insluiten van meertalige heeft geavanceerde prestaties op meertalige benchmarks zoals Miracl. Insluiten meertalige heeft ook de volgende kenmerken:

  • Insluiten meertalige heeft 1024 dimensies.
  • Contextvenster van het model is 512 tokens

Implementeren als een serverloze API

Bepaalde modellen in de modelcatalogus kunnen worden geïmplementeerd als een serverloze API met betalen per gebruik-facturering. Dit soort implementatie biedt een manier om modellen als API te gebruiken zonder deze te hosten in uw abonnement, terwijl de bedrijfsbeveiliging en -naleving die organisaties nodig hebben, behouden blijven. Voor deze implementatieoptie is geen quotum van uw abonnement vereist.

De eerder genoemde Cohere-modellen kunnen worden geïmplementeerd als een service met betalen per gebruik-facturering en worden aangeboden door Cohere via De Microsoft Azure Marketplace. Cohere kan de gebruiksvoorwaarden en prijzen van deze modellen wijzigen of bijwerken.

Vereisten

  • Een Azure-abonnement met een geldige betalingswijze. Gratis of proefversie van Azure-abonnementen werkt niet. Als u geen Azure-abonnement hebt, maakt u eerst een betaald Azure-account .

  • Een AI Studio-hub. De aanbieding voor serverloze API-modelimplementatie voor Cohere Embed is alleen beschikbaar met hubs die in deze regio's zijn gemaakt:

    • VS - oost
    • VS - oost 2
    • VS - noord-centraal
    • VS - zuid-centraal
    • VS - west
    • US - west 3
    • Zweden - centraal

    Zie Regio-beschikbaarheid voor modellen in serverloze API-eindpunten voor een lijst met regio's die beschikbaar zijn voor elk van de modellen die ondersteuning bieden voor serverloze API-eindpuntimplementaties.

  • Een AI Studio-project in Azure AI Studio.

  • Op rollen gebaseerd toegangsbeheer van Azure wordt gebruikt om toegang te verlenen tot bewerkingen in Azure AI Studio. Als u de stappen in dit artikel wilt uitvoeren, moet aan uw gebruikersaccount de Azure AI Developer-rol voor de resourcegroep zijn toegewezen. Zie Op rollen gebaseerd toegangsbeheer in Azure AI Studio voor meer informatie over machtigingen.

Een nieuwe implementatie maken

In de volgende stappen wordt de implementatie van Cohere Embed v3 - Engels gedemonstreerd, maar u kunt dezelfde stappen gebruiken om Cohere Embed v3 - Meertalige te implementeren door de modelnaam te vervangen.

Een implementatie maken:

  1. Meld u aan bij Azure AI Studio.

  2. Selecteer modelcatalogus in de linkerzijbalk.

  3. Zoek naar Cohere.

  4. Selecteer Cohere-embed-v3-english om de pagina Modeldetails te openen.

    Een schermopname die laat zien hoe u toegang krijgt tot de pagina met modeldetails door de modelcatalogus te doorlopen.

  5. Selecteer Implementeren om een serverloos API-implementatievenster voor het model te openen.

  6. U kunt ook een implementatie starten door te beginnen met uw project in AI Studio.

    1. Selecteer onderdelenimplementaties> in de linkerzijbalk van uw project.

    2. Selecteer + Implementatie maken.

    3. Zoek en selecteer Cohere-embed-v3-english. om de pagina Modeldetails te openen.

      Een schermopname die laat zien hoe u toegang krijgt tot de pagina met modeldetails door de pagina Implementaties in uw project te doorlopen.

    4. Selecteer Bevestigen om een serverloos API-implementatievenster voor het model te openen.

    Een schermopname waarin wordt getoond hoe u een model implementeert met de optie Betalen per gebruik.

  7. Selecteer het project waarin u uw model wilt implementeren. Als u het model wilt implementeren, moet uw project zich in de regio EastUS2 of Zweden - centraal bevinden.

  8. Selecteer in de implementatiewizard de koppeling naar azure Marketplace-voorwaarden voor meer informatie over de gebruiksvoorwaarden.

  9. Selecteer het tabblad Prijzen en voorwaarden voor meer informatie over prijzen voor het geselecteerde model.

  10. Selecteer de knop Abonneren en implementeren . Als dit de eerste keer is dat u het model in het project implementeert, moet u zich abonneren op uw project voor het specifieke aanbod. Voor deze stap is vereist dat uw account beschikt over de rolmachtigingen voor Azure AI Developer voor de resourcegroep, zoals vermeld in de vereisten. Elk project heeft een eigen abonnement op de specifieke Azure Marketplace-aanbieding van het model, waarmee u uitgaven kunt beheren en bewaken. Op dit moment kunt u slechts één implementatie voor elk model in een project hebben.

  11. Nadat u het project hebt geabonneerd voor het specifieke Azure Marketplace-aanbod, hoeven volgende implementaties van dezelfde aanbieding in hetzelfde project zich niet opnieuw te abonneren. Als dit scenario op u van toepassing is, is er een optie Voor continue implementatie om deze te selecteren.

    Een schermopname van een project dat al is geabonneerd op het aanbod.

  12. Geef de implementatie een naam. Deze naam maakt deel uit van de URL van de implementatie-API. Deze URL moet uniek zijn in elke Azure-regio.

    Een schermopname die laat zien hoe u de naam aangeeft van de implementatie die u wilt maken.

  13. Selecteer Implementeren. Wacht totdat de implementatie gereed is en u wordt omgeleid naar de pagina Implementaties.

  14. Selecteer Openen in speeltuin om te beginnen met interactie met het model.

  15. Ga terug naar de pagina Implementaties, selecteer de implementatie en noteer de doel-URL van het eindpunt en de geheime sleutel. Zie de naslagsectie voor meer informatie over het gebruik van de API's.

  16. U kunt de details, URL en toegangssleutels van het eindpunt altijd vinden door naar de overzichtspagina van Project te navigeren. Selecteer vervolgens in de linkerzijbalk van uw project Onderdelenimplementaties>.

Zie kosten- en quotumoverwegingen voor Cohere-modellen die zijn geïmplementeerd als een serverloze API met facturering op basis van betalen per gebruik voor tokens. Zie Kosten- en quotumoverwegingen voor Cohere-modellen die als een service zijn geïmplementeerd.

De Cohere Embed-modellen gebruiken als een service

Deze modellen kunnen worden gebruikt met behulp van de insluit-API.

  1. Ga op de overzichtspagina van Project naar de linkerzijbalk en selecteer Onderdelenimplementaties>.

  2. Zoek en selecteer de implementatie die u hebt gemaakt.

  3. Kopieer de doel-URL en de sleutelwaarde .

  4. Cohere toont twee routes voor deductie met insluiten v3 - Engels en Embed v3 - Meertalige modellen. v1/embeddings voldoet aan het API-schema van Azure AI Generatieve berichten en v1/embed biedt ondersteuning voor het systeemeigen API-schema van Cohere.

    Zie de naslagsectie voor meer informatie over het gebruik van de API's.

Naslaginformatie over insluiten van API's voor Cohere Embed-modellen die zijn geïmplementeerd als een service

Cohere Embed v3 - Engels en Embed v3 - Meertalige accepteren zowel de Azure AI-modeldeductie-API op de route /embeddings als de systeemeigen Cohere Embed v3-API op /embed.

Azure AI-modelinferentie-API

Het Azure AI Model Inference API-schema vindt u in de naslaginformatie voor het artikel Insluiten en een OpenAPI-specificatie kan worden verkregen van het eindpunt zelf.

Cohere Embed v3

Hieronder vindt u informatie over de Cohere Embed v3-API.

Aanvraag

    POST /v1/embed HTTP/1.1
    Host: <DEPLOYMENT_URI>
    Authorization: Bearer <TOKEN>
    Content-type: application/json

v1/insluitaanvraagschema

Cohere Embed v3 - Engels en Embed v3 - Meertalige accepteren de volgende parameters voor een v1/embed API-aanroep:

Sleutel Type Default Beschrijving
texts array of strings Vereist Een matrix met tekenreeksen voor het model dat moet worden ingesloten. Maximum aantal sms's per oproep is 96. We raden u aan om de lengte van elke tekst te beperken tot minder dan 512 tokens voor optimale kwaliteit.
input_type enum string Vereist Prepends speciale tokens om elk type van elkaar te onderscheiden. U moet niet verschillende typen combineren, behalve wanneer u typen voor zoeken en ophalen mengt. In dit geval sluit u uw verzameling in met het search_document type en ingesloten query's met het typetype search_query .
search_document – Gebruik in gebruiksvoorbeelden voor zoeken search_document wanneer u documenten coderen voor insluitingen die u opslaat in een vectordatabase.
search_query – Gebruik search_query bij het opvragen van uw vectordatabase om relevante documenten te vinden.
classification – Gebruik classificatie bij het gebruik van insluitingen als invoer voor een tekstclassificatie.
clustering – Clustering gebruiken om de insluitingen te clusteren.
truncate enum string NONE NONE – Retourneert een fout wanneer de invoer de maximale lengte van het invoertoken overschrijdt.
START – Hiermee wordt het begin van de invoer verwijderd.
END – Hiermee wordt het einde van de invoer verwijderd.
embedding_types array of strings float Hiermee geeft u de typen insluitingen op die u wilt terughalen. Dit kan een of meer van de volgende typen zijn. floatuint8, int8, binaryubinary

v1/insluiten antwoordschema

Cohere Embed v3 - Engels en Embed v3 - Meertalige bevatten de volgende velden in het antwoord:

Sleutel Type Description
response_type enum Het antwoordtype. Retourneert embeddings_floats wanneer embedding_types niet is opgegeven of retourneert embeddings_by_type wanneer embeddings_types deze is opgegeven.
id integer Een id voor het antwoord.
embeddings array of array of objects Een matrix met insluitingen, waarbij elke insluiting een matrix is van floats met 1024 elementen. De lengte van de insluitingsmatrix is hetzelfde als de lengte van de oorspronkelijke tekstmatrix.
texts array of strings De tekstvermeldingen waarvoor insluitingen zijn geretourneerd.
meta string API-gebruiksgegevens, inclusief huidige versie en factureerbare tokens.

Zie https://docs.cohere.com/reference/embed voor meer informatie.

v1/embed-voorbeelden

embeddings_floats-antwoord

Aanvraag:

    {
        "input_type": "clustering",
        "truncate": "START",
        "texts":["hi", "hello"]
    }

Respons:

    {
        "id": "da7a104c-e504-4349-bcd4-4d69dfa02077",
        "texts": [
            "hi",
            "hello"
        ],
        "embeddings": [
            [
                ...
            ],
            [
                ...
            ]
        ],
        "meta": {
            "api_version": {
                "version": "1"
            },
            "billed_units": {
                "input_tokens": 2
            }
        },
        "response_type": "embeddings_floats"
    }

Embeddings_by_types-antwoord

Aanvraag:

    {
        "input_type": "clustering",
        "embedding_types": ["int8", "binary"],
        "truncate": "START",
        "texts":["hi", "hello"]
    }

Respons:

    {
        "id": "b604881a-a5e1-4283-8c0d-acbd715bf144",
        "texts": [
            "hi",
            "hello"
        ],
        "embeddings": {
            "binary": [
                [
                    ...
                ],
                [
                    ...
                ]
            ],
            "int8": [
                [
                    ...
                ],
                [
                    ...
                ]
            ]
        },
        "meta": {
            "api_version": {
                "version": "1"
            },
            "billed_units": {
                "input_tokens": 2
            }
        },
        "response_type": "embeddings_by_type"
    }

Meer deductievoorbeelden

Pak Sample notebook
CLI met behulp van CURL- en Python-webaanvragen cohere-embed.ipynb
OpenAI SDK (experimenteel) openaisdk.ipynb
LangChain langchain.ipynb
Cohere SDK cohere-sdk.ipynb
LiteLLM SDK litellm.ipynb
Rag-voorbeelden (Augmented Generation) ophalen en voorbeelden van hulpprogramma's
Beschrijving Pak Sample notebook
Een lokale FAISS-vectorindex (Facebook AI Similarity Search) maken met cohere embeddings - Langchain langchain, langchain_cohere cohere_faiss_langchain_embed.ipynb
Cohere Command R/R+ gebruiken om vragen te beantwoorden van gegevens in de lokale FAISS-vectorindex - Langchain langchain, langchain_cohere command_faiss_langchain.ipynb
Cohere Command R/R+ gebruiken om vragen te beantwoorden van gegevens in de AI-zoekvectorindex - Langchain langchain, langchain_cohere cohere-aisearch-langchain-rag.ipynb
Cohere Command R/R+ gebruiken om vragen te beantwoorden van gegevens in de AI-zoekvectorindex - Cohere SDK cohere, azure_search_documents cohere-aisearch-rag.ipynb
Opdracht R+ hulpprogramma/functie aanroepen, met behulp van LangChain cohere, , langchainlangchain_cohere command_tools-langchain.ipynb

Kosten en quota

Kosten- en quotumoverwegingen voor modellen die als een service zijn geïmplementeerd

Cohere-modellen die zijn geïmplementeerd als een serverloze API met betalen per gebruik-facturering, worden aangeboden door Cohere via de Azure Marketplace en geïntegreerd met Azure AI Studio voor gebruik. U krijgt de prijzen voor de Azure Marketplace wanneer u het model implementeert.

Telkens wanneer een project zich abonneert op een bepaalde aanbieding vanuit Azure Marketplace, wordt er een nieuwe resource gemaakt om de kosten te traceren die zijn gekoppeld aan het verbruik. Dezelfde resource wordt gebruikt om de kosten te traceren die zijn gekoppeld aan deductie; er zijn echter meerdere meters beschikbaar om elk scenario onafhankelijk te traceren.

Zie Monitoring van kosten voor modellen die worden aangeboden in de Azure Marketplace voor meer informatie over het traceren van kosten.

Het quotum wordt beheerd per implementatie. Elke implementatie heeft een frequentielimiet van 200.000 tokens per minuut en 1000 API-aanvragen per minuut. Momenteel beperken we echter tot één implementatie per model per project. Neem contact op met de ondersteuning voor Microsoft Azure als de huidige frequentielimieten niet voldoende zijn voor uw scenario's.

Inhoud filteren

Modellen die zijn geïmplementeerd als een serverloze API, worden beveiligd door Azure AI Content Safety. Met azure AI-inhoudsveiligheid passeert zowel de prompt als de voltooiing een ensemble van classificatiemodellen die zijn gericht op het detecteren en voorkomen van de uitvoer van schadelijke inhoud. Het inhoudsfiltersysteem detecteert en onderneemt actie op specifieke categorieën van mogelijk schadelijke inhoud in zowel invoerprompts als uitvoervoltooiingen. Meer informatie over het filteren van inhoud vindt u hier.