首页 > 试题广场 >

会议安排文本工具调用

[编程题]会议安排文本工具调用
  • 热度指数:21 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解

给定一段自然语言描述的会议安排文本,你首先需要提取以下信息。

1.参会人清洗与标记规则:识别文本中的人名,格式化为“姓名|类型”。内部人员(无邮箱或公司内部邮箱)标记为INT,外部人员(有完整外部邮箱)标记为EXT,并去除邮箱地址。

2.最终时长加权计算:基础时长为文本中提到的时长分钟。最终时长计算公式:基础时长 + (内部人数 × 5) + (外部人数 × 15)。

3.审批逻辑:按优先级顺序判定requires_approval布尔值:

  1. 若最终时长 > 60分钟,则为true,否则为false
  2. 若会议主题含“紧急”或“修复”字样,则无视上一条,强制为false
  3. 若参会人包含外部人员(EXT),则无视之前所有的,强制为true

4.T+N交易日推算:T为当前日期(2024-06-01)。若输入为“T+N”(如T+1、T+2),则计算出对应日期。若未指定时间,默认为09:00:00。若尝试预约之前的日期,则调用check_compliance_rule工具,错误码为TIME_TRAVEL

我们现在有2个可用工具:

  • book_secure_slot(start_iso, duration_total, attendees, requires_approval):用于预约会议,参数为开始时间(ISO格式,精确到秒)、最终时长(整数分钟)、参会人列表(格式为“姓名|类型”)、审批标记(布尔值)。
  • check_compliance_rule(date, violation_code):用于检查合规违规,参数为日期(YYYY-MM-DD)和错误码字符串。


请你根据输入文本和解析情况,选取调用哪些工具。
输出工具调用的JSON结构,每个元素包含工具名和参数对象。


输入描述:
一段自然语言描述的会议安排文本。


输出描述:
见样例
示例1

输入

T+1下午2点,我们内部开个复盘会,Alice, Bob, Cindy参会,基础时长40分钟。

输出

[
{
"tool_name": "book_secure_slot",
"arguments": {
"start_iso": "2024-06-02 14:00:00",
"duration_total": 55,
"attendees": ["Alice|INT", "Bob|INT", "Cindy|INT"],
"requires_approval": false
}
}
]

备注:
提示词学习 提示词工程指南