

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 框架原生工具
<a name="framework-native-tools-detailed"></a>

尽管[模型上下文协议 (MCP)](https://modelcontextprotocol.io/) 提供了最灵活的基础，但框架原生工具为特定用例提供了优势。

[Strands AgentsSDK](https://strandsagents.com) 提供的Python基于工具的特点是其轻量级设计，只需极少的开销即可完成简单的操作。它们可以实现快速实现，并允许开发人员只需几行代码即可创建工具。此外，它们紧密集成，可在Strands Agents框架内无缝运行。

以下示例演示如何使用创建简单的天气工具Strands Agents。开发人员可以用最少的代码开销快速将Python函数转换为代理可访问的工具，并从函数的文档字符串中自动生成相应的文档。

`#Example of a simple Strands native tool`

`@tool`

`def weather(location: str) -> str:`

`"""Get the current weather for a location""" #`

`Implementation here`

`return f"The weather in {location} is sunny."`

对于快速原型设计或简单的用例，框架原生工具可以加快开发速度。但是，对于生产系统，与框架原生工具相比，MCP 工具提供了更好的互操作性和未来的灵活性。

下表概述了其他特定于框架的工具。


| 
| 
| **Framework** | **工具类型** | **优点** | **注意事项** | 
| --- |--- |--- |--- |
| [https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat) | 函数定义 | 强大的多代理支持 | Microsoft生态系统 | 
| [https://python.langchain.com/docs/concepts/tools/](https://python.langchain.com/docs/concepts/tools/) | Python课堂 | 由预建工具组成的庞大生态系统 | 框架锁定 | 
| [https://docs.llamaindex.ai/en/stable/getting_started/starter_tools/](https://docs.llamaindex.ai/en/stable/getting_started/starter_tools/) | Python 函数 | 针对数据操作进行了优化 | 仅限于 LlamaIndex | 