自然语言开发AI应用,利用云雀大模型打造自己的专属AI机器人

简介: 如今,大模型层出不穷,这为自然语言处理、计算机视觉、语音识别和其他领域的人工智能任务带来了重大的突破和进展。大模型通常指那些参数量庞大、层数深、拥有巨大的计算能力和数据训练集的模型。 但不能不承认的是,普通人使用大模型还是有一定门槛的,首先大模型通常需要大量的计算资源才能进行训练和推理。这包括高性能的图形处理单元(GPU)或者专用的张量处理单元(TPU),以及大内存和高速存储器。说白了,本地没N卡,就断了玩大模型的念想吧。 其次,大模型的性能往往受到模型调优和微调的影响。这需要对模型的超参数进行调整和优化,以适应特定任务或数据集。对大模型的调优需要一定的经验和专业知识,包括对深度学

Applications-of-Artificial-Intelligence.jpg

如今,大模型层出不穷,这为自然语言处理、计算机视觉、语音识别和其他领域的人工智能任务带来了重大的突破和进展。大模型通常指那些参数量庞大、层数深、拥有巨大的计算能力和数据训练集的模型。

但不能不承认的是,普通人使用大模型还是有一定门槛的,首先大模型通常需要大量的计算资源才能进行训练和推理。这包括高性能的图形处理单元(GPU)或者专用的张量处理单元(TPU),以及大内存和高速存储器。说白了,本地没N卡,就断了玩大模型的念想吧。

其次,大模型的性能往往受到模型调优和微调的影响。这需要对模型的超参数进行调整和优化,以适应特定任务或数据集。对大模型的调优需要一定的经验和专业知识,包括对深度学习原理和技术的理解。

那么,如果不具备相关专业知识,也没有专业的设备,同时也想开发属于自己的基于AI大模型的应用怎么办?本次我们使用在线的云雀大模型来打造属于自己的AI应用。

构建线上AI应用

首先访问扣子应用的官网:

https://www.coze.cn/home

注册成功之后,我们需要一个创意,也就是说我们到底想要做一个什么应用,这个应用的功能是什么,当然,关于创意AI是帮不了你的,需要自己想,比如笔者的代码水平令人不敢恭维,平时在CodeReView时,经常被同事嘲笑,没办法,有的人就是没有代码洁癖,为了避免此种情况经常发生,想要打造一款AI机器人能够在代码提交之前帮忙审核代码,检查语法的错误并给出修改意见和性能层面优化的方案。

此时点击创建Bot:

如上图所示,这里输入应用的名称和描述,至于应用图标,可以让AI生成一个。

工作流 WorkFlow

工作流指的是支持通过可视化的方式,对插件、大语言模型、代码块等功能进行组合,从而实现复杂、稳定的业务流程编排。

我们的工作流非常简单,第一步,用户输入代码,第二步,大模型检查代码,第三步,大模型返回修改意见。

点击创建工作流,输入的参数变量为code,数据类型可以选择四种,即字符串、整形、布尔和数字,这里代码显然选择字符串。

接着接入大模型,引导词这样填写:

你是一位经验丰富的程序员,擅长Python,HTML,CSS,Java,Golang等语言,请检查{
  
  {input}}这段代码的语法,给出修改的建议,并且给出代码性能优化的多种修改方案。

通过引导词来让大模型针对输入的代码进行检测。

最后返回大模型输入的修改意见。

如图所示:

随后可以运行整个工作流进行测试,大模型返回:

{  
  "output": "可优化项目与建议:\n- 建议使用 `try-except` 结构来捕获所有类型的异常,然后进行统一处理。\n- 建议添加代码注释,增强代码的可读性。\n\n优化后的代码如下所示:\n```python\ndef make_tran():\n    \"\"\"\n    该函数用于将 video.srt 文件中的英文翻译成中文,并将翻译结果写入 two.srt 文件\n\n    Returns:\n        str: \"翻译完毕\",表示翻译过程已完成\n    \"\"\"\n    # 从预训练模型中加载 tokenizer 和 model\n    tokenizer = AutoTokenizer.from_pretrained(\"Helsinki-NLP/opus-mt-en-zh\")\n    model = AutoModelForSeq2SeqLM.from_pretrained(\"Helsinki-NLP/opus-mt-en-zh\")\n    # 打开 video.srt 文件并读取其中的内容\n    with open(\"./video.srt\", 'r', encoding=\"utf-8\") as file:\n        gweight_data = file.read()\n    # 将读取到的内容按换行符分割成多个段落,并存储在 result 列表中\n    result = gweight_data.split(\"\\n\\n\")\n    # 如果 two.srt 文件存在,则将其删除\n    if os.path.exists(\"./two.srt\"):\n        os.remove(\"./two.srt\")\n    # 遍历 result 列表中的每个段落\n    for res in result:\n        # 将每个段落按换行符分割成多个句子,并存储在 line_srt 列表中\n        line_srt = res.split(\"\\n\")\n        # 尝试对每个句子进行翻译\n        try:\n            # 使用 tokenizer 对句子进行预处理,以便模型可以处理它们\n            tokenized_text = tokenizer.prepare_seq2seq_batch([line_srt[2]], return_tensors='pt')\n            # 使用模型进行翻译\n            translation = model.generate(**tokenized_text)\n            # 使用 tokenizer 将翻译结果解码为文本\n            translated_text = tokenizer.batch_decode(translation, skip_special_tokens=False)[0]\n            # 移除翻译结果中的填充字符和结束符号,并去除首尾的空格\n            translated_text = translated_text.replace(\"<pad>\", \"\").replace(\"</s>\", \"\").strip()\n            # 打印翻译结果\n            print(translated_text)\n            # 将翻译结果写入 two.srt 文件\n            with open(\"./two.srt\", \"a\", encoding=\"utf-8\") as f:\n                f.write(f\"{line_srt[0]}\\n{line_srt[1]}\\n{line_srt[2]}\\n{translated_text}\\n\\n\")\n        # 如果在翻译过程中发生任何异常,则打印异常信息,并跳过当前句子\n        except Exception as e:\n            print(str(e))\n    # 返回 \"翻译完毕\",表示翻译过程已完成\n    return \"翻译完毕\"\n```"  
}

如此,就完成了一个代码检查和优化的工作流,说白了,就是给用户一个没有token限制并且无限次使用的大模型,并且跳过prompt环节,直接简单粗暴返回垂直内容的解决方案。

发布应用

构建好应用之后,我们可以在其他平台发布,让更多人使用该应用,这里以飞书为例子,飞书是一站式协同办公平台,为企业提供各种数字化办公解决方案,大部分公司都在使用。

随后在公司群里就可以直接调用自己的应用了:

结语

尽管使用大模型可能具有一些挑战,但随着技术的进步和资源的可用性,大模型的门槛正在逐渐降低。这为更多的普通人、无编程背景的爱好者提供了利用大模型来解决对于个人垂直领域相对复杂任务的机会。

相关文章
|
20天前
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
303 0
|
20天前
|
人工智能 自然语言处理 开发者
AIGC创作活动 | 跟着UP主秋葉一起部署AI视频生成应用!
本次AI创作活动由 B 站知名 AI Up 主“秋葉aaaki”带您学习在阿里云 模型在线服务(PAI-EAS)中零代码、一键部署基于ComfyUI和Stable Video Diffusion模型的AI视频生成Web应用,快速实现文本生成视频的AI生成解决方案,帮助您完成社交平台短视频内容生成、动画制作等任务。制作上传专属GIF视频,即有机会赢取乐歌M2S台式升降桌、天猫精灵、定制保温杯等好礼!
|
1月前
|
自然语言处理 索引
大模型开发: 解释自然语言处理(NLP)中的词嵌入。
**词嵌入技术在NLP中将文本转为数值表示,捕获词汇的语义和语法关系。过程包括:词汇索引、训练嵌入矩阵(如Word2Vec、GloVe、BERT)、文本向量化及向量输入到NLP模型(如情感分析、命名实体识别)。词嵌入是连接文本与机器理解的关键桥梁。**
29 2
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习在自然语言处理中的应用与挑战
随着深度学习技术的快速发展,自然语言处理领域也迎来了前所未有的机遇和挑战。本文将探讨深度学习在自然语言处理中的应用现状、关键技术及面临的挑战,并展望未来发展方向。
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习在自然语言处理中的应用与挑战
传统的自然语言处理技术在面对复杂语义和语境时往往表现不佳,而深度学习技术的兴起为解决这一难题提供了新的可能性。本文将探讨深度学习在自然语言处理中的应用现状、关键技术及挑战,并展望未来的发展方向。
22 1
|
1天前
|
人工智能 边缘计算 Kubernetes
阿里云边缘容器云帮助AI推理应用快速落地
2024全球分布式云大会·北京站,阿里云徐若晨演讲内容分享
9 0
|
3天前
|
人工智能 自然语言处理 Python
使用Python实现自然语言处理模型
使用Python实现自然语言处理模型
13 1
|
4天前
|
人工智能 监控 数据处理
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】1. 快速上手数据集与测试评估过程
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】1. 快速上手数据集与测试评估过程
18 0
|
4天前
|
人工智能 监控 数据可视化
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让你的程序运行过程一目了然
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让你的程序运行过程一目了然
8 0
|
4天前
|
人工智能 API 开发者
【AI大模型应用开发】0.2 智谱AI API接入详细步骤和简单应用
【AI大模型应用开发】0.2 智谱AI API接入详细步骤和简单应用
16 0