华为云Flexus+DeepSeek征文|基于华为云一键部署的 Dify-LLM 平台构建智能试卷生成助手

目录

前言

1 华为云Dify-LLM应用平台部署

1.1 一键部署平台简介

1.2 四步完成部署流程

2 接入华为云 DeepSeek 自定义大模型

2.1 ModelArts Studio 模型服务介绍

2.2 配置自定义大模型

3 创建试卷生成工具(工作流)

3.1 设计 DSL 工作流

3.2 工具发布

4 开发保存试卷应用(Agent)

4.1 构建 Agent 应用

4.2 YAML 导入与发布

5 应用测试与运行

5.1 预览应用界面

5.2 模拟运行过程

6 平台部署体验总结

结语

参考资料


前言

随着大模型技术的快速发展,教育领域的数字化与智能化迎来了新的契机。尤其是在试卷自动生成、个性化学习辅助等方向,语言模型(LLM)正逐渐成为推动教育创新的重要引擎。Dify 作为一款轻量高效的大模型应用平台,可以帮助用户快速搭建各类智能应用。

本文将结合华为云平台,通过一键部署的方式构建 Dify-LLM 应用环境,并接入自定义部署的 DeepSeek 大模型,开发一个智能试卷生成助手,实现从试卷生成到保存的完整流程。

1 华为云Dify-LLM应用平台部署

1.1 一键部署平台简介

华为云为 Dify 平台提供了便捷的一键部署方案,用户可以通过资源编排模板(HEAT),无需手动配置服务器、数据库等基础设施,即可在数分钟内完成平台部署。部署后的 Dify 支持可视化界面操作,便于非技术用户快速上手,并支持插件、工具、工作流等多种扩展形式,极大提升了开发效率。

1.2 四步完成部署流程

整个部署流程共分为四个主要步骤。

首先,用户需要登录华为云控制台,在资源编排服务中查找并选择“Dify一键部署模板”,这是整个部署的起点。

接着,进入参数配置阶段,填写部署所需的各项资源参数,包括服务器的登录密码、数据库账号和密码等信息,这些参数将用于自动化创建基础环境。

完成参数填写后,用户需要设置资源栈的相关信息,如命名资源栈、选择部署区域以及指定可用区等。资源栈相当于部署实例的容器,方便用户对整个部署过程进行统一管理。

最后,系统会对所有配置进行汇总确认,用户核对无误后即可一键启动部署流程。部署启动后,系统将自动完成服务器创建、环境搭建、Dify 服务配置等操作,通常只需几分钟便可完成全部安装,生成访问入口,进入正式使用阶段。

部署完成后,系统会提供访问地址。

首次进入 Dify 平台时,需要设置管理员账户。之后即可登录进入主界面,开展后续的模型接入与应用开发工作。

2 接入华为云 DeepSeek 自定义大模型

2.1 ModelArts Studio 模型服务介绍

DeepSeek 是近年来备受关注的国产开源大模型系列,支持代码、数学、语言理解等多种能力。在华为云 ModelArts Studio 上,用户可以创建并部署 DeepSeek-V3 或 DeepSeek-R1 模型服务,具备稳定、高性能的 API 推理能力,并支持私有化部署,适合在 Dify 平台中调用。

2.2 配置自定义大模型

在 Dify 中接入自定义大模型,需要以下步骤: 1.登录 ModelArts Studio,创建 DeepSeek 模型实例并部署在线服务;2.获取服务的 url地址、API等调用凭据;

3. 在 Dify 平台的「模型提供方」配置中添加新模型,选择「自定义模型」;4. 填写名称、请求地址、Headers 认证信息等,完成模型注册。

配置成功后,即可在 Agent 应用中将 DeepSeek 模型作为默认的对话引擎使用。

3 创建试卷生成工具(工作流)

3.1 设计 DSL 工作流

为了实现自动化生成试卷,我们可以在 Dify 中通过「工作流(Workflow)」模块导入自定义的 DSL 文件,搭建如下逻辑流程: 开始节点:用于初始化流程,读取变量; HTTP 请求节点:调用外部接口,将生成的试卷题目发送到自有服务器; 结束节点:流程终止,同时返回试卷链接等信息。

其中 HTTP 请求节点需要对接我们自行部署的“创建试卷”服务,该服务的主要功能是接收生成的内容并持久化保存,返回访问链接。

3.2 工具发布

工作流测试无误后,可以将其发布为一个 Dify 工具,供 Agent 应用调用。

发布时填写如下信息: 工具调用名称:save_quiz_and_get_url, 工具描述:接收并保存试卷内容,返回URL。

发布后,该工具将出现在 Dify 的工具库中,可以在多个应用中复用。

4 开发保存试卷应用(Agent)

4.1 构建 Agent 应用

接下来,我们通过 Dify 的「Agent 应用」模块创建一个保存试卷的智能助手。该应用用于接收用户输入的参考资料,并基于 DeepSeek 模型生成结构化的试卷内容。

应用的主要结构如下:

组件

功能说明

提示词(Prompt)

指定生成试卷的任务指令和输出格式,例如“请根据参考资料生成一份包含选择题和简答题的试卷”

变量

用于接收用户提供的试卷内容参考资料,如学科知识点

工具

调用第三章构建的 save_quiz_and_get_url 工具,将生成内容保存并返回URL

模型

指定为自定义接入的 DeepSeek 模型服务,实现高质量文本生成

4.2 YAML 导入与发布

Dify 支持通过 YAML 文件定义和导入完整的 Agent 应用配置。我们只需编写好 YAML 文件结构(包括提示词、变量名、工具名等),通过平台导入,即可一键完成应用创建。

发布后,该应用可以通过 Dify 前端界面直接运行,也可以嵌入至外部系统中使用。

5 应用测试与运行

5.1 预览应用界面

在 Agent 应用发布成功后,我们可以点击“预览”进入用户端交互界面,界面包含输入参考资料的输入框以及模型输出区域。界面简洁直观,支持直接点击生成按钮开始推理。

5.2 模拟运行过程

以一次完整的运行过程为例,用户在应用界面中输入参考资料内容,例如“三国历史资料”。

三国(220年—280年),是中国历史时期。包括曹魏、蜀汉、东吴三个政权。 [4]190年,汉朝的中央集权制度崩溃,军阀四起,天下大乱。曹操先后击败吕布、袁术、袁绍等军阀,基本上统一了北方。208年的赤壁之战中,曹操被孙刘联军击败,赤壁之战奠定了三国鼎立的局面。 [76]220年,曹丕迫使汉献帝禅让帝位, [77-78]定都洛阳,国号“魏”,汉朝正式结束。221年,刘备称帝,定都成都,国号“汉”,史称蜀汉。 [79]229年孙权称帝,定都建邺,国号“吴”,史称东吴。 [80]249年的高平陵之变后,曹魏的实权逐渐被司马懿掌控。263年,曹魏的司马昭发动魏灭蜀之战,蜀汉灭亡。泰始元年十二月丙寅日(266年2月8日 [61]),曹魏权臣司马炎迫使魏元帝禅让帝位,建国号为“晋”,史称西晋,曹魏灭亡。咸宁五年(279年) [71]至太康元年(280年),晋武帝司马炎大举伐吴,东吴灭亡,西晋统一全国。

系统接收到输入后,调用接入的 DeepSeek 大模型进行内容生成。模型根据参考资料输出了一份结构完整的试卷题目列表,其中包括5道单选题、3道多选题、2道填空题以及2道简答题。

随后,Dify 自动触发已集成的工作流工具,通过 HTTP 请求将生成的试卷内容发送至我们预先部署的试卷创建服务。该服务对试卷进行保存处理,并返回一个可访问的链接。最终,系统将这个试卷链接展示给用户,例如:https://xxx.com/quiz/1234,标志着一次完整的“参考资料到试卷生成与保存”的流程顺利完成。从用户角度来看,整个流程高度自动化且响应迅速。

6 平台部署体验总结

通过本次部署与开发过程,可以总结出华为云 + Dify 平台在大模型应用构建方面的几点优势:

优势项

描述

一键部署

利用模板,几分钟内完成平台搭建,无需手动运维

模型灵活接入

支持自定义大模型服务,满足不同任务需求

可视化开发

工作流与Agent均可图形化配置,无需复杂编码

工具机制强大

支持 HTTP 请求等扩展,便于集成外部系统

性能可靠

华为云底层资源稳定,保障服务可用性

这套方案特别适合教育科技企业、在线学习平台等对“内容生成”有需求的场景,同时也为后续构建更复杂的智能助手(如学习路径规划、知识图谱问答)打下了坚实基础。

结语

本文以“试卷自动生成助手”为案例,完整演示了如何基于华为云一键部署 Dify 平台,接入自定义 DeepSeek 大模型,并通过工作流与 Agent 机制构建实际应用。随着国产大模型生态的日趋完善,基于 Dify 的轻量化开发方式将为各行业提供更低门槛、更高效率的大模型应用解决方案。

参考资料

https://github.com/brightwang/dify-tool-service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/912226.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/912226.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式硬件与应用篇---寄存器GPIO控制

在 ARM 架构中,通过 32 位寄存器控制 GPIO(通用输入输出)的核心步骤和方法可分为以下几个关键环节,结合不同芯片的实现差异,具体操作需参考对应的数据手册: 一、GPIO 控制的核心步骤 1. 使能 GPIO 时钟 …

Fiddler中文版抓包工具在跨域与OAuth调试中的深度应用

跨域和OAuth授权流程一直是Web和移动开发中最容易踩坑的领域。复杂的CORS配置、重定向中的Token传递、授权码流程的跳转,以及多域名环境下的Cookie共享,常常让开发者陷入调试困境。此时,一款能够精准捕获、修改、重放请求的抓包工具显得至关重…

React用户交互事件

在React中处理用户交互事件(如点击、输入、提交等)的方式与原生JavaScript类似,但有一些语法差异和最佳实践。以下是常见交互事件的处理方法及代码示例: 一、基本事件处理(点击、输入等) 1. 点击事件&…

DHT11 STM32 HAL驱动库 整数

dht11.h #ifndef __DHT11_H #define __DHT11_H#include "stm32f1xx_hal.h" // 根据实际芯片型号调整(如stm32f4xx_hal.h)// DHT11数据结构 typedef struct {GPIO_TypeDef *GPIOx; // GPIO端口(如GPIOA)uint16_t GP…

【Actix Web 精要】Rust Web 服务开发核心技术与实战指南

目录 一、Actix Web 核心架构解析1.1 核心组件交互流程1.2 关键组件说明: 二、项目初始化与配置2.1 创建项目2.2 添加依赖 (Cargo.toml)2.3 项目结构 三、核心模块实现3.1 配置管理 (src/config.rs)3.2 应用状态管理 (src/main.rs)3.3 数据模型 (src/models/user.rs…

从URL到视频:用Python和AI构建自动化内容讲解视频生成管道

摘要 本文旨在从技术层面,深入探讨并实践一个将任意网页链接(如飞书文档、博客文章)自动转换为带有配音和字幕的讲解视频的系统。我们将详细拆解整个实现流程,覆盖从内容抓取与解析、利用大语言模型(LLM)智…

Java 使用 Easy Excel 进行 Excel 数据导入导出

1. 通过 Maven 下载 Easy Excel 依赖包 在项目的 pom.xml 文件中添加以下依赖&#xff1a; <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.1</version> <!-- 使用最新版本 -->…

国产化条码类库Spire.Barcode教程:如何使用 C# 读取 PDF 中的条码(两种方法轻松实现)

在 PDF 文档的 .NET 平台处理流程中&#xff0c;使用 C# 读取 PDF 条码 是一项常见需求&#xff0c;特别适用于处理扫描件或电子表单。无论是物流、金融、医疗还是制造行业&#xff0c;PDF 文档中经常包含用于追踪或识别的条码。这些条码可能是嵌入图像&#xff0c;也可能是矢量…

2023国赛数字取证-流量分析

数据取证 - 1 A 集团的⽹络安全监控系统发现恶意份⼦正在实施⾼级可持续攻击&#xff08;APT&#xff09;&#xff0c;并抓取了部分可疑流量包。请 您根据捕捉到的流量包&#xff0c;搜寻出⽹络攻击线索&#xff0c;分解出隐藏的恶意程序&#xff0c;并分析恶意程序的⾏为。 …

【预约小程序】-健身房预约课程小程序——仙盟创梦IDE

东方仙盟-坐拥万个代码 免费报表 阿雪技术观 让我们积极投身于技术共享的浪潮中&#xff0c;不仅仅是作为受益者&#xff0c;更要成为贡献者。无论是分享自己的代码、撰写技术博客&#xff0c;还是参与开源项目的维护和改进&#xff0c;每一个小小的举动都可能成为推动技术进…

SmartETL中数据库操作与流程解耦的设计与应用

正如ETL这个概念本身所指示的&#xff0c;数据库读写访问是ETL的最常用甚至是最主要的操作。现代信息系统的设计与运行基本都是围绕数据库展开的&#xff0c;很多应用的核心功能都是对数据库的CRUD&#xff08;创建、检索、更新、删除&#xff09;操作。 SmartETL框架设计之初…

【记录解决问题】activiti--sql 转义符设置

一、背景 %、&#xff01;、_在sql查询时需要转义&#xff0c;转义的语法 like %?2% escape ?#{escapeCharacter()}二、activiti转义配置 String wildcardEscapeClause ""; if (this.databaseWildcardEscapeCharacter ! null && this.databaseWildcard…

Unity AR构建维护系统的以AI驱动增强现实知识检索系统

本博客概述了为维护开发的AI驱动增强现实&#xff08;AR&#xff09;知识检索系统的开发过程&#xff0c;该系统集成了Unity用于AR、Python服务器用于后端处理&#xff0c;以及ChatGPT用于自然语言处理。该系统允许维护工人通过AR设备&#xff08;如HoloLens 2&#xff09;查询…

Java面向对象核心:方法值传递与封装机制精讲

文章目录 Java面向对象编程核心笔记一、方法值传递机制1. 基本数据类型传递2. 引用数据类型传递值传递总结 二、面向对象核心概念1. 类与对象关系2. 类定义规范3. 对象创建与使用 三、封装机制详解1. 封装三大要素2. 封装示例&#xff08;GirlFriend类&#xff09;3. 测试类4. …

【Actix Web】构建高性能 Rust API:Actix Web 最佳实践与进阶指南

目录 一、高性能 API 架构设计1.1 系统架构图1.2 核心组件 二、项目初始化与配置2.1 创建项目2.2 添加依赖 (Cargo.toml)2.3 配置文件 (config/default.toml) 三、核心模块实现3.1 应用状态管理 (src/state.rs)3.2 数据模型定义 (src/models.rs) 四、认证与授权系统4.1 JWT 认证…

vue项目中纯前端实现导出pdf文件,不需要后端处理。

在 Vue 项目中&#xff0c;纯前端实现导出 PDF 文件是完全可行的。通常可以借助一些 JavaScript 库来将 HTML 内容或 DOM 元素转换为 PDF 并下载&#xff0c;无需后端参与。 下面介绍几种常用的方案和实现方法&#xff1a; 推荐方案&#xff1a;使用 html2canvas jsPDF 安装…

c++虚拟内存

常见的内存困惑 当你编写C程序时&#xff0c;是否遇到过&#xff1a; vector申请200MB内存&#xff0c;但系统显示只占用20MB&#xff1f;程序在低配机器上崩溃&#xff0c;报出std::bad_alloc但内存显示充裕&#xff1f;遍历数组时特定位置耗时突然增加&#xff1f;相同代码…

领域驱动设计(DDD)【22】之限定建模技术

文章目录 一 限定初识二 限定识别三 限定实现 一 限定初识 一个 员工 可以拥有多份 工作经验&#xff0c;而各个 工作经验 的 时间段 不能相互重叠。可以得出一个推论&#xff1a;对于一个 员工 而言&#xff0c;每个 时间段 只能有一条 工作经验。 UML中第二种表述方式&…

《P6492 [COCI 2010/2011 #6] STEP》

题目描述 给定一个长度为 n 的字符序列 a&#xff0c;初始时序列中全部都是字符 L。 有 q 次修改&#xff0c;每次给定一个 x&#xff0c;若 ax​ 为 L&#xff0c;则将 ax​ 修改成 R&#xff0c;否则将 ax​ 修改成 L。 对于一个只含字符 L&#xff0c;R 的字符串 s&#…

macOS,切换 space 失效,向右切换space(move right a space) 失效

背景 准确来讲&#xff0c;遇到的问题是向右切换space&#xff08;move right a space) 失效&#xff0c;并向左是成功的。 在键盘-快捷键-调度中心中&#xff0c;所有的快捷键均可用&#xff0c;但是“向右移动一个空间”总是失效。 已经检查过不是快捷键冲突的问题&#x…