本阶段进行的工作包括结合之前天气api测试获取天气的信息以及根据用户输入在地图绘制七点到终点的路线
一、通过api获取天气信息并将其封装成函数以便于agent的调用
在之前的工作中已经测试了通过彩云天气来获取天气信息,但是由于彩云天气只能获取未来三天内的天气信息,天气信息受限,所以通过结合和风天气来根据经纬度获取未来七天天气及其他天气信息


在和风天气中注册并创建项目和凭据以获取api key,之后通过api key来调用获取天气信息。


先通过城市的名称返回其对应的经纬度并通过经纬度来进行查询获取其天气信息。再将整体的代码封装成function以便于agent通过用户的输入在对应的城市获取天气信息。
使用示例:

二、解析用户输入绘制路线
在获取用户的输入时,由于用户的输入在不同的组件中,所以在其他的组件中获取用户的输入非常麻烦,所以创建了一个全局的上下文,用于共享和管理用户输入,以便在实现其他功能时方便获取用户的输入。


因为用户的输入是自然语言,所以从中获取起点和终点需要首先对其进行处理,先通过deepseek将用户的自然语言处理成为格式化的语言,之后再通过正则表达式提取,从中提取出起点、终点等信息。


再通过高德地图提供的api将起点终点处理为经纬度的形式,之后根据经纬度在地图上标记出起点和终点,再生成线路。


结果示例

路线的显示效果会在之后的工作中进一步进行优化。
工作中遇到的困难
1.和风天气api在获取经纬度等功能上一直出现401的错误码
最终选择通过共同使用和风天气和彩云天气配合来实现功能
2.在通过使用api将用户输入的起点和终点转换成经纬度时出现跨域调用的CROS问题

将经纬度API调用封装为端口,再通过调用端口来实现经纬度查询的功能。

被折叠的 条评论
为什么被折叠?



