diff options
author | Jonathan Hseu <jhseu@google.com> | 2017-02-14 17:30:02 -0800 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2017-02-14 17:47:15 -0800 |
commit | dd51f989b8ca738da8a04970857597ed68fa1a15 (patch) | |
tree | 6f7738c4d94c45b958f9d279ddaf28c71077ba57 /tensorflow/go/session.go | |
parent | b5d6636e5d60dc3094285d097264c3d1cf250a53 (diff) |
Go: Add a SavedModel type
Change: 147543652
Diffstat (limited to 'tensorflow/go/session.go')
-rw-r--r-- | tensorflow/go/session.go | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/tensorflow/go/session.go b/tensorflow/go/session.go index c29b6e0b76..dd629441ef 100644 --- a/tensorflow/go/session.go +++ b/tensorflow/go/session.go @@ -59,44 +59,6 @@ func NewSession(graph *Graph, options *SessionOptions) (*Session, error) { return s, nil } -// LoadSavedModel creates a new Session from a model previously exported to a -// directory on disk. -// -// Exported models contain a set of graphs and variable values. Tags in the -// model identify a single graph. LoadSessionFromSavedModel initializes a -// session with the identified graph and with variables initialized to saved -// values. -// -// The tensorflow package currently does not have the ability to export a model -// to a directory from Go. This function thus currently targets loading models -// exported in other languages, such as using tf.saved_model.builder in Python. -// See: -// https://www.tensorflow.org/code/tensorflow/python/saved_model/ -func LoadSavedModel(exportDir string, tags []string, options *SessionOptions) (*Session, *Graph, error) { - status := newStatus() - cOpt := options.c() - cExportDir := C.CString(exportDir) - cTags := make([]*C.char, len(tags)) - for i := range tags { - cTags[i] = C.CString(tags[i]) - } - graph := NewGraph() - // TODO(jhseu): Add support for run_options and meta_graph_def. - cSess := C.TF_LoadSessionFromSavedModel(cOpt, nil, cExportDir, (**C.char)(unsafe.Pointer(&cTags[0])), C.int(len(cTags)), graph.c, nil, status.c) - for i := range cTags { - C.free(unsafe.Pointer(cTags[i])) - } - C.free(unsafe.Pointer(cExportDir)) - C.TF_DeleteSessionOptions(cOpt) - - if err := status.Err(); err != nil { - return nil, nil, err - } - s := &Session{c: cSess} - runtime.SetFinalizer(s, func(s *Session) { s.Close() }) - return s, graph, nil -} - // Run the graph with the associated session starting with the supplied inputs. // inputs and outputs may be set to nil. Runs, but does not return Tensors // for operations specified in targets. |