Amazon SageMaker-Studio bietet eine breite Palette vollständig verwalteter integrierter Entwicklungsumgebungen (IDEs) für die Entwicklung maschinellen Lernens (ML), darunter JupyterLab, Code Editor basierend auf Code-OSS (Visual Studio Code Open Source) und RStudio. Es bietet Zugriff auf die umfassendsten Tools für jeden Schritt der ML-Entwicklung, von der Datenvorbereitung bis hin zum Erstellen, Trainieren, Bereitstellen und Verwalten von ML-Modellen. Sie können das vollständig verwaltete JuptyerLab mit der vorkonfigurierten SageMaker-Distribution in Sekundenschnelle starten, um mit Ihren Notizbüchern, Codes und Daten zu arbeiten. Die flexible und erweiterbare Schnittstelle von SageMaker Studio ermöglicht Ihnen die mühelose Konfiguration und Anordnung von ML-Workflows und Sie können den KI-gestützten Inline-Coding-Begleiter verwenden, um schnell Code zu erstellen, zu debuggen, zu erklären und zu testen.
In diesem Beitrag werfen wir einen genaueren Blick auf das aktualisierte SageMaker Studio und seine JupyterLab-IDE, die die Produktivität von ML-Entwicklern steigern sollen. Wir stellen das Konzept von Spaces vor und erklären, wie JupyterLab Spaces eine flexible Anpassung von Rechen-, Speicher- und Laufzeitressourcen ermöglichen, um die Effizienz Ihres ML-Workflows zu verbessern. Wir diskutieren auch unsere Umstellung auf ein lokalisiertes Ausführungsmodell in JupyterLab, was zu einem schnelleren, stabileren und reaktionsschnelleren Codierungserlebnis führt. Darüber hinaus decken wir die nahtlose Integration generativer KI-Tools wie ab Amazon Code Whisperer und Jupyter AI in SageMaker Studio JupyterLab Spaces, die veranschaulichen, wie sie Entwicklern die Möglichkeit geben, KI zur Codierungsunterstützung und innovativen Problemlösung zu nutzen.
Einführung in Spaces in SageMaker Studio
The new Webbasierte Schnittstelle von SageMaker Studio fungiert als Kommandozentrale zum Starten Ihrer bevorzugten IDE und zum Zugriff auf Ihre Amazon Sage Maker Tools zum Erstellen, Trainieren, Optimieren und Bereitstellen von Modellen. Zusätzlich zu JupyterLab und RStudio enthält SageMaker Studio jetzt einen vollständig verwalteten Code-Editor auf Basis von Code-OSS (Visual Studio Code Open Source). Sowohl JupyterLab als auch der Code-Editor können über einen flexiblen Arbeitsbereich namens Spaces gestartet werden.
Ein Space ist eine Konfigurationsdarstellung einer SageMaker-IDE, wie JupyterLab oder Code Editor, die so konzipiert ist, dass sie bestehen bleibt, unabhängig davon, ob eine mit dem Space verknüpfte Anwendung (IDE) aktiv ausgeführt wird oder nicht. Ein Space stellt eine Kombination aus einer Recheninstanz, einem Speicher und anderen Laufzeitkonfigurationen dar. Mit Spaces können Sie die Rechenleistung und den Speicher für Ihre IDE nach und nach erstellen und nach oben und unten skalieren, Laufzeitumgebungen anpassen und die Programmierung jederzeit und überall anhalten und fortsetzen. Sie können mehrere solcher Spaces einrichten, die jeweils mit einer anderen Kombination aus Rechenleistung, Speicher und Laufzeiten konfiguriert sind.
Wenn ein Space erstellt wird, wird er mit einem ausgestattet Amazon Elastic Block-Shop (Amazon EBS) Volumen, das zum Speichern von Benutzerdateien, Daten, Caches und anderen Artefakten verwendet wird. Es wird immer dann an eine ML-Recheninstanz angehängt, wenn ein Space ausgeführt wird. Das EBS-Volume stellt sicher, dass Benutzerdateien, Daten, Cache und Sitzungsstatus bei jedem Neustart des Space konsistent wiederhergestellt werden. Wichtig ist, dass dieses EBS-Volume persistent bleibt, unabhängig davon, ob sich der Space im laufenden oder gestoppten Zustand befindet. Es bleibt bestehen, bis der Space gelöscht wird.
Darüber hinaus haben wir die Funktion „Bring Your Own File System“ für Benutzer eingeführt, die Umgebungen und Artefakte über verschiedene Spaces, Benutzer oder sogar Domänen hinweg teilen möchten. Dies ermöglicht Ihnen, Ihre Spaces optional mit Ihren eigenen auszustatten Amazon Elastic File System (Amazon EFS)-Mount, der die gemeinsame Nutzung von Ressourcen über verschiedene Arbeitsbereiche hinweg erleichtert.
Einen Raum erstellen
Das Erstellen und Starten eines neuen Spaces ist jetzt schnell und unkompliziert. Es dauert nur wenige Sekunden, einen neuen Space mit Schnellstartinstanzen einzurichten, und weniger als 60 Sekunden, um einen Space auszuführen. Spaces sind mit vordefinierten Einstellungen für Rechenleistung und Speicher ausgestattet, die von Administratoren verwaltet werden. SageMaker Studio-Administratoren können Voreinstellungen auf Domänenebene für Rechen-, Speicher- und Laufzeitkonfigurationen festlegen. Mit diesem Setup können Sie mit minimalem Aufwand und nur wenigen Klicks schnell einen neuen Bereich eröffnen. Sie haben auch die Möglichkeit, die Rechen-, Speicher- oder Laufzeitkonfigurationen eines Spaces zur weiteren Anpassung zu ändern.
Es ist wichtig zu beachten, dass zum Erstellen eines Spaces die Ausführungsrolle der SageMaker-Domäne mit einer Richtlinie wie dem folgenden Beispiel aktualisiert werden muss. Sie müssen Ihren Benutzern Berechtigungen für private Bereiche und Benutzerprofile erteilen, die für den Zugriff auf diese privaten Bereiche erforderlich sind. Ausführliche Anweisungen finden Sie unter Geben Sie Ihren Benutzern Zugriff auf private Bereiche.
Um einen Bereich zu erstellen, führen Sie die folgenden Schritte aus:
- Wählen Sie in SageMaker Studio Jupyter-Labor auf die Anwendungen Menü.
- Auswählen
Erstellen Sie einen JupyterLab-Bereich.
- Aussichten für Name und VornameGeben Sie einen Namen für Ihren Space ein.
- Auswählen
Platz schaffen.
- Auswählen
Leerlauf ausführen um Ihren neuen Space mit Standardvoreinstellungen zu starten oder die Konfiguration entsprechend Ihren Anforderungen zu aktualisieren.
Einen Raum neu konfigurieren
Spaces sind so konzipiert, dass Benutzer je nach Bedarf nahtlos zwischen verschiedenen Rechentypen wechseln können. Sie können damit beginnen, einen neuen Space mit einer bestimmten Konfiguration zu erstellen, die hauptsächlich aus Rechenleistung und Speicher besteht. Wenn Sie zu irgendeinem Zeitpunkt in Ihrem Workflow zu einem anderen Rechentyp mit einer höheren oder niedrigeren vCPU-Anzahl, mehr oder weniger Arbeitsspeicher oder einer GPU-basierten Instanz wechseln müssen, können Sie dies problemlos tun. Nachdem Sie den Space gestoppt haben, können Sie seine Einstellungen entweder über die Benutzeroberfläche oder ändern API über die aktualisierte SageMaker Studio-Schnittstelle und starten Sie dann den Space neu. SageMaker Studio übernimmt automatisch die Bereitstellung Ihres vorhandenen Space für die neue Konfiguration, ohne dass Ihrerseits ein zusätzlicher Aufwand erforderlich ist.
Führen Sie die folgenden Schritte aus, um einen vorhandenen Bereich zu bearbeiten:
- Wählen Sie auf der Seite mit den Raumdetails die Option aus Stoppen Sie den Weltraum.
- Konfigurieren Sie die Rechenleistung, den Speicher oder die Laufzeit neu.
- Auswählen
Leerlauf ausführen den Raum neu zu beleben.
Ihr Arbeitsbereich wird mit dem von Ihnen angeforderten neuen Speicher- und Recheninstanztyp aktualisiert.
Die neue SageMaker Studio JupyterLab-Architektur
Das SageMaker Studio-Team erfindet und vereinfacht weiterhin seine Entwicklererfahrung mit der Veröffentlichung einer neuen, vollständig verwalteten SageMaker Studio JupyterLab-Erfahrung. Das neue SageMaker Studio JupyterLab-Erlebnis vereint das Beste aus beiden Welten: die Skalierbarkeit und Flexibilität von SageMaker Studio Classic (siehe Anhang am Ende dieses Beitrags) mit der Stabilität und Vertrautheit des Open Source JupyterLab. Um das Design dieser neuen JupyterLab-Erfahrung zu verstehen, schauen wir uns das folgende Architekturdiagramm an. Dies wird uns helfen, die Integration und Funktionen dieser neuen JupyterLab Spaces-Plattform besser zu verstehen.
Zusammenfassend lässt sich sagen, dass wir zu einer lokalisierten Architektur übergegangen sind. In diesem neuen Setup laufen Jupyter-Server- und Kernel-Prozesse parallel in einem einzigen Docker-Container, der auf derselben ML-Recheninstanz gehostet wird. Diese ML-Instanzen werden bereitgestellt, wenn ein Space ausgeführt wird, und mit einem EBS-Volume verknüpft, das bei der ersten Erstellung des Space erstellt wurde.
Diese neue Architektur bringt mehrere Vorteile mit sich; Einige davon besprechen wir in den folgenden Abschnitten.
Reduzierte Latenz und erhöhte Stabilität
SageMaker Studio ist auf ein lokales Ausführungsmodell umgestiegen und weicht damit vom vorherigen Split-Modell ab, bei dem Code auf einem EFS-Mount gespeichert und remote auf einer ML-Instanz über das Remote-Kernel-Gateway ausgeführt wurde. Im früheren Setup ermöglichte Kernel Gateway, ein Headless-Webserver, Kernel-Operationen über die Remote-Kommunikation mit Jupyter-Kerneln über HTTPS/WSS. Benutzeraktionen wie das Ausführen von Code, das Verwalten von Notebooks oder das Ausführen von Terminalbefehlen wurden von einer Kernel Gateway-App auf einer Remote-ML-Instanz verarbeitet, wobei Kernel Gateway diese Vorgänge über ZeroMQ (ZMQ) innerhalb eines Docker-Containers ermöglichte. Das folgende Diagramm veranschaulicht diese Architektur.
Die aktualisierte JupyterLab-Architektur führt alle Kernel-Operationen direkt auf der lokalen Instanz aus. Dieser lokale Jupyter-Server-Ansatz bietet normalerweise eine verbesserte Leistung und eine unkomplizierte Architektur. Es minimiert Latenz und Netzwerkkomplexität, vereinfacht die Architektur für einfacheres Debuggen und Wartung, verbessert die Ressourcennutzung und ermöglicht flexiblere Nachrichtenmuster für eine Vielzahl komplexer Arbeitslasten.
Im Wesentlichen bringt dieses Upgrade laufende Notebooks und Code viel näher an die Kernel heran, wodurch die Latenz deutlich reduziert und die Stabilität erhöht wird.
Verbesserte Kontrolle über den bereitgestellten Speicher
SageMaker Studio Classic nutzte ursprünglich Amazon EFS, um dauerhaften, gemeinsamen Dateispeicher für Benutzer-Home-Verzeichnisse innerhalb der SageMaker Studio-Umgebung bereitzustellen. Mit diesem Setup können Sie Notizbücher, Skripte und andere Projektdateien zentral speichern und über alle Ihre SageMaker Studio-Sitzungen und -Instanzen hinweg darauf zugreifen.
Mit dem neuesten Update für SageMaker Studio gibt es einen Wechsel von Amazon EFS-basiertem Speicher zu einer Amazon EBS-basierten Lösung. Die mit SageMaker Studio Spaces bereitgestellten EBS-Volumes sind GP3-Bände Entwickelt, um unabhängig von der Volume-Größe eine konsistente Basisleistung von 3,000 IOPS zu liefern. Dieser neue Amazon EBS-Speicher bietet eine höhere Leistung für I/O-intensive Aufgaben wie Modelltraining, Datenverarbeitung, Hochleistungsrechnen und Datenvisualisierung. Dieser Übergang gibt SageMaker Studio-Administratoren außerdem einen besseren Einblick in und Kontrolle über die Speichernutzung durch Benutzerprofile innerhalb einer Domäne oder in SageMaker. Sie können jetzt den Standardwert festlegen (DefaultEbsVolumeSizeInGb
) und maximal (MaximumEbsVolumeSizeInGb
) Speichergrößen für JupyterLab Spaces innerhalb jedes Benutzerprofils.
Zusätzlich zur verbesserten Leistung haben Sie die Möglichkeit, die Größe des an die ML-Recheninstanz Ihres Space angeschlossenen Speichervolumens flexibel zu ändern, indem Sie Ihre Space-Einstellung entweder über die Benutzeroberfläche oder die API-Aktion Ihrer SageMaker Studio-Schnittstelle bearbeiten, ohne dass eine Verwaltungsaktion erforderlich ist. Beachten Sie jedoch, dass Sie die EBS-Volumengrößen nur in eine Richtung bearbeiten können – nachdem Sie die EBS-Volumengröße des Space erhöht haben, können Sie sie nicht wieder verringern.
SageMaker Studio bietet Administratoren jetzt eine erweiterte Kontrolle über den bereitgestellten Speicher:
- SageMaker Studio-Administratoren können die EBS-Volumegrößen für Benutzerprofile verwalten. Diese JupyterLab EBS-Volumes können zwischen mindestens 5 GB und maximal 16 TB variieren. Der folgende Codeausschnitt zeigt, wie Sie ein Benutzerprofil mit Standard- und maximalen Speicherplatzeinstellungen erstellen oder aktualisieren:
- SageMaker Studio bietet jetzt eine verbesserte automatische Tagging-Funktion für Amazon EBS-Ressourcen, die von Benutzern erstellte Volumes automatisch mit Domänen-, Benutzer- und Space-Informationen beschriftet. Diese Weiterentwicklung vereinfacht die Kostenzuordnungsanalyse für Speicherressourcen und hilft Administratoren dabei, Kosten effektiver zu verwalten und zuzuordnen. Beachten Sie außerdem, dass diese EBS-Volumes im Dienstkonto gehostet werden, sodass Sie keinen direkten Einblick haben. Dennoch sind die Speichernutzung und die damit verbundenen Kosten direkt mit dem Domain-ARN, dem Benutzerprofil-ARN und dem Space-ARN verknüpft, was eine einfache Kostenzuordnung ermöglicht.
- Administratoren können auch die Verschlüsselung der ruhenden EBS-Volumes eines Space mithilfe von vom Kunden verwalteten Schlüsseln (Customer Managed Keys, CMK) steuern.
Geteilte Miete mit eigenem EFS-Dateisystem
ML-Workflows sind in der Regel kollaborativ und erfordern einen effizienten Daten- und Codeaustausch zwischen den Teammitgliedern. Das neue SageMaker Studio verbessert diesen kollaborativen Aspekt, indem es Ihnen die gemeinsame Nutzung von Daten, Code und anderen Artefakten über eine gemeinsame Plattform ermöglicht Bringen Sie Ihr eigenes EFS-Dateisystem mit. Dieses EFS-Laufwerk kann unabhängig von SageMaker eingerichtet werden oder eine vorhandene Amazon EFS-Ressource sein. Nach der Bereitstellung kann es nahtlos in SageMaker Studio-Benutzerprofile eingebunden werden. Diese Funktion ist nicht auf Benutzerprofile innerhalb einer einzelnen Domäne beschränkt – sie kann sich über Domänen hinweg erstrecken, solange sie sich innerhalb derselben Region befinden.
Der folgende Beispielcode zeigt Ihnen, wie Sie eine Domäne erstellen und mithilfe des zugehörigen EFS-Volumes ein vorhandenes EFS-Volume daran anhängen fs-id
. EFS-Volumes können auf Root- oder Präfixebene an eine Domäne angehängt werden, wie die folgenden Befehle zeigen:
Wenn ein EFS-Mount in einer Domäne und den zugehörigen Benutzerprofilen verfügbar gemacht wird, können Sie ihn einem neuen Bereich hinzufügen. Dies kann entweder über die SageMaker Studio-Benutzeroberfläche oder eine API-Aktion erfolgen, wie im folgenden Beispiel gezeigt. Es ist wichtig zu beachten, dass der Speicherplatz seine Eigenschaften erbt, wenn er mit einem EFS-Dateisystem erstellt wird, das auf Domänenebene bereitgestellt wird. Dies bedeutet, dass diese Einstellungen automatisch auf den von den Domänenbenutzern erstellten Speicherplatz angewendet werden, wenn das Dateisystem auf Root- oder Präfixebene innerhalb der Domäne bereitgestellt wird.
Nachdem Sie es in einem Space gemountet haben, können Sie alle Ihre Dateien finden, die sich über dem vom Administrator bereitgestellten Mount-Punkt befinden. Diese Dateien finden Sie im Verzeichnispfad /mnt/custom-file-system/efs/fs-12345678
.
Mithilfe von EFS-Mounts lassen sich Artefakte unkompliziert im Space eines Benutzers oder zwischen mehreren Benutzern oder über Domänen hinweg teilen, was sie ideal für kollaborative Arbeitslasten macht. Mit dieser Funktion können Sie Folgendes tun:
- Daten teilen – EFS-Halterungen eignen sich ideal zum Speichern großer Datensätze, die für datenwissenschaftliche Experimente wichtig sind. Datensatzbesitzer können diese Bereitstellungen mit Trainings-, Validierungs- und Testdatensätzen laden und sie so für Benutzerprofile innerhalb einer Domäne oder über mehrere Domänen hinweg zugänglich machen. SageMaker Studio-Administratoren können auch vorhandene EFS-Bereitstellungen von Anwendungen integrieren und gleichzeitig die Einhaltung der Sicherheitsrichtlinien der Organisation gewährleisten. Dies erfolgt durch flexible Montage auf Präfixebene. Wenn beispielsweise Produktions- und Testdaten auf demselben EFS-Mount gespeichert sind (z. B
fs-12345678:/data/prod and fs-12345678:/data/test
), Montage/data/test
auf die Benutzerprofile der SageMaker-Domäne gewährt Benutzern nur Zugriff auf den Testdatensatz. Dieses Setup ermöglicht Analysen oder Modellschulungen und sorgt gleichzeitig dafür, dass Produktionsdaten sicher und unzugänglich bleiben. - Code teilen – EFS-Mounts erleichtern die schnelle gemeinsame Nutzung von Code-Artefakten zwischen Benutzerprofilen. In Szenarien, in denen Benutzer schnell Codebeispiele austauschen oder an einer gemeinsamen Codebasis ohne die Komplexität häufiger Git-Push/Pull-Befehle zusammenarbeiten müssen, sind gemeinsame EFS-Mounts äußerst vorteilhaft. Sie bieten eine bequeme Möglichkeit, in Arbeit befindliche Codeartefakte innerhalb eines Teams oder zwischen verschiedenen Teams in SageMaker Studio zu teilen.
- Teilen Sie Entwicklungsumgebungen – Geteilte EFS-Mounts können auch als Mittel zur schnellen Verbreitung von Sandbox-Umgebungen unter Benutzern und Teams dienen. EFS-Mounts bieten eine solide Alternative für die gemeinsame Nutzung von Python-Umgebungen wie Conda oder Virtualenv über mehrere Arbeitsbereiche hinweg. Dieser Ansatz umgeht die Notwendigkeit einer Verteilung
requirements.txt
orenvironment.yml
Dateien, was häufig zu der sich wiederholenden Aufgabe führen kann, Umgebungen für verschiedene Benutzerprofile zu erstellen oder neu zu erstellen.
Diese Funktionen verbessern die Möglichkeiten der Zusammenarbeit in SageMaker Studio erheblich und machen es für Teams mühelos, effizient an komplexen ML-Projekten zusammenzuarbeiten. Darüber hinaus verfügt der auf Code-OSS (Visual Studio Code Open Source) basierende Code-Editor über dieselben Architekturprinzipien wie die oben erwähnte JupyterLab-Erfahrung. Diese Ausrichtung bringt mehrere Vorteile mit sich, wie z. B. reduzierte Latenz, verbesserte Stabilität und verbesserte Verwaltungskontrolle, und ermöglicht den Benutzerzugriff auf Gemeinsame Arbeitsbereiche, ähnlich denen, die in JupyterLab Spaces angeboten werden.
Generative KI-gestützte Tools auf JupyterLab Spaces
Generative KI, ein sich schnell entwickelndes Feld der künstlichen Intelligenz, nutzt Algorithmen, um aus umfangreichen vorhandenen Daten neue Inhalte wie Texte, Bilder und Code zu erstellen. Diese Technologie hat die Codierung revolutioniert, indem sie Routineaufgaben automatisiert, komplexe Codestrukturen generiert und intelligente Vorschläge bietet, wodurch die Entwicklung rationalisiert und Kreativität und Problemlösung beim Programmieren gefördert werden. Als unverzichtbares Werkzeug für Entwickler steigert generative KI die Produktivität und treibt Innovationen in der Technologiebranche voran. SageMaker Studio verbessert dieses Entwicklererlebnis mit vorinstallierten Tools wie Amazon CodeWhisperer und Jupyter AI und nutzt generative KI, um den Entwicklungslebenszyklus zu beschleunigen.
Amazon Code Whisperer
Amazon CodeWhisperer ist ein Programmierassistent, der die Entwicklerproduktivität durch Codeempfehlungen und -lösungen in Echtzeit steigert. Als von AWS verwalteter KI-Service ist er nahtlos in die JupyterLab-IDE von SageMaker Studio integriert. Diese Integration macht Amazon CodeWhisperer zu einer flüssigen und wertvollen Ergänzung für den Arbeitsablauf eines Entwicklers.
Amazon CodeWhisperer zeichnet sich durch die Steigerung der Entwicklereffizienz aus, indem es häufige Codierungsaufgaben automatisiert, effektivere Codierungsmuster vorschlägt und die Debugging-Zeit verkürzt. Es ist sowohl für Anfänger als auch für erfahrene Programmierer ein unverzichtbares Werkzeug, das Einblicke in Best Practices bietet, den Entwicklungsprozess beschleunigt und die Gesamtqualität des Codes verbessert. Um Amazon CodeWhisperer zu verwenden, stellen Sie sicher, dass die Automatische Vorschläge fortsetzen Funktion ist aktiviert. Sie können Codevorschläge manuell aufrufen mit Tastaturkürzel.
Alternativ können Sie einen Kommentar schreiben, der Ihre beabsichtigte Codefunktion beschreibt, und mit dem Codieren beginnen. Amazon CodeWhisperer beginnt mit der Bereitstellung von Vorschlägen.
Beachten Sie, dass Amazon CodeWhisperer zwar vorinstalliert ist, Sie jedoch über Folgendes verfügen müssen codewhisperer:GenerateRecommendations
Berechtigung als Teil der Ausführungsrolle, Codeempfehlungen zu erhalten. Weitere Einzelheiten finden Sie unter Verwenden von CodeWhisperer mit Amazon SageMaker Studio. Wenn Sie Amazon CodeWhisperer nutzen, kann AWS zum Zweck der Serviceverbesserung Daten über Ihre Nutzung und Inhalte speichern. Um sich vom Amazon CodeWhisperer abzumelden Richtlinie zur Datenfreigabe, können Sie zu navigieren Rahmen Option aus dem oberen Menü und navigieren Sie dann zu Einstellungseditor und deaktivieren Teilen Sie Nutzungsdaten mit Amazon CodeWhisperer aus dem Amazon CodeWhisperer-Einstellungsmenü.
Jupyter-KI
Jupyter-KI ist ein Open-Source-Tool, das generative KI auf Jupyter-Notebooks bringt und eine robuste und benutzerfreundliche Plattform für die Erforschung generativer KI-Modelle bietet. Es steigert die Produktivität in JupyterLab und Jupyter Notebooks, indem es Funktionen wie %%ai Magic zum Erstellen eines generativen KI-Spielplatzes in Notebooks, eine native Chat-Benutzeroberfläche in JupyterLab für die Interaktion mit KI als Konversationsassistent und Unterstützung für eine Vielzahl großer Sprachen bereitstellt Model (LLM)-Anbieter wie AI21, Anthropic, Cohere und Hugging Face oder Managed Services wie Amazonas Grundgestein und SageMaker-Endpunkte. Diese Integration bietet effizientere und innovativere Methoden für Datenanalyse-, ML- und Codierungsaufgaben. Sie können beispielsweise über die Jupyternaut-Chat-Schnittstelle mit einem domänenbewussten LLM interagieren, um Hilfe bei Prozessen und Arbeitsabläufen zu erhalten, oder über CodeLlama Beispielcode generieren, der auf SageMaker-Endpunkten gehostet wird. Dies macht es zu einem wertvollen Werkzeug für Entwickler und Datenwissenschaftler.
Jupyter AI bietet eine umfangreiche auswahl von Sprachmodellen, die sofort einsatzbereit sind. Darüber hinaus werden auch benutzerdefinierte Modelle über SageMaker-Endpunkte unterstützt, was den Benutzern Flexibilität und eine breite Palette an Optionen bietet. Es bietet auch Unterstützung für das Einbetten von Modellen, sodass Sie Inline-Vergleiche und Tests durchführen und sogar Ad-hoc-RAG-Apps (Retrieval Augmented Generation) erstellen oder testen können.
Jupyter AI kann als Ihr Chat-Assistent fungieren, Ihnen mit Codebeispielen helfen, Ihnen Antworten auf Fragen geben und vieles mehr.
Sie können Jupyter-KIs verwenden %%ai
magic, um Beispielcode in Ihrem Notebook zu generieren, wie im folgenden Screenshot gezeigt.
JupyterLab 4.0
Das JupyterLab-Team hat Version 4.0 veröffentlicht, die erhebliche Verbesserungen bei Leistung, Funktionalität und Benutzererfahrung bietet. Detaillierte Informationen zu dieser Veröffentlichung finden Sie im offiziellen JupyterLab-Dokumentation.
Diese Version, jetzt Standard in SageMaker Studio JupyterLab, bietet dank Verbesserungen wie der Optimierung von CSS-Regeln und der Einführung von CodeMirror 6 und MathJax 3 eine optimierte Leistung für die Handhabung großer Notebooks und schnellere Vorgänge. Zu den wichtigsten Verbesserungen gehört ein aktualisierter Texteditor mit besserer Zugänglichkeit und Anpassung , ein neuer Erweiterungsmanager für die einfache Installation von Python-Erweiterungen und verbesserte Dokumentsuchfunktionen mit erweiterten Funktionen. Darüber hinaus bringt Version 4.0 Verbesserungen der Benutzeroberfläche, Verbesserungen der Barrierefreiheit und Aktualisierungen der Entwicklungstools, und bestimmte Funktionen wurden auf JupyterLab 3.6 zurückportiert.
Zusammenfassung
Die Fortschritte in SageMaker Studio, insbesondere mit der neuen JupyterLab-Erfahrung, markieren einen bedeutenden Fortschritt in der ML-Entwicklung. Die aktualisierte Benutzeroberfläche von SageMaker Studio bietet mit der Integration von JupyterLab, Code Editor und RStudio eine beispiellose, optimierte Umgebung für ML-Entwickler. Die Einführung von JupyterLab Spaces bietet Flexibilität und einfache Anpassung von Rechen- und Speicherressourcen und verbessert so die Gesamteffizienz von ML-Workflows. Der Wechsel von einer Remote-Kernel-Architektur zu einem lokalisierten Modell in JupyterLab erhöht die Stabilität erheblich und verringert gleichzeitig die Startlatenz. Dies führt zu einem schnelleren, stabileren und reaktionsschnelleren Codierungserlebnis. Darüber hinaus stärkt die Integration generativer KI-Tools wie Amazon CodeWhisperer und Jupyter AI in JupyterLab Entwicklern noch mehr, sodass Sie KI zur Codierungsunterstützung und innovativen Problemlösung nutzen können. Die verbesserte Kontrolle über den bereitgestellten Speicher und die Möglichkeit, Code und Daten mühelos über selbstverwaltete EFS-Mounts zu teilen, erleichtern die Zusammenarbeit bei Projekten erheblich. Schließlich unterstreicht die Veröffentlichung von JupyterLab 4.0 innerhalb von SageMaker Studio diese Verbesserungen und bietet optimierte Leistung, bessere Zugänglichkeit und eine benutzerfreundlichere Benutzeroberfläche und festigt damit die Rolle von JupyterLab als Eckpfeiler der effizienten und effektiven ML-Entwicklung in der modernen Technologielandschaft.
Probieren Sie SageMaker Studio JupyterLab Spaces mit unserem aus Quick-Onboard-Funktion, mit dem Sie innerhalb weniger Minuten eine neue Domain für einzelne Benutzer einrichten können. Teilen Sie Ihre Gedanken im Kommentarbereich mit!
Anhang: Kernel-Gateway-Architektur von SageMaker Studio Classic
A SageMaker Classic Eine Domäne ist eine logische Zusammenstellung eines EFS-Volumes, einer Liste von Benutzern, die zum Zugriff auf die Domäne berechtigt sind, sowie Konfigurationen im Zusammenhang mit Sicherheit, Anwendung, Netzwerk und mehr. In der SageMaker Studio Classic-Architektur von SageMaker verfügt jeder Benutzer innerhalb der SageMaker-Domäne über ein eigenes Benutzerprofil. Dieses Profil umfasst spezifische Details wie die Rolle des Benutzers und seine Posix-Benutzer-ID im EFS-Volume sowie andere eindeutige Daten. Benutzer greifen auf ihr individuelles Benutzerprofil über eine dedizierte Jupyter-Server-App zu, die über HTTPS/WSS in ihrem Webbrowser verbunden ist. SageMaker Studio Classic verwendet eine Remote-Kernel-Architektur mit einer Kombination aus Jupyter Server- und Kernel Gateway-App-Typen, sodass Notebook-Server mit Kerneln auf Remote-Hosts interagieren können. Das bedeutet, dass die Jupyter-Kernel nicht auf dem Host des Notebook-Servers laufen, sondern innerhalb von Docker-Containern auf separaten Hosts. Im Wesentlichen wird Ihr Notebook im EFS-Home-Verzeichnis gespeichert und führt Code remote auf einem anderen Verzeichnis aus Amazon Elastic Compute-Cloud (Amazon EC2)-Instanz, die einen vorgefertigten Docker-Container enthält, der mit ML-Bibliotheken wie PyTorch, TensorFlow, Scikit-Learn und mehr ausgestattet ist.
Die Remote-Kernel-Architektur in SageMaker Studio bietet bemerkenswerte Vorteile in Bezug auf Skalierbarkeit und Flexibilität. Es gibt jedoch Einschränkungen, darunter maximal vier Apps pro Instanztyp und potenzielle Engpässe aufgrund zahlreicher HTTPS/WSS-Verbindungen zu einem gemeinsamen EC2-Instanztyp. Diese Einschränkungen könnten sich negativ auf das Benutzererlebnis auswirken.
Das folgende Architekturdiagramm zeigt die SageMaker Studio Classic-Architektur. Es veranschaulicht den Prozess des Benutzers, über eine Jupyter Server-App mit seinem bevorzugten Webbrowser eine Verbindung zu einer Kernel Gateway-App herzustellen.
Über die Autoren
Pranav Murthy ist ein AI/ML Specialist Solutions Architect bei AWS. Er konzentriert sich darauf, Kunden beim Erstellen, Trainieren, Bereitstellen und Migrieren von Workloads für maschinelles Lernen (ML) zu SageMaker zu unterstützen. Zuvor arbeitete er in der Halbleiterindustrie und entwickelte große Modelle für Computer Vision (CV) und Natural Language Processing (NLP), um Halbleiterprozesse mithilfe modernster ML-Techniken zu verbessern. In seiner Freizeit spielt er gerne Schach und reist. Sie finden Pranav auf LinkedIn.
Kunal Jha ist Senior Product Manager bei AWS. Er konzentriert sich darauf, Amazon SageMaker Studio als erstklassige Wahl für die End-to-End-ML-Entwicklung zu entwickeln. In seiner Freizeit fährt Kunal gerne Ski und erkundet den pazifischen Nordwesten. Sie finden ihn auf LinkedIn.
Majisha Namath Parambath ist Senior Software Engineer bei Amazon SageMaker. Sie ist seit über 8 Jahren bei Amazon und arbeitet derzeit daran, das End-to-End-Erlebnis von Amazon SageMaker Studio zu verbessern.
Bharat Nandamuri ist ein leitender Software-Ingenieur, der an Amazon SageMaker Studio arbeitet. Seine Leidenschaft gilt dem Aufbau hochwertiger Backend-Dienste mit Schwerpunkt auf Engineering für ML-Systeme. Außerhalb der Arbeit spielt er gerne Schach, wandert und schaut Filme.
Derek Lause ist Softwareentwickler bei AWS. Er ist bestrebt, seinen Kunden durch Amazon SageMaker Studio und Notebook-Instanzen einen Mehrwert zu bieten. In seiner Freizeit verbringt Derek gerne Zeit mit Familie und Freunden und wandert. Sie finden Derek auf LinkedIn.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- PlatoData.Network Vertikale generative KI. Motiviere dich selbst. Hier zugreifen.
- PlatoAiStream. Web3-Intelligenz. Wissen verstärkt. Hier zugreifen.
- PlatoESG. Kohlenstoff, CleanTech, Energie, Umwelt, Solar, Abfallwirtschaft. Hier zugreifen.
- PlatoHealth. Informationen zu Biotechnologie und klinischen Studien. Hier zugreifen.
- Quelle: https://aws.amazon.com/blogs/machine-learning/boost-productivity-on-amazon-sagemaker-studio-introducing-jupyterlab-spaces-and-generative-ai-tools/
- :hast
- :Ist
- :nicht
- :Wo
- $UP
- 000
- 100
- 11
- 12
- 16
- 25
- 60
- 7
- 8
- a
- Fähigkeit
- Fähig
- Über Uns
- oben
- beschleunigen
- beschleunigend
- Zugang
- Zugänglichkeit
- zugänglich
- Zugriff
- Konto
- über
- Handlung
- Action
- Aktionen
- aktiv
- Handlungen
- Ad
- Zusatz
- Zusätzliche
- zusätzlich
- Verwaltung
- administrativ
- Administratoren
- Adoption
- advanced
- Förderung
- Fortschritte
- Vorteilen
- beeinflussen
- Nach der
- Anhäufung
- AI
- KI-Modelle
- AI-powered
- AI / ML
- Algorithmen
- Ausrichtung
- Alle
- Zuteilung
- erlauben
- erlaubt
- neben
- ebenfalls
- Alternative
- Obwohl
- Amazon
- Amazon Code Whisperer
- Amazon EC2
- Amazon Sage Maker
- Amazon SageMaker-Studio
- Amazon Web Services
- unter
- an
- Analyse
- und
- Antworten
- Anthropisch
- jedem
- von jedem Standort
- Bienen
- App
- Anwendung
- Bewerben
- Ansatz
- Apps
- architektonisch
- Architektur
- SIND
- Feld
- Kunst
- künstlich
- künstliche Intelligenz
- AS
- Aussehen
- Hilfe
- Assistentin
- damit verbundenen
- At
- anhängen
- Augmented
- Autor
- zugelassen
- Im Prinzip so, wie Sie es von Google Maps kennen.
- automatisieren
- verfügbar
- ein Weg
- AWS
- Zurück
- Backend
- Base
- basierend
- Baseline
- BE
- war
- beginnen
- Anfänger
- vorteilhaft
- Vorteile
- BESTE
- Best Practices
- Besser
- zwischen
- Blockieren
- Auftrieb
- Stärkung
- beide
- Engpässe
- Box
- Brings
- breit
- Browser
- bauen
- Building
- aber
- by
- Cache-Speicher
- namens
- CAN
- Fähigkeiten
- Center
- sicher
- Schach
- Wahl
- Auswählen
- klassisch
- näher
- Code
- Codebasis
- Programmierung
- zusammenarbeiten
- kollaborative
- Kombination
- vereint
- Kommentar
- Bemerkungen
- begangen
- gemeinsam
- Kommunikation
- Begleiter
- Vergleiche
- abschließen
- Komplex
- Komplexität
- Komplexität
- Compliance
- umfassend
- Berechnen
- Computer
- Computer Vision
- Computing
- konzept
- Zustand
- Konfiguration
- konfiguriert
- Sie
- Sich zusammenschliessen
- Verbindungen
- konsistent
- konsequent
- Bestehend
- Container
- Behälter
- Inhalt
- fortsetzen
- weiter
- Smartgeräte App
- Praktische
- Konversations
- Eckstein
- Kosten
- Kosten
- könnte
- Abdeckung
- erstellen
- erstellt
- Erstellen
- Kreativität
- wichtig
- CSS
- Zur Zeit
- Original
- Kunde
- Kunden
- Anpassung
- anpassen
- technische Daten
- Datenanalyse
- Datenverarbeitung
- Datenwissenschaft
- Datenvisualisierung
- Datensätze
- gewidmet
- Standard
- Übergeben
- vertiefen
- zeigen
- einsetzen
- Bereitstellen
- Derek
- Beschreibung
- Design
- entworfen
- detailliert
- Details
- Entwickler:in / Unternehmen
- Entwickler
- Entwicklung
- Entwicklung
- Entwicklungswerkzeuge
- anders
- Direkt
- Direkt
- Verzeichnisse
- diskutieren
- deutlich
- verteilen
- Verteilung
- do
- Docker
- Dokument
- Domain
- Domains
- erledigt
- nach unten
- Antrieb
- Laufwerke
- zwei
- jeder
- Früher
- erleichtern
- einfacher
- Einfache
- Herausgeber
- bewirken
- Effektiv
- effektiv
- Effizienz
- effizient
- effizient
- Anstrengung
- mühelos
- mühelos
- entweder
- erhöhten
- Einbettung
- ermächtigen
- befähigt
- ermöglichen
- freigegeben
- ermöglicht
- ermöglichen
- umfasst
- Verschlüsselung
- Ende
- End-to-End
- Ingenieur
- Entwicklung
- zu steigern,
- verbesserte
- Verbesserungen
- Verbessert
- Eine Verbesserung der
- sorgt
- Enter
- Arbeitsumfeld
- Umgebungen
- ausgestattet
- Essenz
- essential
- etablieren
- Sogar
- sich entwickelnden
- Beispiel
- Ausführung
- vorhandenen
- ERFAHRUNGEN
- Experimente
- Erklären
- Möglichkeiten sondieren
- erweitern
- Erweiterung
- Erweiterungen
- umfangreiche
- extra
- Gesicht
- erleichtern
- erleichtern
- falsch
- Vertrautheit
- Familie
- FAST
- beschleunigt
- Merkmal
- Eigenschaften
- Einzigartige
- wenige
- Feld
- Reichen Sie das
- Mappen
- Finden Sie
- Flexibilität
- flexibel
- flexibel
- Flüssigkeit
- Setzen Sie mit Achtsamkeit
- konzentriert
- konzentriert
- Folgende
- Aussichten für
- vorwärts
- Förderung
- gefunden
- vier
- Frei
- häufig
- Freunde
- für
- voll
- Funktion
- Funktionalität
- weiter
- Tor
- erzeugen
- Erzeugung
- Generation
- generativ
- Generative KI
- Git
- gibt
- Go
- gewähren
- für Balkonkraftwerke Reduzierung
- Griff
- mehr
- sehr
- Griffe
- Handling
- Haben
- he
- Hilfe
- Unternehmen
- GUTE
- Hohe Leistungsfähigkeit
- höher
- hoch
- ihm
- seine
- Startseite
- Gastgeber
- gehostet
- Gastgeber
- Houses
- Ultraschall
- Hilfe
- aber
- HTML
- http
- HTTPS
- ID
- ideal
- if
- zeigt
- illustrieren
- Bilder
- wichtig
- wichtig
- zu unterstützen,
- verbessert
- Verbesserung
- Verbesserungen
- Verbesserung
- in
- unzugänglich
- das
- Dazu gehören
- Einschließlich
- Erhöhung
- hat
- Steigert
- zunehmend
- unabhängig
- unabhängig
- Krankengymnastik
- Energiegewinnung
- Information
- anfänglich
- Innovation
- innovativ
- innerhalb
- Einblick
- Einblicke
- Installation
- Instanz
- Anleitung
- integrieren
- integriert
- Integration
- Intelligenz
- Intelligent
- beabsichtigt
- interagieren
- Interaktion
- Schnittstelle
- in
- einführen
- eingeführt
- Stellt vor
- Einführung
- Einleitung
- IT
- SEINE
- jpg
- nur
- Aufbewahrung
- Wesentliche
- Tasten
- Beschriftung
- Landschaft
- Sprache
- grosse
- zuletzt
- Latency
- neueste
- starten
- ins Leben gerufen
- Start
- führen
- Springen
- lernen
- weniger
- Niveau
- Bibliotheken
- Lebenszyklus
- Gefällt mir
- Einschränkungen
- verknüpft
- Liste
- LLM
- Belastung
- aus einer regionalen
- located
- logisch
- Lang
- aussehen
- senken
- Maschine
- Maschinelles Lernen
- gemacht
- Magie
- Aufrechterhaltung
- Wartung
- um
- MACHT
- Making
- verwalten
- verwaltet
- Manager
- flächendeckende Gesundheitsprogramme
- manuell
- Kennzeichen
- maximal
- Kann..
- Mittel
- Mitglieder
- Memory
- MENÜ
- Messaging
- Methoden
- migriert
- minimal
- minimiert
- Minimum
- Minuten
- ML
- Modell
- für
- modern
- ändern
- mehr
- effizienter
- Zudem zeigt
- vor allem warme
- MOUNT
- Filme
- ziehen um
- viel
- mehrere
- sollen
- Name
- nativen
- Natürliche
- Verarbeitung natürlicher Sprache
- Navigieren
- notwendig,
- Need
- erforderlich
- negativ
- Netzwerk
- Vernetzung
- Neu
- Nlp
- nicht
- bemerkenswert
- beachten
- Notizbuch
- jetzt an
- und viele
- of
- bieten
- angeboten
- bieten
- Angebote
- offiziell
- vorgenommen,
- on
- Onboard
- EINEM
- einzige
- auf zu
- XNUMXh geöffnet
- Open-Source-
- betreiben
- Einkauf & Prozesse
- Optimierung
- optimiert
- Option
- Optionen
- or
- organisatorisch
- ursprünglich
- Andere
- UNSERE
- aussen
- übrig
- Gesamt-
- besitzen
- Besitzer
- Pazifik
- Seite
- Teil
- besonders
- leidenschaftlich
- Weg
- Muster
- Pause
- für
- Ausführen
- Leistung
- Erlaubnis
- Berechtigungen
- Plattform
- Plato
- Datenintelligenz von Plato
- PlatoData
- Spielplatz
- spielend
- Points
- Politik durchzulesen
- Datenschutzrichtlinien
- Post
- Potenzial
- Praktiken
- bevorzugt
- Vorbereitung
- früher
- vorher
- in erster Linie
- Grundsätze
- privat
- Problemlösung
- Prozessdefinierung
- Verarbeitet
- anpassen
- Verarbeitung
- Produkt
- Produkt-Manager
- Produktion
- PRODUKTIVITÄT
- Profil
- Profil
- Programmierung
- Projekt
- Projekte
- immobilien
- die
- Anbieter
- bietet
- Bereitstellung
- Zwecke
- Python
- Pytorch
- Qualität
- Fragen
- Direkt
- schneller
- schnell
- Angebot
- schnell
- bereit
- Echtzeit
- erhalten
- Empfehlungen
- Reduziert
- Reduzierung
- siehe
- Ungeachtet
- Region
- bezogene
- Relaunch
- Release
- freigegeben
- bleibt bestehen
- entfernt
- entfernt
- repetitiv
- Darstellung
- representiert
- Voraussetzungen:
- erfordert
- Ressourcen
- Downloads
- ansprechbar
- REST
- neu gestartet
- eingeschränkt
- was zu
- Die Ergebnisse
- fortsetzen
- revolutioniert
- Recht
- robust
- Rollen
- Wurzel
- Routine
- Regel
- Führen Sie
- Laufen
- läuft
- Laufzeit
- sagemaker
- gleich
- Sandkasten
- Skalierbarkeit
- Skalieren
- Szenarien
- Wissenschaft
- Wissenschaftler
- scikit-lernen
- Skripte
- nahtlos
- nahtlos
- Suche
- gewürzt
- Sekunden
- Abschnitte
- Verbindung
- Sicherheitdienst
- Sicherheitsrichtlinien
- sehen
- Halbleiter
- Senior
- getrennte
- brauchen
- Server
- Fertige Server
- dient
- Lösungen
- Sitzung
- Sessions
- kompensieren
- Einstellung
- Einstellungen
- Setup
- mehrere
- Teilen
- von Locals geführtes
- Shares
- ,,teilen"
- sie
- verschieben
- gezeigt
- Konzerte
- signifikant
- bedeutend
- ähnlich
- Vereinfacht
- vereinfachen
- Single
- Größe
- Größen
- Schnipsel
- So
- Software
- Software IngenieurIn
- solide
- erstarren
- Lösung
- Lösungen
- einige
- Quelle
- Raumfahrt
- Räume
- Spezialist
- spezifisch
- Ausgabe
- Wirbelsäule ... zu unterstützen.
- gespalten
- Stabilität
- stabil
- Standard
- Anfang
- Anfang
- Bundesstaat
- Erklärung
- Staaten
- Schritt
- Shritte
- Stoppen
- gestoppt
- Lagerung
- speichern
- gelagert
- Speicherung
- einfach
- gestrafft
- Rationalisierung
- Strukturen
- Studio Adressen
- so
- ZUSAMMENFASSUNG
- Support
- Unterstützte
- sicher
- Schalter
- System
- Systeme und Techniken
- Nehmen
- nimmt
- Aufgabe
- und Aufgaben
- Team
- Teammitglieder
- Teams
- Tech
- Tech-Industrie
- Techniken
- Technologie
- Tensorfluss
- Terminal
- AGB
- Test
- Tests
- Text
- als
- Vielen Dank
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- ihr
- Sie
- dann
- Dort.
- damit
- Diese
- vom Nutzer definierten
- fehlen uns die Worte.
- diejenigen
- Durch
- Zeit
- zu
- gemeinsam
- Werkzeug
- Werkzeuge
- Top
- gegenüber
- Training
- Ausbildung
- Übergang
- Übergang
- Reise
- was immer dies auch sein sollte.
- versuchen
- Melodie
- tippe
- Typen
- typisch
- ui
- Unterstrichen
- verstehen
- einzigartiges
- beispiellos
- bis
- Aktualisierung
- aktualisiert
- Updates
- Aktualisierung
- mehr Stunden
- Upgrade
- us
- Anwendungsbereich
- -
- benutzt
- Mitglied
- Benutzererfahrung
- benutzerfreundlich
- Nutzer
- verwendet
- Verwendung von
- Bestätigung
- wertvoll
- Wert
- Vielfalt
- verschiedene
- Version
- Sichtbarkeit
- Seh-
- visuell
- Visualisierung
- Volumen
- Volumen
- wurde
- beobachten
- Weg..
- we
- Netz
- Web-Browser
- Web-Server
- Web-Services
- Webbasiert
- waren
- wann
- sobald
- ob
- welche
- während
- WHO
- breit
- werden wir
- wünschen
- mit
- .
- ohne
- Arbeiten
- zusammenarbeiten
- gearbeitet
- Arbeitsablauf.
- Workflows
- arbeiten,
- weltweit
- schreiben
- Jahr
- Du
- Ihr
- Zephyrnet