LazyLLM,(万象应用开发平台 AppStudio)商汤大装置

AI模型接口官网万象模型开发平台 ModelStudio

开发平台

复制代码
Windows 11
VS code
python3 10.11

1,创建虚拟环境

复制代码
1创建虚拟环境的配置文件

python3 -m venv lazyllm-venv

2激活虚拟环境(Activate.ps1复制此文件的路径并在终端中输入)

C:\Users\an_kang\Desktop\LazyLLM\LazyLLM\lazyllm-venv\Scripts\Activate.ps1

如图为激活成功

2,pip 中 安装LazyLLM

在控制台中输入**pip3 install lazyllm -i https://pypi.tuna.tsinghua.edu.cn/simple**` `,等待安装结束。

3配置模型环境

下面演示如何在商汤大装置(SenseCore)平台申请API Key:

官网链接:https://console.sensecore.cn/home

点击万象应用开发

点击开始

开通服务

复制密钥

4设置环境变量

windows 配置方法

复制代码
   - 右键点击"此电脑"或"我的电脑",选择"属性"
   - 点击"高级系统设置"
   - 在"系统属性"窗口中点击"环境变量"
   - 在"系统变量"或"用户变量"区域点击"新建"
   - 输入变量名(如`LAZYLLM_SENSENOVA_API_KEY`)和变量值(您的"API密钥")
   - 点击"确定"保存
   - 点击"确定"关闭所有窗口
   - 重新启动命令提示符或PowerShell以使更改生效

5验证环境是否成功

复制代码
import lazyllm

chat = lazyllm.OnlineChatModule(source='sensenova',model='DeepSeek-V3-1',api_key='密钥')
while True:
    query = input("query(enter 'quit' to exit): ")
    if query == "quit":
        break
    res = chat.forward(query)
    print(f"answer: {res}")         

运行结果如图所示即为成功

6创建一个天气查询工具

您可以使用外部API查询天气(例如高德天气(基础 API 文档-开发指南-Web服务 API | 高德地图API)),也可以使用LazyLLM提供的天气工具。

这里我们为了方便演示,构造了一个dict来模拟天气示例,使用3个城市对应晴天、阴天和雨天

城市的字典

复制代码
# 天气数据字典
WEATHER_DATA = {
    "北京": {
        "province": "北京市",
        "city": "北京",
        "publish_time": "2024-01-15 08:00:00",
        "weather": "晴天",
        "wind": "西北风 3-4级",
        "sunriseSunset": "日出: 07:30, 日落: 17:20",
        "temperature": "5°C / -3°C"
    },
    "上海": {
        "province": "上海市",
        "city": "上海",
        "publish_time": "2024-01-15 08:00:00",
        "weather": "阴天",
        "wind": "东南风 2-3级",
        "sunriseSunset": "日出: 07:00, 日落: 17:30",
        "temperature": "12°C / 8°C"
    },
    "广州": {
        "province": "广东省",
        "city": "广州",
        "publish_time": "2024-01-15 08:00:00",
        "weather": "雨天",
        "wind": "南风 4-5级",
        "sunriseSunset": "日出: 07:10, 日落: 18:00",
        "temperature": "18°C / 15°C"
    }
}

实现天气的查询(注意添加密钥)

复制代码
import json
from lazyllm import ReactAgent, fc_register, LOG, OnlineChatModule, WebModule

# 天气数据字典
WEATHER_DATA = {
    "北京": {
        "province": "北京市",
        "city": "北京",
        "publish_time": "2024-01-15 08:00:00",
        "weather": "晴天",
        "wind": "西北风 3-4级",
        "sunriseSunset": "日出: 07:30, 日落: 17:20",
        "temperature": "5°C / -3°C"
    },
    "上海": {
        "province": "上海市",
        "city": "上海",
        "publish_time": "2024-01-15 08:00:00",
        "weather": "阴天",
        "wind": "东南风 2-3级",
        "sunriseSunset": "日出: 07:00, 日落: 17:30",
        "temperature": "12°C / 8°C"
    },
    "广州": {
        "province": "广东省",
        "city": "广州",
        "publish_time": "2024-01-15 08:00:00",
        "weather": "雨天",
        "wind": "南风 4-5级",
        "sunriseSunset": "日出: 07:10, 日落: 18:00",
        "temperature": "18°C / 15°C"
    }
}

@fc_register("tool")
def get_weather(city: str):
    """
    天气查询。
    Args:
        city: 城市名(中文),当前仅支持北京、上海、广州
    Returns: 当地当天的天气信息
    """
    try:
        # 从字典中查找天气数据
        if city in WEATHER_DATA:
            res = WEATHER_DATA[city]
            return json.dumps(str(res), ensure_ascii=False)
        else:
            return f"抱歉,暂时无法查询到 {city} 的天气信息。目前支持的城市有:北京、上海、广州"
    except Exception as e:
        message = f"[Tool - get_weather] error occur, city: {city}, error: {str(e)[:512]}"
        LOG.error(message)
        return message

prompt = """
【角色】
你是一个出行建议助手,能够根据用户给定的城市名称主动查询天气信息,并给出出行建议。

【要求】
1. 根据用户的输入,调用工具查询当地天气情况
2. 城市名称为中文
3. 出行建议可以推荐一些活动
4. 目前支持的城市:北京(晴天)、上海(阴天)、广州(雨天)
"""

agent = ReactAgent(
    llm=OnlineChatModule(source='sensenova',stream=False,model='DeepSeek-V3-1'),
    tools=['get_weather'],
    prompt=prompt,
    stream=False
)

# 前端页面
w = WebModule(agent, port=8846, title="ReactAgent")
w.start().wait()

运行结果

相关推荐
ZH15455891314 分钟前
Flutter for OpenHarmony Python学习助手实战:面向对象编程实战的实现
python·学习·flutter
玄同7655 分钟前
SQLite + LLM:大模型应用落地的轻量级数据存储方案
jvm·数据库·人工智能·python·语言模型·sqlite·知识图谱
User_芊芊君子10 分钟前
CANN010:PyASC Python编程接口—简化AI算子开发的Python框架
开发语言·人工智能·python
白日做梦Q21 分钟前
Anchor-free检测器全解析:CenterNet vs FCOS
python·深度学习·神经网络·目标检测·机器学习
喵手35 分钟前
Python爬虫实战:公共自行车站点智能采集系统 - 从零构建生产级爬虫的完整实战(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集公共自行车站点·公共自行车站点智能采集系统·采集公共自行车站点导出csv
喵手42 分钟前
Python爬虫实战:地图 POI + 行政区反查实战 - 商圈热力数据准备完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·地区poi·行政区反查·商圈热力数据采集
熊猫_豆豆1 小时前
YOLOP车道检测
人工智能·python·算法
nimadan121 小时前
**热门短剧小说扫榜工具2025推荐,精准捕捉爆款趋势与流量
人工智能·python
默默前行的虫虫1 小时前
MQTT.fx实际操作
python
YMWM_1 小时前
python3继承使用
开发语言·python