Files
tensorflow--tensorflow/tensorflow/lite/python/metrics/BUILD
T
wehub-resource-sync 8a852e4b4e
cffconvert / validate (push) Has been skipped
License Check / license-check (push) Failing after 2s
chore: import upstream snapshot with attribution
2026-07-13 12:14:16 +08:00

159 lines
5.1 KiB
Python

load("@rules_cc//cc:cc_library.bzl", "cc_library")
load("//tensorflow:pytype.default.bzl", "pytype_strict_library")
load("//tensorflow:tensorflow.bzl", "py_test")
load("//tensorflow:tensorflow.default.bzl", "get_compatible_with_portable", "if_portable", "pybind_extension")
package(
# copybara:uncomment default_applicable_licenses = ["//tensorflow:LICENSE"],
default_visibility = ["//visibility:public"],
licenses = ["notice"],
)
cc_library(
name = "metrics_wrapper_lib",
srcs = if_portable(
if_false = ["wrapper/metrics_wrapper_nonportable.cc"],
if_true = ["wrapper/metrics_wrapper_portable.cc"],
),
hdrs = ["wrapper/metrics_wrapper.h"],
compatible_with = get_compatible_with_portable(),
visibility = ["//visibility:private"],
deps = [
"@xla//third_party/python_runtime:headers",
] + if_portable(
if_false = [
"//learning/brain/google/monitoring:metrics_exporter",
],
if_true = [],
),
)
pybind_extension(
name = "_pywrap_tensorflow_lite_metrics_wrapper",
srcs = ["wrapper/metrics_wrapper_pybind11.cc"],
hdrs = ["wrapper/metrics_wrapper.h"],
common_lib_packages = [
"litert/python",
"tensorflow/lite/python",
],
compatible_with = get_compatible_with_portable(),
enable_stub_generation = True,
pytype_srcs = [
"_pywrap_tensorflow_lite_metrics_wrapper.pyi",
],
visibility = ["//visibility:public"],
wrap_py_init = True,
deps = [
":metrics_wrapper_lib",
"//tensorflow/python/lib/core:pybind11_lib",
"@com_google_protobuf//:protobuf",
"@pybind11",
"@xla//third_party/python_runtime:headers",
],
)
pytype_strict_library(
name = "metrics_wrapper",
srcs = ["wrapper/metrics_wrapper.py"],
deps = [
":_pywrap_tensorflow_lite_metrics_wrapper",
"//tensorflow/compiler/mlir/lite/metrics:converter_error_data_proto_py",
"//tensorflow/compiler/mlir/lite/python:wrap_converter",
],
)
py_test(
name = "metrics_wrapper_test",
srcs = ["wrapper/metrics_wrapper_test.py"],
strict_deps = True,
deps = [
":metrics_wrapper",
#internal proto upb dep
"//tensorflow:tensorflow_py",
"//tensorflow/lite/python:convert",
"//tensorflow/lite/python:lite",
"//tensorflow/python/framework:test_lib",
"//tensorflow/python/platform:client_testlib",
],
)
pytype_strict_library(
name = "metrics_interface",
srcs = ["metrics_interface.py"],
compatible_with = get_compatible_with_portable(),
visibility = ["//tensorflow/lite/tools/pip_package:__subpackages__"],
)
genrule(
name = "metrics_py_gen",
srcs = if_portable(
if_false = ["metrics_nonportable.py"],
if_true = ["metrics_portable.py"],
),
outs = ["metrics.py"],
cmd = (
"cat $(SRCS) > $(OUTS)"
),
compatible_with = get_compatible_with_portable(),
)
pytype_strict_library(
name = "metrics",
srcs = ["metrics.py"],
compatible_with = get_compatible_with_portable(),
visibility = ["//tensorflow/lite:__subpackages__"],
deps = if_portable(
if_false = [
"//tensorflow/compiler/mlir/lite/metrics:converter_error_data_proto_py",
":metrics_wrapper",
"//tensorflow/python/eager:monitoring",
],
if_true = [],
) + [":metrics_interface"],
)
py_test(
name = "metrics_test",
srcs = if_portable(
if_false = ["metrics_nonportable_test.py"],
if_true = ["metrics_portable_test.py"],
),
data = [
"//tensorflow/lite/python/testdata/control_flow_v1_saved_model:saved_model.pb",
],
main = if_portable(
if_false = "metrics_nonportable_test.py",
if_true = "metrics_portable_test.py",
),
strict_deps = True,
tags = ["notap"], # TODO(b/373657707): Remove once we debug the failure.
deps = [
":metrics",
"@absl_py//absl/testing:parameterized",
#internal proto upb dep
"//third_party/py/numpy",
"//tensorflow:tensorflow_py",
"//tensorflow/compiler/mlir/lite/metrics:converter_error_data_proto_py",
"//tensorflow/core:protos_all_py",
"//tensorflow/lite/python:convert",
"//tensorflow/lite/python:lite",
"//tensorflow/python/client:session",
"//tensorflow/python/eager:context",
"//tensorflow/python/eager:monitoring",
"//tensorflow/python/framework:convert_to_constants",
"//tensorflow/python/framework:dtypes",
"//tensorflow/python/framework:importer",
"//tensorflow/python/framework:ops",
"//tensorflow/python/framework:test_lib",
"//tensorflow/python/ops:array_ops",
"//tensorflow/python/ops:array_ops_stack",
"//tensorflow/python/ops:math_ops",
"//tensorflow/python/ops:string_ops",
"//tensorflow/python/ops/ragged:ragged_tensor",
"//tensorflow/python/platform:client_testlib",
"//tensorflow/python/platform:resource_loader",
"//tensorflow/python/saved_model",
"//tensorflow/python/trackable:autotrackable",
],
)