ที่เก็บนี้มีหลักฐานการพิสูจน์โครงการแนวคิดสำหรับการจัดการ สตูดิโอการเรียนรู้ของเครื่อง Azure Machine
โซลูชันรวมถึง . NET Standard 2.0 Class Libraries ( DLLs ) ซึ่งสามารถรวมอยู่ในแอปพลิเคชัน. NET จำนวนมากและใช้สำหรับสเกลและทำให้พื้นที่ทำงานและการทดลองของ Azure ML Azure ML อัตโนมัติ
ในขณะนี้โครงการอยู่ในขั้นตอนการวางจำหน่ายก่อน - ระวังข้อผิดพลาดและข้อยกเว้นที่เป็นไปได้ก่อนที่จะใช้!
แนวคิดในการสร้างเครื่องมือในการจัดการ Azure Machine Learning Studio เกิดระหว่างการประชุมกับ SONETA/ENOVA365 หุ้นส่วนของเรา
คู่ของเรากำลังมองหาโซลูชั่นที่สามารถช่วยให้การทดลองอัตโนมัติและปรับขนาดการทดลองในพอร์ทัล Azure ML Studio หลังจากการวิเคราะห์เบื้องต้นของเครื่องมือที่มีอยู่ฉันค้นพบเครื่องมือเดียวที่ฉันใช้ในภายหลังเป็นฐานสำหรับโซลูชันปัจจุบัน ( ที่มา: โมดูล PowerShell สำหรับ Azure Machine Learning Studio & Web Services ) - โซลูชันนี้ได้รับการพัฒนาสำหรับผู้ใช้ PowerShell และการใช้รหัส C# (SDK) ช่วยฉันในการสร้างโครงการนี้
โซลูชันนี้ถูกสร้างขึ้นสำหรับการใช้ทรัพยากรสตูดิโอการเรียนรู้ของเครื่อง Azure - พื้นที่ทำงานการทดลองฐานข้อมูลโมดูล ฯลฯ เราต้องการบัญชีที่เหมาะสมเพื่อให้สามารถทำงานได้โดยใช้ไลบรารีนี้
เราสามารถสร้างพื้นที่ทำงานประเภทต่างๆได้เนื่องจากไลบรารีของเราควรจัดการกับบัญชีทุกประเภท
เยี่ยมชมเว็บไซต์หลักของ Azure Machine Learning Studio และสร้างบัญชีใหม่ - https://studio.azureml.net/
คุณควรสังเกตสิ่งนี้:

หรือสร้างบัญชี Azure ด้วยการสมัครสมาชิก
และสร้างพื้นที่ทำงานด้วยพอร์ทัล:




azureml.studio.dll และ azureml.studio.core.dll เป็นไลบรารีคลาสที่เขียนใน. NET Standard 2.0
"มาตรฐาน. NET เป็นข้อกำหนดที่เป็นทางการของ. NET APIs ที่ตั้งใจจะใช้ในการใช้งาน. NET ทั้งหมดแรงจูงใจที่อยู่เบื้องหลังมาตรฐาน. NET คือการสร้างความสม่ำเสมอมากขึ้นในระบบนิเวศ. NET ECMA 335 ยังคงสร้างความสม่ำเสมอสำหรับการใช้งาน.
คุณสามารถใช้ DLLs เหล่านี้ใน Particluar ได้อย่างไรก็ตามก่อนที่จะใช้ CONSIDER ตารางต่อไปนี้ของมาตรฐาน. NET ทุกรุ่นและแพลตฟอร์มที่รองรับ ( แหล่งที่มา:. NET มาตรฐาน ):
| . NET มาตรฐาน | 1.0 | 1.1 | 1.2 | 1.3 | 1.4 | 1.5 | 1.6 | 2.0 |
|---|---|---|---|---|---|---|---|---|
| . NET CORE | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 2.0 |
| . NET Framework | 4.5 | 4.5 | 4.5.1 | 4.6 | 4.6.1 | 4.6.1 | 4.6.1 | 4.6.1 |
| โมโน | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 5.4 |
| xamarin.ios | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.14 |
| xamarin.mac | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.8 |
| Xamarin.android | 7.0 | 7.0 | 7.0 | 7.0 | 7.0 | 7.0 | 7.0 | 8.0 |
| แพลตฟอร์ม Windows Universal | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0.16299 | 10.0.16299 | 10.0.16299 |
คุณอาจต้องใช้เครื่องมือเช่นรหัสรหัส ides หรือ notepads และไลบรารีที่คุณสามารถสร้างแอปพลิเคชัน. NET ในกรณีนี้ฉันใช้ Visual Studio ที่มีเฟรมเวิร์กที่เหมาะสมเพื่อเรียกใช้แอปพลิเคชันคอนโซลเป็นตัวอย่าง
( จากที่มา: https://github.com/hning86/azuremlps#configuration ):
ID เวิร์กสเปซ

โทเค็นการอนุญาตพื้นที่ทำงาน

ที่ตั้ง


using AzureML . Studio . Core . Models ;
namespace AzureML . Studio . ConsoleApplicationExample
{
class Program
{
static void Main ( string [ ] args )
{
var studioClient = new StudioClient ( ) ;
var workspaceSettings = WorkspaceSettings ( ) ;
workspaceSettings . WorkspaceId = "XYZ" ;
workspaceSettings . AuthorizationToken = "######" ;
workspaceSettings . Location = "" ;
var workspace = studioClient . GetWorkspace ( workspaceSettings ) ;
.. .
.. .
} var workspace = studioClient . GetWorkspace ( workspaceSettings ) ; var workspace = studioClient . GetWorkspace ( "XYZ" , "######" , "" ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaces = studioClient . GetWorkspaces ( workspacesSettings ) ; var users = studioClient . GetWorkspaceUsers ( workspaceSettings ) ; var users = studioClient . GetWorkspaceUsers ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var users = studioClient . GetWorkspaceUsers ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaceUsersdictionary = studioClient . GetWorkspacesUsers ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
var workspaceUsersdictionary = studioClient . GetWorkspacesUsers ( workspaces ) ; var workspaceUser = new WorkspaceUser (
new WorkspaceUserInternal ( ) {
User = new UserDetailInternal ( ) {
Email = "email" , Role = "role" } } ) ) ;
studioClient . AddUserToWorkspace ( workspaceSettings , workspaceUser ) ; studioClient . AddUserToWorkspace ( workspaceSettings , "email" , "role" ) ; studioClient . AddUserToWorkspace ( "XYZ" , "######" , "" , workspaceUser ) ; studioClient . AddUserToWorkspace ( "XYZ" , "######" , "" , "email" , "role" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . AddUserToWorkspace ( workspace , workspaceUser ) ; studioClient . AddUserToWorkspace ( workspace , "email" , "role" ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaceUser = new WorkspaceUser (
new WorkspaceUserInternal ( ) {
User = new UserDetailInternal ( ) {
Email = "email" , Role = "role" } } ) ) ;
studioClient . AddUserToWorkspaces ( workspacesSettings , workspaceUser ) ; studioClient . AddUserToWorkspaces ( workspacesSettings , "email" , "role" ) ; IEnumerable < Workspace > workspaces ;
studioClient . AddUserToWorkspaces ( workspaces , workspaceUser ) ; studioClient . AddUserToWorkspaces ( workspaces , "email" , "role" ) ; IEnumerable < WorkspaceUser > workspaceUsers ;
studioClient . AddUsersToWorkspace ( workspaceSettings , workspaceUsers ) ; studioClient . AddUsersToWorkspace ( "XYZ" , "######" , "" , workspaceUsers ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . AddUsersToWorkspace ( workspace , workspaceUsers ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
IEnumerable < WorkspaceUser > workspaceUsers ;
studioClient . AddUsersToWorkspaces ( workspacesSettings , workspaceUsers ) ; IEnumerable < Workspace > workspaces ;
studioClient . AddUsersToWorkspaces ( workspaces , workspaceUsers ) ; var datasets = studioClient . GetDatasetsFromWorkspace ( workspaceSettings ) ; var datasets = studioClient . GetDatasetsFromWorkspace ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var datasets = studioClient . GetDatasetsFromWorkspace ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaceDatasetsDictionary = studioClient . GetDatasetsFromWorkspaces ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
var workspaceDatasetsDictionary = studioClient . GetDatasetsFromWorkspaces ( workspaces ) ; studioClient . DeleteDatasetFromWorkspace ( workspaceSettings , "datasetFamilyId" ) ; var dataset = new Dataset ( ) ;
dataset . FamilyId = "datasetFamilyId" ;
studioClient . DeleteDatasetFromWorkspace ( workspaceSettings , dataset ) ; studioClient . DeleteDatasetFromWorkspace ( "XYZ" , "######" , "" , dataset ) ; studioClient . DeleteDatasetFromWorkspace ( "XYZ" , "######" , "" , "datasetFamilyId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DeleteDatasetFromWorkspace ( workspace , "datasetFamilyId" ) studioClient . DeleteDatasetFromWorkspace ( workspace , dataset ) ; IEnumerable < Dataset > datasets ;
studioClient . DeleteDatasetsFromWorkspace ( workspaceSettings , datasets ) ; studioClient . DeleteDatasetsFromWorkspace ( "XYZ" , "######" , "" , datasets ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DeleteDatasetsFromWorkspace ( workspace , datasets ) ; studioClient . DeleteAllDatasetsFromWorkspace ( workspaceSettings ) ; studioClient . DeleteAllDatasetsFromWorkspace ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DeleteAllDatasetsFromWorkspace ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
studioClient . DeleteAllDatasetsFromWorkspaces ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
studioClient . DeleteAllDatasetsFromWorkspaces ( workspaces ) ; studioClient . DownloadDatasetFromWorkspace ( workspaceSettings , "datasetId" , "fileName" ) ; studioClient . DownloadDatasetFromWorkspace ( "XYZ" , "######" , "" , "datasetId" , "fileName" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DownloadDatasetFromWorkspace ( workspace , "datasetId" , "fileName" ) ; var dataset = new Dataset ( ) ;
dataset . Id = "datasetId" ;
studioClient . DownloadDatasetFromWorkspace ( workspaceSettings , dataset , "fileName" ) ; studioClient . DownloadDatasetFromWorkspace ( "XYZ" , "######" , "" , dataset , "fileName" ) ; studioClient . DownloadDatasetFromWorkspace ( workspace , dataset , "fileName" ) ; IEnumerable < Dataset > datasets ;
studioClient . DownloadDatasetsFromWorkspace ( workspaceSettings , datasets ) ; studioClient . DownloadDatasetsFromWorkspace ( "XYZ" , "######" , "" , datasets ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DownloadDatasetsFromWorkspace ( workspace , datasets ) ; studioClient . DownloadAllDatasetsFromWorkspace ( workspaceSettings ) ; studioClient . DownloadAllDatasetsFromWorkspace ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DownloadAllDatasetsFromWorkspace ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
studioClient . DownloadAllDatasetsFromWorkspaces ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
studioClient . DownloadAllDatasetsFromWorkspaces ( workspaces ) ; enum: ResourceFileFormat.cs
ResourceFileFormat resourceFileFormat ;
async studioClient . UploadResourceToWorkspace ( workspaceSettings , resourceFileFormat , " filePath " ) ; async studioClient . UploadResourceToWorkspace ( "XYZ" , "######" , "" , resourceFileFormat , "filePath" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
async studioClient . UploadResourceToWorkspace ( workspace , resourceFileFormat , " filePath " ) ; enum: ResourceFileFormat.cs
IDictionary < string , ResourceFileFormat > filePathResourceFileFormatDict ;
studioClient . UploadResourcesToWorkspace ( workspaceSettings , filePathResourceFileFormatDict ) ; studioClient . UploadResourcesToWorkspace ( "XYZ" , "######" , "" , filePathResourceFileFormatDict ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . UploadResourcesToWorkspace ( workspace , filePathResourceFileFormatDict ) ; enum: ResourceFileFormat.cs
IEnumerable < WorkspaceSettings > workspacesSettings ;
ResourceFileFormat resourceFileFormat ;
studioClient . UploadResourceToWorkspaces ( workspacesSettings , resourceFileFormat , "filePath" ) ; IEnumerable < Workspace > workspaces ;
studioClient . UploadResourceToWorkspaces ( workspaces , resourceFileFormat , "filePath" ) ; enum: ResourceFileFormat.cs
IEnumerable < WorkspaceSettings > workspacesSettings ;
IDictionary < string , ResourceFileFormat > filePathResourceFileFormatDict ;
studioClient . UploadResourcesToWorkspaces ( workspacesSettings , filePathResourceFileFormatDict ) ; IEnumerable < Workspace > workspaces ;
studioClient . UploadResourcesToWorkspaces ( workspaces , filePathResourceFileFormatDict ) ; var experiment = studioClient . GetExperiment ( workspaceSettings , "experimentId" ) ; var experiment = studioClient . GetExperiment ( "XYZ" , "######" , "" , "experimentId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var experiment = studioClient . GetExperiment ( workspace , "experimentId" ) ; IEnumerable < string > experimentsIds ;
var experiments = studioClient . GetExperiments ( workspaceSettings , experimentsIds ) ; var experiments = studioClient . GetExperiments ( "XYZ" , "######" , "" , experimentsIds ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var experiments = studioClient . GetExperiments ( workspace , experimentsIds ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaceExperimentsDict = studioClient . GetAllExperiments ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
var workspaceExperimentsDict = studioClient . GetAllExperiments ( workspaces ) ; var experiments = studioClient . GetAllExperiments ( workspaceSettings ) ; var experiments = studioClient . GetAllExperiments ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var experiments = studioClient . GetAllExperiments ( workspace ) ; studioClient . RunExperiment ( workspaceSettings , "experimentId" ) ; studioClient . RunExperiment ( "XYZ" , "######" , "" , "experimentId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . RunExperiment ( workspace , "experimentId" ) ; var experiment = new Experiment ;
experiment . ExperimentId = "experimentId" ;
studioClient . RunExperiment ( workspaceSettings , experiment ) ; studioClient . RunExperiment ( "XYZ" , "######" , "" , experiment ) ; studioClient . RunExperiment ( workspace , experiment ) ; IEnumerable < string > experimentsIds ;
studioClient . RunExperiments ( workspaceSettings , experimentsIds ) ; studioClient . RunExperiments ( "XYZ" , "######" , "" , experimentsIds ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . RunExperiments ( workspace , experimentsIds ) ; IEnumerable < Experiment > experiments ;
studioClient . RunExperiments ( workspaceSettings , experiments ) ; studioClient . RunExperiments ( "XYZ" , "######" , "" , experiments ) ; studioClient . RunExperiments ( workspace , experiments ) ; studioClient . RunAllExperiments ( workspaceSettings ) ; studioClient . RunAllExperiments ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . RunAllExperiments ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
studioClient . RunAllExperiments ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
studioClient . RunAllExperiments ( workspaces ) ; studioClient . SaveExperiment ( workspaceSettings , "experimentId" ) ; studioClient . SaveExperiment ( "XYZ" , "######" , "" , "experimentId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . SaveExperiment ( workspace , "experimentId" ) ; var experiment = new Experiment ;
experiment . ExperimentId = "experimentId" ;
studioClient . SaveExperiment ( workspaceSettings , experiment ) ; studioClient . SaveExperiment ( "XYZ" , "######" , "" , experiment ) ; studioClient . SaveExperiment ( workspace , experiment ) ; IEnumerable < string > experimentsIds ;
studioClient . SaveExperiments ( workspaceSettings , experimentsIds ) ; studioClient . SaveExperiments ( "XYZ" , "######" , "" , experimentsIds ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . SaveExperiments ( workspace , experimentsIds ) ; IEnumerable < Experiment > experiments ;
studioClient . SaveExperiments ( workspaceSettings , experiments ) ; studioClient . SaveExperiments ( "XYZ" , "######" , "" , experiments ) ; studioClient . SaveExperiments ( workspace , experiments ) ; studioClient . SaveAllExperiments ( workspaceSettings ) ; studioClient . SaveAllExperiments ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . SaveAllExperiments ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
studioClient . SaveAllExperiments ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
studioClient . SaveAllExperiments ( workspaces ) ; studioClient . SaveExperimentAs ( workspaceSettings , "experimentId" , "newName" ) ; studioClient . SaveExperimentAs ( "XYZ" , "######" , "" , "experimentId" , "newName" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . SaveExperimentAs ( workspace , "experimentId" , "newName" ) ; var experiment = new Experiment ;
experiment . ExperimentId = "experimentId" ;
studioClient . SaveExperimentAs ( workspaceSettings , experiment , "newName" ) ; studioClient . SaveExperimentAs ( "XYZ" , "######" , "" , experiment , "newName" ) ; studioClient . SaveExperimentAs ( workspace , experiment , "newName" ) ; studioClient . DeleteExperiment ( workspaceSettings , "experimentId" ) ; studioClient . DeleteExperiment ( "XYZ" , "######" , "" , "experimentId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DeleteExperiment ( workspace , "experimentId" ) ; var experiment = new Experiment ;
experiment . ExperimentId = "experimentId" ;
studioClient . DeleteExperiment ( workspaceSettings , experiment ) ; studioClient . DeleteExperiment ( "XYZ" , "######" , "" , experiment ) ; studioClient . DeleteExperiment ( workspace , experiment ) ; IEnumerable < string > experimentsIds ;
studioClient . DeleteExperiments ( workspaceSettings , experimentsIds ) ; studioClient . DeleteExperiments ( "XYZ" , "######" , "" , experimentsIds ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DeleteExperiments ( workspace , experimentsIds ) ; IEnumerable < Experiment > experiments ;
studioClient . DeleteExperiments ( workspaceSettings , experiments ) ; studioClient . DeleteExperiments ( "XYZ" , "######" , "" , experiments ) ; studioClient . DeleteExperiments ( workspace , experiments ) ; studioClient . DeleteAllExperiments ( workspaceSettings ) ; studioClient . DeleteAllExperiments ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . DeleteAllExperiments ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
studioClient . DeleteAllExperiments ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
studioClient . DeleteAllExperiments ( workspaces ) ; studioClient . ExportExperiment ( workspaceSettings , "experimentId" ) ; studioClient . ExportExperiment ( "XYZ" , "######" , "" , "experimentId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . ExportExperiment ( workspace , "experimentId" ) ; var experiment = new Experiment ;
experiment . ExperimentId = "experimentId" ;
studioClient . ExportExperiment ( workspaceSettings , experiment ) ; studioClient . ExportExperiment ( "XYZ" , "######" , "" , experiment ) ; studioClient . ExportExperiment ( workspace , experiment ) ; studioClient . ExportExperiment ( workspaceSettings , "experimentId" , "outputFilePath" ) ; studioClient . ExportExperiment ( "XYZ" , "######" , "" , "experimentId" , "outputFilePath" ) ; studioClient . ExportExperiment ( workspace , "experimentId" , "outputFilePath" ) ; studioClient . ExportExperiment ( workspaceSettings , experiment , "outputFilePath" ) ; studioClient . ExportExperiment ( "XYZ" , "######" , "" , experiment , "outputFilePath" ) ; studioClient . ExportExperiment ( workspace , experiment , "outputFilePath" ) ; IEnumerable < string > experimentsIds ;
studioClient . ExportExperiments ( workspaceSettings , experimentsIds ) ; studioClient . ExportExperiments ( "XYZ" , "######" , "" , experimentsIds ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . ExportExperiments ( workspace , experimentsIds ) ; IEnumerable < Experiment > experiments ;
studioClient . ExportExperiments ( workspaceSettings , experiments ) ; studioClient . ExportExperiments ( "XYZ" , "######" , "" , experiments ) ; studioClient . ExportExperiments ( workspace , experiments ) ; studioClient . ExportAllExperiments ( workspaceSettings ) ; studioClient . ExportAllExperiments ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . ExportAllExperiments ( workspace ) ; studioClient . ImportExperiment ( workspaceSettings , "inputFilePath" ) ; studioClient . ImportExperiment ( "XYZ" , "######" , "" , "inputFilePath" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . ImportExperiment ( workspace , "inputFilePath" ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
studioClient . ImportExperiment ( workspacesSettings , "inputFilePath" ) ; IEnumerable < Workspace > workspaces ;
studioClient . ImportExperiment ( workspaces , "inputFilePath" ) ; studioClient . ImportExperiment ( workspaceSettings , "inputFilePath" , "newName" ) ; studioClient . ImportExperiment ( "XYZ" , "######" , "" , "inputFilePath" , "newName" ) ; studioClient . ImportExperiment ( workspace , "inputFilePath" , "newName" ) ; studioClient . ImportExperiment ( workspacesSettings , "inputFilePath" , "newName" ) ; studioClient . ImportExperiment ( workspaces , "inputFilePath" , "newName" ) ; studioClient . CopyExperiment ( sourceWorkspaceSettings , "experimentId" , destinationWorkspaceSettings ) ; var experiment = new Experiment ;
experiment . ExperimentId = "experimentId" ;
studioClient . CopyExperiment ( sourceWorkspaceSettings , experiment , destinationWorkspaceSettings ) ; IEnumerable < string > experimentsIds ;
studioClient . CopyExperiments ( sourceWorkspaceSettings , experimentsIds , destinationWorkspaceSettings ) ; IEnumerable < Experiment > experiments ;
studioClient . CopyExperiments ( sourceWorkspaceSettings , experiments , destinationWorkspaceSettings ) ; studioClient . CopyAllExperiments ( sourceWorkspaceSettings , destinationWorkspaceSettings ) ; var userAsset = studioClient . GetTrainedModel ( workspaceSettings , "userAssetId" ) ; var userAsset = studioClient . GetTrainedModel ( "XYZ" , "######" , "" , "userAssetId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var userAsset = studioClient . GetTrainedModel ( workspace , "userAssetId" ) ; var userAssets = studioClient . GetTrainedModels ( workspaceSettings ) ; var userAssets = studioClient . GetTrainedModels ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var userAssets = studioClient . GetTrainedModels ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaceUserAssetsDict = studioClient . GetTrainedModels ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
var workspaceUserAssetsDict = studioClient . GetTrainedModels ( workspaces ) ; var userAsset = studioClient . GetTransform ( workspaceSettings , "userAssetId" ) ; var userAsset = studioClient . GetTransform ( "XYZ" , "######" , "" , "userAssetId" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var userAsset = studioClient . GetTransform ( workspace , "userAssetId" ) ; var userAssets = studioClient . GetTransforms ( workspaceSettings ) ; var userAssets = studioClient . GetTransforms ( "XYZ" , "######" , "" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
var userAssets = studioClient . GetTransforms ( workspace ) ; IEnumerable < WorkspaceSettings > workspacesSettings ;
var workspaceUserAssetsDict = studioClient . GetTransforms ( workspacesSettings ) ; IEnumerable < Workspace > workspaces ;
var workspaceUserAssetsDict = studioClient . GetTransforms ( workspaces ) ; studioClient . ModifyNodeParameter ( workspaceSettings , "experimentId" , "nodeNameComment" , "nodeParameterName" , "value" , "saveAs" ) ; studioClient . ModifyNodeParameter ( "XYZ" , "######" , "" , "experimentId" , "nodeNameComment" , "nodeParameterName" , "value" , "saveAs" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . ModifyNodeParameter ( workspace , "experimentId" , "nodeNameComment" , "nodeParameterName" , "value" , "saveAs" ) ; studioClient . ModifyNodeEdge ( workspaceSettings , "experimentId" , "sourceNodeComment" , "destinationNodeComment" , "saveAs" ) ; studioClient . ModifyNodeEdge ( "XYZ" , "######" , "" , "experimentId" , "sourceNodeComment" , "destinationNodeComment" , "saveAs" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . ModifyNodeEdge ( workspace , "experimentId" , "sourceNodeComment" , "destinationNodeComment" , "saveAs" ) ; studioClient . AddModule ( workspaceSettings , "experimentId" , "nameOfNewModule" , "saveAs" ) ; studioClient . AddModule ( "XYZ" , "######" , "" , "experimentId" , "nameOfNewModule" , "saveAs" ) ; var workspace = new Workspace ( ) ;
workspace . WorkspaceId = "XYZ" ;
workspace . AuthorizationToken . PrimaryToken = "######" ;
workspace . Region = "" ;
studioClient . AddModule ( workspace , "experimentId" , "nameOfNewModule" , "saveAs" ) ;รหัสหลายบรรทัดหายไปอย่างไรก็ตามในสถานะนี้คุณจะสามารถดำเนินการพื้นฐานได้มากมาย
มีโครงการทดสอบหน่วย แต่มันว่างเปล่าและจะเสร็จสิ้นในการพัฒนาครั้งต่อไปของการพัฒนา จนถึงตอนนี้ฉันได้ทดสอบการดำเนินการที่สำคัญบางอย่างในแอปพลิเคชันคอนโซล
static void CopyExperimentFromWorkspaceToWorkspaceSamePricingSameRegion ( StudioClient studioClient )
{
var sourceWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
var destinationWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( sourceWorkspace , experimentId ) ;
studioClient . CopyExperiment ( sourceWorkspace , experiment , destinationWorkspace ) ;
} static void CopyExperimentFromWorkspaceToWorkspaceDifferentPricingSameRegion ( StudioClient studioClient )
{
var sourceWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
var destinationWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( sourceWorkspace , experimentId ) ;
studioClient . CopyExperiment ( sourceWorkspace , experiment , destinationWorkspace ) ;
} static void CopyExperimentFromWorkspaceToWorkspaceSamePricingDifferentRegion ( StudioClient studioClient )
{
var sourceWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
var destinationWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( sourceWorkspace , experimentId ) ;
studioClient . ExportExperiment ( sourceWorkspace , experiment ) ;
var inputFilePath = @"C:...experimentFileName" ;
studioClient . ImportExperiment ( destinationWorkspace , inputFilePath , "Copied from other region" ) ;
} static void CopyExperimentFromWorkspaceToWorkspaceDifferentPricingDifferentRegion ( StudioClient studioClient )
{
var sourceWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
var destinationWorkspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( sourceWorkspace , experimentId ) ;
studioClient . ExportExperiment ( sourceWorkspace , experiment ) ;
var inputFilePath = @"C:...experimentFileName" ;
studioClient . ImportExperiment ( destinationWorkspace , inputFilePath , "Copied from other region" ) ;
}นั่นคือสิ่งที่ดูเหมือนจากมุมมองของพอร์ทัล:






แก้ไขค่าพารามิเตอร์โหนดของการทดสอบและเขียนทับการทดสอบ:
static void ModifyExperimentNodeAndOverwrite ( StudioClient studioClient )
{
var workspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( workspace , experimentId ) ;
studioClient . ModifyNodeParameter ( workspace , experimentId , "Import Data Comment" , "Database Query" , "SELECT Name, ProductNumber, CAST(Weight AS float) Weight r n FROM SalesLT.Product" ) ;
}ปรับเปลี่ยนค่าพารามิเตอร์โหนดของการทดสอบและบันทึกเป็นการทดสอบใหม่:
static void ModifyExperimentNodeAndSaveAsAnotherExperiment ( StudioClient studioClient )
{
var workspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = "West Europe"
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( workspace , experimentId ) ;
studioClient . ModifyNodeParameter ( workspace , experimentId , "Import Data Comment" , "Database Query" , "SELECT Name, Color, CAST(Weight AS float) Weight r n FROM SalesLT.Product" , "Import Data - Experiment 2" ) ;
}จากมุมมองของพอร์ทัล:




แก้ไขการเชื่อมต่อภายในโมดูล (โหนด) และเขียนทับการทดสอบ:
static void ModifyConnectionWithinTheModulesAndOverwrite ( StudioClient studioClient )
{
var workspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = ""
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( workspace , experimentId ) ;
studioClient . ModifyNodeEdge ( workspace , experimentId , "CSV" , "Dataset" ) ;
}แก้ไขการเชื่อมต่อภายในโมดูล (โหนด) และบันทึกเป็นการทดลองใหม่:
static void ModifyConnectionWithinTheModulesAndSaveAsAnotherExperiment ( StudioClient studioClient )
{
var workspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = ""
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( workspace , experimentId ) ;
studioClient . ModifyNodeEdge ( workspace , experimentId , "CSV" , "Dataset" , "Connect Modules - Experiment 2" ) ;
}AAAND จากมุมมองของพอร์ทัล:





การเพิ่มโมดูลใหม่ในการทดลองและเขียนทับ:
static void AddModuleToTheExperimentAndOverwrite ( StudioClient studioClient )
{
var workspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = ""
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( workspace , experimentId ) ;
var nameOfNewModule = "" ;
//nameOfNewModule hard-coded
//TODO: make a dictionary of <Module Names, Module IDs>
//EXAMPLES:
//Convert to TSV: 506153734175476c4f62416c57734963.1cdbcda42ece49088b87e6b636258d3d.v1-default-1644
//Convert to Dataset: 506153734175476c4f62416c57734963.72bf58e0fc874bb19704f1805003b975.v1-default-1642
studioClient . AddModule ( workspace , experimentId , nameOfNewModule ) ;
}การเพิ่มโมดูลใหม่ในการทดสอบและบันทึกเป็นใหม่:
static void AddModuleToTheExperimentAndSaveAsAnotherExperiment ( StudioClient studioClient )
{
var workspace = new WorkspaceSettings ( )
{
WorkspaceId = "" ,
AuthorizationToken = "" ,
Location = ""
} ;
//var experiments = studioClient.GetExperiments(sourceWorkspace);
var experimentId = "" ;
var experiment = studioClient . GetExperiment ( workspace , experimentId ) ;
var nameOfNewModule = "" ;
//nameOfNewModule hard-coded
//TODO: make a dictionary of <Module Names, Module IDs>
//EXAMPLES:
//Convert to TSV: 506153734175476c4f62416c57734963.1cdbcda42ece49088b87e6b636258d3d.v1-default-1644
//Convert to Dataset: 506153734175476c4f62416c57734963.72bf58e0fc874bb19704f1805003b975.v1-default-1642
studioClient . AddModule ( workspace , experimentId , nameOfNewModule , "Connect Modules - Experiment 2" ) ;
}ซอร์สโค้ดของเว็บไซต์และมุมมองของพอร์ทัล:


มีความคิดมากมายที่ฉันมีในระหว่างการเขียนโปรแกรมนี้ ส่วนใหญ่มันยากที่จะสอดคล้องกับวิธีการตั้งชื่อคลาสหรือแม้แต่การอธิบายสรุปของแต่ละอินสแตนซ์ ฉันพยายามตรวจสอบให้แน่ใจว่ารหัสที่ฉันสร้างขึ้นนั้นไม่ได้เป็นสปาเก็ตตี้ การแก้ปัญหายังอยู่ในระหว่างการพัฒนาและจำเป็นต้องมีการสนับสนุนอย่างต่อเนื่อง! แน่นอนว่า refactoring เป็นสิ่งจำเป็นในหลาย ๆ ด้านและควรใช้หลักการน้อย ยิ่งกว่านั้นมีวิธีการน้อยที่ยังคงเป็นปริศนาสำหรับฉันและฉันทิ้งไว้ใน SDK ( ManagementService.cs ) - คุณต้องหาพวกเขา!
ยิ่งไปกว่านั้นฉันพบข้อผิดพลาดหลายประการของพอร์ทัลเอง ข้อบกพร่องเหล่านี้ถูกซ่อนไว้ที่ไหนสักแห่งในการดำเนินการคัดลอก/บันทึกเหล่านั้น
ดังที่ฉันเขียนไว้ที่การขอทาน-มันเป็นเวอร์ชันก่อนการเปิดตัวที่มีข้อผิดพลาดมากมายและข้อยกเว้นที่ไม่ได้จัดการ (การใช้งานเหล่านี้อยู่ในรายการสิ่งที่ต้องทำของฉัน) ระวัง !!!
อย่าลังเลที่จะมีส่วนร่วมส้อมแก้ไขร่วมมือกัน ฉันหวังว่าห้องสมุดนี้จะเป็นประโยชน์