Translation not up to date
Modeliniz kullanıcı tanımlı dönüştürücüler, tahmin ediciler ya da kullanıcı tanımlı tensörler gibi özel bileşenler gerektiriyorsa, bir tabandan ya da önceden tanımlanmış bir belirtimden türetilmiş özel bir yazılım belirtimi oluşturabilirsiniz. Python işlevleri ve Python komut dosyaları da özel yazılım belirtimlerini destekler.
Herhangi bir üçüncü kişi kitaplıklarına, kullanıcı tarafından oluşturulan Python paketlerine ya da her ikisine başvurmak için özel yazılım belirtimini kullanabilirsiniz. Üçüncü kişi kitaplıkları ya da kullanıcı tarafından oluşturulan Python paketleri, daha sonra özel bir yazılım belirtiminde başvurulabilecek paket uzantıları olarak belirtilmelidir.
Konuşlandırma yürütme ortamlarınızı aşağıdaki şekillerde özelleştirebilirsiniz:
- Bir Watson Studio projesinde özelleştirmeleri tanımlayın ve bunları bir devreye alma alanına yükselin
- Watson Machine Learning Python istemcisini kullanarak bir devreye alma alanında paket uzantıları ve özel yazılım belirtimleri oluşturun
Sorun giderme bilgileri için Sorun Gidermekonusuna bakın.
Bir Watson Studio projesinde özelleştirmeleri tanımlama ve bunları bir devreye alma alanına yükseltme
Watson Studio projelerindeki ortamlar, Anaconda 'dan ya da PyPI havuzundan kurulabilecek üçüncü kişi kitaplıklarını içerecek şekilde özelleştirilebilir.
Yazılım belirtimlerine sahip ortamlar oluşturulmasına ilişkin ayrıntılar için Ortamlarkonusuna bakın.
Özel ortam oluşturmanın bir parçası olarak, bu adımlar içeride gerçekleştirilir (kullanıcı için saydam):
- Üçüncü taraf kitaplıklarının ayrıntılarını içeren bir paket uzantısı, conda YAML biçiminde oluşturulur.
- Özel ortamla aynı ada sahip bir özel yazılım belirtimi oluşturulur ve oluşturulan paket uzantısı bu özel yazılım belirtimiyle ilişkilendirilir.
Özel ortamla oluşturulan modeller ya da Python işlevleri/komut dosyaları, proje kapsamında Watson Machine Learning havuzuna kaydedildiğinde özel yazılım belirtimine başvurmalıdır.
Projelerden devreye alma alanlarına yazılım belirtimlerini ve paket uzantılarını yayma
Bir Watson Studio projesinde oluşturulan özel yazılım belirtimlerini ve paket uzantılarını bir devreye alma alanına aktarmak için:
- Proje arabiriminizden Yönet sekmesini tıklatın.
- Ortamlarseçeneğini belirleyin.
- Şablonlar sekmesini tıklatın.
- Özel ortamınızın Seçenekler menüsünden Alana Yükseltseçeneğini belirleyin.
Alternatif olarak, bir Watson Studio projesinden özel bir ortamla ilişkili herhangi bir modeli ya da Python işlevini devreye alma alanına yükselttiğinizde, ilişkili özel yazılım belirtimi ve paket uzantısı da devreye alma alanına yükseltilir.
Yazılım belirtimlerini ve paket uzantılarını devreye alma alanına yükseltildikten sonra güncellemek istiyorsanız, aşağıdaki adımları izleyin:
- Devreye alma alanında, Watson Machine Learning Python istemcisini kullanarak yazılım belirtimlerini, paket uzantılarını ve ilişkili modelleri silin (isteğe bağlı).
- Bir projede, değiştirilen özel yazılım belirtimi ve paket uzantısıyla ilişkili modeli, işlevi ya da komut dosyasını alana yükseltin.
Yazılım belirtimleri, bir proje ya da alan içeren bir projeyi ya da alanı içe aktardığınızda da dahil edilir.
Watson Machine Learning Python istemcisini kullanarak bir devreye alma alanında paket uzantıları ve özel yazılım belirtimleri oluşturma
Temel belirtimden türetilen özel bir yazılım belirtimi tanımlamak için Watson Machine Learning API ' lerini ya da Python istemcisini kullanabilirsiniz.
Üçüncü kişi kitaplıklarını ya da kullanıcı tarafından oluşturulan Python paketlerini kullanan özel bir yazılım belirtimi oluşturmak için üst düzey adımlar:
İsteğe bağlı: Üçüncü kişi kitaplıklarının listesini içeren bir conda YAML dosyasını kaydedin ya da kullanıcı tarafından oluşturulan bir Python kitaplığını kaydedin ve bir paket uzantısı oluşturun.
Not: Modelin bir üçüncü taraf kitaplığına ya da kullanıcı tarafından oluşturulan bir Python kitaplığına bağımlılığı yoksa, bu adım gerekli değildir.Özel yazılım belirtimi oluştur
Oluşturduğunuz özel yazılım belirtimine paket uzantılarına ilişkin bir başvuru ekleyin.
Üçüncü kişi kitaplıklarının listesini içeren bir conda YAML dosyasının kaydedilmesi
Paket uzantısı olarak üçüncü taraf kitaplıklarının bir listesini içeren bir conda YAML dosyasını kaydetmek ve paket uzantısıyla bağlantılı özel bir yazılım belirtimi oluşturmak için:
İstemciyi doğrulayın ve oluşturun.
Bkz. Kimlik Doğrulaması.
Varsayılan devreye alma alanını oluşturun ve ayarlayın, ardından kullanılabilir yazılım belirtimlerini listeleyin.
metadata = { wml_client.spaces.ConfigurationMetaNames.NAME: 'examples-create-software-spec', wml_client.spaces.ConfigurationMetaNames.DESCRIPTION: 'For my models' } space_details = wml_client.spaces.store(meta_props=metadata) space_uid = wml_client.spaces.get_id(space_details) # set the default space wml_client.set.default_space(space_uid) # see available meta names for software specs print('Available software specs configuration:', wml_client.software_specifications.ConfigurationMetaNames.get()) wml_client.software_specifications.list() asset_id = 'undefined' pe_asset_id = 'undefined'
Temel belirtime eklenecek paket uzantılarına ilişkin meta verileri oluşturun.
pe_metadata = { wml_client.package_extensions.ConfigurationMetaNames.NAME: 'My custom library', # optional: # wml_client.software_specifications.ConfigurationMetaNames.DESCRIPTION: wml_client.package_extensions.ConfigurationMetaNames.TYPE: 'conda_yml' }
Ek paketlerin listesini içeren bir yaml dosyası oluşturun ve bunu
customlibrary.yaml
olarak kaydedin.Örnek yaml dosyası:
name: add-regex-package dependencies: - regex
Uygun yaml dosya yapısı hakkında bilgi için bkz. Özelleştirmeler örnekleri.
Paket uzantısı bilgilerini saklayın.
pe_asset_details = wml_client.package_extensions.store( meta_props=pe_metadata, file_path='customlibrary.yaml' ) pe_asset_id = wml_client.package_extensions.get_id(pe_asset_details)
Yazılım belirtimi için meta verileri oluşturun ve yazılım belirtimini saklayın.
# Get the id of the base software specification base_id = wml_client.software_specifications.get_id_by_name('default_py3.9') # create the metadata for software specs ss_metadata = { wml_client.software_specifications.ConfigurationMetaNames.NAME: 'Python 3.9 with pre-installed ML package', wml_client.software_specifications.ConfigurationMetaNames.DESCRIPTION: 'Adding some custom libraries like regex', # optional wml_client.software_specifications.ConfigurationMetaNames.BASE_SOFTWARE_SPECIFICATION: {'guid': base_id}, wml_client.software_specifications.ConfigurationMetaNames.PACKAGE_EXTENSIONS: [{'guid': pe_asset_id}] } # store the software spec ss_asset_details = wml_client.software_specifications.store(meta_props=ss_metadata) # get the id of the new asset asset_id = wml_client.software_specifications.get_id(ss_asset_details) # view new software specification details import pprint as pp ss_asset_details = wml_client.software_specifications.get_details(asset_id) print('Package extensions', pp.pformat( ss_asset_details['entity']['software_specification']['package_extensions'] ))
Kullanıcı tarafından yaratılan Python kitaplığının saklanması ve paket uzantısı yaratılması
Kullanıcı tarafından oluşturulan Python kitaplıklarını desteklemeye ilişkin gereksinimler hakkında bilgi için Modellerde özel bileşenlerin kullanılmasına ilişkin gereksinimlerbaşlıklı konuya bakın.
Kullanıcı tarafından oluşturulan bir Python paketini paket uzantısı olarak kaydetmek ve paket uzantısına bağlı özel bir yazılım belirtimi oluşturmak için:
İstemciyi doğrulayın ve oluşturun.
Bkz. Kimlik Doğrulaması.
Varsayılan devreye alma alanını oluşturun ve ayarlayın, ardından kullanılabilir yazılım belirtimlerini listeleyin.
metadata = { wml_client.spaces.ConfigurationMetaNames.NAME: 'examples-create-software-spec', wml_client.spaces.ConfigurationMetaNames.DESCRIPTION: 'For my models' } space_details = wml_client.spaces.store(meta_props=metadata) space_uid = wml_client.spaces.get_id(space_details) # set the default space wml_client.set.default_space(space_uid) # see available meta names for software specs print('Available software specs configuration:', wml_client.software_specifications.ConfigurationMetaNames.get()) wml_client.software_specifications.list() asset_id = 'undefined' pe_asset_id = 'undefined'
Temel belirtime eklenecek paket uzantılarına ilişkin meta verileri oluşturun.
Not:wml_client.package_extensions.ConfigurationMetaNames.TYPE
meta veri özelliği için değer olarak yalnızcapip_zip
belirtilebilir.pe_metadata = { wml_client.package_extensions.ConfigurationMetaNames.NAME: 'My Python library', # optional: # wml_client.software_specifications.ConfigurationMetaNames.DESCRIPTION: wml_client.package_extensions.ConfigurationMetaNames.TYPE: 'pip.zip' }
Kullanıcı tarafından yaratılan Python kitaplığının yolunu belirtin.
python_lib_file_path="my-python-library-0.1.zip"
Kullanıcı tarafından oluşturulan Python kitaplıklarını desteklemeye ilişkin gereksinimler hakkında bilgi için Modellerde özel bileşenlerin kullanılmasına ilişkin gereksinimlerbaşlıklı konuya bakın.
Paket uzantısı bilgilerini saklayın.
pe_asset_details = wml_client.package_extensions.store( meta_props=pe_metadata, file_path=python_lib_file_path ) pe_asset_id = wml_client.package_extensions.get_id(pe_asset_details)
Yazılım belirtimi için meta verileri oluşturun ve yazılım belirtimini saklayın.
# Get the id of the base software specification base_id = wml_client.software_specifications.get_id_by_name('default_py3.9') # create the metadata for software specs ss_metadata = { wml_client.software_specifications.ConfigurationMetaNames.NAME: 'Python 3.9 with pre-installed ML package', wml_client.software_specifications.ConfigurationMetaNames.DESCRIPTION: 'Adding some custom libraries like regex', # optional wml_client.software_specifications.ConfigurationMetaNames.BASE_SOFTWARE_SPECIFICATION: {'guid': base_id}, wml_client.software_specifications.ConfigurationMetaNames.PACKAGE_EXTENSIONS: [{'guid': pe_asset_id}] } # store the software spec ss_asset_details = wml_client.software_specifications.store(meta_props=ss_metadata) # get the id of the new asset asset_id = wml_client.software_specifications.get_id(ss_asset_details) # view new software specification details import pprint as pp ss_asset_details = wml_client.software_specifications.get_details(asset_id) print('Package extensions', pp.pformat( ss_asset_details['entity']['software_specification']['package_extensions'] ))
Sorun Giderme
Conda yml tabanlı özel kitaplık kuruluşu şu hatayla başarısız olduğunda: Encountered error while installing custom library
, aşağıdaki alternatifleri deneyin:
İlgili Python sürümü için Anaconda 'da bulunan aynı paketin farklı bir sürümünü kullanın.
Kitaplığı pip kullanarak pypi havuzundan kurun. conda yml kuruluş dosyası içeriğini düzenleyin:
name: <conda yml file name> dependencies: - numpy - pip: - pandas==1.2.5