Tool Learning With Large Language Models Explained