ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

第二单元 —— 第二课:让 Agent 选择多个工具

第二单元 —— 第二课:让 Agent 选择多个工具 这次准备两个工具让 Agent 依次完成“计算原价”和“应用折扣”。保存为unit2_lesson2_multiple_tools.pyimport os from langchain_openai import ChatOpenAI from langchain.agents import create_agent from langchain.tools import tool tool def calculate_total(price: float, quantity: int) - float: 根据商品单价和数量计算商品原价。 result price * quantity print(f[计算原价] {price} × {quantity} {result}) return result tool def apply_discount(amount: float, discount_rate: float) - float: 根据原价和折扣率计算折后价格例如八五折对应 0.85。 result round(amount * discount_rate, 2) print(f[应用折扣] {amount} × {discount_rate} {result}) return result model ChatOpenAI( modeldeepseek-v4-flash, base_urlhttps://api.deepseek.com, api_keyos.environ[DEEPSEEK_API_KEY], ) agent create_agent( modelmodel, tools[calculate_total, apply_discount], system_prompt( 你是购物助手。禁止心算必须使用工具。 先用工具计算商品原价再用工具计算折后价格。 ), ) result agent.invoke({ messages: [{ role: user, content: 一件商品 80 元购买 3 件享受八五折最后多少钱, }] }) print(最终回答, result[messages][-1].content)运行.venv\Scripts\activate python unit2_lesson2_multiple_tools.py预期过程[计算原价] 80 × 3 240 [应用折扣] 240 × 0.85 204.0 最终回答折后价格为 204 元本课重点用户问题 → Agent 选择工具 → 工具返回结果 → Agent 继续选择工具 → 最终回答小练习把问题改成“每件 36.5 元购买 4 件打九折”观察 Agent 是否仍会正确选择两个工具。输出如下
返回列表