chronos-forecasting
Chronos: Pretrained Models for Probabilistic Time Series Forecasting
Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.0%) to scientific vocabulary
Keywords
Repository
Chronos: Pretrained Models for Probabilistic Time Series Forecasting
Basic Info
- Host: GitHub
- Owner: amazon-science
- License: apache-2.0
- Language: Python
- Default Branch: main
- Homepage: https://arxiv.org/abs/2403.07815
- Size: 1010 KB
Statistics
- Stars: 3,514
- Watchers: 37
- Forks: 410
- Open Issues: 21
- Releases: 10
Topics
Metadata Files
README.md
🚀 News
- 14 Feb 2025: 🚀 Chronos-Bolt is now available on Amazon SageMaker JumpStart! Check out the tutorial notebook to learn how to deploy Chronos endpoints for production use in 3 lines of code.
- 12 Dec 2024: 📊 We released
fev, a lightweight package for benchmarking time series forecasting models based on the Hugging Facedatasetslibrary. - 26 Nov 2024: ⚡️ Chronos-Bolt models released on HuggingFace. Chronos-Bolt models are more accurate (5% lower error), up to 250x faster and 20x more memory efficient than the original Chronos models of the same size!
- 27 Jun 2024: 🚀 Released datasets used in the paper and an evaluation script to compute the WQL and MASE scores reported in the paper.
- 17 May 2024: 🐛 Fixed an off-by-one error in bin indices in the
output_transform. This simple fix significantly improves the overall performance of Chronos. We will update the results in the next revision on ArXiv. - 10 May 2024: 🚀 We added the code for pretraining and fine-tuning Chronos models. You can find it in this folder. We also added a script for generating synthetic time series data from Gaussian processes (KernelSynth; see Section 4.2 in the paper for details). Check out the usage examples.
- 19 Apr 2024: 🚀 Chronos is now supported on AutoGluon-TimeSeries, the powerful AutoML package for time series forecasting which enables model ensembles, cloud deployments, and much more. Get started with the tutorial.
- 08 Apr 2024: 🧪 Experimental MLX inference support added. If you have an Apple Silicon Mac, you can now obtain significantly faster forecasts from Chronos compared to CPU inference. This provides an alternative way to exploit the GPU on your Apple Silicon Macs together with the "mps" support in PyTorch.
- 25 Mar 2024: 🚀 v1.1.0 released with inference optimizations and
pipeline.embedto extract encoder embeddings from Chronos. - 13 Mar 2024: 🚀 Chronos paper and inference code released.
✨ Introduction
Chronos is a family of pretrained time series forecasting models based on language model architectures. A time series is transformed into a sequence of tokens via scaling and quantization, and a language model is trained on these tokens using the cross-entropy loss. Once trained, probabilistic forecasts are obtained by sampling multiple future trajectories given the historical context. Chronos models have been trained on a large corpus of publicly available time series data, as well as synthetic data generated using Gaussian processes.
For details on Chronos models, training data and procedures, and experimental results, please refer to the paper Chronos: Learning the Language of Time Series.
Fig. 1: High-level depiction of Chronos. (Left) The input time series is scaled and quantized to obtain a sequence of tokens. (Center) The tokens are fed into a language model which may either be an encoder-decoder or a decoder-only model. The model is trained using the cross-entropy loss. (Right) During inference, we autoregressively sample tokens from the model and map them back to numerical values. Multiple trajectories are sampled to obtain a predictive distribution.
Architecture
The models in this repository are based on the T5 architecture. The only difference is in the vocabulary size: Chronos-T5 models use 4096 different tokens, compared to 32128 of the original T5 models, resulting in fewer parameters.
Zero-Shot Results
The following figure showcases the remarkable zero-shot performance of Chronos and Chronos-Bolt models on 27 datasets against local models, task-specific models and other pretrained models. For details on the evaluation setup and other results, please refer to the paper.
Fig. 2: Performance of different models on Benchmark II, comprising 27 datasets not seen by Chronos and Chronos-Bolt models during training. This benchmark provides insights into the zero-shot performance of Chronos and Chronos-Bolt models against local statistical models, which fit parameters individually for each time series, task-specific models trained on each task, and pretrained models trained on a large corpus of time series. Pretrained Models (Other) indicates that some (or all) of the datasets in Benchmark II may have been in the training corpus of these models. The probabilistic (WQL) and point (MASE) forecasting metrics were normalized using the scores of the Seasonal Naive baseline and aggregated through a geometric mean to obtain the Agg. Relative WQL and MASE, respectively.
📈 Usage
To perform inference with Chronos or Chronos-Bolt models, the easiest way is to install this package through pip:
sh
pip install chronos-forecasting
If you're interested in pretraining, fine-tuning, and other research & development, clone and install the package from source:
```sh
Clone the repository
git clone https://github.com/amazon-science/chronos-forecasting.git
Install in editable mode with extra training-related dependencies
cd chronos-forecasting && pip install --editable ".[training]" ```
[!TIP] This repository is intended for research purposes and provides a minimal interface to Chronos models. For reliable production use, we recommend the following options: - AutoGluon provides effortless fine-tuning, augmenting Chronos models with exogenous information through covariate regressors, ensembling with other statistical and machine learning models. Check out the AutoGluon Chronos tutorial. - SageMaker JumpStart makes it easy to deploy Chronos inference endpoints to AWS with just a few lines of code. Check out this tutorial for more details.
Forecasting
A minimal example showing how to perform forecasting using Chronos and Chronos-Bolt models:
```python import pandas as pd # requires: pip install pandas import torch from chronos import BaseChronosPipeline
pipeline = BaseChronosPipeline.frompretrained( "amazon/chronos-t5-small", # use "amazon/chronos-bolt-small" for the corresponding Chronos-Bolt model devicemap="cuda", # use "cpu" for CPU inference torch_dtype=torch.bfloat16, )
df = pd.read_csv( "https://raw.githubusercontent.com/AileenNielsen/TimeSeriesAnalysisWithPython/master/data/AirPassengers.csv" )
context must be either a 1D tensor, a list of 1D tensors,
or a left-padded 2D tensor with batch as the first dimension
quantiles is an fp32 tensor with shape [batchsize, predictionlength, numquantilelevels]
mean is an fp32 tensor with shape [batchsize, predictionlength]
quantiles, mean = pipeline.predictquantiles( context=torch.tensor(df["#Passengers"]), predictionlength=12, quantile_levels=[0.1, 0.5, 0.9], ) ```
For the original Chronos models, pipeline.predict can be used to draw forecast samples. More options for predict_kwargs in pipeline.predict_quantiles can be found with:
```python from chronos import ChronosPipeline, ChronosBoltPipeline
print(ChronosPipeline.predict.doc) # for Chronos models print(ChronosBoltPipeline.predict.doc) # for Chronos-Bolt models ```
We can now visualize the forecast:
```python import matplotlib.pyplot as plt # requires: pip install matplotlib
forecast_index = range(len(df), len(df) + 12) low, median, high = quantiles[0, :, 0], quantiles[0, :, 1], quantiles[0, :, 2]
plt.figure(figsize=(8, 4)) plt.plot(df["#Passengers"], color="royalblue", label="historical data") plt.plot(forecastindex, median, color="tomato", label="median forecast") plt.fillbetween(forecast_index, low, high, color="tomato", alpha=0.3, label="80% prediction interval") plt.legend() plt.grid() plt.show() ```
Extracting Encoder Embeddings
A minimal example showing how to extract encoder embeddings from Chronos models:
```python import pandas as pd import torch from chronos import ChronosPipeline
pipeline = ChronosPipeline.frompretrained( "amazon/chronos-t5-small", devicemap="cuda", torch_dtype=torch.bfloat16, )
df = pd.read_csv("https://raw.githubusercontent.com/AileenNielsen/TimeSeriesAnalysisWithPython/master/data/AirPassengers.csv")
context must be either a 1D tensor, a list of 1D tensors,
or a left-padded 2D tensor with batch as the first dimension
context = torch.tensor(df["#Passengers"]) embeddings, tokenizer_state = pipeline.embed(context) ```
Pretraining, fine-tuning and evaluation
Scripts for pretraining, fine-tuning and evaluating Chronos models can be found in this folder.
:floppy_disk: Datasets
Datasets used in the Chronos paper for pretraining and evaluation (both in-domain and zero-shot) are available through the HuggingFace repos: autogluon/chronos_datasets and autogluon/chronos_datasets_extra. Check out these repos for instructions on how to download and use the datasets.
🔥 Coverage
- Adapting language model architectures for time series forecasting (Amazon Science blog post)
- Amazon AI Researchers Introduce Chronos: A New Machine Learning Framework for Pretrained Probabilistic Time Series Models (Marktechpost blog post)
- Chronos: The Rise of Foundation Models for Time Series Forecasting (Towards Data Science blog post by Luís Roque and Rafael Guedes)
- Moirai: Time Series Foundation Models for Universal Forecasting (Towards Data Science blog post by Luís Roque and Rafael Guedes, includes comparison of Chronos with Moirai)
- Chronos: The Latest Time Series Forecasting Foundation Model by Amazon (Towards Data Science blog post by Marco Peixeiro)
- The original article had a critical bug affecting the metric computation for Chronos. We opened a pull request to fix it.
- How to Effectively Forecast Time Series with Amazon's New Time Series Forecasting Model (Towards Data Science blog post by Eivind Kjosbakken)
- Chronos: Learning the Language of Time Series (Minimize Regret blog post by Tim Radtke)
- Chronos: Another Zero-Shot Time Series Forecaster LLM (Level Up Coding blog post by Level Up Coding AI TutorMaster)
- Paper Review: Chronos: Learning the Language of Time Series (Review by Andrey Lukyanenko)
- Foundation Models for Forecasting: the Future or Folly? (Blog post by Radix)
- Learning the Language of Time Series with Chronos (Medium post by Manuele Caddeo)
- The latest advancement in Time Series Forecasting from AWS: Chronos (Medium post by Abish Pius)
- Decoding the Future: How Chronos Redefines Time Series Forecasting with the Art of Language (Medium post by Zamal)
- Comparison of Chronos against the SCUM ensemble of statistical models (Benchmark by Nixtla)
- We opened a pull request extending the analysis to 28 datasets (200K+ time series) and showing that zero-shot Chronos models perform comparably to this strong ensemble of 4 statistical models while being significantly faster on average. Our complete response can be found here.
- Comparison of Chronos against a variety of forecasting models (Benchmark by ReadyTensor)
📝 Citation
If you find Chronos models useful for your research, please consider citing the associated paper:
@article{ansari2024chronos,
title={Chronos: Learning the Language of Time Series},
author={Ansari, Abdul Fatir and Stella, Lorenzo and Turkmen, Caner and Zhang, Xiyuan, and Mercado, Pedro and Shen, Huibin and Shchur, Oleksandr and Rangapuram, Syama Syndar and Pineda Arango, Sebastian and Kapoor, Shubham and Zschiegner, Jasper and Maddix, Danielle C. and Mahoney, Michael W. and Torkkola, Kari and Gordon Wilson, Andrew and Bohlke-Schneider, Michael and Wang, Yuyang},
journal={Transactions on Machine Learning Research},
issn={2835-8856},
year={2024},
url={https://openreview.net/forum?id=gerNCVqqtR}
}
🛡️ Security
See CONTRIBUTING for more information.
📃 License
This project is licensed under the Apache-2.0 License.
Owner
- Name: Amazon Science
- Login: amazon-science
- Kind: organization
- Website: https://amazon.science
- Twitter: AmazonScience
- Repositories: 80
- Profile: https://github.com/amazon-science
Citation (CITATION.cff)
cff-version: 1.2.0
title: "Chronos: Learning the Language of Time Series"
message: "If you find Chronos models useful for your research, please consider citing the associated paper."
authors:
- family-names: Ansari
given-names: Abdul Fatir
- family-names: Stella
given-names: Lorenzo
- family-names: Turkmen
given-names: Caner
- family-names: Zhang
given-names: Xiyuan
- family-names: Mercado
given-names: Pedro
- family-names: Shen
given-names: Huibin
- family-names: Shchur
given-names: Oleksandr
- family-names: Rangapuram
given-names: Syama Syndar
- family-names: Arango
given-names: Sebastian Pineda
- family-names: Kapoor
given-names: Shubham
- family-names: Zschiegner
given-names: Jasper
- family-names: Maddix
given-names: Danielle C.
- family-names: Mahoney
given-names: Michael W.
- family-names: Torkkola
given-names: Kari
- family-names: Wilson
given-names: Andrew Gordon
- family-names: Bohlke-Schneider
given-names: Michael
- family-names: Wang
given-names: Yuyang
preferred-citation:
type: article
authors:
- family-names: Ansari
given-names: Abdul Fatir
- family-names: Stella
given-names: Lorenzo
- family-names: Turkmen
given-names: Caner
- family-names: Zhang
given-names: Xiyuan
- family-names: Mercado
given-names: Pedro
- family-names: Shen
given-names: Huibin
- family-names: Shchur
given-names: Oleksandr
- family-names: Rangapuram
given-names: Syama Syndar
- family-names: Arango
given-names: Sebastian Pineda
- family-names: Kapoor
given-names: Shubham
- family-names: Zschiegner
given-names: Jasper
- family-names: Maddix
given-names: Danielle C.
- family-names: Mahoney
given-names: Michael W.
- family-names: Torkkola
given-names: Kari
- family-names: Wilson
given-names: Andrew Gordon
- family-names: Bohlke-Schneider
given-names: Michael
- family-names: Wang
given-names: Yuyang
title: "Chronos: Learning the Language of Time Series"
journal: "arXiv preprint arXiv:2403.07815"
year: 2024
GitHub Events
Total
- Create event: 27
- Release event: 8
- Issues event: 49
- Watch event: 1,007
- Delete event: 16
- Issue comment event: 124
- Push event: 73
- Pull request review event: 53
- Pull request review comment event: 23
- Pull request event: 64
- Fork event: 116
Last Year
- Create event: 27
- Release event: 8
- Issues event: 49
- Watch event: 1,007
- Delete event: 16
- Issue comment event: 124
- Push event: 73
- Pull request review event: 53
- Pull request review comment event: 23
- Pull request event: 64
- Fork event: 116
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Abdul Fatir | A****s@g****m | 40 |
| Lorenzo Stella | s****o@a****m | 25 |
| Caner Turkmen | t****c@g****m | 2 |
| Abdul Fatir Ansari | a****d@a****e | 2 |
| Tyler | t****4@g****m | 1 |
| Pixee OSS Assistant | 1****i | 1 |
| Oleksandr Shchur | o****r@g****m | 1 |
| Michael Feil | 6****l | 1 |
| Huibin Shen | i****b@g****m | 1 |
| HugoSenetaire | 3****e | 1 |
| Amazon GitHub Automation | 5****o | 1 |
| Alvaro Perez-Diaz | a****z@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 91
- Total pull requests: 109
- Average time to close issues: 10 days
- Average time to close pull requests: 3 days
- Total issue authors: 69
- Total pull request authors: 21
- Average comments per issue: 2.97
- Average comments per pull request: 0.71
- Merged pull requests: 87
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 33
- Pull requests: 51
- Average time to close issues: 7 days
- Average time to close pull requests: 3 days
- Issue authors: 28
- Pull request authors: 13
- Average comments per issue: 1.73
- Average comments per pull request: 1.0
- Merged pull requests: 35
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- abdulfatir (6)
- ForestsKing (4)
- CoCoNuTeK (4)
- liu-jc (3)
- alvaropp (3)
- Hstellar (3)
- Killer3048 (2)
- corneliusroemer (2)
- StatMixedML (2)
- harshitv804 (2)
- Otsutsukii (2)
- Nucleon729 (2)
- Mhdaw (2)
- melopeo (1)
- lostella (1)
Pull Request Authors
- abdulfatir (88)
- lostella (47)
- canerturkmen (6)
- shchur (3)
- alvaropp (3)
- Tyler-Hardin (2)
- noamsgl (2)
- eltociear (2)
- vincehass (2)
- LinusOstlund (2)
- huibinshen (2)
- oulapaul (2)
- ChernovAndrey (2)
- pixeeai (2)
- non-greek (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 3
-
Total downloads:
- pypi 19,356 last-month
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 18
- Total maintainers: 3
proxy.golang.org: github.com/amazon-science/chronos-forecasting
- Documentation: https://pkg.go.dev/github.com/amazon-science/chronos-forecasting#section-documentation
- License: apache-2.0
-
Latest release: v1.5.3
published 7 months ago
Rankings
pypi.org: timecopilot-chronos-forecasting
Chronos: Pretrained models for time series forecasting
- Homepage: https://github.com/amazon-science/chronos-forecasting
- Documentation: https://timecopilot-chronos-forecasting.readthedocs.io/
- License: Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
-
Latest release: 0.1.0
published 7 months ago
Rankings
Maintainers (1)
pypi.org: chronos-forecasting
Chronos: Pretrained models for time series forecasting
- Homepage: https://github.com/amazon-science/chronos-forecasting
- Documentation: https://chronos-forecasting.readthedocs.io/
- License: Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
-
Latest release: 1.5.3
published 7 months ago
Rankings
Maintainers (2)
Dependencies
- actions/checkout v3 composite
- actions/setup-python v4 composite
- accelerate *
- torch ~=2.1
- transformers ~=4.31