Levenscyclus van modellen beheren met behulp van het werkruimtemodelregister (verouderd)
Belangrijk
In deze documentatie wordt het register van het werkruimtemodel behandeld. Als uw werkruimte is ingeschakeld voor Unity Catalog, gebruikt u de procedures op deze pagina niet. In plaats daarvan raadpleegt u Modellen in Unity Catalog.
Zie Werkstromen en modellen migreren naar Unity Catalog voor hulp bij het upgraden van het werkruimtemodelregister naar Unity Catalog.
Als de standaardcatalogus van uw werkruimte zich in Unity Catalog bevindt (in plaats hive_metastore
van ) en u een cluster uitvoert met Databricks Runtime 13.3 LTS of hoger, worden modellen automatisch gemaakt in en geladen vanuit de standaardcatalogus van de werkruimte, zonder dat hiervoor een configuratie is vereist. Als u in dit geval het register voor het werkruimtemodel wilt gebruiken, moet u dit expliciet toepassen door deze aan het begin van uw workload uit te voeren import mlflow; mlflow.set_registry_uri("databricks")
. Een klein aantal werkruimten waarin zowel de standaardcatalogus is geconfigureerd voor een catalogus in Unity Catalog vóór januari 2024 als het werkruimtemodelregister vóór januari 2024 is gebruikt, is vrijgesteld van dit gedrag en blijft standaard het register voor het werkruimtemodel gebruiken.
In dit artikel wordt beschreven hoe u het werkruimtemodelregister gebruikt als onderdeel van uw machine learning-werkstroom om de volledige levenscyclus van ML-modellen te beheren. Het werkruimtemodelregister is een door Databricks geleverde, gehoste versie van het MLflow-modelregister.
Het werkruimtemodelregister biedt:
- Chronologische modelherkomst (welk MLflow-experiment en uitvoering het model op een bepaald moment heeft geproduceerd).
- Model serveren.
- Modelversiebeheer.
- Faseovergangen (bijvoorbeeld van fasering naar productie of gearchiveerd).
- Webhooks zodat u automatisch acties kunt activeren op basis van register gebeurtenissen.
- E-mailmeldingen van model gebeurtenissen.
U kunt ook modelbeschrijvingen maken en weergeven en opmerkingen achterlaten.
Dit artikel bevat instructies voor zowel de gebruikersinterface van het werkruimtemodelregister als de api voor het register van het werkruimtemodel.
Zie ml-levenscyclusbeheer met behulp van MLflow voor een overzicht van de concepten van het register voor werkruimtemodellen.
Een model maken of registreren
U kunt een model maken of registreren met behulp van de gebruikersinterface of een model registreren met behulp van de API.
Een model maken of registreren met behulp van de gebruikersinterface
Er zijn twee manieren om een model te registreren in het werkruimtemodelregister. U kunt een bestaand model registreren dat is vastgelegd in MLflow of u kunt een nieuw, leeg model maken en registreren, en vervolgens een eerder vastgelegd model aan de sjabloon toewijzen.
Een bestaand geregistreerd model registreren vanuit een notebook
Zoek in de werkruimte de MLflow-uitvoering op die het model bevat dat u wilt registreren.
Klik op het pictogram Experiment in de rechterzijbalk van het notitieblok.
Klik in de zijbalk Experimentuitvoeringen op het pictogram naast de datum van de uitvoering. De pagina MLflow Run wordt weergegeven. Op deze pagina worden details van de uitvoering weergegeven, zoals parameters, metrische gegevens, tags en een lijst met artefacten.
Klik in de sectie Artefacten op de map met de naam xxx-model.
Klik helemaal rechts op de knop Model registreren.
Klik in het dialoogvenster in het vak Model en voer een van de volgende handelingen uit:
- Selecteer Nieuw model maken in de vervolgkeuzelijst. Het veld Modelnaam wordt weergegeven. Voer bijvoorbeeld
scikit-learn-power-forecasting
een modelnaam in. - Selecteer een bestaand model in de vervolgkeuzelijst.
- Selecteer Nieuw model maken in de vervolgkeuzelijst. Het veld Modelnaam wordt weergegeven. Voer bijvoorbeeld
Klik op Registreren.
- Als u Nieuw model maken hebt geselecteerd, registreert u een model met de naam
scikit-learn-power-forecasting
, kopieert u het model naar een veilige locatie die wordt beheerd door het werkruimtemodelregister en maakt u een nieuwe versie van het model. - Als u een bestaand model hebt geselecteerd, wordt hiermee een nieuwe versie van het geselecteerde model geregistreerd.
Na enkele ogenblikpen verandert de knop Model registreren in een koppeling naar de nieuwe geregistreerde modelversie.
- Als u Nieuw model maken hebt geselecteerd, registreert u een model met de naam
Klik op de koppeling om de nieuwe modelversie te openen in de gebruikersinterface van het werkruimtemodelregister. U kunt het model ook vinden in het werkruimtemodelregister door op Modellen in de zijbalk te klikken.
Een nieuw geregistreerd model maken en er een vastgelegd model aan toewijzen
U kunt de knop Model maken op de pagina met geregistreerde modellen gebruiken om een nieuw, leeg model te maken en er vervolgens een vastgelegd model aan toewijzen. Volg vervolgens deze stappen:
Klik op de pagina met geregistreerde modellen op Model maken. Voer een naam in voor het model en klik op Maken.
Volg de stappen 1 t/m 3 in Een bestaand vastgelegd model registreren via een notebook.
Selecteer in het dialoogvenster Model registreren de naam van het model dat u in stap 1 hebt gemaakt en klik op Registreren. Hiermee wordt een model geregistreerd met de naam die u hebt gemaakt, kopieert u het model naar een veilige locatie die wordt beheerd door het werkruimtemodelregister en maakt u een modelversie:
Version 1
.Na enkele ogenblikken vervangt de gebruikersinterface van de MLflow-uitvoering de knop Model registreren door een koppeling naar de nieuwe geregistreerde modelversie. U kunt het model nu selecteren in de vervolgkeuzelijst Model in het dialoogvenster Model registreren op de pagina met experimentuitvoeringen. U kunt ook nieuwe versies van het model registreren door de naam op te geven in API-opdrachten als Create ModelVersion.
Een model registreren met behulp van de API
Er zijn drie programmatische manieren om een model te registreren in het werkruimtemodelregister. Alle methoden kopiëren het model naar een veilige locatie die wordt beheerd door het werkruimtemodelregister.
Als u een model wilt vastleggen en het wilt registreren met de opgegeven naam tijdens een MLflow experiment, gebruikt u de methode
mlflow.<model-flavor>.log_model(...)
. Als een geregistreerd model met die naam niet bestaat, registreert de methode een nieuw model, maakt versie 1 en retourneert eenModelVersion
-MLflow-object. Als er al een geregistreerd model met de naam bestaat, maakt de methode een nieuwe modelversie en retourneert deze het versieobject.with mlflow.start_run(run_name=<run-name>) as run: ... mlflow.<model-flavor>.log_model(<model-flavor>=<model>, artifact_path="<model-path>", registered_model_name="<model-name>" )
Als u een model met de opgegeven naam wilt registreren nadat u klaar bent met het uitvoeren van een experiment en u hebt besloten welk model het meest geschikt is om toe te voegen aan het register, gebruikt u de methode
mlflow.register_model()
. Voor deze methode hebt u de uitvoerings-id voor het argumentmlruns:URI
nodig. Als een geregistreerd model met die naam niet bestaat, registreert de methode een nieuw model, maakt versie 1 en retourneert eenModelVersion
-MLflow-object. Als er al een geregistreerd model met de naam bestaat, maakt de methode een nieuwe modelversie en retourneert deze het versieobject.result=mlflow.register_model("runs:<model-path>", "<model-name>")
Als u een nieuw geregistreerd model met de opgegeven naam wilt maken, gebruikt u de methode
create_registered_model()
van de MLflow-client-API. Als de modelnaam al bestaat, genereert deze methode eenMLflowException
.client = MlflowClient() result = client.create_registered_model("<model-name>")
U kunt ook een model registreren bij de Databricks Terraform-provider en databricks_mlflow_model.
Quotumlimieten
Vanaf mei 2024 voor alle Databricks-werkruimten legt het werkruimtemodelregister quotumlimieten op voor het totale aantal geregistreerde modellen en modelversies per werkruimte. Zie Resourcelimieten. Als u de registerquota overschrijdt, raadt Databricks u aan geregistreerde modellen en modelversies te verwijderen die u niet meer nodig hebt. Databricks raadt u ook aan uw modelregistratie- en bewaarstrategie aan te passen om onder de limiet te blijven. Als u een verhoging van uw werkruimtelimieten nodig hebt, neemt u contact op met uw Databricks-accountteam.
In het volgende notebook ziet u hoe u uw modelregisterentiteiten inventariseert en verwijdert.
Notebook voor registerentiteiten voor inventariswerkruimtenmodel
Modellen weergeven in de gebruikersinterface
Pagina Geregistreerde modellen
De pagina Geregistreerde modellen wordt weergegeven wanneer u op Modellen in de zijbalk klikt. Op deze pagina worden alle modellen in het register weergegeven.
U kunt op deze pagina een nieuw model maken.
Ook op deze pagina kunnen werkruimtebeheerders machtigingen instellen voor alle modellen in het werkruimtemodelregister.
Geregistreerde modelpagina
Als u de geregistreerde modelpagina voor een model wilt weergeven, klikt u op een modelnaam op de pagina geregistreerde modellen. Op de geregistreerde modelpagina ziet u informatie over het geselecteerde model en een tabel met informatie over elke versie van het model. Op deze pagina kunt u ook het volgende doen:
- Model serving instellen.
- Automatisch een notebook genereren om het model te gebruiken voor deductie.
- E-mailmeldingen configureren.
- Modelversies vergelijken.
- Machtigingen instellen voor het model.
- Een model verwijderen.
Pagina modelversie
Ga op een van de volgende manieren te werk om de versiepagina van het model weer te geven:
- Klik op een versienaam in de kolom Meest recente versie op de pagina geregistreerde modellen.
- Klik op een versienaam in de kolom Versie op de geregistreerde modelpagina.
Op deze pagina wordt informatie weergegeven over een specifieke versie van een geregistreerd model en wordt ook een koppeling naar de bronuitvoering weergegeven (de versie van het notebook dat is uitgevoerd om het model te maken). Op deze pagina kunt u ook het volgende doen:
Toegang tot modellen beheren
U moet ten minste de machtiging CAN MANAGE hebben om machtigingen voor een model te configureren. Zie MLflow-model-ACL's voor informatie over modelmachtigingsniveaus. Een modelversie neemt machtigingen over van het bovenliggende model. U kunt geen machtigingen instellen voor modelversies.
Klik in de zijbalk op Modellen.
Selecteer een modelnaam.
Klik op Machtigingen. Het dialoogvenster Machtigingsinstellingen wordt geopend
Selecteer in het dialoogvenster de vervolgkeuzelijst Gebruiker, Groep of Service-principal selecteren en selecteer een gebruiker, groep of service-principal.
Selecteer een machtiging in de vervolgkeuzelijst voor machtigingen.
Klik op Toevoegen en klik op Opslaan.
Werkruimtebeheerders en gebruikers met de machtiging CAN MANAGE op het niveau voor het hele register kunnen machtigingsniveaus instellen voor alle modellen in de werkruimte door op de pagina Modellen op Machtigingen te klikken.
Een modelfase overzetten
Een modelversie heeft een van de volgende fasen: Geen, Fasering, Productie of Gearchiveerd. De fase Fasering is bedoeld voor het testen en valideren van modellen, terwijl de fase Productie voor modelversies is die de test- of controleprocessen hebben voltooid en die zijn geïmplementeerd voor toepassingen voor live scores. Er wordt aangenomen dat een gearchiveerde modelversie inactief is, op welk punt u kunt overwegen om deze te verwijderen. Verschillende versies van een model kunnen zich in verschillende fasen bevinden.
Een gebruiker met de juiste machtiging kan een modelversie naar een andere fase overzetten. Als u gemachtigd bent om een modelversie naar een bepaalde fase over te zetten, kunt u dit direct doen. Als u niet gemachtigd bent, kunt u het overzetten van de fase aanvragen en kan een gebruiker die gemachtigd is om modelversies over te zetten de aanvraag goedkeuren, afwijzen of annuleren.
U kunt een modelfase overzetten met behulp van de gebruikersinterface of met behulp van de API.
Een modelfase overzetten met behulp van de gebruikersinterface
Volg deze instructies om de fase van een model over te zetten.
Als u de lijst met beschikbare modelfasen en de beschikbare opties wilt weergeven, klikt u op een pagina met modelversies op de vervolgkeuzelijst naast Fase: en vraagt of selecteert u een overgang naar een andere fase.
Voer desgewenst een opmerking in en klik op OK.
Een modelversie overzetten naar de productiefase
Na het testen en valideren kunt u de fase overzetten naar de productiefase of dit aanvragen.
Werkruimtemodelregister staat meer dan één versie van het geregistreerde model in elke fase toe. Als u maar één versie in Productie wilt hebben, kunt u alle versies van het model die momenteel in Productie zijn, overzetten naar Gearchiveerd door de optie om bestaande productiemodelversies naar Gearchiveerd over te zetten te selecteren.
Een overgangsaanvraag voor de modelversiefase goedkeuren, afwijzen of annuleren
Een gebruiker zonder machtiging om fasen over te zetten, kan hiertoe een aanvraag indienen. De aanvraag wordt weergegeven in de sectie Aanvragen in behandeling op de pagina met de modelversie:
Voor het goedkeuren, afwijzen of annuleren van een aanvraag voor het overzetten van een fase, klikt u op de koppeling Goedkeuren, Afwijzen of Annuleren.
De indiener van een aanvraag om een fase over te zetten, kan de aanvraag ook annuleren.
Modelversieactiviteiten weergeven
Als u alle overgangen wilt weergeven die zijn aangevraagd, goedgekeurd, in behandeling zijn en zijn toegepast op een modelversie, gaat u naar de sectie Activiteiten. Dit record met activiteiten geeft een overzicht van de levenscyclus van het model voor controle of inspectie.
Een modelfase overzetten met behulp van de API
Gebruikers met de juiste machtigingen kunnen een modelversie naar een nieuwe fase overzetten.
Als u een modelversie wilt bijwerken naar een nieuwe fase, gebruikt u de methode transition_model_version_stage()
van de MLflow-client-API:
client = MlflowClient()
client.transition_model_version_stage(
name="<model-name>",
version=<model-version>,
stage="<stage>",
description="<description>"
)
De geaccepteerde waarden voor <stage>
zijn: "Staging"|"staging"
, "Archived"|"archived"
, "Production"|"production"
en "None"|"none"
.
Model gebruiken voor deductie
Belangrijk
Deze functie is beschikbaar als openbare preview.
Nadat een model is geregistreerd in het werkruimtemodelregister, kunt u automatisch een notebook genereren om het model te gebruiken voor batch- of streamingdeductie. U kunt ook een eindpunt maken om het model te gebruiken voor realtime serveren met Model Serving.
Klik in de rechterbovenhoek van de geregistreerde modelpagina of de pagina met de modelversie op . Het dialoogvenster Modeldeductie configureren wordt weergegeven, waarmee u batch-, streaming- of realtimedeductie kunt configureren.
Belangrijk
Anaconda Inc. heeft hun servicevoorwaarden voor anaconda.org kanalen bijgewerkt. Op basis van de nieuwe servicevoorwaarden hebt u mogelijk een commerciële licentie nodig als u afhankelijk bent van de verpakking en distributie van Anaconda. Zie Veelgestelde vragen over Anaconda Commercial Edition voor meer informatie. Uw gebruik van anaconda-kanalen is onderhevig aan hun servicevoorwaarden.
MLflow-modellen die zijn geregistreerd vóór v1.18 (Databricks Runtime 8.3 ML of eerder) zijn standaard vastgelegd met het conda-kanaal defaults
(https://repo.anaconda.com/pkgs/) als afhankelijkheid. Vanwege deze licentiewijziging heeft Databricks het gebruik van het defaults
kanaal gestopt voor modellen die zijn geregistreerd met MLflow v1.18 en hoger. Het standaardkanaal dat is geregistreerd, is nu conda-forge
, die verwijst naar de door de community beheerde https://conda-forge.org/.
Als u een model hebt geregistreerd vóór MLflow v1.18 zonder het defaults
kanaal uit te sluiten van de Conda-omgeving voor het model, heeft dat model mogelijk een afhankelijkheid van het defaults
kanaal dat u mogelijk niet hebt bedoeld.
Als u handmatig wilt controleren of een model deze afhankelijkheid heeft, kunt u de waarde onderzoeken channel
in het conda.yaml
bestand dat is verpakt met het geregistreerde model. Een model conda.yaml
met een defaults
kanaalafhankelijkheid kan er bijvoorbeeld als volgt uitzien:
channels:
- defaults
dependencies:
- python=3.8.8
- pip
- pip:
- mlflow
- scikit-learn==0.23.2
- cloudpickle==1.6.0
name: mlflow-env
Omdat Databricks niet kan bepalen of uw gebruik van de Anaconda-opslagplaats om te communiceren met uw modellen is toegestaan in uw relatie met Anaconda, dwingt Databricks klanten niet om wijzigingen aan te brengen. Als uw gebruik van de Anaconda.com opslagplaats via het gebruik van Databricks is toegestaan volgens de voorwaarden van Anaconda, hoeft u geen actie te ondernemen.
Als u het kanaal wilt wijzigen dat wordt gebruikt in de omgeving van een model, kunt u het model opnieuw registreren bij het register van het werkruimtemodel met een nieuw conda.yaml
. U kunt dit doen door het kanaal op te geven in de conda_env
parameter van log_model()
.
Zie de MLflow-documentatie voor de modelsmaak waarmee u werkt, bijvoorbeeld log_model voor scikit-learn voor meer informatie over de log_model()
API.
Zie de MLflow-documentatie voor meer informatie over conda.yaml
bestanden.
Batchdeductie configureren
Wanneer u deze stappen uitvoert om een batchdeductienotitieblok te maken, wordt het notitieblok opgeslagen in de gebruikersmap onder de Batch-Inference
map in een map met de naam van het model. U kunt het notitieblok zo nodig bewerken.
Klik op het tabblad Batch-deductie .
Selecteer in de vervolgkeuzelijst Modelversie de modelversie die u wilt gebruiken. De eerste twee items in de vervolgkeuzelijst zijn de huidige productie- en faseringsversie van het model (indien aanwezig). Wanneer u een van deze opties selecteert, gebruikt het notebook automatisch de productie- of faseringsversie vanaf het moment dat deze wordt uitgevoerd. U hoeft het notebook niet bij te werken terwijl u het model blijft ontwikkelen.
Klik op de knop Bladeren naast de invoertabel. Het dialoogvenster Invoergegevens selecteren wordt weergegeven. Indien nodig kunt u het cluster wijzigen in de vervolgkeuzelijst Compute .
Notitie
Voor werkruimten waarvoor Unity Catalog is ingeschakeld, kunt u in het dialoogvenster Invoergegevens selecteren uit drie niveaus kiezen.
<catalog-name>.<database-name>.<table-name>
Selecteer de tabel met de invoergegevens voor het model en klik op Selecteren. De gegenereerde notebook importeert deze gegevens automatisch en verzendt deze naar het model. U kunt het gegenereerde notebook bewerken als de gegevens transformaties vereisen voordat deze worden ingevoerd in het model.
Voorspellingen worden opgeslagen in een map in de map
dbfs:/FileStore/batch-inference
. Voorspellingen worden standaard opgeslagen in een map met dezelfde naam als het model. Elke uitvoering van het gegenereerde notebook schrijft een nieuw bestand naar deze map, waarbij de tijdstempel wordt toegevoegd aan de naam. U kunt er ook voor kiezen om de tijdstempel niet op te nemen en het bestand te overschrijven met volgende uitvoeringen van het notebook; instructies worden opgegeven in het gegenereerde notebook.U kunt de map wijzigen waarin de voorspellingen worden opgeslagen door een nieuwe mapnaam te typen in het veld Locatie van de uitvoertabel of door op het mappictogram te klikken om door de map te bladeren en een andere map te selecteren.
Als u voorspellingen wilt opslaan op een locatie in Unity Catalog, moet u het notebook bewerken. Zie machine learning-zelfstudie voor een voorbeeldnotebook dat laat zien hoe u een machine learning-model traint dat gebruikmaakt van gegevens in Unity Catalog en de resultaten terugschrijft naar Unity Catalog.
Streamingdeductie configureren met Delta Live Tables
Wanneer u deze stappen uitvoert om een streamingdeductienotitieblok te maken, wordt het notitieblok opgeslagen in de gebruikersmap onder de DLT-Inference
map in een map met de naam van het model. U kunt het notitieblok zo nodig bewerken.
Klik op het tabblad Streaming (Delta Live Tables).
Selecteer in de vervolgkeuzelijst Modelversie de modelversie die u wilt gebruiken. De eerste twee items in de vervolgkeuzelijst zijn de huidige productie- en faseringsversie van het model (indien aanwezig). Wanneer u een van deze opties selecteert, gebruikt het notebook automatisch de productie- of faseringsversie vanaf het moment dat deze wordt uitgevoerd. U hoeft het notebook niet bij te werken terwijl u het model blijft ontwikkelen.
Klik op de knop Bladeren naast de invoertabel. Het dialoogvenster Invoergegevens selecteren wordt weergegeven. Indien nodig kunt u het cluster wijzigen in de vervolgkeuzelijst Compute .
Notitie
Voor werkruimten waarvoor Unity Catalog is ingeschakeld, kunt u in het dialoogvenster Invoergegevens selecteren uit drie niveaus kiezen.
<catalog-name>.<database-name>.<table-name>
Selecteer de tabel met de invoergegevens voor het model en klik op Selecteren. Het gegenereerde notebook maakt een gegevenstransformatie die gebruikmaakt van de invoertabel als bron en de MLflow PySpark-deductie-UDF integreert om modelvoorspellingen uit te voeren. U kunt het gegenereerde notebook bewerken als de gegevens aanvullende transformaties vereisen voor of nadat het model is toegepast.
Geef de naam van de delta livetabel op. Het notebook maakt een livetabel met de opgegeven naam en gebruikt deze om de modelvoorspellingen op te slaan. U kunt het gegenereerde notebook wijzigen om de doelgegevensset zo nodig aan te passen. U kunt bijvoorbeeld een livestreamingtabel definiëren als uitvoer, schemagegevens of beperkingen voor gegevenskwaliteit toevoegen.
Vervolgens kunt u een nieuwe Delta Live Tables-pijplijn maken met dit notebook of deze als extra notebookbibliotheek toevoegen aan een bestaande pijplijn.
Realtime deductie configureren
Model serving toont uw MLflow Machine Learning-modellen als schaalbare REST API-eindpunten. Zie Aangepaste eindpunten voor het leveren van modellen maken voor eindpunten voor het maken van een model.
Feedback geven
Deze functie is in preview en we willen graag uw feedback ontvangen. Als u feedback wilt geven, klikt u Provide Feedback
in het dialoogvenster Modeldeductie configureren.
Modelversies vergelijken
U kunt modelversies vergelijken in het werkruimtemodelregister.
- Selecteer op de geregistreerde modelpagina twee of meer modelversies door in het selectievakje links van de modelversie te klikken.
- Klik op Vergelijken.
- Het scherm Versies vergelijken
<N>
wordt weergegeven met een tabel waarin de parameters, het schema en de metrische gegevens van de geselecteerde modelversies worden vergeleken. Onderaan het scherm kunt u het type plot (spreidings-, contour- of parallelle coördinaten) en de parameters of metrische gegevens selecteren die u wilt tekenen.
Voorkeuren voor meldingen beheren
U kunt werkruimtemodelregister configureren om u per e-mail op de hoogte te stellen van activiteiten op geregistreerde modellen en modelversies die u opgeeft.
Op de geregistreerde modelpagina ziet u in het menu Waarschuwen over drie opties:
- Alle nieuwe activiteiten: e-mailmeldingen verzenden over alle activiteiten in alle modelversies van dit model. Als u het geregistreerde model hebt gemaakt, is deze instelling de standaardinstelling.
- Activiteit op versies die ik volg: e-mailmeldingen verzenden over modelversies die u volgt. Met deze selectie ontvangt u meldingen voor alle modelversies die u volgt; u kunt meldingen voor een specifieke modelversie niet uitschakelen.
- Meldingen dempen: verzend geen e-mailmeldingen over activiteiten op dit geregistreerde model.
Met de volgende gebeurtenissen wordt een e-mailmelding geactiveerd:
- Een nieuwe modelversie maken
- Aanvraag voor een faseovergang
- Faseovergang
- Nieuwe opmerkingen
U bent automatisch geabonneerd op modelmeldingen wanneer u een van de volgende handelingen uitvoert:
- Opmerking over die modelversie
- De fase van een modelversie overzetten
- Een overgangsaanvraag indienen voor de fase van het model
Als u wilt zien of u een modelversie volgt, bekijkt u het veld Status volgen op de pagina met modelversies of in de tabel met modelversies op de geregistreerde modelpagina.
Alle e-mailmeldingen uitschakelen
U kunt e-mailmeldingen uitschakelen op het tabblad Registerinstellingen voor werkruimtemodel van het menu Gebruikersinstellingen:
- Klik op uw gebruikersnaam in de rechterbovenhoek van de Azure Databricks-werkruimte en selecteer Instellingen in de vervolgkeuzelijst.
- Selecteer Meldingen in de zijbalk Instellingen.
- Schakel e-mailmeldingen voor het modelregister uit.
Een accountbeheerder kan e-mailmeldingen uitschakelen voor de hele organisatie op de pagina met beheerdersinstellingen.
Maximum aantal verzonden e-mailberichten
Werkruimtemodelregister beperkt het aantal e-mailberichten dat per dag per activiteit naar elke gebruiker wordt verzonden. Als u bijvoorbeeld op één dag 20 e-mailberichten ontvangt over nieuwe modelversies die zijn gemaakt voor een geregistreerd model, verzendt Workspace Model Registry een e-mailbericht met de melding dat de dagelijkse limiet is bereikt en worden er geen extra e-mailberichten over die gebeurtenis verzonden tot de volgende dag.
Neem contact op met uw Azure Databricks-accountteam om de limiet van het toegestane aantal toegestane e-mailberichten te verhogen.
Webhooks
Belangrijk
Deze functie is beschikbaar als openbare preview.
Met Webhooks kunt u luisteren naar register-gebeurtenissen voor werkruimtemodellen, zodat uw integraties automatisch acties kunnen activeren. U kunt webhooks gebruiken om uw machine learning-pijplijn te automatiseren en te integreren met bestaande CI/CD-hulpprogramma's en werkstromen. U kunt bijvoorbeeld CI-builds activeren wanneer er een nieuwe modelversie wordt gemaakt of uw teamleden op de hoogte stellen via Slack telkens wanneer een modelovergang naar productie wordt aangevraagd.
Aantekeningen toevoegen aan een model of modelversie
U kunt informatie verstrekken over een model of modelversie door er aantekeningen aan toe te voegen. U kunt bijvoorbeeld een overzicht van het probleem of informatie over de gebruikte methodologie en algoritme toevoegen.
Aantekeningen toevoegen aan een model of modelversie met behulp van de gebruikersinterface
De Gebruikersinterface van Azure Databricks biedt verschillende manieren om aantekeningen te maken bij modellen en modelversies. U kunt tekstinformatie toevoegen met behulp van een beschrijving of opmerkingen en u kunt doorzoekbare sleutel-waardetags toevoegen. Beschrijvingen en tags zijn beschikbaar voor modellen en modelversies; opmerkingen zijn alleen beschikbaar voor modelversies.
- Beschrijvingen zijn bedoeld om informatie over het model te verstrekken.
- Opmerkingen bieden een manier om een doorlopende discussie over activiteiten op een modelversie te onderhouden.
- Met tags kunt u modelmetagegevens aanpassen, zodat u gemakkelijker specifieke modellen kunt vinden.
De beschrijving voor een model of modelversie toevoegen of bijwerken
Klik op de pagina geregistreerde model - of modelversie op Bewerken naast Beschrijving. Er wordt een bewerkingsvenster weergegeven.
Voer de beschrijving in of bewerk deze in het bewerkingsvenster.
Klik op Opslaan om uw wijzigingen op te slaan of op Annuleren om het venster te sluiten.
Als u een beschrijving van een modelversie hebt opgegeven, wordt de beschrijving weergegeven in de kolom Beschrijving in de tabel op de pagina met het geregistreerde model. De kolom bevat maximaal 32 tekens of één tekstregel, afhankelijk van wat korter is.
Opmerkingen toevoegen voor een modelversie
- Schuif omlaag op de pagina met modelversies en klik op de pijl-omlaag naast Activiteiten.
- Typ uw opmerking in het bewerkingsvenster en klik op Opmerking toevoegen.
Tags toevoegen voor een model of modelversie
Klik op de pagina met geregistreerde modellen of modelversies als deze nog niet is geopend. De tabel tags wordt weergegeven.
Klik in de velden Naam en Waarde en typ de sleutel en waarde voor uw tag.
Klik op Toevoegen.
Tags voor een model of modelversie bewerken of verwijderen
Als u een bestaande tag wilt bewerken of verwijderen, gebruikt u de pictogrammen in de kolom Acties .
Aantekeningen toevoegen aan een modelversie met behulp van de API
Als u de beschrijving van een modelversie wilt bijwerken, gebruikt u de methode update_model_version()
van de MLflow-client-API:
client = MlflowClient()
client.update_model_version(
name="<model-name>",
version=<model-version>,
description="<description>"
)
Als u een tag voor een geregistreerd model of modelversie wilt instellen of bijwerken, gebruikt u de MLflow Client-API set_registered_model_tag()
) of set_model_version_tag()
methode:
client = MlflowClient()
client.set_registered_model_tag()(
name="<model-name>",
key="<key-value>",
tag="<tag-value>"
)
client = MlflowClient()
client.set_model_version_tag()(
name="<model-name>",
version=<model-version>,
key="<key-value>",
tag="<tag-value>"
)
De naam van een model wijzigen (alleen API)
Als u de naam van een geregistreerd model wilt wijzigen, gebruikt u de methode rename_registered_model()
van de MLflow-client-API:
client=MlflowClient()
client.rename_registered_model("<model-name>", "<new-model-name>")
Notitie
U kunt de naam van een geregistreerd model alleen wijzigen als er geen versies zijn of als alle versies zich in de fase Geen of Gearchiveerd bevinden.
Een model zoeken
U kunt zoeken naar modellen in het werkruimtemodelregister met behulp van de gebruikersinterface of de API.
Notitie
Wanneer u een model zoekt, worden alleen modellen geretourneerd waarvoor u ten minste LEESmachtigingen voor CAN hebt.
Een model zoeken met behulp van de gebruikersinterface
Als u geregistreerde modellen wilt weergeven, klikt u op Modellen in de zijbalk.
Als u naar een specifiek model wilt zoeken, voert u tekst in het zoekvak in. U kunt de naam van een model of een deel van de naam invoeren:
U kunt ook zoeken op tags. Voer tags in deze indeling in: tags.<key>=<value>
. Gebruik de AND
operator om meerdere tags te zoeken.
U kunt zoeken op zowel de modelnaam als tags met behulp van de MLflow-zoeksyntaxis. Voorbeeld:
Een model zoeken met behulp van de API
U kunt zoeken naar geregistreerde modellen in het werkruimtemodelregister met de MLflow Client-API-methode search_registered_models()
Als u tags voor uw modellen hebt ingesteld, kunt u ook zoeken op die tags.search_registered_models()
print(f"Find registered models with a specific tag value")
for m in client.search_registered_models(f"tags.`<key-value>`='<tag-value>'"):
pprint(dict(m), indent=4)
U kunt ook zoeken naar een specifieke modelnaam en de versiegegevens ervan weergeven met behulp van de methode search_model_versions()
van de MLflow-client-API:
from pprint import pprint
client=MlflowClient()
[pprint(mv) for mv in client.search_model_versions("name='<model-name>'")]
Dit levert de volgende uitvoer op:
{ 'creation_timestamp': 1582671933246,
'current_stage': 'Production',
'description': 'A random forest model containing 100 decision trees '
'trained in scikit-learn',
'last_updated_timestamp': 1582671960712,
'name': 'sk-learn-random-forest-reg-model',
'run_id': 'ae2cc01346de45f79a44a320aab1797b',
'source': './mlruns/0/ae2cc01346de45f79a44a320aab1797b/artifacts/sklearn-model',
'status': 'READY',
'status_message': None,
'user_id': None,
'version': 1 }
{ 'creation_timestamp': 1582671960628,
'current_stage': 'None',
'description': None,
'last_updated_timestamp': 1582671960628,
'name': 'sk-learn-random-forest-reg-model',
'run_id': 'd994f18d09c64c148e62a785052e6723',
'source': './mlruns/0/d994f18d09c64c148e62a785052e6723/artifacts/sklearn-model',
'status': 'READY',
'status_message': None,
'user_id': None,
'version': 2 }
Een model of modelversie verwijderen
U kunt een model verwijderen met behulp van de gebruikersinterface of de API.
Een modelversie of model verwijderen met behulp van de gebruikersinterface
Waarschuwing
U kunt deze actie niet ongedaan maken. U kunt een modelversie overzetten naar de fase Gearchiveerd in plaats van deze te verwijderen uit het register. Wanneer u een model verwijdert, worden alle modelartefacten die zijn opgeslagen door het werkruimtemodelregister en alle metagegevens die aan het geregistreerde model zijn gekoppeld, verwijderd.
Notitie
U kunt modellen en modelversies alleen verwijderen in de fase Geen of Gearchiveerd. Als een geregistreerd model versies bevat in de fase Fasering of Productie, moet u deze overzetten naar de fase Geen of Gearchiveerd voordat u het model verwijdert.
Ga als volgt te werk om een model of modelversie te verwijderen:
- Klik op Modellen in de zijbalk.
- Klik op een modelnaam.
- Klik op een modelversie.
- Klik in de rechterbovenhoek van het scherm en selecteer Verwijderen in de vervolgkeuzelijst.
Ga als volgt te werk om een model te verwijderen:
- Klik op Modellen in de zijbalk.
- Klik op een modelnaam.
- Klik in de rechterbovenhoek van het scherm en selecteer Verwijderen in de vervolgkeuzelijst.
Een modelversie of model verwijderen met behulp van de API
Waarschuwing
U kunt deze actie niet ongedaan maken. U kunt een modelversie overzetten naar de fase Gearchiveerd in plaats van deze te verwijderen uit het register. Wanneer u een model verwijdert, worden alle modelartefacten die zijn opgeslagen door het werkruimtemodelregister en alle metagegevens die aan het geregistreerde model zijn gekoppeld, verwijderd.
Notitie
U kunt modellen en modelversies alleen verwijderen in de fase Geen of Gearchiveerd. Als een geregistreerd model versies bevat in de fase Fasering of Productie, moet u deze overzetten naar de fase Geen of Gearchiveerd voordat u het model verwijdert.
Een modelversie verwijderen
Als u een modelversie wilt verwijderen, gebruikt u de methode delete_model_version()
van de MLflow-client-API:
# Delete versions 1,2, and 3 of the model
client = MlflowClient()
versions=[1, 2, 3]
for version in versions:
client.delete_model_version(name="<model-name>", version=version)
Een model verwijderen
Als u een model wilt verwijderen, gebruikt u de methode delete_registered_model()
van de MLflow-client-API:
client = MlflowClient()
client.delete_registered_model(name="<model-name>")
Modellen delen in werkruimten
Databricks raadt het gebruik van modellen in Unity Catalog aan om modellen te delen in werkruimten. Unity Catalog biedt out-of-the-box-ondersteuning voor toegang tot modeloverschrijdende werkruimten, governance en auditlogboekregistratie.
Als u echter het register van het werkruimtemodel gebruikt, kunt u ook modellen delen in meerdere werkruimten met een bepaalde installatie. U kunt bijvoorbeeld een model ontwikkelen en registreren in uw eigen werkruimte en deze vervolgens openen vanuit een andere werkruimte met behulp van een extern werkruimtemodelregister. Dit is handig wanneer meerdere teams toegang tot modellen delen. U kunt meerdere werkruimten maken en modellen in deze omgevingen gebruiken en beheren.
MLflow-objecten kopiëren tussen werkruimten
Als u MLflow-objecten wilt importeren of exporteren naar of vanuit uw Azure Databricks-werkruimte, kunt u het door de community gestuurde opensource-project MLflow Export-Import gebruiken om MLflow-experimenten, modellen en uitvoeringen tussen werkruimten te migreren.
Met deze hulpprogramma's kunt u het volgende doen:
- Deel en werk samen met andere gegevenswetenschappers op dezelfde of een andere traceringsserver. U kunt bijvoorbeeld een experiment van een andere gebruiker klonen in uw werkruimte.
- Kopieer een model van de ene werkruimte naar de andere, bijvoorbeeld van een ontwikkeling naar een productiewerkruimte.
- Kopieer MLflow-experimenten en voer deze uit vanaf uw lokale traceringsserver naar uw Databricks-werkruimte.
- Maak een back-up van essentiële experimenten en modellen naar een andere Databricks-werkruimte.
Opmerking
In dit voorbeeld ziet u hoe u het werkruimtemodelregister gebruikt om een machine learning-toepassing te bouwen.