Weekly GitHub Report for Tensorflow: May 12, 2025 - May 19, 2025 (12:00:20)
Weekly GitHub Report for Tensorflow
Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.
Table of Contents
I. News
1.1 Recent Version Releases:
The current version of this repository is v2.19.0
1.2 Version Information:
The TensorFlow 2.19.0 release, created on March 5, 2025, introduces breaking changes in the LiteRT
C++ and Python APIs, including the transition of tf.lite.Interpreter
to a new location with a deprecation warning, and adds support for bfloat16
in the tfl.Cast
operation. Additionally, the release discontinues publishing libtensorflow
packages, though they remain accessible via PyPI, and features contributions from a diverse group of developers.
II. Issues
2.1 Top 5 Active Issues:
We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.
-
../tensorflow/third_party/xla/third_party/tsl/tsl/platform/ml_dtypes.h:19:10: error: 'ml_dtypes/include/float8.h' file not found [clang-diagnostic-error]
: This issue involves a build/install error encountered when trying to compile TensorFlow code, specifically due to a missing file, 'ml_dtypes/include/float8.h', which is causing a fatal error during the compilation process. The problem is observed on both local Termux environments and GitHub Workflow on Ubuntu, and it persists despite attempts to update the TensorFlow repository to the latest version.- The comments discuss the nature of the error, noting that it is not similar to a previous issue where the include path was found. Suggestions include using precompiled TensorFlow libraries instead of building from source, but this approach is hindered by the unavailability of the required files. Attempts to modify include paths result in additional errors, indicating deeper issues with the current setup.
- Number of comments this week: 6
-
tf.sparse.segment_mean
performs differently on cpu and gpu: This issue reports a bug in TensorFlow where the functiontf.sparse.segment_mean
behaves differently when executed on a CPU compared to a GPU, specifically resulting in an error on the CPU while the GPU execution does not produce the same error. The user has provided a detailed description of the problem, including the TensorFlow version, operating system, and hardware specifications, and has confirmed that the issue persists in the TensorFlow Nightly build.- The comments indicate that the issue also affects
tf.sparse.segment_sqrt_n
andtf.sparse.segment_sum
. A TensorFlow team member responded, stating that they could not reproduce the issue on their setup using both CPU and GPU, and provided links to Colab notebooks for further reference. - Number of comments this week: 3
- The comments indicate that the issue also affects
-
tf.sparse.segment_mean
performs differently on cpu and gpu (variant of #93136): This issue highlights a discrepancy in the behavior of thetf.sparse.segment_mean
function when executed on CPU versus GPU, specifically when using thenum_segments
argument. On CPU, the function requires segment IDs to be less thannum_segments
, while on GPU, the error message incorrectly states that segment IDs must be greater than or equal to zero, despite the code meeting this condition.- The comments indicate that similar issues occur with
tf.sparse.segment_sqrt_n
andtf.sparse.segment_sum
. A user confirmed the issue by reproducing it on Colab using both TensorFlow 2.19 and the TF-nightly version, providing links to Gists for reference. - Number of comments this week: 3
- The comments indicate that similar issues occur with
-
tf.sparse.cross
performs differently on cpu and gpu: This issue reports a bug in TensorFlow where thetf.sparse.cross
function produces different results when executed on a CPU compared to a GPU, specifically when handling certain input values like infinity. The problem persists even when using thetf.sparse.cross_hashed
function and specifying thenum_buckets
argument, indicating a potential inconsistency in the function's behavior across different hardware platforms.- The comments provide additional test cases showing that the issue also occurs with
tf.sparse.cross_hashed
, both with and without thenum_buckets
argument, demonstrating the discrepancy in output between CPU and GPU executions. - Number of comments this week: 2
- The comments provide additional test cases showing that the issue also occurs with
-
[Bug]
libtensorflow
does not includetensor.h
(has just 2 files undertensorflow/core/
): This issue reports a bug in thelibtensorflow
package, specifically noting that thetensor.h
file is missing from thetensorflow/core/
directory, which only contains two files. The problem persists in version 2.11.0, and attempts to download newer versions like 2.16.0 and 2.16.1 result in a 404 error, indicating they are unavailable.- A comment explains that the use of
libtensorflow
from Google was intended to solve a related issue with a missingfloat8.h
file, but this approach failed due to the absence oftensor.h
. - Number of comments this week: 1
- A comment explains that the use of
2.2 Top 5 Stale Issues:
We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.
SystemError
intf.ensure_shape
andtf.compat.v1.ensure_shape
whendtype
ofshape
istf.uint64
and its value is too large.: This issue describes a bug in TensorFlow where usingtf.ensure_shape
ortf.compat.v1.ensure_shape
with ashape
ofdtype
tf.uint64
and a value close to 2^64 results in aSystemError
andOverflowError
. The problem occurs specifically when the shape is set to a large value, such as[18446743219011059112, 1]
, causing these APIs to fail in eager mode, which the user has identified as a bug.- Feature Request: Integrate different Digital Signal Processing into tf.signal: This issue is a feature request to integrate advanced Digital Signal Processing (DSP) functionalities into TensorFlow's
tf.signal
module, similar to those available in the PyTorch ecosystem, particularly from the julius library. The integration aims to enhance TensorFlow's capabilities in audio data augmentation, providing researchers and developers with native tools for complex audio processing, thereby improving workflow efficiency and model generalization without relying on external libraries. - [DOCS] Missing complex input for Round op: This issue highlights a documentation bug in TensorFlow's
Round
operation, where the official documentation incorrectly states that a complex tensor can be used as input, but in practice, this does not work as expected. The user reports that they must apply theRound
operation separately to the real and imaginary parts of the tensor to achieve the desired result, indicating a discrepancy between the documentation and the actual functionality. - tf.raw_ops.Unbatch aborts with "Check failed: d < dims()": This issue involves a bug in TensorFlow version 2.17 where the
tf.raw_ops.Unbatch
operation aborts unexpectedly with an error message "Check failed: d < dims()". The problem has been reproduced using TensorFlow Nightly on a Linux Ubuntu 20.04.3 LTS system with Python 3.11.8, and it occurs when executing a specific standalone code snippet that utilizes random tensor operations. Since there were fewer than 5 open issues, all of the open issues have been listed above.
2.3 Open Issues
This section lists, groups, and then summarizes issues that were created within the last week in the repository.
Issues Opened This Week: 13
Summarized Issues:
- TensorFlow CPU vs GPU Discrepancies: The
tf.sparse.segment_mean
function in TensorFlow exhibits different behaviors on CPU and GPU, leading to inconsistent error messages and handling of NaN values. These discrepancies are evident in TensorFlow version 2.19.0, where segment ID conditions andnum_segments
argument handling differ between devices.
- TensorFlow Sparse Function Discrepancies: The
tf.sparse.cross
andtf.sparse.cross_hashed
functions in TensorFlow version 2.19.0 produce different results on CPU versus GPU, particularly when thenum_buckets
argument is used. This inconsistency is demonstrated through code and log outputs, highlighting a need for uniform behavior across devices.
- Segmentation Faults in TensorFlow: TensorFlow version 2.19.0 experiences segmentation faults on Ubuntu 18.04 with Python 3.11.11 when using functions like
tf.data.experimental.service.DispatchServer
,tf.queue.RandomShuffleQueue
, andtf.queue.FIFOQueue
. These faults are demonstrated by standalone scripts and result in core dumps, indicating potential issues with memory management or function implementation.
- TensorFlow Lite GPU Delegate Issues: TensorFlow Lite models, such as Depth Anything V2 and object detection models, encounter issues when run on specific GPU hardware like Qualcomm GPUs and Pixel 7 devices. These issues result in constant image outputs or
IllegalArgumentException
errors, forcing a fallback to CPU execution despite GPU delegate loading.
- TensorFlow Compilation and Export Errors: Users face errors when compiling TensorFlow or exporting models, such as missing files in
libtensorflow
version 2.11 andAssertionError
during model export withkeras.export.ExportArchive
. These issues hinder the build process and model deployment, requiring resolution for successful execution.
- TensorFlow Lite Build Errors: The
build_aar.sh
script fails to generate thetensorflow-lite.aar
file on TensorFlow version 2.19.0 due to compilation errors related to ambiguous constructor calls. This issue occurs on an Ubuntu 22.04 LTS system, affecting the TensorFlow Lite MLIR transforms and hindering the build process.
- NaN Loss Values on TPUs: During training on Kaggle's TPUs, the loss value unexpectedly becomes NaN after a fixed number of batches, persisting across all epochs. This issue raises concerns about potential hardware, configuration, or TensorFlow-related problems affecting model training.
- TensorFlow Docker Image Import Error: A user encounters a "NotFoundError" related to an undefined symbol in the TensorFlow library when trying to import TensorFlow in a Jupyter notebook. This issue arises while creating and running a Docker image using TensorFlow 2.6.2 on Ubuntu 22 with CUDA 12.6, indicating potential compatibility or library issues.
2.4 Closed Issues
This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.
Issues Closed This Week: 14
Summarized Issues:
- TensorFlow Environment Setup in Google Colab: Users face challenges setting up a TensorFlow environment in Google Colab, particularly with TensorFlow Object Detection APIs. Compatibility issues with TensorFlow 2.19 and Python 3.11 lead to failures in running model builder tests.
- Runtime Errors in Model Conversion: Converting models from PyTorch to ONNX, then to TensorFlow, and finally to TFLite can result in runtime errors. Users report issues with non-broadcastable shapes related to the SELECT_V2 node, seeking solutions for these broadcasting problems.
- Inconsistent Model Outputs: Users experience inconsistent results from outputs in custom TensorFlow models using version 2.9.2. Despite expectations of identical outputs, discrepancies arise, with distributed training code involving Horovod provided for context.
- TensorFlow and CUDA on Windows: Users encounter difficulties using TensorFlow with CUDA on Windows, initially facing
cudaGetDevice()
failures. Although reinstallingtensorflow-gpu
and settingCUDA_VISIBLE_DEVICES
resolves the issue, uncertainty remains about GPU utilization during execution.
- TensorFlow Lite C Library Build Errors: Building the TensorFlow Lite C library on Linux Ubuntu 18.04 LTS can fail due to unsupported AVX512BF instructions. Despite setting AVX512BF16 and ARM_BF16 flags to false, the build process encounters errors with the
vdpbf16ps
instruction.
- Discrepancies in TensorFlow Documentation: The
tf.strided_slice
function documentation conflicts with its implementation, acceptingint16
tensors despite documentation stating onlyint32
orint64
are valid. This discrepancy leads to confusion and potential errors.
- ImportError on Windows Systems: Users face ImportErrors when importing TensorFlow on Windows, often due to DLL load failures. Solutions include installing MSVC 2019 redistributable, ensuring AVX2 support, and verifying architecture compatibility.
- Spam and Incomplete Bug Reports: Some bug reports, such as those titled "tnsor" or lacking specific details, appear to be spam or created to show activity. These reports lack the necessary information to address genuine problems.
- Compatibility Issues with TensorFlow and Python Versions: Users report compatibility issues when attempting to install TensorFlow 2.19 on Python 2.13, as it is not registered in PyPi for this version. Inquiries are made about future updates to support Python 2.13.
- Keras
get_config
Method Behavior: Users question the automatic return of correct configurations by theget_config
method in TensorFlow's Keras library. This behavior, which includes all constructor arguments, is not clearly documented, leading to requests for clarification.
2.5 Issue Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.
III. Pull Requests
3.1 Open Pull Requests
This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Opened This Week: 5
Key Open Pull Requests
1. [mlir][tosa] Add transforms/dequantize_tfl_softmax.cc to the tfl_passes target: This pull request involves relocating the file transforms/dequantize_tfl_softmax.cc
from the tf_passes
target to the tfl_passes
target within the TensorFlow project, ensuring that the tfl_passes
target can function independently without requiring the tf_passes
target, thereby preventing missing symbols.
- URL: pull/93259
- Merged: No
2. Update README.md - remove old links: This pull request involves updating the README.md file in the TensorFlow project by removing outdated links to the Continuous Integration (CI) system, as indicated by the two commits that address the removal of bad links and an unnecessary space.
- URL: pull/93460
- Merged: No
3. Update TFCI to debug behavior changes: This pull request aims to update the TFCI (TensorFlow Continuous Integration) by modifying the debug_tfci.sh
script to address and debug behavior changes, as indicated by the commit with SHA ba8642626072dd32edfcbbc5cdd68e332b167e67
.
- URL: pull/93456
- Merged: No
- Associated Commits: ba864
Other Open Pull Requests
- README Cleanup: This pull request focuses on cleaning up the README file by removing outdated and inactive links. The changes aim to improve the documentation's accuracy and relevance for users.
- oneDNN Build Fix on ppc64le Architecture: This pull request resolves a previously unresolved issue with building oneDNN on the ppc64le architecture. It includes a specific commit to address and fix the build problem that was not merged in an earlier attempt.
3.2 Closed Pull Requests
This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Closed This Week: 2
Key Closed Pull Requests
1. [tosa] Fix obj.isa
-> mlir::isa
in an assertion: This pull request addresses a previously overlooked issue by correcting the use of obj.isa
to mlir::isa
within an assertion in the TOSA component of the TensorFlow project, ensuring proper functionality and consistency in the codebase.
- URL: pull/92987
- Merged: 2025-05-13T16:58:28Z
- Associated Commits: 68a8b
2. Create test: This pull request, titled "Create test," was submitted to the TensorFlow project on GitHub and involves a single commit aimed at adding a new test, but it was ultimately closed without being merged.
- URL: pull/93459
- Merged: No
- Associated Commits: cdc07
3.3 Pull Request Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.
IV. Contributors
4.1 Contributors
Active Contributors:
We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.
If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.
Contributor | Commits | Pull Requests | Issues | Comments |
---|---|---|---|---|
Redempt1onzzZZ | 1 | 0 | 8 | 10 |
Venkat6871 | 1 | 0 | 0 | 12 |
RahulSundarMCW | 10 | 2 | 0 | 0 |
mtrofin | 10 | 1 | 0 | 0 |
KAVYANSHTYAGI | 5 | 1 | 0 | 5 |
SwuduSusuwu | 0 | 0 | 2 | 8 |
mihaimaruseac | 0 | 0 | 0 | 10 |
MichaelHudgins | 5 | 4 | 0 | 0 |
wangw-1991 | 3 | 1 | 1 | 1 |
372046933 | 4 | 1 | 0 | 0 |