贫瘠之地

出来混最重要的是什么?是出来

背景

实例状态、服务状态、Spring MVC 接口等相关监控打点看板基本都由架构、运维实现

但业务中会存在和业务数据更密切的监控需求,一般也使用 Prometheus 或类似的数据库来实现

对于 Prometheus 的函数选择存在一些疑问,所以写了这边文档,着重关注 rateirate 的实现原理和实践方法,可以解释以下问题

  • 为什么一个 QPS 看板缩小时间窗口后,某个点的 QPS 会上升
  • rateirate 的区别和实现方式是什么;以及 increasedelta
  • 时间窗口内数据 range-vector 和步长 step Interval 之间的关系
  • 如何选择合适的函数
  • 聚合函数和时间向量函数的区别
阅读全文 »

混淆矩阵 Confusion Matrix

什么是混淆矩阵

混淆矩阵是通过将预测标签与真实标签进行比较来总结分类模型性能的表格,它显示了模型预测的真正例(TP)、真负例(TN)、假正例(FP)和假负例(FN)的数量

分类模型 Classification models

阅读全文 »

API 快速开始

涉及 Spring WebSocket 的主要 API

WebSocketHandler

第一步首先实现 WebSocketHandler ,或者直接继承 TextWebSocketHandlerBinaryWebSocketHandler

1
2
3
4
5
6
7
8
@Component
public class MyTextWebSocketHandler extends TextWebSocketHandler {

@Override
protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
// do something
}
}
阅读全文 »

LangChain 生态入门

LangChain 生态下面都有哪些库和服务

  • LangChain:开发由大型语言模型(LLM)应用程序的框架
    • langchain-core 基础抽象和 LCEL(LangChain Expression Language)
    • langchain-community 三方集成;例如 langchain-openai langchain-elasticsearch
    • langchain Chains  Agents  retrieval strategies
  • LangGraph:使用 LLM 构建健壮且有状态的多参与者应用程序(multi actor),与 LangChain 平滑集成,但也可以在没有 LangChain 的情况下使用
  • LangSmith:开发者平台,用于调试、测试、评估、监控 LLM 应用
  • LangServer:部署 LangChain 的 chains 作为 REST API

LangChain

阅读全文 »

jenv 工具使用

SpringBoot 3 和 Spring 6 的升级对 Java 版本有了更高的要求,特别是现在基于 Spring 生态的开源仓库基本都基于新版本,所以往往需要维护多版本的 Java

IDEA 可以通过 Platform Settings 中的 SDKs 进行配置,而如果需要使用命令行如 mvn 等操作会比较麻烦,需要切换使用的 Java 版本(配置 profile 是一种思路,甚至 maven 可以实现不同的 module 使用不同的 Java 版本进行编译,如果没有这么精细化的需求在配置文件上操作我认为是有点繁琐的)

这里可以使用 jenv 工具对 Java 环境进行切换

安装 & 配置

阅读全文 »
0%