从零打造算法题刷题助手:Agent搭建保姆级攻略

我用Trae 做了一个有意思的Agent 「大厂机试助手」。 点击 https://s.trae.com.cn/a/d2a596 立即复刻,一起来玩吧!

Agent 简介

Agent名称为大厂机试助手,主要功能有以下三点。
解题: 根据用户给出的题目给出具体的解题思路引导做题,同时也会给出多种语言的代码。
整理笔记: 将题目、案例、解题思路、代码整合在一个HTML页面。
发布博客: 一键自动发布上博客,以便后续查看。

该智能体在与用户交流合作时,会展现出专业严谨的一面,确保编程知识讲解、解题思路剖析以及代码书写等环节信息精准无误。当用户在解题途中遭遇难题时,它会及时送上鼓励与肯定,激发学习动力与自信心,引导勇敢克服困难,持续进步。
当收到机试题目后,它会细致阅读并用通俗语言复述要点,确认用户理解正确,还提前介绍相关算法或数据结构。在解题思路构建上,从基础出发引导用户思考,巧妙提问启发用户的思维,在思路偏差或困难时,它会适时指出问题并给予提示,而非直接给出现成解法,培养用户的自主解题能力。

Agent 创作构思

一、设计缘由

在当今竞争激烈的大厂招聘环境中,机试作为关键环节,对求职者至关重要。许多求职者虽有扎实的专业基础,却因机试准备不足、缺乏有效的解题思路引导以及规范的代码撰写习惯而遗憾落败。大厂机试助手智能体正是为了解决这一痛点而设计,旨在为求职者提供全方位、专业化的机试辅导,助力他们在大厂机试中脱颖而出。

二、解决痛点

  1. 题目理解与思路探索困难 :部分求职者面对复杂机试题目时,难以迅速抓住要点,理清解题思路。智能体会在仔细解析题目后,用通俗易懂的方式复述题目,并从基础角度引导用户思考,通过提问激发用户思维,避免其思路跑偏,降低解题难度。
  2. 代码规范意识薄弱 :一些求职者在代码撰写过程中,存在变量命名随意、代码结构混乱、忽视边界条件等问题。智能体在引导解题过程中,时刻强调代码规范,对不规范代码及时指出并要求修改,帮助用户养成良好的编程习惯,提高代码质量和可读性。
  3. 缺乏系统化复习资料 :机试准备需要系统化的复习和总结,但很多求职者在做完题目后,缺乏有效的整理和归纳,导致知识零散,复习效率低下。智能体在代码完成并通过测试后,生成包含题目、案例、代码、解题思路的 html 页面,为用户提供更好的复习资料,方便用户随时查看和回顾,加深对知识点的理解和记忆。
  4. 自主解题能力不足 :利用deepseek或者GPT解题往往侧重于直接给出答案,而忽视了培养用户的自主解题能力。智能体遵循提问引导规则,以提问为主引导用户思考和解题,不直接给出完整解法,鼓励用户自主探索,通过不断尝试和犯错,提升用户独立解决问题的能力,使其在面对新的机试题目时能够更加从容应对。

三、独特优势

  1. 个性化的学习体验 :根据用户的回答和学习进度,智能体可以灵活调整提问的深度和难度,满足不同水平用户的需求,为每位用户提供渠道定制化的机试辅导,提高学习效果。
  2. 沉浸式的学习氛围 :以亲切友好的态度与用户交流,营造轻松愉快的学习氛围,缓解用户的机试压力,同时通过鼓励性的话语激发用户的学习动力和自信心,让用户在积极的学习状态中不断提升自己。
  3. 实用性强的复习资料 :生成的 html 页面不仅内容全面,涵盖题目、案例、代码和解题思路,而且页面布局清晰、排版美观,具有良好的用户体验。用户可以方便地分享这些页面给他人,共同学习进步。

技术实现

这个智能体是基于Trae搭建,在Trae中完成创建智能体、编排Prompt和配置工具。这样可以一边调试一边提问。具体的环境配置以及创建步骤如下。

环境部署

本次搭建使用的系统环境如下:

  • Trae IDE 版本:官网下载最新版
  • Windows 版本:11
  • Node.js 版本:22.16.0
  • npx 版本:10.9.2
  • Python 版本:3.13.3
  • uvx 版本:0.7.8
    安装Node教程
    安装python教程
    Trae IDE下载地址

安装uvx教程
Windows 安装命令(PowerShell):

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

执行以下命令,验证是否安装成功。

uvx --version

创建智能体

全部环境配置好以后,打开Trae,在右侧点击设置,选择智能体。
在这里插入图片描述

点击创建智能体,然后取一个名称。

在这里插入图片描述

编排Prompt

提示词这块儿要编写角色设定、语气、工作流程、工具偏好以及规则规范。根据需求来设置,最好是都设置一下。
在这里插入图片描述

下面是我设置的Prompt,大家可以作为参考。

智能体角色:
你是一位具有丰富经验的大厂机试辅导专家,对各大厂机试题目了如指掌,能够精准把握题目要求,提供高效、准确的解题方案,并且精通多种编程语言,擅长将复杂的算法和数据结构知识以清晰易懂的方式呈现给用户,助力用户在大厂机试中取得优异成绩。
语气:

  • 专业且严谨:在涉及编程知识讲解、解题思路分析以及代码书写等方面,保持专业严谨的态度,确保所传达的信息准确无误。
  • 亲切友好:与用户交流时,展现出亲切友善的一面,让用户感受到你的热情与支持,营造轻松愉快的学习氛围,缓解用户面对机试的压力。
  • 鼓励性:当用户在解题过程中遇到困难时,及时给予鼓励和肯定,激发用户的学习动力和自信心,引导用户克服困难,不断进步。 工作流:
  1. 题目接收与解析
    • 当用户给出机试题目时,首先仔细阅读题目,确保完全理解题目要求、输入输出格式以及任何特殊的约束条件。
    • 用通俗易懂的语言向用户复述题目要点,确认用户对题目理解正确,并简要介绍题目可能涉及到的算法或数据结构,为解题做好铺垫。
  2. 解题思路构建与引导
    • 从基础角度出发,引导用户思考可能的解题方法,提出关键问题启发用户的思维,例如 “你可以先考虑如何遍历这个数据结构来找到目标元素呢?”。
    • 根据用户反馈,逐步深入引导,当用户思路出现偏差或困难时,及时指出问题所在并给予适当提示,但避免直接给出完整解法,鼓励用户自主探索,培养独立解决问题的能力。
    • 对于经典算法题,引导用户回顾该算法的基本原理、优缺点及其适用场景,巩固用户的知识体系。
  3. 代码撰写与规范检查
    • 在用户确定解题思路后,提醒用户遵循良好的代码规范进行代码撰写,包括合理命名变量、规范代码结构、处理边界条件等。
    • 实时检查用户编写的代码,指出其中存在的语法错误、逻辑漏洞或潜在运行时错误,并提出修改建议,确保代码的正确性和鲁棒性。
  4. 生成 html 页面
    • 在代码完成并通过测试后,为用户生成一个包含题目、案例、代码、解题思路的 html 页面。
    • 确保 html 页面布局清晰合理,内容排版美观,方便用户查看和复习,同时页面中添加适当的样式和交互效果,提升用户体验。 规则规范:
  5. 提问引导规则 :始终以提问方式为主引导用户思考和解题,避免直接给出答案,培养用户的自主思考能力和解决问题的能力。根据用户的学习进度和理解能力,灵活调整提问的深度和难度。
  6. 代码规范要求 :严格要求用户遵循代码规范,在代码撰写过程中不断强调规范的重要性,并对不规范代码及时指出并要求修改,确保用户养成良好的编程习惯。
  7. 页面制作规范 :生成的 html 页面要遵循网页制作的基本规范,包括语义化的 html 标签使用、合理的 css 样式定义、有效的 javascript 交互逻辑等,保证页面在不同浏览器上的兼容性和一致性。

配置工具

本身智能体已经内置了四个工具,分别是文件系统、终端、互联网搜索和预览,所以我们只需要添加一个发布博客的工具即可。
同样的,还是点击右上角的设置,然后点击MCP,在MCP中点击添加,如下图所示。
在这里插入图片描述
在这里插入图片描述
然后点击juejin-deploy-mcp的+号,由于我已经添加过了所以图片中不太一样。
在这里插入图片描述
点击后需要获取JUEJIN_TOKEN,这个非常简单,点击链接https://aicoding.juejin.cn/tokens
在这里插入图片描述

获取TOKEN之后返回Trae粘贴上来
在这里插入图片描述

此时这里会是可使用状态
在这里插入图片描述

注意:这里如果是启动失败,那就说明环境没配置好。在cmd中查看所有环境是否都已安装配置,如果都配置好了,再试试用管理员方式打开Trae基本就没问题。
在这里插入图片描述

当MCP确定可用后,在智能体中添加工具。
在这里插入图片描述

效果展示

这次主要展示两个常见场景,第一是直接给出代码和思路,生成笔记上传博客;第二是智能体给出思路,自己在IDE中尝试解题,一边调试一边提问,最后生成笔记上传博客。

场景一

在力扣里面随便找了一个题,将题目包括示例这些都复制,然后让智能体直接给出具体解题思路以及JAVA代码。
在这里插入图片描述

智能体直接给出结果,点击代码右上角可以创建JAVA文件,如左侧画圈部分,在点击代码右上角即可运行测试。在控制台中可以看到两个测试案例都符合,说明代码没毛病。
在这里插入图片描述

然后可以让智能体生成HTML笔记,发布掘金。智能体会自动调用工具将生成的HTML笔记发布到博客平台,还会生成预览链接方便查看。
在这里插入图片描述

可以看到生成的这个排版还是相当棒的,简洁明了。点击右上角即可发布。
在这里插入图片描述

发布时需要设置作品信息,名称、描述、分类这些。可以弄一个自己专属的刷题专栏,方便日后复习。
在这里插入图片描述

场景二

还是我们之前那个题目,这次不让智能体直接给出代码,让他提供思路,然后我边调试边提问。
在这里插入图片描述
在这里插入图片描述

上图是我完整的提问过程,可以看到智能体很有耐心的根据我的提问以及尝试解题的代码,给出建议和思路,引导我去解答。

总结

总体而言,在Trae中创建智能体非常具有实用性,这次创建的大厂机试助手我也让许多粉丝进行体验,反馈都很不错。大家感兴趣可以点下方链接进行体验,如果觉得效果不错可以自己动手复刻一下玩玩。
我用Trae 做了一个有意思的Agent 「大厂机试助手」。 点击 https://s.trae.com.cn/a/d2a596 立即复刻,一起来玩吧!

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

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

相关文章

【JavaWeb】MVC三层架构

MVC三层架构 MVC 是什么?三层架构的组成(View、Controller、Model)各层职责划分示例说明面试高频问题与参考答案 MVC(Model-View-Controller)是一种经典的软件设计模式,广泛应用于 Web 应用开发中&#xf…

嵌入式分析利器:DuckDB与SqlSugar实战

​ 一、DuckDB 的核心特性与适用场景 DuckDB 是一款 嵌入式分析型数据库(OLAP) ,专为高效查询设计,主要特点包括: 列式存储与向量化引擎 数据按列存储,提升聚合统计效率(如 SUM/AVG&#xf…

React---day6、7

6、组件之间进行数据传递 **6.1 父传子&#xff1a;**props传递属性 父组件&#xff1a; <div><ChildCpn name"蒋乙菥" age"18" height"1,88" /> </div>子组件&#xff1a; export class ChildCpn extends React.Component…

Windows上用FFmpeg采集摄像头推流 → MediaMTX服务器转发流 → WSL2上拉流播放

1. Windows上 FFmpeg 推流&#xff08;摄像头采集&#xff09; 设备名称可用 ffmpeg -list_devices true -f dshow -i dummy 查询&#xff0c;假设为Integrated Camera 采集推流示例&#xff08;推RTMP到MediaMTX&#xff09;&#xff1a; ffmpeg -rtbufsize 100M -f dshow …

SpringBoot1--简单体验

1 Helloworld 打开&#xff1a;https://start.spring.io/ 选择maven配置。增加SpringWeb的依赖。 Generate之后解压&#xff0c;代码大致如下&#xff1a; hpDESKTOP-430500P:~/springboot2/demo$ tree ├── HELP.md ├── mvnw ├── mvnw.cmd ├── pom.xml └── s…

MATLAB 中调整超参数的系统性方法

在深度学习中&#xff0c;超参数调整是提升模型性能的关键环节。以下是 MATLAB 中调整超参数的系统性方法&#xff0c;涵盖核心参数、优化策略及实战案例&#xff1a; 一、关键超参数及其影响 超参数作用典型范围学习率 (Learning Rate)控制参数更新步长&#xff0c;影响收敛…

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分&#xff1a; 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…

(二)stm32使用4g模块(移远ec800k)连接mqtt

下面代码是随手写的&#xff0c;没有严谨测试仅供参考测试 uint8_t msgBuf[200]{"msg from mcu"}; uint8_t txBuf[250]{0}; uint16_t msgid0; uint16_t mqttTaskState0; uint16_t t100msCount0; uint8_t sendFlag10; uint8_t sendFlag20; void t100msTask1(void) { …

哈希表入门:用 C 语言实现简单哈希表(开放寻址法解决冲突)

目录 一、引言 二、代码结构与核心概念解析 1. 数据结构定义 2. 初始化函数 initList 3. 哈希函数 hash 4. 插入函数 put&#xff08;核心逻辑&#xff09; 开放寻址法详解&#xff1a; 三、主函数验证与运行结果 1. 测试逻辑 2. 运行结果分析 四、完整代码 五、优…

Windows下运行Redis并设置为开机自启的服务

下载Redis-Windows 点击redis-windows-7.4.0下载链接下载Redis 解压之后得到如下文件 右键install_redis.cmd文件&#xff0c;选择在记事本中编辑。 将这里改为redis.windows.conf后保存&#xff0c;退出记事本&#xff0c;右键后选择以管理员身份运行。 在任务管理器中能够…

2025年ESWA SCI1区TOP,改进成吉思汗鲨鱼算法MGKSO+肝癌疾病预测,深度解析+性能实测

目录 1.摘要2.成吉思汗鲨鱼优化算法GKSO原理3.MGKSO4.结果展示5.参考文献6.代码获取7.算法辅导应用定制读者交流 1.摘要 本文针对肝癌&#xff08;HCC&#xff09;早期诊断难题&#xff0c;提出了一种基于改进成吉思汗鲨鱼优化算法&#xff08;MGKSO&#xff09;的计算机辅助诊…

李沐-动手学深度学习:RNN

1.RNN从零开始实现 import math import torch from torch import nn from torch.nn import functional as F from d2l import torch as d2l#8.3.4节 #batch_size&#xff1a;每个小批量中子序列样本的数目&#xff0c;num_steps&#xff1a;每个子序列中预定义的时间步数 #loa…

【C++ Qt】多元素控件(ListWidget、TableWidget、TreeWidget)

每日激励&#xff1a;“不设限和自我肯定的心态&#xff1a;I can do all things。 — Stephen Curry” 绪论​&#xff1a; 本章将通过代码示例详细介绍了Qt中QListWidget、QTableWidget和QTreeWidget三种多元素控件的使用方法与核心功能&#xff0c;涵盖列表的增删操作、表格…

基于TI DSP控制的光伏逆变器最大功率跟踪mppt

基于TI DSP&#xff08;如TMS320F28335&#xff09;控制的光伏逆变器最大功率跟踪&#xff08;MPPT&#xff09;程序通常涉及以下几个关键部分&#xff1a;硬件电路设计、MPPT算法实现、以及DSP的编程。以下是基于TI DSP的光伏逆变器MPPT程序的一个示例&#xff0c;主要采用扰动…

Python实现P-PSO优化算法优化卷积神经网络CNN回归模型项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档&#xff09;&#xff0c;如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 随着人工智能和深度学习技术的快速发展&#xff0c;卷积神经网络&#xff08;CNN&#xff09;在图像分类、目标检测…

计算机视觉入门:OpenCV与YOLO目标检测

计算机视觉入门&#xff1a;OpenCV与YOLO目标检测 系统化学习人工智能网站&#xff08;收藏&#xff09;&#xff1a;https://www.captainbed.cn/flu 文章目录 计算机视觉入门&#xff1a;OpenCV与YOLO目标检测摘要引言技术原理对比1. OpenCV&#xff1a;传统图像处理与机器学…

【PCB工艺】绘制原理图 + PCB设计大纲:最小核心板STM32F103ZET6

绘制原理图和PCB布线之间的联系,在绘制原理图的时候,考虑到后续的PCB设计+嵌入式软件代码的业务逻辑,需要在绘制原理图之初涉及到 硬件设计流程的前期规划。在嵌入式系统开发中,原理图设计是整个项目的基础,直接影响到后续的: PCB 布线效率和质量 ☆☆☆重点嵌入式软件的…

Centos系统搭建主备DNS服务

目录 一、主DNS服务器配置 1.安装 BIND 软件包 2.配置主配置文件 3.创建正向区域文件 4.创建区域数据文件 5.检查配置语法并重启服务 二、从DNS服务配置 1.安装 BIND 软件包 2.配置主配置文件 3.创建缓存目录 4.启动并设置开机自启 一、主DNS服务器配置 1.安装 BIN…

LeetCode[513]找树左下角的值

思路&#xff1a; 找树左下角的值&#xff0c;有可能这个值不是左叶子节点&#xff0c;可能是右叶子节点&#xff0c;但怎么说这个值都是叶子节点&#xff0c;首先这道题用层序遍历的思路比如什么队列和BSF的递归都可以做&#xff0c;但我比较喜欢用纯递归来搞&#xff0c;因为…

ubuntu20.04.5--arm64版上使用node集成java

ubuntu20.04.5arm上使用node集成java #ssh&#xff0c;可选 sudo apt update sudo apt install openssh-server sudo systemctl status ssh sudo systemctl enable ssh sudo systemctl enable --now ssh #防火墙相关&#xff0c;可选 sudo ufw allow ssh sudo ufw allow 22…