Amazon CodeWhisperer ve Amazon CodeGuru kullanarak Amazon SageMaker not defterlerinde yapay zeka destekli kod önerileri ve güvenlik taramaları | Amazon Web Hizmetleri

Amazon CodeWhisperer ve Amazon CodeGuru kullanarak Amazon SageMaker not defterlerinde yapay zeka destekli kod önerileri ve güvenlik taramaları | Amazon Web Hizmetleri

Amazon Adaçayı Yapıcı verileri keşfetmek ve makine öğrenimi (ML) modelleri oluşturmak için tam olarak yönetilen not defterlerini döndürmek için iki seçenekle birlikte gelir. İlk seçenek, hızlı başlangıç, içinde erişilebilen ortak çalışma not defterleridir. Amazon SageMaker Stüdyosu— makine öğrenimi için tamamen entegre bir geliştirme ortamı (IDE). Not defterlerini Studio'da hızlı bir şekilde başlatabilir, çalışmanızı kesintiye uğratmadan temel bilgi işlem kaynaklarını kolayca yukarı veya aşağı çevirebilir ve hatta not defterinizi birkaç tıklamayla bir bağlantı olarak paylaşabilirsiniz. Not defterleri oluşturmaya ek olarak, Studio'da tek bir ekrandan modellerinizi oluşturmak, eğitmek, hata ayıklamak, takip etmek, devreye almak ve izlemek için tüm makine öğrenimi geliştirme adımlarını gerçekleştirebilirsiniz. ikinci seçenek Amazon SageMaker dizüstü bilgisayar örnekleri— dizüstü bilgisayarları bulutta çalıştıran ve size dizüstü bilgisayar yapılandırmalarınız üzerinde daha fazla kontrol sunan, tamamen yönetilen tek bir makine öğrenimi bilgi işlem örneği.

Bugün, şu özelliklerin kullanılabilirliğini duyurmaktan heyecan duyuyoruz: Amazon Kodu Fısıltı ve Amazon CodeGuru Güvenliği SageMaker not defterlerindeki uzantılar. Yapay zeka destekli bu uzantılar, siz yazarken kod önerileri sunarak makine öğrenimi geliştirmeyi hızlandırmaya yardımcı olur ve kodunuzun güvenli olmasını ve AWS'nin en iyi uygulamalarını takip etmesini sağlar.

Bu gönderide, Studio ve SageMaker not defteri bulut sunucularında Amazon CodeGuru Security ve CodeWhisperer ile nasıl başlayabileceğinizi gösteriyoruz.

Çözüme genel bakış

The CodeWhisperer uzantısı geliştiricilere not defterlerinde gerçek zamanlı kod önerileri sağlayan bir AI kodlama yardımcısıdır. Bireysel geliştiriciler, CodeWhisperer'ı Studio ve SageMaker not defteri örneklerinde ücretsiz olarak kullanabilir. Kodlama yardımcısı, gerçek zamanlı tek satırlık veya tam işlevli kod önerileri oluşturur. Kodunuzdaki anlamı ve bağlamı anlar ve AWS'ye ve en iyi geliştirme uygulamalarına dayanan öneriler önererek geliştirici verimliliğini, kalitesini ve hızını artırır.

The CodeGuru Güvenlik uzantısı Studio ve SageMaker not defteri bulut sunucuları için güvenlik ve kod kalitesinde taramalar sunar. Bu, dizüstü bilgisayar kullanıcılarının dizüstü bilgisayar hücrelerinde enjeksiyon kusurları, veri sızıntıları, zayıf şifreleme veya eksik şifreleme gibi güvenlik açıklarını algılamasına yardımcı olur. Ayrıca, ML kitaplığı API'lerinin kötüye kullanılması, geçersiz çalıştırma sırası ve belirleyici olmama gibi hesaplamalı not defterlerinin okunabilirliğini, yeniden üretilebilirliğini ve doğruluğunu etkileyen birçok yaygın sorunu da tespit edebilirsiniz. Not defterinde güvenlik açıkları veya kalite sorunları belirlendiğinde CodeGuru, AWS güvenlik en iyi uygulamalarına dayalı olarak bu sorunları gidermenizi sağlayan öneriler oluşturur.

Aşağıdaki bölümlerde, uzantıların her birinin nasıl kurulacağını gösteriyoruz ve her birinin yeteneklerini tartışarak bu araçların genel geliştirici üretkenliğini nasıl artırabileceğini gösteriyoruz.

Önkoşullar

Studio ile ilk kez çalışıyorsanız, önce bir SageMaker etki alanı. Ayrıca, her ikisine de uygun erişiminiz olduğundan emin olun. Kod Fısıltı ve CodeGuru kullanma AWS Kimlik ve Erişim Yönetimi (BEN).

Bu uzantıları herhangi bir AWS Bölgesinde kullanabilirsiniz, ancak CodeWhisperer'a yönelik istekler us-east-1 Bölge. İstekler, Studio etki alanındaki Bölgede CodeGuru'ya sunulacak ve CodeGuru varsa Bölgede desteklenen. Desteklenmeyen tüm Bölgeler için istekler, us-east-1.

CodeWhisperer'ı SageMaker not defterleriyle kurun

Bu bölümde CodeWhisperer'ın SageMaker Studio ile nasıl kurulacağını gösteriyoruz.

Uzantıyı kullanmak için IAM izinlerini güncelleyin

CodeWhisperer uzantısını herhangi bir Bölgede kullanabilirsiniz, ancak CodeWhisperer'a yapılan tüm istekler us-east-1 Bölge.

CodeWhisperer uzantısını kullanmak için gerekli izinlere sahip olduğunuzdan emin olun. IAM konsolunda SageMaker kullanıcı yürütme rolüne aşağıdaki politikayı ekleyin:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CodeWhispererPermissions", "Effect": "Allow", "Action": ["codewhisperer:GenerateRecommendations"], "Resource": "*" } ]
}

CodeWhisperer uzantısını kurun

CodeWhisperer uzantısını şu adresten yükleyebilirsiniz: Komut satırı. Bu bölümde, ilgili adımlara bakıyoruz. Başlamak için aşağıdaki adımları tamamlayın:

  1. Üzerinde fileto menü seç yeni ve terminal.
  2. Uzantıyı yüklemek için aşağıdaki komutları çalıştırın:
    conda activate studio
    pip install amazon-codewhisperer-jupyterlab-ext
    jupyter server extension enable amazon_codewhisperer_jupyterlab_ext
    conda deactivate
    restart-jupyter-server

Tarayıcınızı yenileyin ve CodeWhisperer uzantısını başarıyla yüklemiş olacaksınız.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

CodeWhisperer'ı Studio'da kullanma

Kurulum adımlarını tamamladıktan sonra yeni bir notebook veya Python dosyası açarak CodeWhisperer'ı kullanabiliriz. Örneğimiz için örnek bir Defter açacağız.

adlı not defterinizin altında bir araç çubuğu göreceksiniz. Kod Fısıltı. Bu, CodeWhisperer için ortak kısayolların yanı sıra kod önerilerini duraklatma, kod referans günlüğüve CodeWhisperer belgelerinin bağlantısını alın.

Kod başvuru günlüğü, açık kaynak eğitim verilerine benzeyen kod önerilerini işaretler veya filtreler. İlişkili açık kaynak projesinin havuz URL'sini ve lisansını alın, böylece bunları daha kolay inceleyebilir ve nitelikler ekleyebilirsiniz.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Başlamak için imlecinizi not defterinizdeki bir kod bloğuna getirin ve CodeWhisperer önerilerde bulunmaya başlayacaktır. Önerileri görmüyorsanız, tuşuna basın. Alt + C Windows'ta veya Seçenek+C önerileri manuel olarak çağırmak için Mac'te.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Aşağıdaki video, CodeWhisperer'ın Studio'da bir veri dosyası üzerinde açıklayıcı istatistikleri okumak ve gerçekleştirmek için nasıl kullanılacağını gösterir.

CodeWhisperer'ı SageMaker Not Defteri Bulut Sunucularında Kullanın

CodeWhisperer'ı not defteri örneklerinde kullanmak için aşağıdaki adımları tamamlayın:

  1. SageMaker not defteri örneğinize gidin.
  2. Daha önceki CodeWhisperer ilkesini not defteri bulut sunucusu IAM rolüne eklediğinizden emin olun.
  3. İzinler eklendiğinde, JupyterLab'ı aç.
    AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.
  4. Uzantıyı yükleyin. bir terminal kullanarak, fileto menü seç yeni ve terminalve aşağıdaki komutları girin:
    pip install amazon-codewhisperer-jupyterlab-ext
    jupyter server extension enable amazon_codewhisperer_jupyterlab_ext

  5. Komutlar tamamlandığında, ekranda fileto menü seç kapatmak Jupyter Sunucumuzu yeniden başlatmak için.
    AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.
  6. Tarayıcı penceresini yenileyin.

Artık CodeWhisperer uzantısının kurulu ve kullanıma hazır olduğunu göreceksiniz.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Bir Python dosyasında test edelim.

  1. Üzerinde fileto menü seç yeni ve Python Dosyası.

Aşağıdaki video, bir JSON dosyasını CSV'ye dönüştürmek için bir işlevin nasıl oluşturulacağını gösterir.

CodeGuru Security'yi SageMaker not defterleriyle kurun

Bu bölümde CodeGuru Security'nin SageMaker Studio ile nasıl kurulacağını gösteriyoruz.

Uzantıyı kullanmak için IAM izinlerini güncelleyin

CodeGuru Güvenlik uzantısını kullanmak için gerekli izinlere sahip olduğunuzdan emin olun. İzin politikalarını IAM ile güncellemek için aşağıdaki adımları tamamlayın:

  1. Tercihli: IAM konsolunda şunları ekleyebilirsiniz: AmazonCodeGuruSecurityScanAccess IAM kimliklerinize yönetilen politika. Bu ilke, bir kullanıcının tarama oluşturma, tarama bilgilerini görüntüleme ve tarama bulgularını görüntüleme dahil olmak üzere taramalarla çalışmasına izin veren izinler verir.
  2. Özel politikalar için aşağıdaki izinleri girin:
    { "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonCodeGuruSecurityScanAccess", "Effect": "Allow", "Action": [ "codeguru-security:CreateScan", "codeguru-security:CreateUploadUrl", "codeguru-security:GetScan", "codeguru-security:GetFindings" ], "Resource": "arn:aws:codeguru-security:*:*:scans/*" } ] }

  3. İlkeyi, CodeGuru Güvenlik uzantısını kullanacak herhangi bir kullanıcıya veya role ekleyin.

Daha fazla bilgi için bkz: IAM'deki politikalar ve izinler.

CodeGuru Güvenlik uzantısını kurun

CodeGuru Güvenlik uzantısını şu adresten yükleyebilirsiniz: Komut satırı. Başlamak için aşağıdaki adımları uygulayın:

  1. Üzerinde fileto menü seç yeni ve terminal.
  2. Uzantıyı yüklemek için aşağıdaki komutları çalıştırın. conda çevre:
    conda activate studio
    pip install amazon-codeguru-jupyterlab-extension
    conda deactivate

Tarayıcınızı yenileyin ve CodeGuru uzantısını başarıyla yüklemiş olacaksınız.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Bir kod taraması çalıştırın

Aşağıdaki adımlar, örnek bir dosya kullanarak ilk CodeGuru Güvenlik taramanızı çalıştırmayı göstermektedir:

  1. adlı yeni bir not defteri oluşturun. example.ipynb test amacıyla aşağıdaki kodla:
    import torch
    # import tensorflow as tf def tensorflow_avoid_using_nondeterministic_api_noncompliant(): data = tf.ones((1, 1)) # Noncompliant: Determinism of tf.compat.v1.Session # can not be guaranteed in TF2. Ítf.config.experimental.enable_op_determinism() tf.compat.v1.Session( target='', graph=None, config=None ) layer = tf.keras.layers.Input(shape=[1]) model = tf.keras.models.Model(inputs=layer, outputs=layer) model.compile(loss="categorical_crossentropy", metrics="AUC") model.fit(x=data, y=data) def pytorch_sigmoid_before_bceloss_compliant(): # Compliant: `BCEWithLogitsLoss` function integrates a `Sigmoid` # layer and the `BCELoss` into one class # and is numerically robust. loss = nn.BCEWithLogitsLoss() input = torch.randn(3, requires_grad=True) target = torch.empty(3).random_(2) output = loss(input, target) output.backward()

Aşağıdaki kod, Amazon CodeGuru Security'nin yeteneklerini sergilemek için kasıtlı olarak yaygın kötü uygulamaları içermektedir.

  1. Önemli: Lütfen CodeGuru-Security uzantısının kurulu olduğunu ve LSP sunucusunun Fully initialized Not defterinizi açtığınızda aşağıda gösterildiği gibi.

Uzantının tam olarak başlatıldığını görmezseniz, uzantıyı yüklemek için önceki bölüme dönün ve yükleme adımlarını tamamlayın.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Taramayı başlatın. Bir taramayı aşağıdaki yollardan biriyle başlatabilirsiniz:
    • Dosyanızdaki herhangi bir kod hücresini seçin, ardından ampul simgesini seçin.
      AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.
    • Dosyanızdaki herhangi bir kod hücresini seçin (sağ tıklayın), ardından CodeGuru taramasını çalıştırın.
      AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Tarama başladığında, tarama durumu şu şekilde gösterilir: CodeGuru: Tarama devam ediyor.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Birkaç saniye sonra, tarama tamamlandığında durum şu şekilde değişecektir: CodeGuru: Tarama tamamlandı.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Bulguları görüntüleyin ve ele alın

Tarama bittikten sonra, kodunuz bazı altı çizili bulgulara sahip olabilir. Altı çizili kodun üzerine gelin ve bulgunun kısa bir özetini içeren bir açılır pencere belirir. Bulgularla ilgili ek ayrıntılara erişmek için herhangi bir hücreye sağ tıklayın ve Teşhis panelini göster.

Bu, not defteri dosyasının altında bulunan bulgularla ilgili ek bilgiler ve öneriler içeren bir panel açacaktır.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Önerilere göre kodunuzda değişiklik yaptıktan sonra, sorunun çözülüp çözülmediğini kontrol etmek için taramayı yeniden çalıştırabilirsiniz. Kodunuzu değiştirdikten sonra tarama bulgularının kaybolacağını ve bunları tekrar görüntülemek için taramayı yeniden çalıştırmanız gerekeceğini unutmamak önemlidir.

Otomatik kod taramalarını etkinleştir

Otomatik taramalar varsayılan olarak devre dışıdır. İsteğe bağlı olarak, otomatik kod taramalarını etkinleştirebilir ve tarama çalıştırmalarınız için frekansı ve AWS Bölgesini ayarlayabilirsiniz. Otomatik kod taramalarını etkinleştirmek için aşağıdaki adımları tamamlayın.

  1. Stüdyoda, Ayarlar menü seç Gelişmiş Ayarlar Düzenleyici.
    AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.
  2. İçin otomatik taramalar, seçmek Etkin.
  3. CodeGuru Güvenlik taramanız için tarama sıklığını ve Bölgeyi saniye cinsinden belirtin.

Örneğimiz için, CodeGuru'yu her 240 saniyede bir otomatik güvenlik taraması yapacak şekilde yapılandırıyoruz. us-east-1 Bölge. CodeGuru Security'nin desteklendiği herhangi bir bölge için bu değeri değiştirebilirsiniz.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Sonuç

SageMaker Studio ve SageMaker Notebook Bulut Sunucuları artık güvenli kodu daha hızlı yazmanıza yardımcı olan yapay zeka destekli CodeWhisperer ve CodeGuru uzantılarını destekliyor. Her iki uzantıyı da denemenizi öneririz. SageMaker için CodeGuru Güvenliği hakkında daha fazla bilgi edinmek için bkz. JupyterLab ve SageMaker Studio için Amazon CodeGuru Uzantısını kullanmaya başlayınve SageMaker için CodeWhisperer hakkında daha fazla bilgi edinmek için bkz. CodeWhisperer'ı Amazon SageMaker Studio ile Kurma. Lütfen yorumlarda herhangi bir geri bildirim paylaşın!


yazarlar hakkında

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Raj Pathak Finansal Hizmetler (Sigorta, Bankacılık, Sermaye Piyasaları) ve Makine Öğrenimi alanlarında uzmanlaşmış Kıdemli Çözüm Mimarı ve Teknoloji Uzmanıdır. Doğal Dil İşleme (NLP), Büyük Dil Modelleri (LLM) ve Makine Öğrenimi altyapı ve operasyon projelerinde (MLOps) uzmanlaşmıştır.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Gaurav Parekh AWS müşterilerinin büyük ölçekli modern mimari oluşturmasına yardımcı olan bir Çözüm Mimarıdır. Temel uzmanlık alanı Veri Analitiği, Ağ Oluşturma ve Teknoloji stratejisidir. İş dışında Gaurav kriket, futbol ve voleybol oynamaktan hoşlanır.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Arkaprava De AWS'de Kıdemli Yazılım Mühendisidir. 7 yılı aşkın süredir Amazon'da çalışıyor ve şu anda Amazon SageMaker Studio IDE deneyimini geliştirmek için çalışıyor. onu bulabilirsin  LinkedIn.

AI-powered code suggestions and security scans in Amazon SageMaker notebooks using Amazon CodeWhisperer and Amazon CodeGuru | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Prashant Pawan Pisipati Amazon Web Services'de (AWS) Baş Ürün Müdürüdür. AWS ve Alexa'da çeşitli ürünler geliştirdi ve şu anda Makine Öğrenimi uygulayıcılarının AWS hizmetleri aracılığıyla daha üretken olmalarına yardımcı olmaya odaklanıyor.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi