OpenNMT-tf  by OpenNMT

Sequence learning toolkit for neural machine translation

Created 8 years ago
1,482 stars

Top 27.7% on SourcePulse

GitHubView on GitHub
Project Summary

Neural machine translation and sequence learning using TensorFlow 2. OpenNMT-tf is a versatile, production-oriented toolkit for neural machine translation and general sequence learning tasks, built on TensorFlow 2. It empowers researchers and developers by offering a modular architecture, seamless integration with the TensorFlow ecosystem, and compatibility with optimized inference engines like CTranslate2, facilitating efficient deployment and experimentation.

How It Works

This toolkit leverages TensorFlow 2's capabilities, providing reusable Keras layers, multi-GPU/distributed training support, mixed-precision, and TensorBoard visualization. Its core design emphasizes modularity, allowing users to define custom sequence-to-sequence models, encoders, and decoders with ease, as demonstrated by its support for complex architectures like self-attentional encoders and RNN decoders. A key advantage is its dynamic data pipeline, which enables on-the-fly preprocessing and data augmentation without prior compilation, streamlining the training workflow.

Quick Start & Requirements

  • Installation: pip install OpenNMT-tf
  • Requirements: Python 3.7+, TensorFlow 2.6-2.13.
  • Resources: Official documentation, forum, and Gitter channel are available for further guidance.

Highlighted Details

  • Modular architecture supports custom model designs, multiple input features, and hybrid architectures.
  • Full TensorFlow 2 integration includes tf.distribute, Horovod, mixed precision, and SavedModel export for TensorFlow Serving.
  • Optimized inference compatibility with CTranslate2 for fast CPU/GPU execution and quantization.
  • Dynamic data pipeline allows on-the-fly tokenization and data augmentation.
  • Supports advanced training techniques like model fine-tuning, guided alignment, and various decoding strategies (e.g., beam search).

Maintenance & Community

The project provides access to a forum and a Gitter channel for community support and discussion. (Specific details on contributors, sponsorships, or roadmap are not provided in the README excerpt.)

Licensing & Compatibility

The license type and any specific compatibility restrictions for commercial use or closed-source linking are not explicitly stated in the provided README content.

Limitations & Caveats

No specific limitations, known bugs, or alpha status are mentioned in the provided README excerpt.

Health Check
Last Commit

2 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
7 stars in the last 30 days

Explore Similar Projects

Starred by Shengjia Zhao Shengjia Zhao(Chief Scientist at Meta Superintelligence Lab), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
14 more.

BIG-bench by google

0.1%
3k
Collaborative benchmark for probing and extrapolating LLM capabilities
Created 4 years ago
Updated 1 year ago
Starred by Aravind Srinivas Aravind Srinivas(Cofounder of Perplexity), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
16 more.

text-to-text-transfer-transformer by google-research

0.1%
6k
Unified text-to-text transformer for NLP research
Created 6 years ago
Updated 5 months ago
Feedback? Help us improve.