写点什么

魔搭×通义灵码:0 代码基础、0 门槛在线编程做应用

作者:阿里云云效
  • 2025-03-18
    浙江
  • 本文字数:2707 字

    阅读完需:约 9 分钟

视频教程

点击链接前往观看:https://www.bilibili.com/video/BV1CZQqYJEoq/

内容简介

在具体开发过程中,好的开发环境和开发工具十分重要,为了更好的体验,更好地利用 AI 进行代码生成,我们推荐使用魔搭社区 Notebook 云端开发 IDE 工具,搭配内置的 Vscode 编程环境以及通义灵码工具,一站式进行 AI 应用搭建。 不需要复杂的环境配置,也不需要代码基础,只要熟练运用 AI 工具,便可以完成 AI 应用搭建和运行。


Linux or Windows or MacOs ❓


Vscode or jetbrains ❓


Copilot or Cursor ❓


notebook  IDE + 通义灵码 ✅

学习任务

✅ 熟悉 Notebook IDE 开发环境


✅ 熟悉通义灵码的 AI 程序员等功能


✅ 利用 Notebook + 通义灵码一站式完成之前的 demo

Notebook 功能概述

Notebook 简介

ModelScope Notebook 是一款云端机器学习开发 IDE 工具,提供远程 Linux 的编程环境,适用于不同水平的 AI 开发者。Notebook 提供了点击就可用的免费算力额度。


具体环境详见:https://modelscope.cn/docs/notebooks/intro

Notebook 使用

  • 登录魔搭账号(https://www.modelscope.cn/home)



  • 绑定阿里云账号,获得免费的算力资源



  • 点击"我的 Notebook",选择 GPU 环境启动



  • 点击右上方的"WebIDE",进入优雅的 Vscode 环境,这里载入了 Vscode 的基本功能,可以让我们像在本地环境下一样进行开发


通义灵码使用概述

通义灵码简介

通义灵码具备多文件代码修改和工具使用的能力,可以与开发者协同完成编码任务,比如代码生成、需求实现、问题解决、单元测试用例生成、批量代码修改等。


在 Notebook 中已经内置了完整的通义灵码,我们只需要登录自己的账号即可使用灵码进行代码开发。

通义灵码使用及功能

  • 首先我们登录通义灵码,这里的 AccessKey ID 以及 AccessKey Secret 可以在阿里云个人账号的中一键获取(https://help.aliyun.com/



  • 接下来我们就可以简单使用通义灵码的各种功能:


代码生成(写一个推箱子的小游戏,创建相关代码文件并生成对应代码):


  1. 首先选择 AI 程序员功能(支持文件创建和多文件修改)



  1. 输入我们的需求,让通义灵码创建文件并生成代码



  1. 代码生成后,可以选择接受,或者拒绝重新调整提示词



  1. 接受之后,我们可以选择需要修改的文件作为上下文



  1. 让通义灵码修改代码后,同样可以选择接受或拒绝(注意:当 AI 生成内容不符合预期,或你的需求有变化时,可以通过快照功能回退到之前的对话轮次和代码变更,继续重新提问)


代码编写:


  1. 自动补全/依据注释补全代码

  2. 单元测试

  3. 代码优化




案例展示:使用 Notebook+通义灵码完成案例

在启发课的案例中,我们主要关注如何将想法变成实践,忽略了代码开发的细节部分,现在我们就可以利用 Notebook 的环境和通义灵码的帮助从零开始完成案例。

生成代码框架

基于gradio实现一个求职助手网页,它能够帮助用户进行简历优化、职位推荐以及基于简历的职位推荐。以下是详细功能:1. 全局配置大模型加载与调用,代码如下:模型加载部分:qwen_model = ModelFactory.create(        model_platform=ModelPlatformType.OPENAI_COMPATIBLE_MODEL,        model_type="Qwen/Qwen2.5-72B-Instruct",        api_key="Your API",        url="https://api-inference.modelscope.cn/v1",        model_config_dict=QwenConfig(temperature=0.2).as_dict(),    )agent = ChatAgent(        system_message="You're a helpful assistant for job anlysis, please answer in Chinese.",        message_window_size=30,        model=qwen_model    )模型调用部分:assistant_response = agent.step(combined_content)assistant_response_str = assistant_response.msgs[0].content3. 辅助功能函数URL搜索:打开一个存放网址信息的txt文件(帮我创建好这个文件),然后通过目标岗位和地点让大模型分析来获取最符合的网址信息。爬取信息4. 具体功能函数职位推荐:调用大模型根据目标岗位和地点以及输入的简历内容,推荐三个适合的职位,并给出推荐原因。简历分析:首先通过爬取信息函数抓取相关信息,然后调用大模型结合用户的简历内容,推荐最适合的三个职位,并解释推荐原因。简历优化:接收简历文件和目标职位作为输入,调用大模型根据目标职位对简历内容进行优化,生成优化后的简历文件,并提供改进建议。根据上面的要求创建对应的文件并填充大概的代码框架
复制代码


在通义灵码生成文件和代码后,注意甄别代码是否合理,例如:在第一次生成代码时,由于“大模型加载与调用”的描述过于笼统,并且这个部分本身可以进行很复杂的配置,所以通义灵码会将这一部分写得很复杂,所以我们可以将准备好的接口代码直接告诉通义灵码,让它基于已有的代码来进行代码生成。


初步的代码框架显示结果如下(可以看到,通义灵码生成的代码相对结构严谨,更适合我们去进一步开发):



功能完善

将网页信息爬取以及各种功能组件进行完善,确保正常运行。


例如: 我们需要使用 Crawl4AI 工具,告诉通义灵码将爬取信息函数替换为我们的接口函数,告诉它我们使用时要做的具体调整(如将爬取的结果写入指定文件),并且在其他文件中修改相应的调用代码;在 search_urls 函数中发现注释是:使用特定模型进行分析,说明还没有用到我们在全局配置 model.py 中加载好的模型,我们就需要告诉通义灵码需要在这里调用 model.py 中加载的模型。


在utils.py中将爬取信息的函数改为下面的函数,加上逻辑:爬取的url地址通过search_urls获得,将爬取到的信息写入一个txt文件中。同时修改在其他文件的调用async def bug_search(target_position, target_location):    async with AsyncWebCrawler() as crawler:        result = await crawler.arun(            url="https://www.nbcnews.com/business",        )        print(result.markdown)
复制代码


在search_urls函数中调用model.py的模型进行分析来返回结果
复制代码


同样,我可以完善各个功能直到成功运行

功能添加

在基本功能实现后,我们可以添加更多功能,这个时候就可以体现出多文件修改的强大之处。


例如:我们想要在职位推荐中添加目标城市和固定的目标岗位,以便爬取信息时爬取更加相关的信息。


在职位推荐模块的目标岗位和地点输入时,把这两个输入做成一行两列的样式,并加上下拉菜单,可以在下拉菜单中选择岗位和城市,也可以直接输入,在utils.py设置一些全局的常用的城市和岗位(尽可能多)作为可以选择的元素
复制代码



最终结果

结语

本节课主要介绍了如何利用 Notebook IDE 环境和通义灵码工具来具体开发 AI 产品,通过前面的介绍,可以感受到好的开发环境和开发工具往往可以让开发过程事半功倍,也可以更快更好地解决一些实际问题。随着 AI 代码生成工具不断成熟,动动手指,你的 AI 产品马上变成现实~


体验通义灵码:https://lingma.aliyun.com/download

用户头像

云效,产研数字化同行者。 2021-11-05 加入

云效,云原生时代一站式BizDevOps平台。支持公共云、专有云和混合云多种部署形态,支持敏捷研发、DevOps、BizDevOps模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,实现多倍效能提升。

评论

发布
暂无评论
魔搭×通义灵码:0代码基础、0门槛在线编程做应用_阿里云_阿里云云效_InfoQ写作社区