「 AI 」 五月 25, 2025
基于对话补全接口的问答能力评估
文章字数 9k 阅读约需 8 mins.
LLM Evaluator 是一个跨平台的命令行工具,旨在帮助用户评估基于兼容 OpenAI API 对话补全接口的大语言模型(或智能体、RAG 流程)对于有标准答案的问题的回答能力。
基本工作流程为:
llm-evaluator通过配置文件读取待评估的问题及标准答案,评估标准可选,默认为本质含义一致,可设置为=表示必须与标准答案完全一致;- 调用候选模型对话补全接口,获得候选模型对待评估问题的回答;
- 使用评估提示词组装问题、标准答案和候选模型回答的内容,交由评估模型对回答进行评估;
- 评...
「 K8S 」 八月 06, 2023
kubelet 架构设计解析之 Memory Manager
文章字数 11k 阅读约需 10 mins.
作者:@weiliang-ms
Memory Manager(译为内存管理器)是 kubelet 内部的一个组件,旨在为 Guaranteed QoS 类型 pod 提供保证内存(和大页内存)分配功能,该特性提供了几种分配策略:
- 单 NUMA 策略:用于高性能和性能敏感的应用程序
- 多 NUMA 策略:补充完善单 NUMA 策略无法管理的情况
也就是说,只要 pod 所需的内存量超过单个 NUMA 节点的容量,就会使用多 NUMA 策略跨多个 NUMA 节点提供保证的内存。
在这两种场景中,内...
查看全文「 K8S 」 七月 30, 2023
kubelet 架构设计解析之 CPU Manager
文章字数 20k 阅读约需 18 mins.
作者:@weiliang-ms
CPU Manager 是 kubelet 的一个组件,能够让用户给容器分配独占 CPU。CPU Manager 从 Kubernetes v1.10 进入 Beta 阶段, 在 Kubernetes v1.26 中,它进阶至正式发布(GA)状态。
注:本文涉及源码基于 kubernetes v1.23
为 pod 固定 CPU(核心),减少 CPU 上下文切换,提高缓存亲和性,从而降低应用程序延迟和提高的 CPU 吞吐量。
大多数 linux 平台基于以下三种...
查看全文「 OTHERS 」 七月 16, 2023
处理大数据集的灵活格式 —— JSON Lines
文章字数 5.6k 阅读约需 5 mins.
JSON Lines,顾名思义,就是每行都是一个 JSON,是一种文本格式。
在处理和分析大型数据集时,JSON Lines 格式成为了一种受欢迎的选择。JSON Lines 通过将每个 JSON 对象放在独立的一行中,使得逐行读取和处理数据变得简单,易于处理大型数据集、容易与现有工具集成,具有灵活性和可扩展性、易于阅读和维护等特点。
与传统的 JSON 格式相比,JSON Lines 不需要一次性加载整个文件,而是可以逐行读取和处理数据。这种特性使得 JSON Lines 非常适用于处理大型数...
查看全文「 GIT 」 四月 30, 2023
分析 Gitlab 提交记录的命令行工具
文章字数 10k 阅读约需 9 mins.
GitLab Analyser 是一个使用 Golang 编写的跨平台命令行工具。
通过调用 GitLab REST API ,可分析指定项目和分支在某时间范围内的 Commit 情况,包括:
- 统计每个提交中修改的所有文件
- 统计新增代码行数、减少代码行数 —— 相当于
git diff - 统计有效新增代码行数(忽略空格和换行的新增代码行数)、有效减少代码行数 —— 相当于
git diff -w
统计结果按提交人邮箱进行汇总后,按有效代码总行数排名,并输出至 console。
同时,将所有提交...
查看全文「 WEB 」 二月 19, 2023
使 nip.io 域名在纯内网环境可用
文章字数 4.5k 阅读约需 4 mins.
在 简单,却伟大 中,我们介绍了几个非常简单,但又非常强大的 DNS 解析服务,如 nip.io、sslip.io、localtest.me 等。
然而在 K8s 集群内部,或没有 DNS 服务的纯内网环境中,我们却无法直接使用这些服务。
那就只能回归到挨个域名配置 host 的原始方式了吗?不!有一个能解析这类域名的 DNS 服务就可以了。
CoreDNS 是一个用 Go 编写的灵活可扩展的 DNS 服务器,是 CNCF 的毕业项目。可通过 Kubernetes 插件 集成至 Kubernetes...
查看全文「 GO 」 二月 05, 2023
批量上传 Jar 包至 Maven 仓库
文章字数 3.4k 阅读约需 3 mins.
如果你有一些只有 Jar 包没有 pom 文件的类库需要上传至 Maven 仓库(如 Nexus),
或 Jar 和 pom 都有,但需要通过离线方式从一个 Maven 仓库迁移至另一个 Maven 仓库,可以试试下面这个命令行工具。
Upload Jars:https://github.com/AlphaHinex/go-toolkit/tree/main/upload-jars
批量上传 Jar 包至 Maven 仓库的命令行工具。
如果存在与 Jar 包同名的 pom 文件,也会一并上传。
Jar...
查看全文