Delen via


AI en Machine Learning in Databricks

In dit artikel worden de hulpprogramma's beschreven die Azure Databricks biedt voor het bouwen en bewaken van AI- en ML-werkstromen. In het diagram ziet u hoe deze onderdelen samenwerken om u te helpen bij het implementeren van uw modelontwikkelings- en implementatieproces.

Machine learning-diagram: Modelontwikkeling en -implementatie in Databricks

Waarom Databricks gebruiken voor machine learning en deep learning?

Met Databricks dient één platform elke stap van het modelontwikkelings- en implementatieproces, van onbewerkte gegevens tot deductietabellen die elke aanvraag en reactie voor een geleverd model opslaan. Gegevenswetenschappers, data engineers, ML-technici en DevOps kunnen hun werk doen met behulp van dezelfde set hulpprogramma's en één bron van waarheid voor de gegevens.

Met het data intelligence-platform zijn het ML-platform en de gegevensstack hetzelfde systeem. Het ML-platform is gebouwd op basis van de gegevenslaag. Alle gegevensassets en artefacten, zoals modellen en functies, kunnen in één catalogus worden gedetecteerd en beheerd. Met één platform voor gegevens en modellen kunt u herkomst van de onbewerkte gegevens naar het productiemodel bijhouden. Ingebouwde gegevens- en modelbewaking slaat metrische gegevens van de kwaliteit op in tabellen die ook zijn opgeslagen in het platform, waardoor het gemakkelijker is om de hoofdoorzaak van prestatieproblemen van het model te identificeren. Zie MLOps-werkstromen in Azure Databricks en wat is MLOps Stacks?voor meer informatie over hoe Databricks de volledige ML-levenscyclus en MLOps ondersteunt.

Enkele van de belangrijkste onderdelen van het data intelligence-platform zijn:

Opdrachten Onderdeel
Gegevens, functies, modellen en functies beheren en beheren. Ook detectie, versiebeheer en herkomst. Unity-catalogus
Wijzigingen in gegevens, gegevenskwaliteit en modelvoorspellingskwaliteit bijhouden Lakehouse Monitoring, Deductietabellen
Functieontwikkeling en -beheer Functie-engineering
Modellen trainen Databricks AutoML, Databricks-notebooks
Ontwikkeling van traceringsmodellen MLflow-tracering
Aangepaste modellen leveren Mozaïek AI-model bedienen.
LLM's implementeren Foundation Model-API's, externe modellen
Geautomatiseerde werkstromen en ETL-pijplijnen bouwen die gereed zijn voor productie Databricks-werkstromen
Git-integratie Git-mappen in Databricks

Deep Learning op Databricks

Het configureren van infrastructuur voor Deep Learning-toepassingen kan lastig zijn.

Databricks Runtime voor Machine Learning zorgt hiervoor voor u, met clusters met ingebouwde compatibele versies van de meest voorkomende Deep Learning-bibliotheken zoals TensorFlow, PyTorch en Keras, en ondersteunende bibliotheken zoals Petastorm, Hyperopt en Horovod. Databricks Runtime ML-clusters bevatten ook vooraf geconfigureerde GPU-ondersteuning met stuurprogramma's en ondersteunende bibliotheken. Het ondersteunt ook bibliotheken zoals Ray om rekenverwerking te parallelliseren voor het schalen van ML-werkstromen en AI-toepassingen.

Databricks Runtime ML-clusters bevatten ook vooraf geconfigureerde GPU-ondersteuning met stuurprogramma's en ondersteunende bibliotheken. Mozaïek AI Model Serving maakt het mogelijk om schaalbare GPU-eindpunten te maken voor deep learning-modellen zonder extra configuratie.

Voor machine learning-toepassingen raadt Databricks aan om een cluster met Databricks Runtime voor Machine Learning te gebruiken. Zie Een cluster maken met Databricks Runtime ML.

Als u aan de slag wilt gaan met Deep Learning op Databricks, raadpleegt u:

Grote taalmodellen (LLM's) en generatieve AI op Databricks

Databricks Runtime voor Machine Learning bevat bibliotheken zoals Hugging Face Transformers en LangChain waarmee u bestaande vooraf getrainde modellen of andere opensourcebibliotheken in uw werkstroom kunt integreren. De Integratie van Databricks MLflow maakt het eenvoudig om de MLflow-traceringsservice te gebruiken met transformatorpijplijnen, modellen en verwerkingsonderdelen. Daarnaast kunt u OpenAI-modellen of -oplossingen integreren van partners zoals John Snow Labs in uw Azure Databricks-werkstromen.

Met Azure Databricks kunt u een LLM op uw gegevens aanpassen voor uw specifieke taak. Met de ondersteuning van opensource-hulpprogramma's, zoals Hugging Face en DeepSpeed, kunt u efficiënt een basis-LLM nemen en trainen met uw eigen gegevens om de nauwkeurigheid voor uw specifieke domein en workload te verbeteren. U kunt vervolgens gebruikmaken van de aangepaste LLM in uw generatieve AI-toepassingen.

Daarnaast biedt Databricks Foundation Model-API's en externe modellen waarmee u open modellen kunt openen en er query's op kunt uitvoeren vanuit een service-eindpunt. Met behulp van Foundation Model-API's kunnen ontwikkelaars snel en eenvoudig toepassingen bouwen die gebruikmaken van een generatief AI-model van hoge kwaliteit zonder hun eigen modelimplementatie te onderhouden.

Voor SQL-gebruikers biedt Databricks AI-functies die SQL-gegevensanalisten kunnen gebruiken voor toegang tot LLM-modellen, waaronder vanuit OpenAI, rechtstreeks in hun gegevenspijplijnen en -werkstromen. Zie AI-functies in Azure Databricks.

Databricks Runtime voor Machine Learning

Databricks Runtime voor Machine Learning (Databricks Runtime ML) automatiseert het maken van een cluster met vooraf gebouwde machine learning- en deep learning-infrastructuur, waaronder de meest voorkomende ML- en DL-bibliotheken. Zie de releaseopmerkingen voor de volledige lijst met bibliotheken in elke versie van Databricks Runtime ML.

Voor toegang tot gegevens in Unity Catalog voor machine learning-werkstromen moet de toegangsmodus voor het cluster één gebruiker zijn (toegewezen). Gedeelde clusters zijn niet compatibel met Databricks Runtime voor Machine Learning. Daarnaast wordt Databricks Runtime ML niet ondersteund op TableACLs-clusters of -clusters met spark.databricks.pyspark.enableProcessIsolation config de set .true

Een cluster maken met Databricks Runtime ML

Wanneer u een cluster maakt, selecteert u een Databricks Runtime ML-versie in het vervolgkeuzemenu van de Databricks-runtimeversie . Zowel CPU- als GPU-runtimes voor ML zijn beschikbaar.

Databricks Runtime ML selecteren

Als u een cluster selecteert in de vervolgkeuzelijst in het notebook, wordt de Databricks Runtime-versie rechts van de clusternaam weergegeven:

Databricks Runtime ML-versie weergeven

Als u een ML-runtime met GPU selecteert, wordt u gevraagd een compatibel stuurprogrammatype en werkroltype te selecteren. Incompatibele exemplaartypen worden grijs weergegeven in de vervolgkeuzelijst. Exemplaartypen met GPU worden vermeld onder het versnelde GPU-label.

Notitie

Voor toegang tot gegevens in Unity Catalog voor machine learning-werkstromen moet de toegangsmodus voor het cluster één gebruiker zijn (toegewezen). Gedeelde clusters zijn niet compatibel met Databricks Runtime voor Machine Learning. Zie de referentie voor compute-configuratie voor meer informatie over het maken van een cluster.

Photon en Databricks Runtime ML

Wanneer u een CPU-cluster met Databricks Runtime 15.2 ML of hoger maakt, kunt u ervoor kiezen om Photon in te schakelen. Photon verbetert de prestaties voor toepassingen met Behulp van Spark SQL, Spark DataFrames, functie-engineering, GraphFrames en xgboost4j. Het is niet verwacht dat de prestaties voor toepassingen worden verbeterd met behulp van Spark RDD's, Pandas UDF's en niet-JVM-talen zoals Python. Python-pakketten zoals XGBoost, PyTorch en TensorFlow zien dus geen verbetering met Photon.

Spark RDD-API's en Spark MLlib hebben beperkte compatibiliteit met Photon. Wanneer u grote gegevenssets verwerkt met Behulp van Spark RDD of Spark MLlib, kunnen er problemen met spark-geheugen optreden. Bekijk problemen met Spark-geheugen.

Bibliotheken die zijn opgenomen in Databricks Runtime ML

Databricks Runtime ML bevat een verscheidenheid aan populaire ML-bibliotheken. De bibliotheken worden bijgewerkt met elke release om nieuwe functies en oplossingen op te nemen.

Databricks heeft een subset van de ondersteunde bibliotheken aangewezen als bibliotheken met de hoogste laag. Voor deze bibliotheken biedt Databricks een snellere updatefrequentie, waarbij wordt bijgewerkt naar de nieuwste pakketreleases met elke runtimerelease (afhankelijkheidsconflicten). Databricks biedt ook geavanceerde ondersteuning, tests en ingesloten optimalisaties voor bibliotheken met de hoogste laag.

Zie de releaseopmerkingen voor Databricks Runtime ML voor een volledige lijst met toplaag en andere opgegeven bibliotheken.

Volgende stappen

Om aan de slag te gaan, raadpleegt u:

Zie voor een aanbevolen MLOps-werkstroom in Databricks Machine Learning:

Zie voor meer informatie over de belangrijkste Functies van Databricks Machine Learning: