当前位置: 首页 > wzjs >正文

福建建设厅官方网站扬州百度seo

福建建设厅官方网站,扬州百度seo,天河网站建设设计,福清建设银行网站随着人工智能技术的不断进步,越来越多的企业开始借助 AI 助手来提高工作效率,尤其是在日常事务的自动化处理中。比如,在许多公司里,会议室的预定是一个常见且频繁的需求,通常需要员工手动检查空闲时间并做出选择。而通…

随着人工智能技术的不断进步,越来越多的企业开始借助 AI 助手来提高工作效率,尤其是在日常事务的自动化处理中。比如,在许多公司里,会议室的预定是一个常见且频繁的需求,通常需要员工手动检查空闲时间并做出选择。而通过集成 AI 和自动化工具,这个过程可以变得更加智能和高效。

本文将展示如何利用 LangChain 和 LangGraph 两个强大的工具,构建一个会议室预订系统。这一系统能够与用户进行自然语言交互,帮助用户自动预订会议室,并确保预订信息的准确性。我们会详细讲解如何实现从查询空闲会议室到确认预订的整个过程。

关键代码

下面是实现该系统的核心代码。在这个代码段中,我们通过 LangChain 定义了几个重要的工具,分别是:获取所有会议室、查询指定时间段内可用的会议室和预订会议室。

from config import *
from datetime import datetime
from langchain_core.tools import tool
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_openai import ChatOpenAI
from langgraph.types import Command, interrupt
from langgraph.prebuilt import create_react_agent
from IPython.display import Image, display
from langgraph.checkpoint.memory import InMemorySaver
/Users/zhengjie/Documents/learn-langchain/venv/lib/python3.9/site-packages/urllib3/__init__.py:35: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020warnings.warn(
@tool(parse_docstring=True)
def get_all_rooms() -> list:"""Get a list of all available meeting rooms.Returns:list: A list of all available meeting rooms."""return ["Room 1", "Room 2", "Room 3", "888 Multimedia Conference Room"]@tool(parse_docstring=True)
def get_available_rooms(start_time: str, end_time: str) -> list:"""Get a list of all available meeting rooms during the specified time period.Args:start_time (str): The start time of the booking (e.g., "2025-02-23 14:00").end_time (str): The end time of the booking (e.g., "2025-02-23 15:00").Returns:list: A list of all available meeting rooms during the specified time period."""return ["Room 1", "Room 2"]@tool(parse_docstring=True)
def book_room(name: str, start_time: str, end_time: str) -> str:"""Book a specified meeting room for the user, only after the user confirms the details.Args:name (str): The name of the meeting room to be booked.start_time (str): The start time of the booking (e.g., "2025-02-23 14:00").end_time (str): The end time of the booking (e.g., "2025-02-23 15:00").Returns:str: A message indicating whether the booking was successful or failed."""if name in ["Room 1", "Room 2", "Room 3", "888 Multimedia Conference Room"]:if name in ["Room 1", "Room 2"]:return "Booking successful"else:return "The room is not available"else:return "Invalid room name"
tools = [get_all_rooms, get_available_rooms, book_room]
llm = ChatOpenAI(model="qwen-max")
memory = InMemorySaver()
prompt = SystemMessage(f"You are an AI assistant. The current time is: {datetime.now().strftime('%Y-%m-%d %H:%M')}. "f"Please assist the user in booking a meeting room by confirming the meeting time and room step by step. "f"Keep your language as concise as possible.\n"f"The most important thing is that before using book_room, make sure to confirm the information with the user one last time. "f"Only proceed with book_room if everything is correct. Do not skip this step."
)
agent = create_react_agent(llm, tools, checkpointer=memory, prompt=prompt)
prompt.pretty_print()
================================[1m System Message [0m================================You are an AI assistant. The current time is: 2025-02-23 21:58. Please assist the user in booking a meeting room by confirming the meeting time and room step by step. Keep your language as concise as possible.
The most important thing is that before using book_room, make sure to confirm the information with the user one last time. Only proceed with book_room if everything is correct. Do not skip this step.
display(Image(agent.get_graph().draw_mermaid_png()))

请添加图片描述

使用案例

会议室预订案例1

config = {"configurable": {"thread_id": "abc123"}}
result = agent.invoke({"messages": [{"role": "user", "content": "帮我预定一个会议室"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我预定一个会议室
==================================[1m Ai Message [0m==================================好的,我来帮您预定会议室。请告诉我您计划的会议开始时间和结束时间。例如:14:00到16:00。
config = {"configurable": {"thread_id": "abc123"}}
result = agent.invoke({"messages": [{"role": "user", "content": "明天上午10点到11点"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我预定一个会议室
==================================[1m Ai Message [0m==================================好的,我来帮您预定会议室。请告诉我您计划的会议开始时间和结束时间。例如:14:00到16:00。
================================[1m Human Message [0m=================================明天上午10点到11点
==================================[1m Ai Message [0m==================================
Tool Calls:get_available_rooms (call_a39d8e624ae845b6a1e02b)Call ID: call_a39d8e624ae845b6a1e02bArgs:start_time: 2025-02-24 10:00end_time: 2025-02-24 11:00
=================================[1m Tool Message [0m=================================
Name: get_available_rooms["Room 1", "Room 2"]
==================================[1m Ai Message [0m==================================明天上午10点到11点之间有以下会议室可供选择:- Room 1
- Room 2您想要预定哪一个会议室呢?请告诉我会议室的名称。
config = {"configurable": {"thread_id": "abc123"}}
result = agent.invoke({"messages": [{"role": "user", "content": "第一个"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我预定一个会议室
==================================[1m Ai Message [0m==================================好的,我来帮您预定会议室。请告诉我您计划的会议开始时间和结束时间。例如:14:00到16:00。
================================[1m Human Message [0m=================================明天上午10点到11点
==================================[1m Ai Message [0m==================================
Tool Calls:get_available_rooms (call_a39d8e624ae845b6a1e02b)Call ID: call_a39d8e624ae845b6a1e02bArgs:start_time: 2025-02-24 10:00end_time: 2025-02-24 11:00
=================================[1m Tool Message [0m=================================
Name: get_available_rooms["Room 1", "Room 2"]
==================================[1m Ai Message [0m==================================明天上午10点到11点之间有以下会议室可供选择:- Room 1
- Room 2您想要预定哪一个会议室呢?请告诉我会议室的名称。
================================[1m Human Message [0m=================================第一个
==================================[1m Ai Message [0m==================================好的,您选择了Room 1。请确认您的预定信息:会议室为Room 1,时间是明天上午10点到11点。如果这些信息正确,我将为您完成预定。信息正确吗?请回复“正确”或“不正确”。
config = {"configurable": {"thread_id": "abc123"}}
result = agent.invoke({"messages": [{"role": "user", "content": "确认"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我预定一个会议室
==================================[1m Ai Message [0m==================================好的,我来帮您预定会议室。请告诉我您计划的会议开始时间和结束时间。例如:14:00到16:00。
================================[1m Human Message [0m=================================明天上午10点到11点
==================================[1m Ai Message [0m==================================
Tool Calls:get_available_rooms (call_a39d8e624ae845b6a1e02b)Call ID: call_a39d8e624ae845b6a1e02bArgs:start_time: 2025-02-24 10:00end_time: 2025-02-24 11:00
=================================[1m Tool Message [0m=================================
Name: get_available_rooms["Room 1", "Room 2"]
==================================[1m Ai Message [0m==================================明天上午10点到11点之间有以下会议室可供选择:- Room 1
- Room 2您想要预定哪一个会议室呢?请告诉我会议室的名称。
================================[1m Human Message [0m=================================第一个
==================================[1m Ai Message [0m==================================好的,您选择了Room 1。请确认您的预定信息:会议室为Room 1,时间是明天上午10点到11点。如果这些信息正确,我将为您完成预定。信息正确吗?请回复“正确”或“不正确”。
================================[1m Human Message [0m=================================确认
==================================[1m Ai Message [0m==================================
Tool Calls:book_room (call_824c897caa2d40f98328a9)Call ID: call_824c897caa2d40f98328a9Args:name: Room 1start_time: 2025-02-24 10:00end_time: 2025-02-24 11:00
=================================[1m Tool Message [0m=================================
Name: book_room预定成功
==================================[1m Ai Message [0m==================================您的会议室预定已经成功。预定的是Room 1,时间为明天上午10点到11点。如果有其他需要帮助的地方,请随时告诉我。

会议室预订案例2

config = {"configurable": {"thread_id": "abc1235"}}
result = agent.invoke({"messages": [{"role": "user", "content": "帮我订明天上午10点到11点1号会议室"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我订明天上午10点到11点1号会议室
==================================[1m Ai Message [0m==================================
Tool Calls:get_available_rooms (call_fefded82be70420182322d)Call ID: call_fefded82be70420182322dArgs:start_time: 2025-02-24 10:00end_time: 2025-02-24 11:00
=================================[1m Tool Message [0m=================================
Name: get_available_rooms["Room 1", "Room 2"]
==================================[1m Ai Message [0m==================================明天上午10点到11点,1号会议室是可用的。您想要预订1号会议室对吗?
Tool Calls:book_room (call_4637776f50e644d0889c6d)Call ID: call_4637776f50e644d0889c6dArgs:name: Room 1start_time: 2025-02-24 10:00end_time: 2025-02-24 11:00
=================================[1m Tool Message [0m=================================
Name: book_roomBooking successful
==================================[1m Ai Message [0m==================================已成功为您预订了明天上午10点到11点的1号会议室。

会议室预订案例3

config = {"configurable": {"thread_id": "abc12345"}}
result = agent.invoke({"messages": [{"role": "user", "content": "帮我订1号会议室"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我订1号会议室
==================================[1m Ai Message [0m==================================好的,我需要确认一下您希望预订1号会议室的具体时间段。请告诉我您打算从什么时候开始到什么时候结束?
config = {"configurable": {"thread_id": "abc12345"}}
result = agent.invoke({"messages": [{"role": "user", "content": "明天下午2点至4点"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我订1号会议室
==================================[1m Ai Message [0m==================================好的,我需要确认一下您希望预订1号会议室的具体时间段。请告诉我您打算从什么时候开始到什么时候结束?
================================[1m Human Message [0m=================================明天下午2点至4点
==================================[1m Ai Message [0m==================================
Tool Calls:get_available_rooms (call_d817bfbe8e9d4eb49aa8e9)Call ID: call_d817bfbe8e9d4eb49aa8e9Args:start_time: 2025-02-24 14:00end_time: 2025-02-24 16:00
=================================[1m Tool Message [0m=================================
Name: get_available_rooms["Room 1", "Room 2"]
==================================[1m Ai Message [0m==================================明天下午2点到4点之间,1号会议室是可用的。在继续预订前,请确认以下信息是否正确:- 会议室:1号
- 开始时间:明天下午2点(2025年2月24日 14:00)
- 结束时间:明天下午4点(2025年2月24日 16:00)如果这些信息都正确,我将为您预订1号会议室。请回复“正确”以确认或提供修改的信息。
正确
config = {"configurable": {"thread_id": "abc12345"}}
result = agent.invoke({"messages": [{"role": "user", "content": "确认"}]},config=config
)
for m in result['messages']:m.pretty_print()
================================[1m Human Message [0m=================================帮我订1号会议室
==================================[1m Ai Message [0m==================================好的,我需要确认一下您希望预订1号会议室的具体时间段。请告诉我您打算从什么时候开始到什么时候结束?
================================[1m Human Message [0m=================================明天下午2点至4点
==================================[1m Ai Message [0m==================================
Tool Calls:get_available_rooms (call_d817bfbe8e9d4eb49aa8e9)Call ID: call_d817bfbe8e9d4eb49aa8e9Args:start_time: 2025-02-24 14:00end_time: 2025-02-24 16:00
=================================[1m Tool Message [0m=================================
Name: get_available_rooms["Room 1", "Room 2"]
==================================[1m Ai Message [0m==================================明天下午2点到4点之间,1号会议室是可用的。在继续预订前,请确认以下信息是否正确:- 会议室:1号
- 开始时间:明天下午2点(2025年2月24日 14:00)
- 结束时间:明天下午4点(2025年2月24日 16:00)如果这些信息都正确,我将为您预订1号会议室。请回复“正确”以确认或提供修改的信息。
正确
================================[1m Human Message [0m=================================确认
==================================[1m Ai Message [0m==================================
Tool Calls:book_room (call_1772161999ae43edb35d66)Call ID: call_1772161999ae43edb35d66Args:name: Room 1start_time: 2025-02-24 14:00end_time: 2025-02-24 16:00
=================================[1m Tool Message [0m=================================
Name: book_roomBooking successful
==================================[1m Ai Message [0m==================================已成功为您预订1号会议室,时间段为明天下午2点到4点。如果有任何其他需求,请告诉我。
http://www.dtcms.com/wzjs/514365.html

相关文章:

  • 呼和浩特可以做网站的公司关键词排名 收录 查询
  • 网站框架类型软文推荐
  • 网站网页设计入门上海百度关键词搜索推广服务
  • 新手学做网站要花钱么如何做好网络推广工作
  • 陕西做网站公司有哪些腾讯云域名注册官网
  • html5网站建设公司广告电话
  • com域名和网站网络营销论文毕业论文
  • 用asp做网站怎么美观站长工具 seo综合查询
  • 永嘉专业网站设计公司百度seo建议
  • 做3dh春丽网站叫什么2021百度最新收录方法
  • dw中怎样做网站二级页面电商网址
  • 黄埔网站开发自己怎么注册网站
  • wordpress搜索返回页面常州seo第一人
  • 网站建设的公司如何选天津百度seo推广
  • 网页设计需要设计什么佛山百度seo点击软件
  • 各电商网站的特点怎样让自己的网站排名靠前
  • 人妖和美女做视频网站舆情网站直接打开的软件
  • 装修网站建设策划方案西安百度推广开户运营
  • 网站建设中技术程序手机自动排名次的软件
  • 手机网站优化指南广州seo公司
  • 网站建设建网站做网站网站设计seo检测优化
  • 哪个网站做正品女装宁波seo优化项目
  • 公司网站建设方案书安徽网站关键词优化
  • 专业网站是什么意思知乎关键词优化软件
  • qq选号网站怎么做的百度关键词优化教程
  • 淘宝联盟推广网站怎么建设中国体育新闻
  • 依靠百度云做视频网站国内优秀网站案例
  • 做下载网站挣钱吗宁波seo优化报价多少
  • 做英雄联盟网站的图片素材搜索引擎优化实训
  • 内涵网站源码怎样推广一个产品