Skip to content

Models and examples built with Swift for TensorFlow

License

Notifications You must be signed in to change notification settings

shabalind/swift-models

 
 

Repository files navigation

Swift for TensorFlow Models

This repository contains TensorFlow models written in Swift.

Active development occurs on the master branch.

Use the tensorflow-xx branch that corresponds to the release you are using from Swift for TensorFlow releases. For example, for the 0.6 release, use the tensorflow-0.6 branch.

For general information about Swift for TensorFlow development, please visit tensorflow/swift.

Development

macOS and Linux

Use Swift Package Manager to develop Swift for TensorFlow models.

Build

swift build

Test

swift test

Windows

Use CMake to develop Swift for TensorFlow models.

Experimental CMake Support

There is experimental support for building with CMake. This is required to build the models on Windows, and can also be used to cross-compile the models and the demo programs.

NOTE: tests are currently not supported with the CMake based build.

It is highly recommended that you use CMake 3.16 or newer to ensure that -B and parallel builds function properly in the example commands below. To install this version on Ubuntu, we recommend following the instructions at Kitware's apt repo.

Prerequisite: Ninja build tool. Find installation commands for your favorite package manager here.

macOS:

# Configure
cmake                                                              \
  -B /BinaryCache/tensorflow-swift-models                          \
  -D BUILD_TESTING=YES                                             \
  -D CMAKE_BUILD_TYPE=Release                                      \
  -D CMAKE_Swift_COMPILER=$(TOOLCHAINS=tensorflow xcrun -f swiftc) \
  -G Ninja                                                         \
  -S /SourceCache/tensorflow-swift-models
# Build
cmake --build /BinaryCache/tensorflow-swift-models
# Test
cmake --build /BinaryCache/tensorflow-swift-models --target test

Linux:

# Configure
cmake                                     \
  -B /BinaryCache/tensorflow-swift-models \
  -D BUILD_TESTING=NO                     \
  -D CMAKE_BUILD_TYPE=Release             \
  -D CMAKE_Swift_COMPILER=$(which swiftc) \
  -G Ninja                                \
  -S /SourceCache/tensorflow-swift-models
# Build
cmake --build /BinaryCache/tensorflow-swift-models

Windows:

set SDKROOT=%SystemDrive%/Library/Developer/Platforms/Windows.platform/Developer/SDKs/Windows.sdk
set DEVELOPER_LIBRARY_DIR=%SystemDrive%/Library/Developer/Platforms/Windows.platform/Developer/Library
: Configure
"%ProgramFiles%\CMake\bin\cmake.exe"                                                                                                                                                                                                                  ^
  -B %SystemDrive%/BinaryCache/tensorflow-swift-models                                                                                                                                                                                                ^
  -D BUILD_SHARED_LIBS=YES                                                                                                                                                                                                                            ^
  -D BUILD_TESTING=YES                                                                                                                                                                                                                                ^
  -D CMAKE_BUILD_TYPE=Release                                                                                                                                                                                                                         ^
  -D CMAKE_Swift_COMPILER=%SystemDrive%/Library/Developer/Toolchains/unknown-Asserts-development.xctoolchain/usr/bin/swiftc.exe                                                                                                                       ^
  -D CMAKE_Swift_FLAGS="-sdk %SDKROOT% -I %SDKROOT%/usr/lib/swift -L %SDKROOT%/usr/lib/swift/windows -I %DEVELOPER_LIBRARY_DIR%/XCTest-development/usr/lib/swift/windows/x86_64 -L %DEVELOPER_LIBRARY_DIR%/XCTest-development/usr/lib/swift/windows " ^
  -G Ninja                                                                                                                                                                                                                                            ^
  -S %SystemDrive%/SourceCache/tensorflow-swift-models
: Build
"%ProgramFiles%\CMake\bin\cmake.exe" --build %SystemDrive%/BinaryCache/tensorflow-swift-models
: Test
"%ProgramFiles%\CMake\bin\cmake.exe" --build %SystemDrive%/BinaryCache/tensorflow-swift-models --target test

Bugs

Please report model-related bugs and feature requests using GitHub issues in this repository.

Community

Discussion about Swift for TensorFlow happens on the swift@tensorflow.org mailing list.

Contributing

We welcome contributions: please read the Contributor Guide to get started. It's always a good idea to discuss your plans on the mailing list before making any major submissions.

Code of Conduct

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.

The Swift for TensorFlow community is guided by our Code of Conduct, which we encourage everybody to read before participating.

About

Models and examples built with Swift for TensorFlow

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 44.3%
  • Swift 41.1%
  • C 13.4%
  • Other 1.2%