LazyLLM:还在为AI应用开发掉头发?商汤开源智能体低代码开发工具,三行代码部署聊天机器人

本文涉及的产品
图像搜索,任选一个服务类型 1个月
简介: LazyLLM 是一个低代码开发平台,可帮助开发者快速构建多智能体大语言模型应用,支持一键部署、跨平台操作和多种复杂功能。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦


💥 “凌晨3点的程序员都在哭(bushi):商汤开源的这个工具,让AI应用开发卷成填空题!”
大家好,我是蚝油菜花。你是否也经历过——

  • 👉 想用GPT-4做智能客服,却在LangChain的API地狱里迷路
  • 👉 调教多模型协作时,被线程管理和数据流逼到秃头
  • 👉 好不容易跑通Demo,却卡在微调参数和部署环节...

今天要分享的 LazyLLM ,正是商汤大装置团队扔向开发者的一颗救星!帮助开发者以低成本快速构建多智能体的大语言模型应用:

  • ✅ 5行代码组建AI团队:让ChatGPT处理文案,Claude分析数据,SDXL生成图表
  • ✅ 动态Token剪枝黑科技:长文本推理速度提升300%
  • ✅ 企业级一键部署:从本地测试到云端上线只需1条命令

🚀 快速阅读

LazyLLM 是一款低代码开发工具,专注于多智能体大语言模型应用的构建。

  1. 核心功能:支持低代码开发、多智能体协同、模型微调与推理、一键部署和跨平台兼容。
  2. 技术原理:采用数据流驱动开发方式,模块化设计支持灵活组合,动态优化模型性能。

LazyLLM 是什么

LazyLLM-cover

LazyLLM 是一个低代码开发工具,旨在帮助开发者以低成本快速构建多智能体的大语言模型应用。它通过简化的开发流程,降低 AI 应用的开发门槛,尤其适合初学者和专业开发者。无论是聊天机器人、检索增强生成(RAG)还是多模态应用,都可以通过少量代码实现复杂功能。

LazyLLM 提供了一键部署和跨平台支持的能力,兼容 Windows、Linux 和 macOS 等多种操作系统环境。同时,它还支持在线和离线模型的推理,能够结合图像、音频等多模态数据,拓展应用场景。

LazyLLM 的主要功能

  • 低代码开发:通过极简的开发流程,快速构建复杂的 AI 应用,降低开发难度。
  • 多智能体支持:支持多个模型协同工作,满足不同场景下的需求。
  • 模型微调与推理:支持在线和离线模型微调,兼容多种推理框架。
  • 一键部署:通过轻量级网关机制,支持本地或云端的一键部署。
  • 跨平台支持:兼容多种操作系统和环境,便于灵活选择开发和部署环境。
  • 多模态扩展:支持结合图像、音频等数据,构建更丰富的应用场景。
  • 灵活配置:提供丰富的配置选项,支持定制化开发和性能优化。

LazyLLM 的技术原理

  • 数据流驱动开发:通过 Pipeline、Parallel、Diverter 和 Loop 等数据流控制方式,灵活组织复杂的数据处理流程。
  • 组件化与模块化设计:基于组件和模块构建应用,支持训练、部署、推理和评估等核心能力。
  • 模型微调与参数优化:自动选择最佳微调框架和参数分割策略,支持网格搜索优化配置。
  • 动态 Token 剪枝:引入动态剪枝技术,提高长文本推理效率。

如何运行 LazyLLM

1. 安装 LazyLLM

可以通过以下两种方式快速安装:

# 使用 pip 安装基础依赖
pip3 install lazyllm

# 安装完整依赖
pip3 install lazyllm
lazyllm install full

2. 三行代码部署聊天机器人

以下是一个简单的聊天机器人示例:

import lazyllm
chat = lazyllm.OnlineChatModule()
lazyllm.WebModule(chat).start().wait()

如果使用本地模型,可以指定模型名称:

chat = lazyllm.TrainableModule('internlm2-chat-7b')
lazyllm.WebModule(chat, port=23466).start().wait()

如果你使用pip安装了lazyllm并确保Python环境的bin目录在你的$PATH中,你还可以通过执行一行命令lazyllm run chatbot快速启动聊天机器人!如果你想使用本地模型,只需要使用--model参数指定模型名称。例如,你可以使用lazyllm run chatbot --model=internlm2-chat-7b启动基于本地模型的聊天机器人。

3. 构建具有多模态和意图识别的高级智能体

LazyLLM-multimodal-bot

代码示例:

from lazyllm import TrainableModule, WebModule, deploy, pipeline
from lazyllm.tools import IntentClassifier

painter_prompt = 'Now you are a master of drawing prompts, capable of converting any Chinese content entered by the user into English drawing prompts. In this task, you need to convert any input content into English drawing prompts, and you can enrich and expand the prompt content.'
musician_prompt = 'Now you are a master of music composition prompts, capable of converting any Chinese content entered by the user into English music composition prompts. In this task, you need to convert any input content into English music composition prompts, and you can enrich and expand the prompt content.'

base = TrainableModule('internlm2-chat-7b')
with IntentClassifier(base) as ic:
    ic.case['Chat', base]
    ic.case['Speech Recognition', TrainableModule('SenseVoiceSmall')]
    ic.case['Image QA', TrainableModule('Mini-InternVL-Chat-2B-V1-5').deploy_method(deploy.LMDeploy)]
    ic.case['Drawing', pipeline(base.share().prompt(painter_prompt), TrainableModule('stable-diffusion-3-medium'))]
    ic.case['Generate Music', pipeline(base.share().prompt(musician_prompt), TrainableModule('musicgen-small'))]
    ic.case['Text to Speech', TrainableModule('ChatTTS')]
WebModule(ic, history=[base], audio=True, port=8847).start().wait()

4. 构建 RAG 应用

LazyLLM-RAG

导入库和提示词:

import os
import lazyllm
from lazyllm import pipeline, parallel, bind, SentenceSplitter, Document, Retriever, Reranker

prompt = 'You will play the role of an AI Q&A assistant and complete a dialogue task. In this task, you need to provide your answer based on the given context and question.'

以下是一个在线部署的 RAG 示例:

documents = Document(dataset_path="your data path", embed=lazyllm.OnlineEmbeddingModule(), manager=False)
documents.create_node_group(name="sentences", transform=SentenceSplitter, chunk_size=1024, chunk_overlap=100)

with pipeline() as ppl:
    with parallel().sum as ppl.prl:
        prl.retriever1 = Retriever(documents, group_name="sentences", similarity="cosine", topk=3)
        prl.retriever2 = Retriever(documents, "CoarseChunk", "bm25_chinese", 0.003, topk=3)

    ppl.reranker = Reranker("ModuleReranker", model="bge-reranker-large", topk=1) | bind(query=ppl.input)
    ppl.formatter = (lambda nodes, query: dict(context_str="".join([node.get_content() for node in nodes]), query=query)) | bind(query=ppl.input)
    ppl.llm = lazyllm.OnlineChatModule(stream=False).prompt(lazyllm.ChatPrompter(prompt, extro_keys=["context_str"]))

lazyllm.WebModule(ppl, port=23466).start().wait()

以下是一个本地部署的示例:

documents = Document(dataset_path='/file/to/yourpath', embed=lazyllm.TrainableModule('bge-large-zh-v1.5'))
documents.create_node_group(name="sentences", transform=SentenceSplitter, chunk_size=1024, chunk_overlap=100)

with pipeline() as ppl:
    with parallel().sum as ppl.prl:
        prl.retriever1 = Retriever(documents, group_name="sentences", similarity="cosine", topk=3)
        prl.retriever2 = Retriever(documents, "CoarseChunk", "bm25_chinese", 0.003, topk=3)

    ppl.reranker = Reranker("ModuleReranker", model="bge-reranker-large", topk=1) | bind(query=ppl.input)
    ppl.formatter = (lambda nodes, query: dict(context_str="".join([node.get_content() for node in nodes]), query=query)) | bind(query=ppl.input)
    ppl.llm = lazyllm.TrainableModule("internlm2-chat-7b").prompt(lazyllm.ChatPrompter(prompt, extro_keys=["context_str"]))

lazyllm.WebModule(ppl, port=23456).start().wait()

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦

相关文章
|
1月前
|
人工智能 数据处理 API
阿里云、Ververica、Confluent 与 LinkedIn 携手推进流式创新,共筑基于 Apache Flink Agents 的智能体 AI 未来
Apache Flink Agents 是由阿里云、Ververica、Confluent 与 LinkedIn 联合推出的开源子项目,旨在基于 Flink 构建可扩展、事件驱动的生产级 AI 智能体框架,实现数据与智能的实时融合。
344 6
阿里云、Ververica、Confluent 与 LinkedIn 携手推进流式创新,共筑基于 Apache Flink Agents 的智能体 AI 未来
|
1月前
|
人工智能 测试技术 API
构建AI智能体:二、DeepSeek的Ollama部署FastAPI封装调用
本文介绍如何通过Ollama本地部署DeepSeek大模型,结合FastAPI实现API接口调用。涵盖Ollama安装、路径迁移、模型下载运行及REST API封装全过程,助力快速构建可扩展的AI应用服务。
592 6
|
1月前
|
人工智能 运维 安全
加速智能体开发:从 Serverless 运行时到 Serverless AI 运行时
在云计算与人工智能深度融合的背景下,Serverless 技术作为云原生架构的集大成者,正加速向 AI 原生架构演进。阿里云函数计算(FC)率先提出并实践“Serverless AI 运行时”概念,通过技术创新与生态联动,为智能体(Agent)开发提供高效、安全、低成本的基础设施支持。本文从技术演进路径、核心能力及未来展望三方面解析 Serverless AI 的突破性价值。
|
1月前
|
人工智能 文字识别 自然语言处理
有了AI叠buff,低代码行业在沉寂了一段时间后,好似又活过来了?
曾被质疑“难堪大用”的低代码平台,在AI驱动下正焕发新生。借助大模型,AI可理解自然语言、自动生成应用、智能补全数据、解析文档图表,大幅提升开发效率与业务响应速度。从“拖拉拽”到“你说我做”,低代码已迈入智能化时代,加速企业数字化转型。
|
1月前
|
人工智能 供应链 安全
AI时代下,2025年中国低代码市场发展如何了?
技术民主化正重塑企业数字化边界。低代码与AI融合,让业务人员也能快速构建系统,开发效率倍增、成本大降。从制造到金融,平台已承担核心业务,推动IT与业务协同创新,释放全员创造力。
|
1月前
|
SQL 人工智能 机器人
AI Agent新范式:FastGPT+MCP协议实现工具增强型智能体构建
FastGPT 与 MCP 协议结合,打造工具增强型智能体新范式。MCP 如同 AI 领域的“USB-C 接口”,实现数据与工具的标准化接入。FastGPT 可调用 MCP 工具集,动态执行复杂任务,亦可作为 MCP 服务器共享能力。二者融合推动 AI 应用向协作式、高复用、易集成的下一代智能体演进。
313 0
|
1月前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段四:学术分析 AI 项目 RAG 落地指南:基于 Spring AI 的本地与阿里云知识库实践
本文介绍RAG(检索增强生成)技术,结合Spring AI与本地及云知识库实现学术分析AI应用,利用阿里云Qwen-Plus模型提升回答准确性与可信度。
903 90
AI 超级智能体全栈项目阶段四:学术分析 AI 项目 RAG 落地指南:基于 Spring AI 的本地与阿里云知识库实践
|
1月前
|
人工智能 搜索推荐 数据可视化
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
当AI学会“使用工具”:智能体(Agent)如何重塑人机交互
323 115
|
1月前
|
人工智能 API 开发工具
构建AI智能体:一、初识AI大模型与API调用
本文介绍大模型基础知识及API调用方法,涵盖阿里云百炼平台密钥申请、DashScope SDK使用、Python调用示例(如文本情感分析、图像文字识别),助力开发者快速上手大模型应用开发。
1011 16
构建AI智能体:一、初识AI大模型与API调用
|
1月前
|
存储 机器学习/深度学习 人工智能
构建AI智能体:三、Prompt提示词工程:几句话让AI秒懂你心
本文深入浅出地讲解Prompt原理及其与大模型的关系,系统介绍Prompt的核心要素、编写原则与应用场景,帮助用户通过精准指令提升AI交互效率,释放大模型潜能。
407 5

热门文章

最新文章