华为开发者空间:基于仓颉编程语言和DeepSeek开发智能聊天机器人

举报
开发者空间小蜜蜂 发表于 2025/03/03 10:06:38 2025/03/03
140 0 0
【摘要】 帮助开发者了解CodeArts IDE for Cangjie编辑器的能力,以及如何利用仓颉编程语言和DeepSeeK接口开发出功能强大的AI聊天助手,为用户提供更加智能、便捷的服务体验。

一、案例介绍

本案例基于华为开发者空间云主机的 AI 聊天助手开发过程。在开启这一富有挑战的开发之旅时,我们首先借助一个简洁的仓颉 项目案例,体验 CodeArts IDE for Cangjie 编辑器的各项功能。该编辑器不仅功能强大,且预置在云主机环境中,为我们后续的开发工作奠定了良好基础。我们充分利用其便利性,结合仓颉编程语言,展开了智能聊天助手的开发

在开发过程中,我们还巧妙运用了华为 MaaS 提供的免费 DeepSeeK Tokens,通过实际操作,在云主机内成功编写并实现了一个智能聊天助手。这一过程中,涉及到在 MaaS 服务中领取模型,深度体验 DeepSeek-R1 满血版的各项优势,以及 CodeArts IDE for Cangjie 编辑器的入门使用方法通过仓颉编程语言实现与 DeepSeek 接口的对接

本案例帮助开发者了解CodeArts IDE for Cangjie编辑器的能力,以及如何利用仓颉编程语言和DeepSeeK接口开发出功能强大的AI聊天助手,为用户提供更加智能、便捷的服务体验。

二、案例时间

本案例总时长预计40分钟。

三、案例流程

说明:

  1. 练习使用CodeArts IDE for Cangjie编辑器;
  2. 领取免费 DeepSeeK Tokens;
  3. 仓颉对接DeepSeek接口。

四、资源总

本案例预计花费总计0元。

资源名称

规格

单价(元)

时长(分钟)

云主机

2vCPUs | 4GB | X86 | Ubuntu

4vCPUs | 8GB | ARM | Ubuntu

免费

40

五、熟悉CodeArts IDE for Cangjie编辑器

5.1 编辑器介绍

CodeArts IDE for Cangjie作为一款专门支持仓颉开发的编辑器,常用的语法高亮、错误诊断、自动补全等功能依然具备,通过这些功能提供实时反馈,提升开发效率。同时还提供了丰富的命令行工具供开发者使用。另外支持反向调试,即我们可以在反向调试模式下查看历史调试信息。当前CodeArts IDE for Cangjie也提供了Windows x64 版本 的安装包,大家可以个人本地电脑进行安装体验。

当然,华为也提供了更加便捷的使用方式,即在开发者空间云主机中预置了CodeArts IDE for Cangjie以及仓颉工具链,开箱即用。

我们先来熟悉下CodeArts IDE for Cangjie的基础使用和能力

5.2 创建项目

在云主机桌面打开CodeArts IDE for Cangjie

点击新建工程创建仓颉工程,名称位置可以自定义,产物类型选择executable

*产物类型说明:executable,可执行文件;static,静态库,是一组预先编译好的目标文件的集合;dynamic,动态库,是一种在程序运行时才被加载到内存中的库文件,多个程序共享一个动态库副本,而不是像静态库那样每个程序都包含一份完整的副本。

创建项目后,打开src目录下main.cj文件,在预置代码中增加函数和函数调用代码。

修改后的main.cj文件代码:

package demo
func println_add(a: Int64, b:Int64): Int64 {
    let number: Int64 = a+b
    println(number)
    return number
}
main(): Int64 {
    println("hello world")
    println_add(3,4)
    println("hello Cangjie")
    return 0
}

5.3 运行项目

点击右上的运行按钮运行项目,在终端中查看输出内容。如果遇到弹窗提示运行/调试配置点击确定继续操作。

5.4 调试项目

点击右上调试按钮,首次会提示配置调试,点击新增配置项,选择CangjiecjdbDebug——launch

*调试模式说明:Launch模式,启动调试器的同时加载被调程序;Attach,针对正在运行的程序,附加到已启动的程序。

保持默认配置,直接点击确定

然后可以在main.cj代码中设置断点,再次点击调试按钮。可以在顶部看到调试按钮,在左侧看到调试过程中的变量、监视、调用堆栈、断点信息。

5.5 反向调试

反向调试基于记录重放,IDE设置中开启反向调试功能后,调试服务会记录开发正向调试的所有停止点,以及停止点的线程、堆栈和变量等调试信息。进入反向调试模式,支持查看历史记录点的调试信息。

在编辑器左下点击管理设置,搜索reverse debug开启反向调试

main.cj打反向断点,选中“println_add(3,4)”行,然后鼠标右键,选择仓颉:添加反向断点

然后启动调试,正向调试执行到下个断点,然后启动反向调试,可以看到其停留在了反向断点,如果没有反向断点则直接反向到上一个正向断点。

CodeArts IDE for Cangjie的基础使用我们就练习到这,下面我们使用Cangjie编程语言对接DeepSeek接口。

六、Cangjie对接DeepSeek接口

6.1 免费领取DeepSeek R1满血版

华为云提供了单模型200万免费Tokens,包含DeepSeek-R1&V3满血版,我们可以登录华为云ModelArts Studio(MaaS)控制台领取免费额度,这里我们选择DeepSeek-R1满血版来搭建我们的专属AI聊天机器人

在云主机桌面底部菜单栏,点击打开火狐浏览器。用火狐浏览器访问Model Arts Studio 首页 https://www.huaweicloud.com/product/modelarts/studio.html,点击ModelArts Studio控制台跳转到登录界面,按照登录界面提示登录,即可进入ModelArts Studio控制台。

签署免责声明。

进入ModelArts Studio控制台首页,在左侧菜单栏,选择模型推理,在旧版服务中选择DeepSeek-R1-671B-xxK模型点击领取

领取后调用说明,可以获取到对应的API地址模型名称

点击API Key管理-创建API Key。(注意保存好API Key

这里华为云MaaS提供的免费DeepSeek Tokens就领取完成啦,记录对应的API地址模型名称API Key留作下面步骤使用。

6.2 Cangjie对接DeepSeek开发AI聊天助手

进入云主机桌面右键选择Open Terminal Here打开终端命令窗口,克隆仓颉示例代码仓库

git clone -b 0.53.13 https://gitcode.com/Cangjie/Cangjie-Examples.git

使用CodeArts IDE for Cangjie打开AIChat示例项目左上点击文件打开项目,选择前面克隆的示例代码目录Cangjie-Examples下的AIChat打开。

修改配置config.json配置文件,配置DeepSeekAPI信息。

配置信息:

配置项

内容

model

6.1步骤中获取到的模型名称

api_key

6.1步骤中获取到的API Key

base_url

6.1步骤中获取到的API地址

其他

保持默认

修改AIChat文件夹下的chat.cj中的数据格式化解析代码,解决解析未知key时直接报unkow key xxx问题。即chat.cjcase unkow => println("unkow key ${unkow}")替换为“case _ => r.skip()”。

可以在编辑器中打开chat.cj文件后使用CTRL+F快捷键,然后选择替换,输入替换前后代码,复按回车键,直到需要修改代码行搜索结果为无结果


最后打开main.cj,运行项目,我们就可跟AI助手进行聊天了。

至此,使用仓颉+DeepSeek开发AI聊天机器人的就完成啦。

如果想要了解更多仓颉编程语言知识可以访问: https://cangjie-lang.cn/

如果想要体验更多仓颉示例可以访问:https://gitcode.com/Cangjie/Cangjie-Examples

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。