首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >《大模型驱动软件测试》第一章读书笔记

《大模型驱动软件测试》第一章读书笔记

作者头像
顾翔
发布2026-09-09 19:33:23
发布2026-09-09 19:33:23
280
举报

基于知识库、LLM和智能体祝贺框架提供AI测试框架

图书P007页

TestPilot基于LLM生成测试的原理示意

图书P008页

以智能体为核心的全栈智能测试框架

图书P009页

关于数据层的介绍见附录

LLM在软件工程中各阶段提效数据

图书P010页

附录

1.Elasticsearch

Elasticsearch是一个开源的分布式搜索和分析引擎,擅长高速处理文本搜索、日志分析和AI数据检索等大规模数据场景,是Elastic Stack的核心组件。

它主要有以下三大能力:

  • 全文搜索与分析引擎:核心基于倒排索引技术,能对海量文本进行快速检索和相关性评分(如BM25算法)。它还能进行实时聚合分析(如统计、分组),在日志监控和业务指标分析场景中很高效。
  • AI时代的向量数据库:天然支持向量字段混合搜索,可将文本、图片转化为向量进行语义匹配,能很好地支撑检索增强生成(RAG)应用,为AI模型提供私有数据上下文。
  • 天生分布式架构:数据自动分片(Shard) 存储并创建副本(Replica),确保集群高可用、易扩展。通过RESTful      API操作,学习门槛低,且支持PB级数据量。

这些能力使其能应用于多种场景:

  • 应用与网站搜索:为电商、内容平台提供高相关性的精准或模糊搜索。
  • 日志与安全分析:作为著名的ELK技术栈(Elasticsearch + Logstash +      Kibana)核心,集中分析系统日志、排查故障、检测安全威胁。
  • AI应用开发:作为向量数据库存储AI嵌入数据,构建RAG应用或推荐系统。

注:Elasticsearch基于Apache Lucene构建,经历开源协议变更后,目前从8.13版本起重新采用AGPL v3开源许可。

快速入门指引

如果你正准备上手,可以从这两步开始:

  1. 本地环境搭建:从官网下载安装包,解压后修改config/elasticsearch.yml配置文件(主要是cluster.name和node.name),然后运行./bin/elasticsearch启动节点。访问http://localhost:9200看到JSON响应即表示成功。
  2. 核心概念认知:理解几个关键概念有助于你快速上手:
    • 索引(Index):相当于数据库中的“表”,是文档的集合。
    • 文档(Document):JSON格式的数据单元,相当于“行记录”。
    • 节点(Node):一个运行中的Elasticsearch实例,不同角色(主、数据、协调等)分工不同。

2.Redis

简单来说,Redis 就像一个极速的“万能工具箱”,数据都在内存里,因此速度飞快。它最擅长的不是复杂搜索,而是高速缓存和处理特定结构的数据。

核心定位:极速内存数据库

Redis 是一款开源的、基于内存的 NoSQL 数据库,常被用作缓存、消息队列和实时数据处理引擎。它的核心能力如下:

  • 极致速度:所有数据都在内存中操作,读写延迟通常在微秒(百万分之一秒)级别,单实例每秒能处理超过10万次读写操作。官方测试中,其读写性能分别可达      81000/s 和 110000/s。
  • 丰富的数据结构:与简单的 Key-Value 存储不同,Redis 支持多种强大结构,让开发非常灵活。
    • 字符串  (String):缓存文本、数字、Session      令牌。
    • 哈希 (Hash):存储对象,如用户信息、商品详情("字段-值"对的集合)。
    • 列表(List):有序队列,用于消息队列、最新动态列表。
    • 集合(Set):无序不重复集合,用于标签、统计独立访客。
    • 有序集合(Sorted Set):按分数排序的集合,是排行榜、优先队列的不二之选。
    • 进阶类型:还支持用于消息流的 Streams、原生 JSON 文档,甚至用于 AI 相似性搜索的 向量       (Vector) 类型。

典型应用场景

基于这些特性,Redis 在以下场景中几乎是标配:

  • 缓存      (Cache):作为关系型数据库(如 MySQL)前的"挡箭牌",缓存热点数据,极大地提升系统响应速度。
  • 会话存储      (Session Storage):在分布式系统中,统一存储用户登录状态,实现多台服务器间的会话共享。
  • 排行榜/计数器      (Leaderboards/Counters):利用其原子操作,轻松实现实时更新的游戏排行榜、文章点赞数。
  • 消息队列与发布/订阅 (Message Queue & Pub/Sub):作为轻量级的消息中间件,处理异步任务(如发邮件)或实现实时通知。
  • AI 应用与向量搜索:作为 AI 应用的内存数据层,存储和检索向量嵌入,支撑检索增强生成(RAG)、语义缓存等,是新一代 AI 应用的关键组件

快速入门小贴士

  • 环境搭建:从 Redis 官网 下载安装包(Linux/macOS),解压后使用 make 编译,然后运行 src/redis-server 启动服务。用 src/redis-cli 客户端连接即可操作。
  • 核心概念:Redis 以 Key-Value 形式存储,Key 是字符串,Value 可以是上述多种数据结构。没有"表"的概念,数据模型非常灵活。

3)MongoDB

MongoDB 是一个通用的文档型数据库,可以看作是现代应用中传统关系型数据库(如 MySQL)的一个灵活替代品。和你之前问的 Redis、Elasticsearch 相比,它的定位是核心业务数据的存储与处理

核心定位:灵活的通用数据库

MongoDB 的核心能力可以用三个关键词概括:

  • 文档模型,开发灵活:它将数据存储为类似 JSON 的文档(BSON格式),结构自由,可以嵌套。这种模型能很自然地映射到编程语言中的对象,减少了复杂的数据转换工作。比如一个用户及其地址、爱好可以存在一起:
代码语言:javascript
复制
{
 "name":"张三",
 "address":{"city":"上海","street":"南京路"},
 "hobbies":["阅读","编程"]
}

这种灵活性意味着可以随时增减字段,非常适合需求频繁变化的敏捷开发。

  • 功能完备,场景通用:它不仅是一个简单的存储,还提供了现代应用所需的丰富功能。
    • 事务支持:支持多文档的 ACID(原子性、一致性、隔离性、持久性)事务,保证了数据的一致性。
    • 丰富查询:内置强大的查询API,支持地理空间、文本搜索,甚至在云服务中集成了向量搜索,可用于AI应用。
    • 高性能:通过索引和嵌入数据模型,提供了高性能的数据读写能力。
  • 水平扩展,高可用:MongoDB 原生支持水平扩展。
    • 分片       (Sharding):能将数据自动分布到多台机器上,支撑海量数据和高吞吐量。
    • 副本集       (Replica Set):提供自动故障转移和数据冗余,保证了服务的高可用性。

典型应用场景

由于它兼顾了灵活性与功能性,MongoDB 的应用场景非常广泛:

  • 内容管理 (CMS)     与电商:存储文章、商品、订单等半结构化数据,嵌套文档能很好地对现实中的复杂关系建模,减少关联查询,提升性能。
  • 物联网 (IoT)     数据:面对海量、格式多变的设备数据,MongoDB     的动态 Schema 和分片集群能轻松应对。
  • 游戏与敏捷创业:玩家属性、道具等数据结构差异大且常变化,MongoDB     的灵活性可快速迭代。许多从0到1的创业项目也会用它来降低前期架构成本。

4)BOS

百度智能云对象存储 (Baidu Object Storage)‌:这是一款稳定、安全、高效、高可拓展的云存储服务,支持标准、低频、冷和归档存储等多种存储类型,满足多场景的存储需求。

‌核心功能‌:用户可以将任意数量和形式的非结构化数据存入 BOS,并对数据进行管理和处理,提供静态资源的存储和分发能力。

‌计费模式‌:属于后付费业务,新用户首次使用时需要完成实名认证并开通服务,未使用前不会进行任何计费。‌‌‌

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档