Translation not up to date
Aby załadować model lub kod Python podczas tworzenia wdrożenia w celu wygenerowania predykcji w trybie z połączeniem, w czasie rzeczywistym należy utworzyć wdrożenie w trybie z połączeniem (zwane również Web service
). Jeśli na przykład zostanie utworzony model klasyfikacji w celu przetestowania, czy nowy klient może uczestniczyć w promocji sprzedaży, można utworzyć wdrożenie w trybie z połączeniem dla modelu. Następnie można wprowadzić nowe dane klienta, aby uzyskać natychmiastową predykcję.
Obsługiwane środowiska
Wdrażanie w trybie z połączeniem jest obsługiwane dla tych środowisk:
- PMML
- Funkcja Python
- PyTorch-Onnx
- Tensorflow
- Scikit-nauka
- Spark MLlib
- SPSS
- XGBoost
Możliwe jest utworzenie wdrożenia sieciowego z poziomu interfejsu użytkownika lub programowo.
Aby wysłać dane ładunku do zasobu aplikacyjnego, który został wdrożony w trybie z połączeniem (na przykład w celu sklasyfikowania danych lub dokonania predykcji z danych), należy znać adres URL punktu końcowego wdrożenia. Szczegółowe informacje na ten temat zawiera sekcja Pobieranie punktu końcowego wdrażania.
Dodatkowo można:
Tworzenie wdrożenia w trybie z połączeniem z poziomu interfejsu użytkownika
- W obszarze wdrażania kliknij nazwę zasobu aplikacyjnego, który ma zostać wdrożony. Zostanie otwarta strona szczegółów.
- Kliknij opcję Utwórz wdrożenie.
- Jako typ wdrożenia wybierz opcję Tryb z połączeniem .
- Podaj nazwę i opis wdrożenia.
- Aby określić nazwę, która ma być używana zamiast identyfikatora wdrożenia, należy użyć pola Nazwa serving .
- Poprawność nazwy jest sprawdzana jako unikalna w danym regionie chmury IBM (wszystkie nazwy w określonym regionie współużytkują globalną przestrzeń nazw).
- Nazwa musi zawierać tylko następujące znaki: [a-z,0-9, _] i musi mieć długość maksymalnie 36 znaków.
- Nazwa obsługi działa tylko jako część adresu URL predykcji. W innych przypadkach należy nadal używać identyfikatora wdrożenia.
- Opcjonalnie: Jeśli wdrażasz, można wybrać konkretną specyfikację sprzętową :
- Funkcje Python
- Modele Tensorflow
- Modele z niestandardowymi specyfikacjami oprogramowania
- Kliknij przycisk Utwórz , aby utworzyć wdrożenie.
Programowo tworzenie wdrożenia w trybie z połączeniem
Odsyłacze do przykładowych notebooków można znaleźć w sekcji Przykłady i przykłady uczenia maszynowego . These notebooks demonstrate creating online deployments that use the Watson Machine Learning Interfejs REST API and Watson Machine Learning Biblioteka klienta Python.
Pobieranie punktu końcowego wdrożenia w trybie z połączeniem
Adres URL punktu końcowego wdrożenia można znaleźć w następujący sposób:
- Na karcie Deployments (Wdrożenia) w obszarze użytkownika kliknij nazwę wdrożenia. Zostanie otwarta strona z informacjami o wdrożeniu. Punkt końcowy można znaleźć w tym miejscu.
- Korzystanie z klienta Watson Machine Learning Python :
- Wyświetl listę wdrożeń, wywołując metodę klienta Python
client.deployments.list()
- Znajdź wiersz z wdrożeniem. Adres URL punktu końcowego wdrażania jest wyświetlany w kolumnie
url
.
- Wyświetl listę wdrożeń, wywołując metodę klienta Python
Uwagi:
- Jeśli do wdrożenia została dodana opcja Nazwa obsługi , na ekranie wyświetlane są dwa alternatywne adresy URL punktów końcowych, jeden zawierający identyfikator wdrożenia, a drugi zawierający nazwę serwera końcowego. Z wdrożeniem można użyć jednego z tych adresów URL.
- Na karcie Skorowidz interfejsu API są również wyświetlane fragmenty kodu w różnych językach programowania ilustrujące sposób uzyskiwania dostępu do wdrożenia.
Więcej informacji na temat punktów końcowych można znaleźć w sekcji Adresy URL punktu końcowego.
Testowanie wdrożenia w trybie z połączeniem
Na karcie Deployments (Wdrożenia) w obszarze użytkownika kliknij nazwę wdrożenia. Zostanie otwarta strona z informacjami o wdrożeniu. Zakładka Test udostępnia miejsce, w którym można wprowadzać dane i uzyskać z powrotem predykcję z wdrożonego modelu. Jeśli model ma zdefiniowany schemat, na ekranie jest wyświetlany formularz. W formularzu można wprowadzić dane w jeden z następujących sposobów:-Wprowadź dane bezpośrednio w formularzu-Pobierz szablon CSV, wprowadź wartości, a następnie prześlij dane wejściowe-Prześlij plik zawierający dane wejściowe z lokalnego systemu plików lub z obszaru-Zmień na kartę JSON i wprowadź dane wejściowe jako kod JSON niezależnie od metody, dane wejściowe muszą być zgodne ze schematem modelu. Wprowadź dane wejściowe i uzyskaj wynik lub predykcja z powrotem.
Przykładowy kod wdrożenia
W przypadku wprowadzenia kodu JSON jako ładunku lub danych wejściowych dla wdrożenia dane wejściowe muszą być zgodne ze schematem modelu. Pola 'pola' muszą być zgodne z nagłówkami kolumn dla danych, a 'wartości' muszą zawierać dane, w tej samej kolejności. Należy użyć formatu:
{"input_data":[{
"fields": [<field1>, <field2>, ...],
"values": [[<value1>, <value2>, ...]]
}]}
Zapoznaj się z poniższym przykładem:
{"input_data":[{
"fields": ["PassengerId","Pclass","Name","Sex","Age","SibSp","Parch","Ticket","Fare","Cabin","Embarked"],
"values": [[1,3,"Braund, Mr. Owen Harris",0,22,1,0,"A/5 21171",7.25,null,"S"]]
}]}
Uwagi:
- Wszystkie łańcuchy są ujęte w znaki podwójnego cudzysłowu. Notacja Python dla słowników wygląda podobnie, ale łańcuchy Python w pojedynczych znakach cudzysłowu nie są akceptowane w danych JSON.
- Brakujące wartości mogą być oznaczone
null
. - Istnieje możliwość określenia specyfikacji sprzętu dla wdrożenia w trybie z połączeniem, na przykład w przypadku skalowania wdrożenia.
Przygotowywanie ładunku zgodnego ze schematem istniejącego modelu
Zapoznaj się z tym przykładowym kodem:
model_details = client.repository.get_details("<model_id>") # retrieves details and includes schema
columns_in_schema = []
for i in range(0, len(model_details['entity']['schemas']['input'][0].get('fields'))):
columns_in_schema.append(model_details['entity']['schemas']['input'][0].get('fields')[i]['name'])
X = X[columns_in_schema] # where X is a pandas dataframe that contains values to be scored
#(...)
scoring_values = X.values.tolist()
array_of_input_fields = X.columns.tolist()
payload_scoring = {"input_data": [{"fields": [array_of_input_fields],"values": scoring_values}]}
Uzyskiwanie dostępu do szczegółów wdrożenia elektronicznego
Aby uzyskać dostęp do szczegółów wdrożenia w trybie z połączeniem: na karcie Deployments (Wdrożenia) w obszarze użytkownika kliknij nazwę wdrożenia, a następnie kliknij kartę Deployment details (Szczegóły wdrożenia). Karta Szczegóły wdrożenia zawiera konkretne informacje związane z aktualnie otwartym wdrożeniem w trybie z połączeniem i umożliwia dodanie modelu do spisu zasobów w celu włączenia śledzenia aktywności i porównania modeli.
Dodatkowe informacje
Szczegółowe informacje na temat zarządzania zadaniami wdrażania oraz aktualizowania, skalowania lub usuwania wdrożenia w trybie z połączeniem można znaleźć w sekcji Zasoby w obszarach wdrażania .
Temat nadrzędny: Zarządzanie wdrożeniami predykcyjnymi