自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(144)
  • 资源 (3)
  • 收藏
  • 关注

原创 基于ElasticSearch+文本相似度模型的检索式智能对话方案

背景:在对话系统领域,检索式对话系统一直是工业界的偏爱。笔者曾经单纯基于ElasticSearch的相似度匹配进行过实现(详见:基于ElasticSearch的检索式智能问答方案_chenxy02的博客-CSDN博客 )。后面又引入深度学习模型——“文本相似度识别”提升了系统的意图匹配机制,于是便有了这篇博客。为什么只用ES相似度匹配不行ES(ElasticSearch)所提供的相似度机制本质上是一种基于词频、基于规则的相似度计算(详见:ElasticSearch相似度匹配及分词器选择_chen..

2021-10-29 21:53:42 3904

原创 致程序员的一份吵架教程

前言:本文为笔者结合大学打了三年辩论的经验,总结的“吵架”方法论。本文并非鼓励吵架,而是希望大家在迫不得已要吵架的时候,能够吵得漂亮、吵得有水平。核心思想:优秀程序员不吵不值钱的架“优秀的辩手不吵不值钱的架”——是我大学时候经常跟师弟师妹说的一句话(来自黄执中讲座)。在此也与诸君共勉,毕竟程序员的时间是要用来改变世界的。什么是不值钱的架在笔者的辩论哲学里,从技术性上来讲——观点本...

2020-01-10 09:38:30 862

原创 Linux服务器操作应知应会

前言:仅讲述日常Linux系统使用中需要用的知识,不深入阐述其中原理1、区别Linux版本Linux的发行版本分为 CentOS、Ubuntu等等,而即使是同一种发行版本,版本号不同操作的时候也是要区别对待的。eg:#CentOS6 开关防火墙service iptables startservice iptables stop#CentOS7 开关防火墙systemctl...

2019-10-22 11:19:53 542

原创 如何快速分享服务器上的文件

当我们想将自己服务器上的文件分享给别人时,通常会考虑搭建一个文件服务器。工程上可能用基于FTP、NFS去搭建。这里仅介绍最快速的,起一个http服务器的方法——到想分享的目录下,运行一条Python命令。完事就可以通过浏览器访问,点击相应文件进行下载了。

2025-05-10 09:15:43 316

原创 如何开发一个笑话管理小工具

用redis记录用户已经浏览过的笑话,用mysql记录用户“不喜欢”的。可选jokeId列表将剔除这两部分。1、从互联网上crawl 3000条笑话文本。2、将笑话导入进数据库。

2025-05-06 22:08:40 303

原创 Openstack学习(2)——Neutron

Neutron 的设计目标是实现“网络即服务(Networking as a Service)”。为了达到这一目标,在设计上遵循了基于SDN 实现网络虚拟化的原则,在。

2024-06-06 09:19:34 760 1

原创 Openstack学习(1)——架构

OpenStack是一个开源的云计算管理平台项目,它提供了一套完整的软件堆栈来构建和管理私有云、公有云以及混合云环境。

2024-06-05 19:45:57 464 1

原创 如何让你的网站能通过域名访问

添加域名解析后,就可以通过域名对自己的Web进行访问。不过由于此时 我们还没有为域名配置证书,所以浏览器显示 “不安全”根据自己的Web服务器类型下载证书,笔者用的是 Nginx。本文主要记录如何 实现让自己的网站可以通过域名访问。现在免费证书只能申请3个了。

2024-05-29 21:03:44 5342

原创 “容器运行时”须知须会

不深入原理,主要阐述云原生应用或平台者 需要掌握的容器运行时的相关知识。

2024-04-30 16:44:58 485 1

原创 华为昇腾系列——入门学习

昇腾(Ascend)是华为推出的人工智能处理器品牌,其系列产品包括昇腾910和昇腾310芯片等。

2024-03-05 19:31:19 6413 2

原创 定时喝水提醒(进阶版)

笔者近十年的体检,总会报一个小问题:肾结石。经常肾结石的朋友应该知道,这毛病除了做碎石手术,主流的治疗方式就是:多喝水。没有完成资质认证(需要每年用公司账户给腾讯打钱)的微信公众号,很多功能受限。然而这种方式存在一个局限性就是,当我们不用电脑的时候,就看不到提醒了。如下,模板内容: 该喝水了!{{name.DATA}}同学。在用户列表可以拿到我们的微信号,稍后发送消息需要用到。于是乎,六年前,笔者写了这么一篇文章——来完成接下来的演示,注册及登陆的地址为。为弥补上述缺点,本文要实现的方案是,

2024-02-19 08:50:44 1058 1

原创 用Gradio做一个ai-chat应用

其实这个小应用的完成,最大的难点是 为上述代码中的 OpenAI(base_url="https://xxxxx/v1/") 设置一个可调通的API地址。上半年国内的大模型还没遍地开花的时候,笔者花巨资购了两台云服务器及给OpenAI充了20$,给身边的亲友给做了一个可使用的ai-chat。由于笔者提供的ai-chat服务,是一个公网可访问的界面。给lanuch()方法,传入auth参数,设置了访问应用所需的账户、密码。,自己编写web后台,找朋友做界面,做出了一个版本。后来Gradio发布了。

2024-01-11 19:33:50 837 1

原创 产品调研——AI平台

本文主要记录了对腾讯云-TIONE平台、华为云-ModelArt等主流AI平台的产品调研。

2023-12-18 23:06:06 536

原创 如果我忽然嗝屁了,家人怎么继承我的财产

笔者很喜欢的电影《寻梦环游记》有这么一句经典台词:“真正的死亡是世界上没有一个人记得你”。然而,现实中我们所说的“死亡”,其实就是 他再不能与这个世界、与自己在乎的人有新的互动了。本文,笔者想写一写 关于死亡的一个现实问题。

2023-12-13 22:39:17 213

原创 211高校是否都是双一流高校

2017年9月21日,教育部、财政部、国家发展和改革委员会联合发布《关于公布世界一流大学和一流学科建设高校及建设学科名单的通知》,此名单即第一轮“双一流”名单。由于笔者倾向的答案是:"双一流高校"包括211高校。然而笔者在继续查究后发现,人家不在"双一流公告"的真实原因是: 在两份公告发布的时间中间,改名了!从上面的截图看,有三所211高校名称不在"双一流公告"内容中,似乎"双一流高校"包括211高校 这个猜想是不成立的。前段时间,几个985毕业的朋友讨论起了 "211"跟"双一流"关系的话题。

2023-12-10 23:55:47 1253

原创 AI模型推理(6)——实战篇(进阶)

Triton是Nvidia官方推出的推理服务化框架(简单解释就是 加载你的模型变成别人可以请求的服务)。一开始叫 TensorRT serving,是专门针对TensorRT设计的服务器框架,后来支持了onnxruntime、pytorch、tensorflow等推理后端,变为了triton。

2023-12-01 18:21:27 377

原创 AI模型推理(5)——实战篇(基础)

本文主要通过实战的方式,记录各种模型推理的方法。

2023-11-28 22:43:37 613

原创 TrainingOperator--PyTorchJob实现机制分析

由Pytorch分布式训练(一)_chenxy02的博客-CSDN博客WORLD_SIZERANKMASTER_PORT和MASTER_ADDR的目的是告诉进程组中负责进程通信协调的核心进程的IP地址和端口。当然如果该进程就是核心进程,它会发现这就是自己。RANK参数是该进程的id,WORLD_SIZE是说明进程组中进程的个数。1、得手工在多个节点上启动多个 python脚本,配置不同的 rank2、如果是在K8S上起多个 pod 进行分布式训练 ,还得解决IP不确定的问题。

2023-06-30 16:09:54 2592

原创 Pytorch分布式训练(一)

2023年,训练模型时,使用DDP(DistributedDataParallel)已经成为Pytorch炼丹师的标准技能。本文主要讲述实现Pytorch分布式要做哪些事情,以及如何理解Pytorch分布式训练背后的通信原理(不会很深入)。

2023-06-29 14:59:40 1152

原创 AI模型推理(4)—— 认识ServingRuntime

ServingRuntime(在中文语境里,笔者经常把它叫做“推理运行时”)是KServe的一个核心概念。本文主要讲解ServingRuntime的概念,并重点介绍Triton模型服务化框架。1、图中C API部分。可以看到Triton支持HTTP/REST和GRPC协议。2、中Model Repository部分。按照Triton的官方文档所述,模型仓库可以是本地的持久化存储介质(磁盘),也可以接入Google Cloud Platform或者AWS S3的模型仓库。

2023-05-11 20:50:08 889

原创 AI模型推理(3)——ModelMesh使用

Kserve提供了“Serverless”和“ModelMesh”两种安装模式。其中Serverless是通过Knative组件实现动态扩缩容等功能。而ModelMesh则是另一种资源开销较小的模式。

2023-05-02 16:56:42 1479

原创 AI模型推理(2)—— Kserve入门使用

Kserve 提供一个Kubernetes 自定义资源定义(InferenceService),用于在任意框架上提供机器学习模型服务。它旨在通过为常见的ML框架(如:Tensorflow、XGBoost、Scikit-Learn、PyTorch和ONNX)提供高性能、高度抽象的接口来解决生产上的模型推理场景。它封装了自动缩放、网络、健康检查和服务配置的复杂性,为 ML 部署带来了尖端的服务功能,如:GPU 自动缩放、归零缩放和金丝雀发布等。

2023-05-02 01:26:05 1218 1

原创 AI模型推理(1)——入门篇

本文主要介绍AI模型推理的相关基础概念,为后续云原生模型推理服务的学习做准备。

2023-04-30 09:02:46 3670

原创 使用 boto3 调用 S3 对象存储

更多 boto3支持的方法,参见:https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html?Bucket 是指对象存储上的存储空间,可理解为存放对象的“容器”,一个使用对象存储的用户可以拥有多个Bucket。用户存储在对象存储上的每个文件都是一个 Object,每个Object 有一个键名/健值。我们在调用s3对象存储的代码中使用的“Endpoint”,是指对象存储对外服务的访问域名。

2023-02-21 20:20:03 1752

原创 Swagger Editor 的介绍和使用

Swagger Editor 可以帮助开发人员优雅地设计符合 OpenAPI 规范的API接口,是一个可以通过浏览器进行使用的工具。功能如下:编辑:可以在浏览器上基于YAML等语法定义我们的RESTful API,也可以采用 JSON语法查看:Swagger Editor会自动生成一篇排版优美的API文档,并且提供实时预览生成代码:可智能生成服务端或客户端代码,支持 python、golang、java 等主流语言。

2023-02-20 20:22:04 903

转载 查看k8s日志的方法

var/log/messages日志,messages日志中除了操作系统的日志,服务异常的日志也可以去messages中去看看。

2022-11-13 17:58:15 6148

原创 Go语言学习——编译

Golang支持交叉编译,即在一个平台上生成另一个平台的可执行程序。以在windows上编译linux的可执行程序为例,网上的教程普遍如下:

2022-07-12 09:56:35 1451

原创 深入解析Kubebuilder

参考网址:​​​​​​​​​​​​​​​​​​​​​​​Introduction - The Kubebuilder Book深入解析 Kubebuilder:让编写 CRD 变得更简单 - 知乎推荐朋友们多看上面官方提供的文档。前面我转发一篇博客 基于Kubebuilder开发Operator(入门使用)_chenxy02的博客-CSDN博客 记录了对kubebuilder的入门使用,本文旨在加深对kubebuilder深圳,进一步熟悉kubebuilder的项目代码。GVK = GroupVersion

2022-07-04 09:03:02 1048

原创 Kustomize使用手册

相关网址:Kustomize - Kubernetes native configuration managementKubernetes集成的配置管理工具。轻量版的helm; kustomization.yaml运行进阶用法很多时候我们针对不同环境部署上会有差异,我们可以通过在“demo用法”的基础上,新建 overlays文件夹来定义 对不同环境的部署。如下我们定义了一个生产环境和一个演示环境: 至于 kustomization文件能写哪些内容,可参考: Configuration M

2022-07-01 10:35:25 638

转载 基于Kubebuilder开发Operator(入门使用)

原文地址:使用kubebuilder 理解k8s crd - 知乎理解k8s的crd需要先理解k8s的controller模式比如kube-controller-manager中的deployment控制器,在初始化的时候就会传入要监听Deployments、ReplicaSet和pod的三个informer对象 首先list一下对象到本地缓存,同时watch对象的变更,等于增量更新func startDeploymentController(ctx ControllerConte

2022-06-24 11:16:06 685

原创 Kubernetes学习——Trouble Shooting指南

为了跟踪和发现Kubernetes集群中运行的容器应用出现的问题,我们常用如下查错方法:1、查看系统Event查看Kubernetes对象的当前运行时信息,特别是与对象关联的Event事件。这些事件记录了相关主题、发生时间、最近发生时间、发生次数及事件原因等。此外,通过查看对象的运行时数据,我们还可以发现参数错误、关联错误、状态异常等明显问题。由于在K8s中多种对象互相关联,因此这一步可能会涉及多个相关对象的排查问题。# 加 -n 指定命名空间kubectl describe pod r

2022-05-23 19:31:52 295

转载 Kubeflow--Pipeline及Argo实现原理速析

原文地址:KubeFlow-Pipeline及Argo实现原理速析_容器_华为云开发者社区_InfoQ精选文章摘要Argo是一个开源原生容器工作流引擎 用于在Kubernetes上开发和运行应用程序。Argo Workflow流程引擎,可以编排容器流程来执行业务逻辑,在20年4月进入CNCF孵化器组。KubeFlow的Pileline子项目,由Google开源,其全面依赖Argo作为底层实现,并增强持久层来补充流程管理能力,同时通过Python-SDK来简化流程的编写。Argo 流程

2022-05-10 11:27:49 1684

原创 Kubernetes学习——CRD

CRD是什么Custom Resource Definition,k8s允许用户自定义资源。定义CRM对象会创建一个具有您指定的名称和架构的新定义资源。Kubernetes API 提供并处理您的自定义资源的存储。CR是什么Custom Resouce,自定义资源,CRM的具体实例。CR是Kubernetes API的扩展。自定义资源可以通过动态注册在正在运行的集群中出现和消失,并且集群管理员可以独立于集群本身更新自定义资源。安装自定义资源后,用户可以使用kubectl创建和访问其对​​象.

2022-05-09 15:24:47 1378

原创 go mod 使用手册

为什么要使用go modgo mod是Golang1.11版本新引入的官方包管理工具,用于解决之前没有地方记录依赖包具体版本的问题,方便依赖包的管理。如何使用go mod如下,新建一个go文件package mainimport ( iris "github.com/kataras/iris/v12")func main() { app := iris.New() app.Get("/", func(ctx iris.Context) { ctx.HTML("<h

2022-04-27 15:55:07 2411

原创 支持弹性伸缩的Jupyter (elastic-jupyter-operator项目)

前言Jupyter Notebooks 在 Kubernetes 上部署往往需要绑定一张 GPU,而大多数时候 GPU 并没有被使用,因此利用率低下。为了解决这一问题,开源项目elastic-jupyter-operator将占用 GPU 的 Kernel 组件单独部署,在长期空闲的情况下自动回收,释放占用的 GPU。这篇文章主要介绍了这一开源项目的使用方式以及工作原理。如何提高资源利用率(base K8S)最大的挑战来自于GPU资源利用率。在运行的过程中即使没有代码在运行,Notebook..

2022-04-27 14:46:36 692 4

原创 Jupyter Lab入门到精通

Jupyter Lab && Jupyter NotebookJupyter Lab可以理解成Jupyter Notebook的升级版本,升级增加了很多功能。其支持python、R、java等多种编程语言及markdown、letex等写作语言及公式输入。jupyter lab相比notebook最大的更新是模块化的界面,可以在同一个窗口以标签的形式同时打开好几个文档,同时插件管理非常强大,使用起来要比jupyter notebook高大尚许多。Jupyter安装及启动安装完..

2022-04-24 14:01:34 23049 3

原创 人工智能讲义【大杂烩】(持续更新)

前言:本文主要面向但不限于非人工智能的专业从业者,只是希望在聊到AI的时候能吹上两句的。可聊话题包括但不限于“AI技术的发展现状”,“AI技术有哪些分类”,“神经网络是什么”等等等人工智能发展现状人工智能的现状是:强人工智能很弱、弱人工智能很强。弱人工智能已经强大到可以替代许多的岗位。人类目前最先进的强人工智能,也远远比不上一个三岁孩子的智力。强人工智能:指能制造出真正地推理和解决问题的智能机器。比如日本动漫里的“阿童木”、钢铁侠的AI管家“贾维斯”就可以说是一个强人工智能。 弱人工智

2022-04-20 16:29:11 1553

原创 Go语言调用K8S-API

前言:本文主要记录如何使用Go语言调用k8s的API,获取k8s集群中的Pod信息。跟着k8s官网走就行了,非常简单。找到Go client 项目进入K8S官方在线文档,进入reference模块——Reference | Kubernetes,点击“KubernetesGo client library”执行示例代码下载代码——GitHub - kubernetes/client-go: Go client for Kubernetes.,根据readme文件执行相应的示例代码.

2022-04-19 08:14:41 3305

原创 Go语言学习--安装

前言:以Win11系统为例,记录Go的安装,非常简单安装包下载安装包下载地址为:https://golang.org/dl/。如果打不开可以使用这个地址:Downloads - The Go Programming Language。各个系统对应的包名:操作系统 包名 Windows go1.XX.windows-amd64.msi Linux go1.XX.linux-amd64.tar.gz Mac go1.XX.darwin-amd64-os

2022-04-18 15:36:30 312

原创 Kubeflow--TFJob实现机制分析

前言:虽然Kubeflow提供了一大堆组件,涵盖了机器学习的方方面面,但模型训练肯定是Kubeflow最重要的功能。TFJob的本质KubeFlow针对各种各样的机器.

2022-04-18 09:22:41 2418 2

词性对照文件,可以用于NLP中自定义

词性对照文件,可以用于NLP中自定义。

2020-03-03

gunicorn安装包(用于pip安装)

gunicorn安装包(用于pip安装),可用python3;下载后在同目录下,运用 pip install gunicorn-19.9.0-py2.py3-none-any.whl

2019-01-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除