DeepSeek智能测试知识库助手PRO版:多格式支持+性能优化

前言

测试工程师在管理测试资产时,需要面对多种文档格式、大量文件分类及知识库的构建任务。为了解决这些问题,我们升级了 DeepSeek智能测试知识库助手,不仅支持更多文档格式,还加入了 多线程并发处理可扩展格式支持,大幅提升处理性能和灵活性。

主要功能亮点:

  1. 多格式支持:扩展支持 .md.csv 文件,兼容 docxpdftxtxlsx 等常见类型。
  2. 多线程并发处理:利用多线程加速文件处理,以应对大文件或批量文件的高效分类和存储。
  3. 智能清洗与分词:清理无用内容、提取高价值文本并分词,为 DeepSeek 提供更优质的输入。
  4. DeepSeek分类接口:结合 AI 模型精准分类,自动归档到知识库。
  5. 结构化存储:处理后的内容以 JSON 格式存储,便于后续扩展和检索。

知识库层级设计

与之前版本一致,知识库结构继续按 类型项目模块 分类,支持扩展到更多类别:

知识库/
├── 测试策略和计划/
│   ├── 测试策略.json
│   ├── 测试计划.json
├── 测试用例和脚本/
│   ├── 登录模块用例.json
│   ├── 自动化脚本.json
├── 测试工具和框架/
│   ├── 工具指南.json
│   ├── 框架文档.json
├── 缺陷管理/
│   ├── 缺陷报告模板.json
│   ├── 缺陷跟踪.json
├── 测试方法和技术/
├── 版本控制和发布管理/
├── 学习资源和培训材料/
├── 常见问题和解答/
└── 参考文档/

升级实现方案

1. 支持更多文档格式

扩展文档内容提取支持

扩展支持 .md(Markdown)和 .csv(表格文件)格式,统一处理接口,增加灵活性。

import pandas as pd
from PyPDF2 import PdfReader
from docx import Documentdef extract_text(file_path):"""根据文件类型提取内容:param file_path: 文件路径:return: 文本内容"""ext = file_path.split(".")[-1].lower()if ext == "txt":with open(file_path, "r", encoding="utf-8") as f:return f.read()elif ext == "docx":return "\n".join([paragraph.text for paragraph in Document(file_path).paragraphs])elif ext == "pdf":reader = PdfReader(file_path)return "\n".join([page.extract_text() for page in reader.pages])elif ext == "xlsx":df = pd.read_excel(file_path)return df.to_csv(index=False)  # 转换为 CSV 格式文本elif ext == "md":with open(file_path, "r", encoding="utf-8") as f:return f.read()elif ext == "csv":df = pd.read_csv(file_path)return df.to_csv(index=False)else:return "Unsupported file format."

2. 文档清洗和分词

智能清洗代码实现

使用正则表达式去除无关内容(如页眉页脚、空行、多余标点等),并对文本内容进行分词处理。此处需将NLTK对应的包放置在指定位置。

获取位置:

import nltk
nltk.find('.')

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

文件下载路径:

https://github.com/nltk/nltk_data/tree/gh-pages/packages/tokenizers

已上传云盘,也可联系获取云盘资源~

import re
from nltk.tokenize import word_tokenize
from nltk.corpus import stopwords
import nltk# 下载 NLTK 数据(首次运行时需要)
nltk.download("punkt")
nltk.download("stopwords")def clean_and_tokenize(text):"""清洗文本并进行分词:param text: 原始文本:return: 清洗后的文本和分词结果"""# 清洗文本cleaned_text = re.sub(r"\s+", " ", text)  # 去除多余空格cleaned_text = re.sub(r"[^\w\s,。!?:;、]", "", cleaned_text)  # 保留常见标点和文字cleaned_text = cleaned_text.strip()# 分词处理stop_words = set(stopwords.words("english") + stopwords.words("chinese"))  # 停用词tokens = [word for word in word_tokenize(cleaned_text) if word not in stop_words]return cleaned_text, tokens

3. 并发处理优化

多线程实现

利用 Python 的 concurrent.futures 模块,实现文件的并发处理,提升性能。

from concurrent.futures import ThreadPoolExecutordef process_single_file(file_path, knowledge_base_dir="知识库/"):"""处理单个文件:清洗、分类、存储:param file_path: 文件路径:param knowledge_base_dir: 知识库根目录"""try:# 提取内容content 

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

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

相关文章

Ubuntu编译ZLMediaKit

下载 git clone https://gitee.com/xia-chu/ZLMediaKit cd ZLMediaKit git submodule update --init安装工具 sudo apt install -y build-essential sudo apt install -y gcc g sudo apt install -y cmakesudo apt install -y build-essential cmake git libssl-dev libsdl1.…

如何做接口自动化测试?

一、前言 接口通俗来讲就是前端和后段之间传输数据的桥梁,注意:不是每一个项目都有接口,一些大型项目是前后端分离的,那么他们怎么实现数据的传递和返回呢?在通俗来讲就是前端和后段都有一个模拟参数数据 二、接口自…

数据分析和数据挖掘的工作内容

基本的数据分析工作通常包含以下几个方面的内容: 确定目标(输入):理解业务,确定指标口径。获取数据:数据仓库(SQL提数)、电子表格、三方接口、网络爬虫、开放数据集等。清洗数据&am…

基于Python+Vue开发的反诈视频宣传管理系统源代码

项目简介 该项目是基于PythonVue开发的反诈视频宣传管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的反…

StarRocks FE leader节点CPU使用率周期性的忽高忽低问题分析

背景 本文基于 StarRocks 3.3.5 最近在做一些 StarRocks 相关的指标监控的时候,看到了FE master的CPU使用率相对其他FE节点是比较高的,且 呈现周期性的变化(周期为8分钟), 于此同时FE master节点的GC频率相对于其他节…

第37章 合作之路与占坑成功

在春寒料峭的时节,那丝丝寒意宛如一缕缕若有若无的轻烟,在空气中悄然弥漫。锐创所的会议室,宛如一个被岁月尘封的神秘空间,暖黄色的灯光晕染开来,像是为整个房间披上了一层朦胧的薄纱,陈旧却又带着几分温馨…

Webpack打包优化

在使用 Webpack 打包项目时,随着项目规模的扩大,构建时间和打包产物的体积可能会逐渐增加。为了提高构建性能和减小打包产物的体积,可以采取以下几种 Webpack 打包优化 的方法。 1. 使用 mode 配置 Webpack 通过 mode 配置来指定构建模式。…

计算机专业知识【深入理解IP网段:192.168.1.1/24 与 192.168.1.0/24】

在网络世界里,IP地址和网段是非常基础却又至关重要的概念。很多朋友在看到类似 192.168.1.1/24 和 192.168.1.0/24 这样的表述时,可能会感到困惑。今天,我们就来详细剖析一下它们的含义以及两者之间的关系。 一、IP地址与子网掩码基础 在深…

python的if判断和循环语句(while循环和for循环)

1.if判断 1.1if判断的基本格式 if 判断条件: 满足条件做的事 score input("请输入成绩:") if score 100:print("你真棒") if score 60:print("还要加油") 使用input输入默认类型为字符串类型 1.2运算符 1.2…

洛谷P9240 [蓝桥杯 2023 省 B] 冶炼金属

题目描述 小蓝有一个神奇的炉子用于将普通金属 O 冶炼成为一种特殊金属 X。这个炉子有一个称作转换率的属性 V,V 是一个正整数,这意味着消耗 V 个普通金属 O 恰好可以冶炼出一个特殊金属 X,当普通金属 O 的数目不足 V 时,无法继续…

Rpc导读

手写Rpc框架 - 导读 git仓库-all-rpc GTIEE:https://gitee.com/quercus-sp204/all-rpc 【参考源码 yrpc】 1. Rpc概念 RPC 即远程过程调用(Remote Procedure Call) ,就是通过网络从远程计算机程序上请求服务。 本地调用抽象&…

网络安全:防范NetBIOS漏洞的攻击

稍微懂点电脑知识的朋友都知道,NetBIOS 是计算机局域网领域流行的一种传输方式,但你是否还知道,对于连接互联网的机器来讲,NetBIOS是一大隐患。 漏洞描述 NetBIOS(Network Basic Input Output System,网络基本输入输…

VIE(可变利益实体)架构通俗解析 —— 以阿里巴巴为例(中英双语)

VIE(可变利益实体)架构通俗解析 —— 以阿里巴巴为例 什么是 VIE 架构? VIE(Variable Interest Entity,可变利益实体)是一种特殊的法律结构,主要用于中国企业在海外上市,特别是受中…

使用代码与 AnythingLLM 交互的基本方法和示例

AnythingLLM 是一个基于大语言模型(LLM)的工具,主要用于构建和管理个人或企业知识库。虽然它主要提供图形化界面(GUI)进行操作,但也可以通过代码进行一些高级配置和集成。以下是使用代码与 AnythingLLM 交互…

用DeepSeek零基础预测《哪吒之魔童闹海》票房——从数据爬取到模型实战

系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录 **一、为什么要预测票房?****二、准备工作****三、实战步骤详解****Step 1:数据爬取与清洗&am…

如何将MySQL数据库迁移至阿里云

将 MySQL 数据库迁移至阿里云可以通过几种不同的方法,具体选择哪种方式取决于你的数据库大小、数据复杂性以及对迁移速度的需求。阿里云提供了多种迁移工具和服务,本文将为你介绍几种常见的方法。 方法一:使用 阿里云数据库迁移服务 (DTS) 阿…

Ubuntu22.04 - gflags的安装和使用

目录 gflags 介绍gflags 安装gflags 使用 gflags 介绍 gflags 是Google 开发的一个开源库,用于 C应用程序中命令行参数的声明、定义和解析。gflags 库提供了一种简单的方式来添加、解析和文档化命令行标志(flags),使得程序可以根据不同的运行时配置进行调整。 它具…

Git LFS介绍(Large File Storage)大文件扩展,将大文件存储在外部存储,仓库中只记录文件的元数据(大文件的指针,类似一个小的占位符文件)

文章目录 LFS的功能?如何使用LFS?将大文件存储在外部系统是什么意思?具体是如何运作的?为什么要这样做? 对开发者的影响?1. **性能和效率**2. **协作体验**3. **版本管理差异**4. **额外的工具和配置** LFS…

Fastgpt学习(5)- FastGPT 私有化部署问题解决

1.☺ 问题描述: Windows系统,本地私有化部署,postgresql数据库镜像日志持续报错" data directory “/var/lib/postgresql/data” has invalid permissions ",“ DETAIL: Permissions should be urwx (0700) or urwx,gr…

2026考研趋势深度解析:政策变化+高效工具指南

2026考研深度解析:趋势洞察高效工具指南,助你科学备战上岸 从政策变化到工具实战,这份千字攻略解决99%考生的核心焦虑 【热点引入:考研赛道进入“高难度模式”】 2025年全国硕士研究生报名人数突破520万,报录比预计扩…