提升 Python 代码质量的工具组合 去石牛山的天气不太好,雾大,但景色依然迷人,别有一番神秘的美感。 前言 Python 这门语言优点很多,简洁、易读,在众多编程语言中脱颖而出,然而随着项目规模的扩大,代码的规范性和潜在错误成为不容忽视的问题,特别是在重构的时候,修改方法定义、删减参数量都有可能造成潜在的错误。 为了提升 Python 代码质量,我最近评测了四个工具,并最终选择了其中三个。 结论: ...
在 Java 里推理 ONNX 模型 十一在海边露营,风景很美~ 最近尝试在 Java 里直接推理模型,避免在生产环境中使用 Python,一方面是出于性能和多线程等原因,另一方面还能减少线上环境的复杂度,当团队实施微服务架构时,团队的规模是考量微服务粒度的重要因素之一,因此对小团队来说,能在 Java 里直接调用模型将大大减少服务运维的复杂度,不用担心服务灰度、版本不匹配等问题。 什么是 ONNX? ONNX...
TorchScript 初窥 在长汀遛娃拍的反差照,一个好吃又好玩的县城,消费也不高~ TorchScript 是一种从 PyTorch 代码创建可序列化和可优化模型的解决方法,任何 TorchScript 程序都可以从 Python 进程中保存导出,并在非 Python 环境中加载。 PyTorch 官方提供了工具能将模型从纯 Python 程序转换为可以独立于 Python 运行的 TorchScri...
ARTS #220 | 古城一日游 漳州古城,建筑风貌完好,商业业态和古城结合的很好~ Algorithm 本周选择的算法题是:Split Linked List in Parts。 # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self....
ARTS #219 | 神兽回家 再一次,一个人坐飞机回来了~ Algorithm 本周选择的算法题是:Gray Code。 class Solution: def grayCode(self, n: int) -> List[int]: return [i ^ i >> 1 for i in range(1 << n)] 历史上用过的一种编码,是一...
Naive RAG and Advanced RAG 什么是 RAG 在业界提出 RAG 以前,我们使用 LLM 的方式是这样的: 为了获得更好的输出,可以搭配上思维框架,不仅能提升模型在理解、生成、推理等方面的能力,还能增强用户交互体验。 CoT 示例: # Chain-of-Thought(CoT)提示词 prompt = """ 你是一位商业分析师,正在帮助公司进入一个新市场。 请按照目标市场的地理位置和人口統计、市场需求和...
ARTS #218 | 又长了一岁 一个愉快而特别的日子,生日是一个反思过去、展望未来的好时机,希望在新的一年里能够实现自己的目标,收获更多的快乐~ Algorithm 本周选择的算法题是:2 Keys Keyboard。 class Solution: def minSteps(self, n: int) -> int: if n == 1: return 0 ...
SECon 2024 参会记录 拖草哥的福,拿到了一张免费的深圳 SECon 门票,于是 6 月底去学习了一番,个人认知有所提升~ 今年 SECon 的主题是 “拥抱 AI、走深向实”,AI Agent、大模型、AIGC 基础设施相关的专场很多,本文主要记录 AI Agent 和大模型这两块儿的内容。 关于 AI Agent Software 2.0 文章里提到,引入 AI 技术非常重要,因为未来主要是用...
ARTS #217 | 银河大作战 周末带娃看舞台剧,很欢乐~ Algorithm 本周选择的算法题是:Find All Groups of Farmland。 impl Solution { pub fn find_farmland(mut land: Vec<Vec<i32>>) -> Vec<Vec<i32>> { let m...
分享一次 VS Code 插件开发过程 最近工作较多用到 Python 的图像处理,也就是这些库: Pillow:强大的 Python 图像处理库,支持打开、操作和保存各种图像文件格式,是 PIL(Python Imaging Library)的友好分支 opencv:开源的计算机视觉和机器学习库,提供了丰富的图像和视频处理能力 numpy:一个基础科学计算库,能对多维数组、矩阵进行高效运算,内置了大量的数学函...