自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 收藏
  • 关注

原创 RAG初阶学习

本文系统介绍了基于LlamaIndex与Milvus构建RAG(检索增强生成)系统的全流程:通过conda环境隔离,使用LlamaIndex完成数据加载、清洗、多策略分块(固定大小、句子、语义、递归、LLM分块),结合BGE-m3嵌入模型实现向量化,并在Milvus中存储与检索。通过提示词增强(过滤、压缩、模板化)提升生成质量,最终调用DeepSeek大模型生成精准回答。项目落地于医疗问答场景,封装为FastAPI服务,支持重建索引与实时问答,实现从数据处理到应用部署的完整闭环。

2026-09-21 22:04:58 139

原创 禅道AI自动补全插件

本文记录了一个禅道 AI 自动补全项目的完整开发过程。项目背景是公司测试人员在禅道提交 Bug 时,需要填写规范的复现步骤、现象截图、预期结果和实际结果,但不同人的语言描述差异较大。为此,项目引入 AI 来统一 Bug 描述标准,减少编写 Bug 的时间。文章从禅道安装、要求书编写开始,依次介绍了 S0 需求冻结、S1 演示数据与持久化基线、S2 仓库与工程骨架、S3 中央 FastAPI 与 Redis 服务、S4 用户脚本基础交互、S5 确定性模板与 ZenEditor 写入、S6 DeepSeek 接

2026-09-01 19:30:45 203

原创 解决vscode中连接不上远程服务器问题(磁盘使用率过高)

摘要:解决VSCode远程连接虚拟机失败问题,因磁盘占用率达95%。先通过du -hd1 ~/2>/dev/null | sort -h排查大文件(谨慎删除),但效果有限。关键步骤: 关机(非挂起)后,在VMware中扩展虚拟磁盘(如100GB→150GB); 启动后依次执行: 扩展分区:sudo growpart /dev/sda3 扩容LVM:sudo pvresize /dev/sda3 分配空间:sudo lvextend -r -l +100%FREE /dev/ubuntu-vg/lv_0

2026-08-11 16:53:45 243

原创 虚拟机如何接入Codex并配置中转站(vscode插件版)

本文介绍了如何安装和配置VS Code的Codex插件。首先在插件市场搜索并安装Codex插件,安装后会在虚拟机中生成.codex文件夹。重点需要配置config.toml和auth.json两个文件:在config.toml中设置模型提供商(如OpenAI)、模型名称、API地址等参数;在auth.json中配置API密钥。完成配置后重启VS Code即可使用Codex插件。文中提供了详细的配置文件示例,适用于将虚拟机作为开发服务器使用Codex的情况。

2026-08-04 22:04:34 641

原创 基于 Vibe Coding 的 OJ 平台

本文记录了使用vibe coding思路开发一个C++实现的OJ平台的全过程,包括需求分析、架构设计、开发实现和测试验证。主要内容包括: 环境搭建:安装Node.js、OpenCode,配置DeepSeek模型API,连接远程开发环境 需求分析:通过与AI的深度访谈确定系统功能、技术栈和架构设计 系统架构:采用前后端一体部署的单体架构,后端基于cpp-httplib,前端采用原生HTML/CSS/JS 核心功能实现:包括用户系统、题目管理、测试用例管理、代码提交和判题引擎 测试验证

2026-07-26 09:05:35 206

原创 基于AI进行GUI自动化测试

基于QT的仿QQ音乐轻量级播放器的GUI自动化测试实践。项目采用Python技术栈(pytest+pywinauto),通过分层架构实现配置管理、核心功能封装和测试编排。测试覆盖应用生命周期、窗口导航、本地歌曲管理和播放控制等核心场景,共设计56个测试用例(含34个GUI用例)。测试通过Allure生成详细报告,并采用数据隔离机制确保测试不影响原始数据库。实践过程中发现被测程序存在搜索功能缺失、窗口行为不规范等8项不足。

2026-07-25 20:57:26 334

原创 GUI自动化测试

文章摘要: 本文系统介绍了GUI自动化测试的核心技术与实践流程。首先阐述了GUI自动化测试在提升效率、降低人力成本方面的优势,重点讲解了两大工具:基于Python的跨平台库pywinauto(支持Windows应用)和微软UI检查工具UISpy。详细解析了pywinauto的八大核心操作:程序启动/连接、窗口定位、控件交互(点击/输入)、鼠标键盘模拟、菜单操作、列表处理等,配合UISpy进行元素定位验证。其次,介绍了pytest测试框架的规则、参数化、fixture机制及Allure报告生成。

2026-07-25 10:43:16 196

原创 opencode如何配置中转站

本文介绍在Linux系统(Ubuntu 22.04)下配置OpenCode连接AI中转站的方法。核心步骤包括:1)获取中转站API密钥;2)定位OpenCode配置文件(opencode.json或opencode.jsonc);3)用nano/vim编辑器替换完整配置模板,修改baseURL和apiKey为中转站信息;4)通过opencodemodels命令验证配置,选择可用模型测试连接。注意保留原项目文件,若测试失败需检查模型名称是否与配置文件一致。Windows系统操作类似,主要区别在配置文件路径查找

2026-07-19 08:43:13 797

原创 基于AI进行web界面自动化测试

基于AI驱动的问卷系统Web界面自动化测试项目。项目采用pytest+Selenium+PageObject架构,结合YAML数据驱动和Allure报告,实现了从测试用例生成到执行的完整自动化流程。 关键点: 创新性地引入大语言模型来自动生成和维护测试脚本,测试人员只需用自然语言描述意图 采用分层设计,将测试数据、页面操作、测试逻辑分离管理,提高可维护性 实现账号持久化和运行时数据共享,解决测试依赖问题 针对AntDesign等现代前端框架的特殊交互问题提供了解决方案 通过Allure生成详细测试报告

2026-07-18 19:15:33 526

原创 AI接口自动化测试的学习

根据AI来实现接口自动化测试的实战

2026-07-11 18:28:43 283

原创 接口自动化测试的学习

本文介绍了基于pytest框架的接口自动化测试实现方案。主要内容包括:1)测试环境搭建,使用pytest框架配合requests、PyYAML等模块;2)项目架构设计,封装日志库、请求方法和YAML操作工具;3)具体接口测试实现,包括登录接口的正/异常测试用例编写和用户信息获取测试;4)测试报告生成,通过allure-pytest插件生成可视化测试报告。测试过程中采用参数化测试、JSONSchema校验等技术,确保测试覆盖率和准确性。最终通过9个测试用例验证了接口功能的正确性,并生成了完整的测试报告。

2026-04-19 11:08:38 400

原创 卷王问卷考试系统的项目测试

本文对"卷王"在线问卷考试系统进行了全面测试,包括功能测试、安全测试、性能测试等。测试发现系统存在以下主要问题:1)用户无法自行修改密码;2)模板搜索功能异常;3)高并发场景下系统性能表现较差。虽然系统基本功能可用,但建议优化密码修改权限、修复搜索功能,并提升系统并发处理能力。整体而言,系统满足基本使用需求,但仍需针对发现的问题进行改进优化。

2026-04-14 11:23:38 540

原创 C++AI大模型接入SDK项目

本文详细介绍了基于C++实现的多模型智能聊天助手项目。项目通过接入DeepSeek、ChatGPT和Gemini等云端大模型,并利用Ollama实现本地模型部署,构建了一个完整的对话系统。文章从环境搭建开始,详细阐述了项目架构设计、日志系统封装、策略模式应用、SSE流式响应处理、SQLite数据库集成等关键技术实现。重点展示了ChatSDK的封装过程,包括模型管理、会话管理和数据持久化等核心功能。最后介绍了RESTful API接口设计和前后端交互实现,完成了从底层模型接入到上层应用的全栈开发流程。

2026-04-11 14:15:49 662

原创 ChatServer的实现以及测试,main函数的实现,前端页面的生成以及项目总结

本文介绍了基于RESTful API风格的ChatServer设计与实现。该系统通过HTTP协议实现前端与服务器的交互,支持多种大模型(DeepSeek、ChatGPT、Gemini)及本地Ollama模型的接入。核心功能包括:1)采用RESTful架构设计7个API接口,涵盖会话管理、消息收发等功能;2)实现流式响应处理,通过SSE格式返回消息;3)使用单例模式和策略模式管理模型实例;4)集成spdlog、httplib等第三方库;5)支持SQLite数据库存储会话数据。系统测试验证了各接口功能正常,包括

2026-04-11 14:14:17 435

原创 ChatSDK的介绍,封装和测试以及编译成静态库

ChatSDK开发总结:本文介绍了ChatSDK的开发过程,SDK作为开发者工具包,集成了会话管理和数据管理功能。实现内容包括:1)头文件定义核心接口,包括模型初始化、会话管理、消息发送等功能;2)源文件实现具体逻辑,支持云端和本地(Ollama)大模型接入;3)测试验证功能正确性;4)通过CMake生成静态库,便于其他开发者直接集成使用。该SDK封装了复杂的底层交互,提供简洁API,支持流式和全量消息返回,可快速构建智能对话应用。

2026-04-11 14:08:56 438

原创 LLMManager的实现(管理大模型),会话管理和数据管理的实现

本文介绍了智能聊天助手的核心组件实现,主要包括三个部分: 大模型管理模块(LLMManager):封装了模型注册、初始化、消息发送等功能,支持多模型管理和流式响应。 会话管理模块(SessionManager):实现了会话生命周期管理,包括创建/删除会话、添加消息、获取历史记录等功能,使用智能指针管理会话对象,确保线程安全。 数据持久化模块(DataManager):基于SQLite实现数据存储,将会话和消息信息持久化到数据库,支持会话恢复和历史查询。 系统采用分层设计,通过互斥锁保证线程安全,实现了内存和

2026-04-11 14:04:37 396

原创 云端模型和本地模型的介绍以及通过ollama接入本地模型

摘要: 云端大模型(如ChatGPT、DeepSeek)具有算力强、即开即用等优势,但存在隐私风险、网络依赖和高成本问题。本地部署大模型(通过Ollama等工具)可保护隐私、降低成本并支持离线使用,但硬件要求高且效果受限。Ollama作为开源工具,简化了本地模型的运行与管理,支持多平台和丰富模型,适合企业及敏感场景。本地接入需手动安装并配置模型,通过API实现全量或流式返回,兼顾灵活性与安全性。云端适合普通用户,而本地部署更适合高隐私需求场景。

2026-04-09 19:41:27 487

原创 ChatGPT和Gemini的接入和封装

本文详细介绍了如何封装和接入ChatGPT与Gemini大模型API。主要内容包括:1) ChatGPT接入部分,详细讲解了头文件编写、API调用方式、全量返回和流式返回的实现逻辑,重点分析了响应数据解析方法;2) Gemini接入部分,展示了与DeepSeek相似的实现流程,包括请求参数构造、消息体构建和响应处理;3) 针对两种模型的不同响应格式(ChatGPT的事件流和Gemini的SSE协议)分别设计了对应的解析方案。文章还记录了开发过程中遇到的实际问题(如头文件冲突、API key验证失败等)及解决

2026-04-08 12:13:29 506

原创 Provider的介绍和引入,deepseek的接入实现

主要内容包括: LLMProvider设计 采用策略模式封装不同大模型调用方式 定义抽象基类LLMProvider,包含初始化、消息发送等纯虚函数 通过多态机制实现不同模型提供者的灵活切换 DeepSeek模型接入 实现API调用封装,支持全量返回和流式返回两种模式 流式返回采用SSE协议实现实时响应 详细处理HTTP请求参数、响应解析和错误处理 通过回调函数处理增量返回的数据块 关键技术点 使用JSON进行请求/响应数据序列 通过环境变量管理敏感信息采用GoogleTest框架进行单元测试实现日志记录

2026-04-08 12:03:52 522

原创 基本数据结构的编写和日志库的认识和封装

本文介绍了AI项目开发中的关键步骤:1) 项目初始化与目录结构搭建,包括创建项目目录、Git仓库管理;2) 核心数据结构的实现,包含消息结构体、模型配置、会话信息等关键类的设计;3) 日志系统的封装,详细说明了日志级别分类、存储管理策略,并基于spdlog库实现了线程安全的单例日志工具。文章重点突出了代码组织规范(头/源文件分离)、命名注意事项以及日志系统在多线程环境下的安全处理机制,为AI项目开发提供了基础框架实现方案。

2026-04-08 11:19:39 418

原创 项目环境的搭建,项目的初步使用和deepseek的初步认识

本文介绍了基于字节Trae开发环境的ChatSDK项目实现过程。首先完成环境搭建,包括远程连接、代码克隆、编译安装等步骤。随后演示了ChatSDK的初步使用,展示了创建对话会话、配置DeepSeek模型参数、实现流式消息交互的核心代码实现。在调试过程中解决了因未设置环境变量导致的野指针问题。最后介绍了DeepSeek API的测试方法,包括使用AIPFox工具进行接口调用测试,验证了流式和非流式两种响应模式的功能实现。整个流程涵盖了从环境配置到API集成的完整开发过程。

2026-04-08 11:15:01 262

原创 string的底层(3.15)

底层的准备工作和部分函数的实现push_back append operator+= 的实现

2025-03-24 10:04:46 1043

原创 string(2)介绍函数和接口和指令操作

介绍了string库中的一些函数和接口还有string的一些指令操作还有些非成员函数。

2025-03-15 10:28:18 1088

原创 string(1)

讲了string的迭代器,范围for,容量的知识点,也做了两个题目

2025-03-04 14:30:09 856

原创 2024年11月13日练习(滑动窗口算法)

用滑动窗口算法解决水果成篮问题

2024-11-13 18:30:19 415

原创 C++模板初阶,STL简介,string开头

介绍了C++模板初阶,STL简介,一点点string

2024-11-11 15:52:12 1059

原创 2024年11月7日练习(滑动窗口算法)

滑动窗口算法解决将x减到0的最小操作数

2024-11-07 19:37:57 939

原创 2024年11月5日练习(滑动窗口算法)

滑动窗口算法解决无重复字符的最长字串和最大连续1的个数问题

2024-11-05 16:46:52 827

原创 C++内存管理

讲解了C++的内存分布

2024-11-04 15:34:36 1006

原创 2024年11月3日练习(滑动窗口算法)

滑动窗口解决长度最小的子数组 这篇文章非常详细的解释了,滑动窗口的过程和用法

2024-11-02 12:19:06 782

原创 2024年11月2日练习(双指针算法)

利用双指针算法解决四数之和问题

2024-11-02 10:45:14 466

原创 2024年10月30日(双指针算法)

双指针算法解决和为s的两个数字和三数之和的题目

2024-10-30 21:10:13 985 1

原创 2024年10月29日练习(双指针算法)

双指针算法解决有效三角形个数问题

2024-10-29 20:13:33 708

原创 2024年10月28日练习(双指针算法)

双指针算法解决盛水最多的容器和快乐数问题

2024-10-28 20:36:10 917

原创 2024年10月25日练习(双指针算法)

双指针指针算法解决移动零和复写零问题

2024-10-26 12:10:12 837

原创 2024年10月22日练习

下面不是循环的就是考虑的那种扩容的情况例如999,那么新开一个数组,并且Size要比原数组。的大小多一,这里直接用memset函数将数组初始化,然后将数组的首元素调整1,这种就是针对。其他的情况利用循环从后面往前面走,每一位都判断一下是否变成十,只要变成十,就进位。这题考虑的麻烦点就在于每位都进位,最后进位扩展一位,此时就要另开空间,用来进位。这个循环写出来就包含了很多情况,但当要完成数组扩增时的情况就要重新考虑了。999,9999的情况。

2024-10-22 20:10:04 523

原创 C++类和对象(下)

介绍了初始化列表,类型转换,static成员,友元,内部类,对象拷贝时的编译器优化的知识点

2024-10-21 15:37:27 1079

原创 2024年10月19日练习

搜素插入位置和最后一个单词的长度的两个题目

2024-10-19 11:44:58 644

原创 2024年10月18日练习

needle的起始位置,第三个指针记录如果前面不匹配,那么从haystcak新的位置开始匹配的位置。这里要返回起始匹配位置的下标,我们可以发现tmp就是用来记录这个位置的,所以用x和tmp来保。这里我的思路就是用三个指针来完成,第一个指针指向haystack的起始位置,第二个指针指向。这就是第二层循环的条件的原因。

2024-10-18 19:46:47 376

原创 2024年10月17日练习

力扣上的最长公共前缀和删除有序数组中的重复项两个题目

2024-10-17 21:18:02 883

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除