大模型选择工具调用
三、 创建messages,deepseek大模型的格式
messages = [
{
"role": "user",
"content": query
}
]
# 二、创建会话client
client_session = ClientSession(read_stream, write_stream)
self.session = await self.async_exit_stack.enter_async_context(client_session)
# 三、初始化会话
await self.session.initialize()
async def execute(self, query: str):
# 一、获取server服务端中的工具列表
response = await self.session.list_tools()
list_tools = response.tools
创建messages,deepseek大模型的格式
messages = [ { "role": "user", "content": query } ]
deepseek_response = self.deepseek.chat.completions.create(
model="deepseek-chat",
messages=messages,
tools=tools
)
打印出获取的工具列表: [Tool(name='add_tool', title=None, description='\n 有两个数字相加的加法工具\n :param x: 第一个数字\n :param y: 第二个数字\n :return: 两个数字的和\n ', inputSchema={'properties': {'x': {'title': 'X', 'type': 'integer'}, 'y': {'title': 'Y', 'type': 'integer'}}, 'required': ['x', 'y'], 'title': 'add_toolArguments', 'type': 'object'}, outputSchema=None, icons=None, annotations=None, meta=None), Tool(name='sub_tool', title=None, description='\n 有两个数字相减的减法工具\n :param x: 第一个数字\n :param y: 第二个数字\n :return: 两个数字的差\n ', inputSchema={'properties': {'x': {'title': 'X', 'type': 'integer'}, 'y': {'title': 'Y', 'type': 'integer'}}, 'required': ['x', 'y'], 'title': 'sub_toolArguments', 'type': 'object'}, outputSchema=None, icons=None, annotations=None, meta=None)]
告诉大模型有哪些工具,方法描述
然后根据用户输入的查询,大模型选择对应的工具。
更多推荐
所有评论(0)