0%

PEP 484—Type Hints 为函数参数、返回值和变量的显式类型声明规定了句法和语义,目标是协助开发者工具通过静态分析发现 Python 基准代码中的 bug。但是,不是所有 Python 用户都能从类型提示中受益。因此,必须把这作为一种可选的功能。

阅读全文 »

在 Python 中,函数是一等对象(但 Python 并不算函数式编程语言)。编程语言研究人员把 一等对象 定义为满足以下条件的程序实体:

  • 在运行时创建
  • 能赋值给变量或数据结构中的元素
  • 能作为参数传给函数
  • 能作为函数的返回结果
阅读全文 »

dict 类型是实现 Python 的基石。一些 Python 核心结构在内存中以字典的形式存在,比如说类和实例属性、模块命名空间,以及函数的关键字参数等。由于字典的关键作用,Python 对字典做了高度优化,而且一直在改进。Python 字典能如此高效,要归功于哈希表。除了字典之外,内置类型中 set 和 frozenset 也基于哈希表。

阅读全文 »

Python 从 ABC 语言继承了对序列的统一处理方式。字符串、列表、字节序列、数组、XML 元素和数据库查询结果,这些序列在操作上有很多共通之处,都可以迭代、切片、排序和拼接。深入理解 Python 中不同的序列类型,不但能避免重新发明轮子,还可以从它们共通的接口上受到启发,在自己实现 API 时合理支持及利用现有和将来可能添加的序列类型。

阅读全文 »

Python 入门相对简单,但要写好 Python 代码绝对不易。几年前阅读过《流畅的 Python》第一版,让我对 Python 语言的各个细节有了较为深入的理解,收获颇丰。最近因为投入 AI 相关工作,重新阅读大量 Python 开源代码,发现很多新特性比较陌生,虽然借助 LLM 可以快速了解这些新知识的内容,但总还是碎片化的。正好发现《流畅的 Python》也有了第二版,内容做了全面升级,可以帮助我学习这些 modern python 特性(modern 一词不独属于 C++ 了,眨眼~~)。

阅读全文 »

大语言模型的一大显著特点便是其规模之 巨大:拥有数百万到数十亿个参数。相比之下,使用传统的机器学习或统计方法,凭借一个仅包含两个参数的小模型,就能以超过 90% 的分类准确率对鸢尾花数据集进行分类。尽管与传统方法相比,大语言模型的规模庞大,但它们并不一定是 黑箱 模型。

《从零构建大模型》一书将指导我们如何一步步地构建一个大语言模型,最终,我们将深入理解像 ChatGPT 这样的大语言模型的底层运作原理。它涵盖了构建大语言模型的整个过程:从数据集的处理到模型架构的实现,再到无标签数据的预训练,以及针对特定任务的微调。

阅读全文 »