Toolformer: Language Models Can Teach Themselves to Use Tools
Timo Schick, Jane Dwivedi-Yu, Roberto Dessi, Roberta Raileanu, Maria Lomeli, Luke Zettlemoyer, Nicola Cancedda, Thomas Scialom
Advances in Neural Information Processing Systems 36 (NeurIPS 2023)9 February 2023
Abstract
A model decides for itself when to call an external API, inserts the calls into its own training data, and keeps only the ones that actually reduce its prediction loss. No hand-written tool demonstrations are needed.
@inproceedings{schick2023toolformer,
author = {Timo Schick and Jane Dwivedi-Yu and Roberto Dessi and Roberta Raileanu and Maria Lomeli and Luke Zettlemoyer and Nicola Cancedda and Thomas Scialom},
title = {Toolformer: Language Models Can Teach Themselves to Use Tools},
booktitle = {Advances in Neural Information Processing Systems 36 (NeurIPS 2023)},
year = {2023},
eprint = {2302.04761},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2302.04761}
}
Ejentic did not author this paper. Credit belongs to the authors named above; the note is ours.
Read this before you let an agent call anything a customer will see the output of. The failure mode is not a crash, it is an API returning 200 with a body that means "I did not understand you". There is no exception to catch and no status code to branch on. The result we quote most often is the last one: the fix was one line of schema, not a better model.
This is the exact shape of a deployed support or negotiation agent: it works for the business and talks to someone who does not. The split the benchmark finds is the one that matters commercially, because the failure is not leaking data to the counterparty, it is refusing the principal so broadly that the agent stops doing the job it was hired for.
The benchmark we reach for when a client asks whether an agent can be trusted with a real repository. Passing tests is a much sharper signal than "the diff looks reasonable".