华为开发者空间介绍:
华为开发者空间,是为全球开发者打造的专属开发者空间,致力于为每位开发者提供一台云主机、一套开发工具和云上存储空间,汇聚昇腾、鸿蒙、鲲鹏、GaussDB、欧拉等华为各项根技术的开发工具资源,并提供配套案例指导开发者 从开发编码到应用调测,基于华为根技术生态高效便捷的知识学习、技术体验、应用创新。
免费领取开发者空间云主机
一、前言:
随着人工智能技术的不断成熟,文本转语音(TTS)技术已逐步普及到日常生活中。在快节奏的现代生活中,我们尝试用AI技术架起一座通往传统文化的桥梁。TTS技术可以将文本内容转化为音频,中国的古诗词有很多,现在的社会大家都比较忙,涉及到很多历史文物,对每个历史人物和相关的历史故事需要通读历史人物传记、历史书籍,为用户带来了全新的“听书”体验。
可以让Dify通过每天几分钟听到各种历史故事,从而帮助学习和了解中国的历史,每天给我推送一个古诗词并且介绍相关的历史人物故事,通过听音频文件来了解这个历史故事,就不需要再去阅读书籍了。
华为云云主机提供强劲的动力源,支撑着Dify平台这个"大脑"高速运转。用户在交互界面输入的每个作者姓名,都会触发三重艺术创作流程:知识图谱瞬间检索出最匹配的诗词作品,TTS引擎为文字注入情感的温度,AI绘画模型则将抽象的诗意转化为可见的视觉符号。
二、Dify平台工作流:
华为云云主机是一款高性能、高可靠性、可灵活配置的云服务器解决方案,尤其适合构建AI应用场景,支持弹性伸缩和多种规格选项,拥有卓越的计算性能,稳定的网络带宽,兼容主流AI开发框架,帮助开发者更快速地实现业务部署与产品上线。
2.1 免费领取开发者空间云主机:
首次打开华为开发者空间,整洁的界面和清晰的导航就让人眼前一亮。这个专为全球开发者打造的平台,就像一个一站式技术宝库,不仅提供了昇腾、鸿蒙、鲲鹏等华为核心技术的开发工具,还贴心地配备了云主机、存储空间和详细的案例指导。
点击"免费领取开发者空间云主机"按钮时,无论是PC端还是移动端,都能轻松免费获取并使用4核8G的Ubuntu 24.04云主机,领取启动取后这里我们稍等几分钟就行了,因为系统正在加载图形化界面。
进入到了桌面后,跟平时我们的电脑桌面差不多,但是华为云主机专注于开发领域的,一般的开发软件都已经存在在桌面上了,直接上手使用就行。
右键终端输入命令,安装ollama:
curl -fsSL https://ollama.com/install.sh | sh
下完完后,就会进行安装ollama就安装好了。
接下来借助ollama工具来进行deepseek r1模型的部署操作,这里选择的是deepseek-r1:1.5b模型,当然也可以部署其他的模型。
这里在开始进行部署时,可以看到华为云主机部署速度还是很快的,8M每秒,对于下载大容量的大模型也不在话下。
首次打开华为开发者空间,整洁的界面和清晰的导航就让人眼前一亮。这个专为全球开发者打造的平台,就像一个一站式技术宝库,不仅提供了昇腾、鸿蒙、鲲鹏等华为核心技术的开发工具,还贴心地配备了云主机、存储空间和详细的案例指导。
点击"免费领取开发者空间云主机"按钮时,无论是PC端还是移动端,都能轻松免费获取并使用4核8G的Ubuntu 24.04云主机,领取启动取后这里我们稍等几分钟就行了,因为系统正在加载图形化界面。
进入到了桌面后,跟平时我们的电脑桌面差不多,但是华为云主机专注于开发领域的,一般的开发软件都已经存在在桌面上了,直接上手使用就行。
右键终端输入命令,安装ollama:
curl -fsSL https://ollama.com/install.sh | sh
下完完后,就会进行安装ollama就安装好了。
接下来借助ollama工具来进行deepseek r1模型的部署操作,这里选择的是deepseek-r1:1.5b模型,当然也可以部署其他的模型。
这里在开始进行部署时,可以看到华为云主机部署速度还是很快的,8M每秒,对于下载大容量的大模型也不在话下。
2.2 Dify平台的登录与初始化工作:
在上面通过部署完成后,华为云提供的云主机 X一键部署模板,在几分钟内完整的部署一个Dify可用的平台,打开提供的IP访问公网链接地址,第一次进行来需要设置的管理员账号的信息,管理员拥有最大的权限,可用于创建应用和管理LLM供应商等的权限。
所以,注意不要进行泄漏管理员账号,设置完管理员账号后使用邮箱和密码即可进行登录,即可进入Dify的工作台环境,为后续应用的构建提供良好基础。
2.3 创建工作流的应用框架:
登录Dify平台后,创建一个空白应用,接下来我们来分析一下本次的需求,主要的技术点总结如下,包括应用创建、工作流设计、插件管理等功能,用户可根据需要构建智能化的业务流程:
- ①. 我们需要大语言模型来编写历史故事。
- ②. 生成的历史故事通过听过TTS播放出来
- ③. 可以通过语言文字的和音频文件发送给微信、QQ 、飞书、钉钉等第三方IM 工具中。
2.4 工作流 - 面向单轮自动化任务的编排工作流:
基于工作流编排,适用于自动化、批处理等单轮生成类任务的场景,为解决自然语言输入中用户意图识别的复杂性,Chatflow 提供了问题理解类节点。相对于 Workflow 增加了 Chatbot 特性的支持,如:对话历史(Memory)、标注回复、Answer 节点等。
为解决自动化和批处理情景中复杂业务逻辑,工作流提供了丰富的逻辑节点,如代码节点、IF/ELSE 节点、模板转换、迭代节点等,除此之外也将提供定时和事件触发的能力,方便构建自动化流程。
- ①. 从一个空白的工作流开始构建或者使用系统模板帮助你开始。
- ②. 熟悉基础操作,包括在画布上创建节点、连接和配置节点、调试工作流、查看运行历史等。
- ③. 保存并发布一个工作流。
- ④. 在已发布应用中运行或者通过 API 调用工作流。
2.5 LLM大语言模型节点:
“开始” 节点是每个工作流应用(Chatflow / Workflow)必备的预设节点,为后续工作流节点以及应用的正常流转提供必要的初始信息,例如应用使用者所输入的内容、以及上传的文件等。
进入画布界面如图,给开始节点增加添加一个input 用户输入的文本类输入,在开始节点的设置页,你可以看到两部分设置,分别是 “输入字段” 和预设的系统变量。
输入字段功能由应用开发者设置,通常用于让应用使用者主动补全更多信息。例如在周报应用中要求使用者按照格式预先提供更多背景信息,如姓名、工作日期区间、工作详情等,支持以下六种类型输入变量,所有变量均可设置为必填项:
- ①. 文本:短文本,由应用使用者自行填写内容,最大长度 256 字符。
- ②. 段落:长文本,允许应用使用者输入较长字符。
- ③. 下拉选项:由应用开发者固定选项,应用使用者仅能选择预设选项,无法自行填写内容。
- ④. 数字:仅允许用户输入数字。
- ⑤. 单文件:允许应用使用者单独上传文件,支持文档类型文件、图片、音频、视频和其它文件类型。支持通过本地上传文件或粘贴文件 URL。详细用法请参考文件上传。
- ⑥. 文件列表:允许应用使用者批量上传文件,支持文档类型文件、图片、音频、视频和其它文件类型。支持通过本地上传文件或粘贴文件 URL。详细用法请参考文件上传。
2.6 LLM文本类大语言模型节点:
调用大语言模型的能力,处理用户在 “开始” 节点中输入的信息(自然语言、上传的文件或图片),给出有效的回应信息,LLM 节点是 Chatflow/Workflow 的核心节点。该节点能够利用大语言模型的对话/生成/分类/处理等能力,根据给定的提示词处理广泛的任务类型,并能够在工作流的不同环节使用。
在应用编辑页中,点击鼠标右键或轻点上一节点末尾的 + 号,添加节点并选择 LLM节点,可以调用大语言模型回答问题或者对自然语言进行处理。
在点击刚刚添加的LLM模型节点时,会弹出一个节点的详细信息编辑框,这里可以在最上面可以修改这个节点的名称,比如“搜索古诗人诗词”,另外,可以看到在模型选择的字段,是空的,表示这里没有配置相关的模型,无法进行大模型的生成。
在之前的文章中,还记得是否开通DeepSeek-V3/R1大模型商用大模型的服务呢?但是在添加LLM大模型之前需要先将“华为云云主机部署”上开通的DeepSeek-V3/R1大模型商用级推理服务添加到进来,这里可以点击“模型设置“按钮进行添加模型。
在“工作空间”里面的“模型供应商”中,我们往下找,找到“OpenAI-API-compatible”模型,点击可以进行安装,OpenAI-API-compatible 指的是一种应用程序编程接口(API)设计和规范,它严格遵循 OpenAI 公司的 API 标准格式(如请求参数、响应结构)。
“OpenAI-API-compatible”模型使开发者能够无缝集成第三方模型服务(例如开源大语言模型或云平台模型),而无需修改现有代码或仅需少量调整。这种兼容性允许用户使用与 OpenAI API 相同的接口访问多样化的模型,包括文本生成、聊天补全、嵌入等任务。
接下来,我们可以在“OpenAI-API-compatible”模型中添加,显著降低 API 调用成本,部分平台提供免费额度或更低定价模型,实现本地与云端的混合部署方案,简化应用迁移,现有基于 OpenAI 的应用程序(如聊天机器人或写作助手)可快速适配到兼容服务,减少开发时间。
当然,这里也可以添加多个模型,比如我们将V3、R2两个模型都添加进来,当然,如果还有其它的需求也是一样可以这样类似的方式,添加如百度千帆、DeepSeek、Llama 等模型。
2.7 LLM大语言模型 – 系统提示词:
在LLM节点配置弹框中,我们可以在System这个属性,点击“+”号后弹出“提示词生成器”窗口,我们可以在提示词生成器窗口中,增加一些指令“帮我生成搜索某个诗人相关的诗词”,会自动通过配置的模型来优化提示词,以获得高质量的数据定义结构。
以下为通过配置的DeepSeek-V3/R1大模型商用大模型的服务,生成的AI指令提示词:
```xml
<instruction>
<instructions>
1. 首先,明确用户提供的诗人姓名或相关关键词,确保理解用户需要搜索的诗人身份。
2. 根据诗人姓名或关键词,从诗词数据库中检索与该诗人相关的诗词作品。若诗人姓名不明确,可尝试通过关键词联想相关诗人。
3. 检索结果应包括诗词的标题、全文以及简要的背景信息(如创作年代、主题等)。若诗词较长,可截取代表性段落并标注“节选”。
4. 输出时需确保格式清晰,每首诗词之间用空行分隔,避免使用任何XML标签或其他标记语言。
5. 若未找到相关诗词,应礼貌告知用户并建议提供更具体的信息或尝试其他关键词。
6. 输出语言需与用户输入的语言一致(默认为中文)。
</instructions>
<examples>
<example>
输入:李白
输出:
《静夜思》
床前明月光,疑是地上霜。
举头望明月,低头思故乡。
创作背景:此诗为唐代诗人李白的名篇之一,描写了游子思乡之情,语言简洁而意境深远。
</example>
<example>
输入:杜甫的战争诗
输出:
《春望》
国破山河在,城春草木深。
感时花溅泪,恨别鸟惊心。
烽火连三月,家书抵万金。
白头搔更短,浑欲不胜簪。
创作背景:此诗写于安史之乱期间,表达了诗人对国家动荡和家庭离散的深切忧虑。
《兵车行》(节选)
车辚辚,马萧萧,行人弓箭各在腰。
耶娘妻子走相送,尘埃不见咸阳桥。
创作背景:此诗揭露了战争给百姓带来的苦难,展现了杜甫的现实主义风格。
</example>
<example>
输入:苏轼的中秋词
输出:
《水调歌头·明月几时有》
明月几时有?把酒问青天。
不知天上宫阙,今夕是何年。
我欲乘风归去,又恐琼楼玉宇,高处不胜寒。
起舞弄清影,何似在人间。
创作背景:此词为苏轼在中秋之夜怀念弟弟苏辙而作,兼具豪放与婉约之美,是宋词中的经典之作。
</example>
</examples
2.8 LLM大语言模型 - 用户提示词:
这里需要接受用户传入指令 ,在用户提示词输入界面点击“/” 获取用户输入参数“input”
{
"text": "《静夜思》 \n床前明月光,疑是地上霜。 \n举头望明月,低头思故乡。 \n\n创作背景:此诗为唐代诗人李白的名篇之一,描写了游子思乡之情,语言简洁而意境深远。 \n\n《望庐山瀑布》 \n日照香炉生紫烟,遥看瀑布挂前川。 \n飞流直下三千尺,疑是银河落九天。 \n\n创作背景:此诗以夸张手法描绘庐山瀑布的壮丽景象,展现了李白豪放飘逸的诗风。 \n\n《早发白帝城》 \n朝辞白帝彩云间,千里江陵一日还。 \n两岸猿声啼不住,轻舟已过万重山。 \n\n创作背景:此诗写于李白流放途中遇赦返回时,表达了诗人欢快的心情和江行的迅疾。 \n\n《将进酒》(节选) \n君不见黄河之水天上来,奔流到海不复回。 \n君不见高堂明镜悲白发,朝如青丝暮成雪。 \n人生得意须尽欢,莫使金樽空对月。 \n\n创作背景:此诗为李白饮酒抒怀之作,充满豪情与人生感慨,是其浪漫主义风格的代表。",
"usage": {
"prompt_tokens": 514,
"prompt_unit_price": "0",
"prompt_price_unit": "0",
"prompt_price": "0",
"completion_tokens": 265,
"completion_unit_price": "0",
"completion_price_unit": "0",
"completion_price": "0",
"total_tokens": 779,
"total_price": "0",
"currency": "USD",
"latency": 7.2576870459997735
},
"finish_reason": "stop"
}
-
①. 选择模型,Dify 提供了全球主流模型的支持,包括“华为云云主机部署上的DeepSeek-V3/R1大模型商用级推理服务”等,选择一个模型取决于其推理能力、成本、响应速度、上下文窗口等因素,需要根据场景需求和任务类型选择合适的模型。
-
②. 配置模型参数,如果初次使用 Dify ,在 LLM 节点选择模型之前,需要在系统设置—模型供应商内提前完成模型配置。
-
③. 填写上下文(可选),上下文可以理解为向 LLM 提供的背景信息,常用于填写知识检索的输出变量。
-
④. 编写提示词,LLM 节点提供了一个易用的提示词编排页面,选择聊天模型或补全模型,会显示不同的提示词编排结构。如果选择聊天模型(Chat model),可以自定义系统提示词(SYSTEM)/用户(USER)/ 助手(ASSISTANT)三部分内容。
2.8 SPEECH TO TEXT配置语单转文字:
腾讯云语音识别(Automatic Speech Recognition,ASR)是将语音转化成文字的PaaS产品,为企业提供精准而极具性价比的识别服务。被微信、王者荣耀、腾讯视频等大量业务使用,适用于录音质检、会议实时转写、语音输入法等多个场景。
可以通过免费体验dify工作流模式下腾讯语音转文字speech2text服务,首先需要在腾讯云上开通语单识别服务,将并且申请好API Key相关的参数,不过,这里也是一样,只有第一次创建SecreKey才会显示密钥,其它的时候不会显示。
在模型供应商其中,我们进行搜索“tencent”,找到tencent这个组件,可以进行安装,安装成功后,就会在模型供应商列表中显示,在模型列表中能够显示就表示已经安装成功了。
Dify管理页面的配置项目,可以设置tencent的语音转文字服务,其中API key包括APP ID、SecretID、SecretKey三部分,通过配置Tencent cloud即可。
这里我们通过添加“Audio”工具节点,解析来在LLM 文本类大语言模型右边点击“+” ,在 “工具” 中搜索选择TEXT TO SPEECH 这个内置组件。可以看到里面包含一个“Speech To Text”节点,所以,我们就添加这个语音转文本的节点,这里在音频文件变量我们绑定上传文件的变量,然后,选中模型是上面刚刚添加tencent的语音转文字服务模型。
接下来使用运行进行测试,我们上传一个mp4文件时,他提示“not a valid audio file”不是一个有效的文件,接着我们再找了一个mp3文件,上传之后,可以成功的识别,在text字段进行返回结果,中文普通话的诗词准确率很高。
三、总结:
这段内容主要介绍了如何利用Dify平台和AI技术(特别是TTS文本转语音)来实现通过音频学习中国古诗词和历史故事的功能。核心流程包括:通过华为云云主机 X实例快速部署Dify平台,创建工作流应用框架,利用大语言模型生成历史故事内容,再通过TTS技术转换为音频,最后推送到微信等IM工具。
工作流设计部分强调了单轮任务自动化编排的能力,包括开始节点设置、逻辑节点运用(如代码/条件判断)和API调用等,整体目标是让用户通过"听书"形式高效获取历史文化知识,减少阅读负担。