「 GO 」 六月 28, 2026

【转】用 g 管理 Go 多版本,解放双手,丝滑的一批

文章字数 9.3k 阅读约需 8 mins.



简介:g 是 Go 语言的轻量级版本管理工具(类似 nvm...

查看全文

「 GO 」 八月 24, 2025

基金实时估值监控命令行工具

文章字数 2.6k 阅读约需 2 mins.

watchdog 是一个监控基金实时估值的命令行工具,可配合系统计划任务定时执行。

  • 内置监控时间点,每 15 分钟查询一次基金实时估值(14:46 后每两分钟一次),计划任务可配置为每分钟执行一次
  • 自动过滤估值小于 0 的基金,每小时展示一次所有监控基金估值情况
  • 按估值涨幅降序排序
  • 对波动幅度超过阈值的基金给出历史净值信息
  • 监控结果信息支持控制台输出和飞书、钉钉机器人通知
  • 每日净值更新后自动输出结果或发送通知
./watchdog -c test.yaml [--verbose] [--watch...
查看全文

「 AI 」 五月 25, 2025

基于对话补全接口的问答能力评估

文章字数 9k 阅读约需 8 mins.

LLM Evaluator 是一个跨平台的命令行工具,旨在帮助用户评估基于兼容 OpenAI API 对话补全接口的大语言模型(或智能体、RAG 流程)对于有标准答案的问题的回答能力。

基本工作流程为:

  1. llm-evaluator 通过配置文件读取待评估的问题及标准答案,评估标准可选,默认为本质含义一致,可设置为 = 表示必须与标准答案完全一致;
  2. 调用候选模型对话补全接口,获得候选模型对待评估问题的回答;
  3. 使用评估提示词组装问题、标准答案和候选模型回答的内容,交由评估模型对回答进行评估;
  4. 评...
查看全文

「 GO 」 三月 09, 2025

Chat with LLMs

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

  • 在 Releases 页面下载对应平台的二进制文件。
  • 生成配置文件模板
      ./chat-llms -t 
  • 去掉模板文件 _template 后缀,配置多模型信息、对话内容,如有需要还可配置系统提示词。
    models_config.yaml
      模型1_ID:
      endpoint: https://api.openai.com
      api-key: sk-xxxxxxxx
      model: text-davinci-003
      temperatures:
          - 0.5
          - 0.7
          - 0.9
      enabled: true...
查看全文

「 K8S 」 八月 06, 2023

kubelet 架构设计解析之 Memory Manager

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

作者:@weiliang-ms

Memory Manager(译为内存管理器)是 kubelet 内部的一个组件,旨在为 Guaranteed QoS 类型 pod 提供保证内存(和大页内存)分配功能,该特性提供了几种分配策略:

  1. 单 NUMA 策略:用于高性能和性能敏感的应用程序
  2. 多 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 情况,包括:

  1. 统计每个提交中修改的所有文件
  2. 统计新增代码行数、减少代码行数 —— 相当于 git diff
  3. 统计有效新增代码行数(忽略空格和换行的新增代码行数)、有效减少代码行数 —— 相当于 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...

查看全文
加载更多
0%