83 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
| <!--Copyright 2024 The HuggingFace Team. All rights reserved.
 | |
| 
 | |
| Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
 | |
| the License. You may obtain a copy of the License at
 | |
| 
 | |
| http://www.apache.org/licenses/LICENSE-2.0
 | |
| 
 | |
| Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 | |
| an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 | |
| specific language governing permissions and limitations under the License.
 | |
| 
 | |
| ⚠️ Note that this file is in Markdown but contain specific syntax for our doc-builder (similar to MDX) that may not be
 | |
| rendered properly in your Markdown viewer.
 | |
| 
 | |
| -->
 | |
| # Tools
 | |
| 
 | |
| <Tip warning={true}>
 | |
| 
 | |
| Transformers Agents is an experimental API which is subject to change at any time. Results returned by the agents
 | |
| can vary as the APIs or underlying models are prone to change.
 | |
| 
 | |
| </Tip>
 | |
| 
 | |
| To learn more about agents and tools make sure to read the [introductory guide](../index). This page
 | |
| contains the API docs for the underlying classes.
 | |
| 
 | |
| ## Tools
 | |
| 
 | |
| ### load_tool
 | |
| 
 | |
| [[autodoc]] load_tool
 | |
| 
 | |
| ### tool
 | |
| 
 | |
| [[autodoc]] tool
 | |
| 
 | |
| ### Tool
 | |
| 
 | |
| [[autodoc]] Tool
 | |
| 
 | |
| ### Toolbox
 | |
| 
 | |
| [[autodoc]] Toolbox
 | |
| 
 | |
| ### launch_gradio_demo
 | |
| 
 | |
| [[autodoc]] launch_gradio_demo
 | |
| 
 | |
| 
 | |
| ### ToolCollection
 | |
| 
 | |
| [[autodoc]] ToolCollection
 | |
| 
 | |
| ## Agent Types
 | |
| 
 | |
| Agents can handle any type of object in-between tools; tools, being completely multimodal, can accept and return
 | |
| text, image, audio, video, among other types. In order to increase compatibility between tools, as well as to 
 | |
| correctly render these returns in ipython (jupyter, colab, ipython notebooks, ...), we implement wrapper classes
 | |
| around these types.
 | |
| 
 | |
| The wrapped objects should continue behaving as initially; a text object should still behave as a string, an image
 | |
| object should still behave as a `PIL.Image`.
 | |
| 
 | |
| These types have three specific purposes:
 | |
| 
 | |
| - Calling `to_raw` on the type should return the underlying object
 | |
| - Calling `to_string` on the type should return the object as a string: that can be the string in case of an `AgentText`
 | |
|   but will be the path of the serialized version of the object in other instances
 | |
| - Displaying it in an ipython kernel should display the object correctly
 | |
| 
 | |
| ### AgentText
 | |
| 
 | |
| [[autodoc]] smolagents.types.AgentText
 | |
| 
 | |
| ### AgentImage
 | |
| 
 | |
| [[autodoc]] smolagents.types.AgentImage
 | |
| 
 | |
| ### AgentAudio
 | |
| 
 | |
| [[autodoc]] smolagents.types.AgentAudio
 |