[tensorflow] Introduce non-strict NodeDef names #94
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
NodeDef
name values can now be interpreted as "non-strict" by using a specialstr
type. This type tellsTFlowMetaOp.reify
to skip the unique name check and defer to the base graph, which will assign the next available unique name prefixed by the "non-strict" value (e.g."truediv"
to"truediv_1"
).This approach is something between the old handling of tensor names (pre #90) and the initial approach of allowing
None
-valued names. This way, we can at least specify the name prefix without forcing the uniqueness of the associated graph.Even so, I'm still on the fence about this one, because it brings back some form of meta/base graph inconsistency. Perhaps we could keep the
.obj
values for these kinds of objects empty, or (re)set the name once it's fully determined through.reify
. The latter would require better meta object cache invalidation, but we need that anyway.Closes #93.