摘要:

transformer库是huggingface发布的1个框架,非常好用,很多外行看起来高大上的问题,用它都可以轻松解决,先来看1个小例子: 一、情感分析 from transformers import pipeline classifier = pipeline('sentiment-analy
阅读全文
posted @ 2023-08-20 16:05
菩提树下的杨过
阅读(1539)
推荐(0)
摘要:

text-generation-webui 是一个基于Gradio的LLM Web UI开源项目,可以利用其快速搭建各种文本生成的大模型环境。 一、安装 text-generation-webui的readme其实已写得相当详细了,这里就不再重复,只说1个可能存在的坑: 安装 peft 安装卡住 r
阅读全文
posted @ 2023-08-19 17:51
菩提树下的杨过
阅读(4451)
推荐(0)
摘要:

目前绝大多数LLM模型都是python实现的,运行速度有限(包括ChatGLM2-6b),幸好有大神将其用C++重写了一遍,让运行速度大大提高。 项目地址:li-plus/chatglm.cpp: C++ implementation of ChatGLM-6B & ChatGLM2-6B (git
阅读全文
posted @ 2023-08-12 23:41
菩提树下的杨过
阅读(6341)
推荐(0)
摘要:

对于不想安装windows/linux双系统的朋友来说,WSL2是不错的选择,但在使用过程中可能会遇到一些问题,以下是本人踩过的坑,记录于此: 一、安装前提 1.1 检测windows版本 windows10 版本必须高于 内部版本 19041 ,检测方法 :Ctrl+R,输入winver查看版本(
阅读全文
posted @ 2023-08-12 11:30
菩提树下的杨过
阅读(41607)
推荐(14)
摘要:

清华大学的chatGLM2-6B可以说是目前亚洲唯一能打的对中文支持不错的LLM大模型,网上已经有很多介绍如何在本机搭建环境的文章,就不再重复了,这里记录下最近踩的一些坑: 1、为啥要使用ubuntu? chatGLM2-6b项目里有很多.sh文件,在windows下正常运行通常要折腾一番,最后能不
阅读全文
posted @ 2023-07-30 22:42
菩提树下的杨过
阅读(861)
推荐(1)
摘要:

今天来学习下车床(lathe)建型及粒子系统,babylon.js有一个很强大的函数CreateLathe,可以将一段路径经过旋转后,形成1个shape,这么说有点抽象,比如下面这张图: 其中的关键点坐标为: const fountainProfile = [ new BABYLON.Vector3
阅读全文
posted @ 2023-06-17 23:09
菩提树下的杨过
阅读(463)
推荐(0)
摘要:

最近有1个项目升级到JDK17,里面用到了hbase-client(版本:以1.2.0-cdh5.7.1为基础,公司的大数据同学内部做了一些二次开发 ),启动时发现一直连不上集群,直接报错了,上hbase 官网看了下: 别说JDK 17了,连JDK11都支持不完善,难道把JDK版本又降回去?有点不甘
阅读全文
posted @ 2023-06-17 19:13
菩提树下的杨过
阅读(1119)
推荐(0)
摘要:

背景: 有1个项目,原来是用的mybatis 3.4.6版本,其中有一些插入mapper是这样写的: Integer insertEntitySelectiveShard(@Param("tableSuffix") String tableSuffix,@Param("entity") XXXEnt
阅读全文
posted @ 2023-06-17 15:59
菩提树下的杨过
阅读(844)
推荐(0)
摘要:

接上回继续,做为一个游戏引擎,怎能没有Sprite(精灵)? 下面是基本示例: const createScene = function () { const scene = new BABYLON.Scene(engine); const camera = new BABYLON.ArcRotat
阅读全文
posted @ 2023-06-04 15:39
菩提树下的杨过
阅读(501)
推荐(0)
摘要:

接上回继续,现在的村庄已经有点象样了,但是远处的背景仍比较单调(如下图),今天来学习如何处理天空背景。 babylon.js中,把整个空间假象成一个巨大的立方体(称为SkyBox),然后依次给立方体的6个面,贴上天空的背景图(如下图) 在代码中只要指定这6张图的rootUrl即可,babylon.j
阅读全文
posted @ 2023-06-04 10:55
菩提树下的杨过
阅读(454)
推荐(0)
摘要:

前面我们学习了如何画一堆房子(如下图),显然这单调的绿色大地,看上去效果并不好。 babylon.js中,可以用图片模拟出地势高低不同的效果,比如下面这张图片: 颜色越深的地方,表示地势越低(即:盆地),而颜色越浅的地方,地势越高(即:高山),可以参考下面的代码: const createScene
阅读全文
posted @ 2023-05-28 23:00
菩提树下的杨过
阅读(437)
推荐(0)
摘要:

接上回继续,今天继续捣腾动画,上一节咱们让汽车的轮子动了起来,回顾一下核心代码: //轮子转动 const wheelAnimation = (scene, wheels) => { //定义一个动画,每秒30帧,绕y轴转动 const animWheel = new BABYLON.Animati
阅读全文
posted @ 2023-05-28 15:10
菩提树下的杨过
阅读(571)
推荐(0)
摘要:

前面我们画的小房子,基本上都是用内置的标准形状组合而成,但并非所有对象都这么简单,今天我们来画一个小汽车,汽车由多个零件组成,控制这些零件的缩放、位置、旋转,如果每个都单独用代码来修改position/roration/scaling,未免太复杂,幸好babylon.js中,对象有所谓的child/
阅读全文
posted @ 2023-05-21 22:01
菩提树下的杨过
阅读(461)
推荐(0)
摘要:

按上回继续,上节知道了如何用 『方块+三棱柱+贴图』结合起来,画一个简单的小房子,实际应用中可以把这3个打包在一起,组成1个house对象,这样更方便一些 const buildHouse = () => { const box1 = buildBox(); const roof1 = buildR
阅读全文
posted @ 2023-05-21 16:24
菩提树下的杨过
阅读(435)
推荐(0)
摘要:

一、理解babylon.js 坐标系 const createScene = function () { const scene = new BABYLON.Scene(engine); const camera = new BABYLON.ArcRotateCamera("camera", -Ma
阅读全文
posted @ 2023-05-20 15:23
菩提树下的杨过
阅读(640)
推荐(0)
摘要:

如何在网页中嵌入设计好的模型? 接上回继续,我们设计好精美的模型后,最终总要展示给客户,比如利用playground画了1个方块: const createScene = () => { const scene = new BABYLON.Scene(engine); const camera =
阅读全文
posted @ 2023-05-14 22:53
菩提树下的杨过
阅读(494)
推荐(0)
摘要:

简单来说,babylon.js 是一个能跑在浏览器上的(3D)游戏渲染引擎,而且官方提供了一个友好在线交互学习平台Playground,其开源项目在github上star数截止2023.05.14高达20.6K。下面是官方文档的学习笔记 : 一、hello world 强烈建议新手通过Playgro
阅读全文
posted @ 2023-05-14 15:44
菩提树下的杨过
阅读(689)
推荐(1)
摘要:

自定义java线程池拒绝策略,实现异常情况的监控埋点
阅读全文
posted @ 2023-03-12 16:10
菩提树下的杨过
阅读(1270)
推荐(2)
摘要:

在国际化的项目中,处理时间时经常会遇到夏令时(BST,British Summer Time)问题,发明夏令时(以及冬令时)主要是为了省电。 冷知识:中国历史上也曾经采用过(1986-1991)夏令时,后来因为各种原因,最终取消了这一制度(参见:https://baijiahao.baidu.com
阅读全文
posted @ 2022-11-13 14:57
菩提树下的杨过
阅读(2930)
推荐(1)
摘要:

记录几个常用的并发用法: 1、如何让线程只创建1次 先看一段熟悉的java代码: void method1() { new Thread(() -> { while (true) { System.out.println(String.format("thread-id:%s,timestamp:%
阅读全文
posted @ 2022-09-04 16:14
菩提树下的杨过
阅读(670)
推荐(0)
摘要:

接上节继续,今天来研究tauri的事件(event),假设老板提了个需求,希望能实时监控cpu、内存等性能指标,你会怎么做? 思路1: 后端Rust暴露1个command,前端js不停去轮询(参考前文:tauri学习(3)-前端调用Rust代码),即传统的pull模型。 思路2: 后端不停对外喷数据
阅读全文
posted @ 2022-08-28 18:23
菩提树下的杨过
阅读(3122)
推荐(1)
摘要:

接上节继续,研究下系统托盘。 一、tauri.conf.json配置启用系统托盘 二、Rust中添加托盘 运行效果: 但是只有一个托盘图标,点了啥反应都没有。 三、给托盘加菜单 效果: 接下来,给托盘及托盘菜单添加事件响应: use tauri::{ CustomMenuItem, Manager,
阅读全文
posted @ 2022-08-21 18:48
菩提树下的杨过
阅读(2618)
推荐(0)
摘要:

接上节继续,本文将研究splashscreen,也就是程序的启动界面,通常有2二种应用场景: 1、程序太复杂,主界面完成加载需要很长时间,为了优化用户体验,可以先放一个启动图片,缓解用户等待的焦虑。 2、播放启动广告,手机应用上很常见,进入主程序前,强制让用户看一会儿广告。 在tauri中也有二种实
阅读全文
posted @ 2022-08-21 17:34
菩提树下的杨过
阅读(2047)
推荐(0)
摘要:

接上节继续,今天研究tauri中的多窗口,要实现多窗口有几种方式: 一、改配置tauri.conf.json 仍然以react项目模式为例,假设我们有2个页面效果: 在浏览器中运行起来长这样: tauri中,如果想开2个窗口,分别对应于这2个页面,可以参考下图配置: (关于windows节点下,具体
阅读全文
posted @ 2022-08-21 12:47
菩提树下的杨过
阅读(5507)
推荐(0)
摘要:

接上节继续,今天研究tauri中,前端如何调用Rust代码。 一、无返回值&无传参 main.rs中加1个hello方法: 然后在main方法中,参考下图暴露hello1: Rust代码准备好之后,前端(假设是react框架)就能调用了: import { invoke } from "@tauri
阅读全文
posted @ 2022-08-20 16:59
菩提树下的杨过
阅读(3197)
推荐(1)
摘要:

A链接的伪类visited在Tauri中不起作用的解决方案
阅读全文
posted @ 2022-08-15 23:28
菩提树下的杨过
阅读(977)
推荐(0)
摘要:

tauri是一个类似Electron的框架,对于开发者最大的区别是后端语言用的是Rust,而且生成的可执行程序更小
阅读全文
posted @ 2022-08-14 18:39
菩提树下的杨过
阅读(2313)
推荐(3)
摘要:

前言:WebAssembly(简称wasm)已经出来有几年了,在一些需要高性能的web应用场景中,wasm技术可以让代码执行效率大大提升。react做为目前大厂主流的前端框架之一,搭配上最近几年一直越来越火的Rust语言,可以很好的结合起来,形成wasm的解决方案。国外有高人给出了一篇详细的英文入门
阅读全文
posted @ 2022-08-14 11:37
菩提树下的杨过
阅读(3573)
推荐(0)
摘要:
背景:最近遇到1个项目,业务方调用了后端1个开销较大的接口,用于页面实时监控一些关键指标,页面是自动定时请求接口刷新数据,随着用户的增加,后端压力比较大,分析发现,很多用户日常使用过程中,并不是一直盯着屏幕看,有时候人离开了(比如下班),或者把监控页切到后台或最小化,干其它事去了,但是页面上的定时请
阅读全文
posted @ 2022-07-25 13:22
菩提树下的杨过
阅读(779)
推荐(0)
摘要:

字符串及常量池在面试中很容易被问到,前2天在为公司做校招面试时,发现很多同学对相关细节不太清楚,在此梳理一下: 先回顾一下java中字符串的设计,大家都知道jvm中有所谓的"字符串常量池"设计,当String s = "xxx"时,会先检查常量池中有没有,如果没有则加入常量池(缓存起来),下次再遇到
阅读全文
posted @ 2022-05-22 09:10
菩提树下的杨过
阅读(216)
推荐(2)
摘要:

日常开发中,经常用org.apache.commons.lang3.builder.ToStringBuilder工具类来记录日志,比如: package com.cnblogs.yjmyzz; import org.apache.commons.lang3.builder.ToStringBuil
阅读全文
posted @ 2022-05-08 07:46
菩提树下的杨过
阅读(1004)
推荐(0)
摘要:

直接开干吧,假设有这么一个类: @Data @AllArgsConstructor class BeanSample { public Calendar birthday; @Override public String toString() { if (birthday == null) { re
阅读全文
posted @ 2022-04-20 22:29
菩提树下的杨过
阅读(625)
推荐(0)
摘要:

接上篇继续,记得小时候读书那会儿,还没有双减,每次考试完,大家最关心的就是全班的成绩分布,假如有下面一张成绩表: 老师们通常很快就会算出『平均分、总分』这些关键指标,然后各班之间,就开始攀比: 当然,这些在Excel里用SUM/AVERAGE函数,再结合自动填充很容易实现,pandas里要如何类似统
阅读全文
posted @ 2022-03-20 20:20
菩提树下的杨过
阅读(790)
推荐(0)
摘要:

接上篇继续,做数据分析,各种数据图表是必不可少的,还是以下面这张表为例: 一、单列柱状图 假设要把9月份,A、B这2个分类的Amount提取出来画一个柱状图,可以这么做: import pandas as pd import matplotlib.pyplot as plt df = pd.read
阅读全文
posted @ 2022-03-20 18:44
菩提树下的杨过
阅读(357)
推荐(0)
摘要:

接上篇继续 ,这回看下一些常用的操作: 一、join 联表查询 有数据库开发经验的同学,一定对sql中的join ... on 联表查询不陌生,pandas也有类似操作 假设test.xlsx的sheet1, sheet2中分别有下面的数据(相当于2张表) 现在要以ID做为作为Key,将二张表joi
阅读全文
posted @ 2022-03-19 22:24
菩提树下的杨过
阅读(494)
推荐(0)
摘要:

接上篇继续,本篇演示对excel的基本增删改查操作。 一、读取excel 1.1 常规读取 假设有以下excel文件: 002.xlsx 用pandas可以这样读取: import pandas as pd df = pd.read_excel("data/002.xlsx") print(df.s
阅读全文
posted @ 2022-03-13 22:05
菩提树下的杨过
阅读(884)
推荐(0)
摘要:

工作中经常会遇到一些excel的数据分析工作,虽然本身excel本身有非常强大的功能,但如果需要将一些数据分析结果集成在自己的项目中,excel就显示有些不方便了(总不能每次在excel里做好图表,再截图贴进来吧),幸好python的生态圈足够强大,有pandas这种利器,能以编程的方式,方便快捷的
阅读全文
posted @ 2022-03-13 16:35
菩提树下的杨过
阅读(598)
推荐(0)
摘要:

所有负载均衡的场景几乎都会用到这个算法:假设有2个服务器A、B,其中A的分配权重为80,B的分配权重为20,当有5个请求过来时,A希望分到4次,B希望分到1次。 一个很自然的想法:A-A-A-A-B ,按权重顺序依次分配,同时计数,每分配1次,计数减1,减到0后,再分配『次权重』的服务器。 看上去好
阅读全文
posted @ 2022-02-20 20:33
菩提树下的杨过
阅读(821)
推荐(3)
摘要:
中学时学习了三角函数,下面这类图象天天看也没啥特别感觉,但是对于数学大咖而言就不一样了: 傅里叶大神看到这些图象后,提出了一个重要思想:任何一个周期性的函数,都可以用一系列三角函数叠加模拟出来,比如: \[ f(x) = sin(x) + \frac{sin(3x)}{3} + \frac{sin(
阅读全文
posted @ 2022-02-05 22:43
菩提树下的杨过
阅读(589)
推荐(1)
摘要:

常用数学公式markdown示例
阅读全文
posted @ 2022-01-26 22:36
菩提树下的杨过
阅读(590)
推荐(1)