「 OTHERS 」 九月 28, 2024

比较两个相似 PDF 文件的内容差异

文章字数 3.5k 阅读约需 3 mins.

本文给出两个比较相似 PDF 文件内容差异的方法,
以 《Understanding DeepLearning (5 August 2024)》
和 《Understanding DeepLearning...

查看全文

「 OTHERS 」 九月 28, 2024

比较两个相似 PDF 文件的内容差异

文章字数 3.5k 阅读约需 3 mins.

本文给出两个比较相似 PDF 文件内容差异的方法,
以 《Understanding DeepLearning (5 August 2024)》
和 《Understanding DeepLearning (28 August 2024)》
为例进行对比。

此方法引自 Python对比PDF文件并生成对比文件。

先用 PyMuPDF 提取 PDF 文件中的文字内容,再通过 difflib 模块输出差异内容。

安装依赖:

pip install PyMuPDF

将以下代码保存至 compare_diff...

查看全文

「 DDD 」 九月 22, 2024

领域驱动设计实战

文章字数 5k 阅读约需 5 mins.

需求为一个简化的外卖平台,包括下订单、支付、取消、商家接单、准备、派送等功能。

采用领域驱动设计方法进行问题空间分析及解空间设计。划分顾客、商家、骑手、订单、通知五个限界上下文,每个上下文成为一个微服务。服务内部采用分层架构。服务之间以开放主机服务及事件驱动架构。数据库逻辑隔离,通过事件机制保证最终一致性。

  • 商家(Merchant)
  • 注册
  • 顾客(Consumer):自然人通过商家提供的服务,注册成为顾客
  • 签约
  • 骑手(Courier):商家签约自然人为骑手
  • 骑手状态(CourierStatus)...
查看全文

「 AI 」 九月 15, 2024

使用 Arthur Bench 评估本地领域模型

文章字数 11k 阅读约需 10 mins.

Arthur Bench 是一个评估大模型的开源工具。

使用 Arthur Bench 评估 LLM,需编写少量代码,即测试套件(TestSuite),在套件中选择内置评分方法(也可自定义评分方法),对 LLM 的相应内容进行评估打分。

内置的评分方法 分为四类:

  1. 基于提示词评分,如问答正确性(qa_correctness)、摘要质量(summary_quality)、是否存在幻觉(hallucination);
  2. 基于 Embedding 评分,如(bertscore)、(hedging_language...
查看全文

「 JAVA 」 九月 08, 2024

【转】掌握 Java 反射机制

文章字数 10k 阅读约需 10 mins.

原文地址:https://wyiyi.github.io/amber/2024/09/01/Reflection/

Java 反射机制允许程序在运行时取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。

反射机制常用的类

  • java.lang.Class:代表类和接口,提供了获取类信息的方法。
  • java.lang.reflect.Constructor:代表类的构造函数。
  • java.lang.reflect.Field:代表类的成员变量。
  • java.lang.reflect.Method:...
查看全文

「 MAC 」 九月 01, 2024

【译】如何使用文件标志修改 macOS 中的文件行为

文章字数 4.8k 阅读约需 4 mins.

在 macOS 中,可以使用文件标志(flags)来限制文件被修改的方式。它们与文件权限不同,并且与 chown 和 chmod 等命令并行运行。您将使用 chflags 来更改标志,以及使用 ls 来查看标志。Unix 运行一个类似的系统,但是选项更多,称为“属性”,而不是标志。

在终端中,您可...

查看全文

「 BOOK 」 八月 25, 2024

《解构领域驱动设计》书摘

文章字数 17k 阅读约需 15 mins.

豆瓣评分 7.3

商业模式画布由9个板块构成。

  • 客户细分(customer segments):企业所服务的一个或多个客户分类群体,可以是企业组织、最终用户等。
  • 价值主张(value propositions):通过价值主张来解决客户难题和满足客户需求,为客户提供有价值的服务。
  • 渠道通路(channels):通过沟通、分销和销售渠道向客户传递价值主张,即企业将销售的商品或服务交付给客户的方式。
  • 客户关系(customer relationships):在每一个客户细分市场建立和维护企...
查看全文

「 AI 」 八月 18, 2024

典型智能体框架介绍及实战

文章字数 7.5k 阅读约需 7 mins.

智能体,英文名称为 Agent,原意为代理人,当前语境下特指基于大语言模型的人工智能代理(LLM-powered agents、LLM based agents)。

关于智能体,目前还没有一个被广泛接受的定义。

“An autonomous agent is a system situated within and a part of an environment that senses that environment and acts on it, over time, in pursuit...

查看全文

「 TEST 」 八月 11, 2024

Java 后端自动化测试

文章字数 22k 阅读约需 20 mins.

测试用例是一组输入、执行条件和预期结果的集合,用于验证软件系统的正确性。

自动化测试是指使用自动化工具或脚本来执行测试用例,以减少人工测试的工作量,提高测试效率和准确性。

测试金字塔 是一种指导自动化测试策略的框架,它建议在不同层次上分配不同数量和类型的测试,以确保成本效益、减轻团队负担并提高测试准确性。这个概念最初由 Mike Cohn 提出,主要分为三个层次:单元测试(Unit Tests)、服务测试(Service Tests,也称为集成测试)、以及用户界面测试(UI Tests)。越靠近...

查看全文

「 TEST 」 八月 04, 2024

构造 ApacheBench 可用的 postfile

文章字数 11k 阅读约需 10 mins.

在 Web 开发过程中,文件上传功能是常见的需求。对于开发者而言,确保上传功能的稳定性和性能至关重要。

本文将带你了解如何使用ApacheBench性能测试工具对文件上传功能进行性能测试,特别是如何按照规范构造上传文件的请求体,以便评估和提高服务器在高并发情况下的处理能力。

ApacheBench(简称ab)是 Apache 服务器自带的一个性能测试工具,它能够模拟多用户并发请求,从而评估服务器在高负载下的性能表现。若系统中未安装 Apache 服务器,可前往 Apache 官网下载和安装。更多...

查看全文

「 JAVA 」 七月 28, 2024

Maven 实用技巧

文章字数 15k 阅读约需 13 mins.

Maven Wrapper 借鉴了 Gradle Wrapper 的思想,可以在工程源码中提交 Wrapper 的脚本和配置,之后在工程目录中使用 mvnw 或 mvnw.cmd 命令代替 mvn 命令,从而保证了各个开发及持续集成环境在构建时使用的 Maven 版本是一致的。

Maven Wrapper 最主要的是下面三个文件,可以使用 mvn wrapper:wrapper -Dtype=only-script(或 -Dtype=script) 命令生成,也可直接从其他工程复制:

├── ....
查看全文
加载更多
0%