przepływ tensorowy:: Sesja Klienta

#include <client_session.h>

Obiekt ClientSession umożliwia wywołującemu ocenę wykresu TensorFlow skonstruowanego przy użyciu interfejsu API języka C++.

Streszczenie

Przykład:

Scope root = Scope::NewRootScope();
auto a = Placeholder(root, DT_INT32);
auto c = Add(root, a, {41});

ClientSession session(root);
std::vector outputs;

Status s = session.Run({ {a, {1}} }, {c}, &outputs);
if (!s.ok()) { ... }  

Konstruktory i destruktory

ClientSession (const Scope & scope, const string & target)
Utwórz nową sesję, aby ocenić wykres zawarty w scope , łącząc się ze środowiskiem wykonawczym TensorFlow określonym przez target .
ClientSession (const Scope & scope)
To samo co powyżej, ale użyj pustego ciągu („”) jako specyfikacji docelowej.
ClientSession (const Scope & scope, const SessionOptions & session_options)
Utwórz nową sesję, konfigurując ją za pomocą session_options .
~ClientSession ()

Typy publiczne

CallableHandle typedef
int64
Uchwyt do podgrafu utworzony za pomocą ClientSession::MakeCallable() .
FeedType typedef
std::unordered_map< Output , Input::Initializer , OutputHash >
Typ danych reprezentujący źródła danych dla wywołania Run.

Funkcje publiczne

MakeCallable (const CallableOptions & callable_options, CallableHandle *out_handle)
Tworzy handle do wywoływania podgrafu zdefiniowanego przez callable_options .
ReleaseCallable ( CallableHandle handle)
Zwalnia zasoby powiązane z danym handle w tej sesji.
Run (const std::vector< Output > & fetch_outputs, std::vector< Tensor > *outputs) const
Oceń tensory w fetch_outputs .
Run (const FeedType & inputs, const std::vector< Output > & fetch_outputs, std::vector< Tensor > *outputs) const
To samo co powyżej, ale użyj mapowania w inputs jako kanałów.
Run (const FeedType & inputs, const std::vector< Output > & fetch_outputs, const std::vector< Operation > & run_outputs, std::vector< Tensor > *outputs) const
Jak powyżej. Dodatkowo uruchamia operacje ins run_outputs .
Run (const RunOptions & run_options, const FeedType & inputs, const std::vector< Output > & fetch_outputs, const std::vector< Operation > & run_outputs, std::vector< Tensor > *outputs, RunMetadata *run_metadata) const
Użyj run_options , aby włączyć profilowanie wydajności.
RunCallable ( CallableHandle handle, const std::vector< Tensor > & feed_tensors, std::vector< Tensor > *fetch_tensors, RunMetadata *run_metadata)
Wywołuje podgraf nazwany handle z podanymi opcjami i tensorami wejściowymi.
RunCallable ( CallableHandle handle, const std::vector< Tensor > & feed_tensors, std::vector< Tensor > *fetch_tensors, RunMetadata *run_metadata, const thread::ThreadPoolOptions & options)
Wywołuje podgraf nazwany handle z podanymi opcjami i tensorami wejściowymi.

Typy publiczne

Wywoływalny uchwyt

int64 CallableHandle

Uchwyt do podgrafu utworzony za pomocą ClientSession::MakeCallable() .

Typ kanału

std::unordered_map< Output, Input::Initializer, OutputHash > FeedType

Typ danych reprezentujący źródła danych dla wywołania Run.

To jest mapa obiektów Output zwracanych przez konstruktory op do wartości, którymi mają być zasilane. Zobacz Input::Initializer , aby uzyskać szczegółowe informacje na temat tego, czego można użyć jako wartości kanału.

Funkcje publiczne

Sesja Klienta

 ClientSession(
  const Scope & scope,
  const string & target
)

Utwórz nową sesję, aby ocenić wykres zawarty w scope , łącząc się ze środowiskiem wykonawczym TensorFlow określonym przez target .

Sesja Klienta

 ClientSession(
  const Scope & scope
)

To samo co powyżej, ale użyj pustego ciągu („”) jako specyfikacji docelowej.

Sesja Klienta

 ClientSession(
  const Scope & scope,
  const SessionOptions & session_options
)

Utwórz nową sesję, konfigurując ją za pomocą session_options .

MakeCallable

Status MakeCallable(
  const CallableOptions & callable_options,
  CallableHandle *out_handle
)

Tworzy handle do wywoływania podgrafu zdefiniowanego przez callable_options .

UWAGA: ten interfejs API jest nadal w fazie eksperymentalnej i może ulec zmianie.

ZwolnijCallable

Status ReleaseCallable(
  CallableHandle handle
)

Zwalnia zasoby powiązane z danym handle w tej sesji.

UWAGA: ten interfejs API jest nadal w fazie eksperymentalnej i może ulec zmianie.

Uruchomić

Status Run(
  const std::vector< Output > & fetch_outputs,
  std::vector< Tensor > *outputs
) const 

Oceń tensory w fetch_outputs .

Wartości są zwracane jako obiekty Tensor w outputs . Liczba i kolejność outputs będzie zgodna z fetch_outputs .

Uruchomić

Status Run(
  const FeedType & inputs,
  const std::vector< Output > & fetch_outputs,
  std::vector< Tensor > *outputs
) const 

To samo co powyżej, ale użyj mapowania w inputs jako kanałów.

Uruchomić

Status Run(
  const FeedType & inputs,
  const std::vector< Output > & fetch_outputs,
  const std::vector< Operation > & run_outputs,
  std::vector< Tensor > *outputs
) const 

Jak powyżej. Dodatkowo uruchamia operacje ins run_outputs .

Uruchomić

Status Run(
  const RunOptions & run_options,
  const FeedType & inputs,
  const std::vector< Output > & fetch_outputs,
  const std::vector< Operation > & run_outputs,
  std::vector< Tensor > *outputs,
  RunMetadata *run_metadata
) const 

Użyj run_options , aby włączyć profilowanie wydajności.

run_metadata , jeśli nie ma wartości null, jest wypełniany wynikami profilowania.

Uruchom wywoływalny

Status RunCallable(
  CallableHandle handle,
  const std::vector< Tensor > & feed_tensors,
  std::vector< Tensor > *fetch_tensors,
  RunMetadata *run_metadata
)

Wywołuje podgraf nazwany handle z podanymi opcjami i tensorami wejściowymi.

Kolejność tensorów w feed_tensors musi być zgodna z kolejnością nazw w CallableOptions::feed() , a kolejność tensorów w fetch_tensors będzie zgodna z kolejnością nazw w CallableOptions::fetch() podczas tworzenia tego podgrafu. UWAGA: ten interfejs API jest nadal w fazie eksperymentalnej i może ulec zmianie.

Uruchom wywoływalny

Status RunCallable(
  CallableHandle handle,
  const std::vector< Tensor > & feed_tensors,
  std::vector< Tensor > *fetch_tensors,
  RunMetadata *run_metadata,
  const thread::ThreadPoolOptions & options
)

Wywołuje podgraf nazwany handle z podanymi opcjami i tensorami wejściowymi.

Kolejność tensorów w feed_tensors musi być zgodna z kolejnością nazw w CallableOptions::feed() , a kolejność tensorów w fetch_tensors będzie zgodna z kolejnością nazw w CallableOptions::fetch() podczas tworzenia tego podgrafu. UWAGA: ten interfejs API jest nadal w fazie eksperymentalnej i może ulec zmianie.

~Sesja Klienta

 ~ClientSession()