C语言基础知识(草稿)

1. 关于 C

1.1 C 的发展历史

1972 年,贝尔实验室的丹尼斯·里奇(Dennis Ritch)和肯·汤普逊(Ken Thompson)在开发 UNIX 操作系统时设计了 C 语言。 C语言是在B语言(汤普逊发明,现已经被弃用)的基础上进行设计,其主要目标是成为有用的语言。

大模型微调的常见方法(Fine-tune)

监督微调(Supervised Fine-Tuning, SFT)

核心思想

  • 在预训练模型的基础上,使用标注数据进行有监督的微调,使模型适应特定任务。
  • 通过最小化损失函数(如交叉熵)优化模型参数。

关键特点

提示词工程

0. AI相关概念

概念 解释
提示词 Prompts 设计提示词 本质上就是对模型进行“编程”,这通常是通过提供一些指令或几个示例来完成。这与大多数其他 NLP 服务不同,后者是为单个任务设计的,例如情绪分类或命名实体识别。相反,补全(Completions)和聊天补全(Chat Completions)几乎可用于任何任务,包括内容或代码生成、摘要、扩展、对话、创意写作、风格转换等。
令牌 Token 模型通过将文本分解为令牌(Token)来理解和处理文本。Token 可以是单词,也可以是字符块。一个限制是,文本提示词和生成的补全合起来不能超过模型的最大上下文长度。
文本补全(Text completion) 将一些文本作为提示输入,模型将生成一个文本补全(Text completion),试图匹配您给它的任何上下文或模式。
代码补全(Code completion) 可用于生成或重构代码。
会话补全(Chat completions) 聊天模型通过一串聊天对话作为输入,并返回一个模型生成的消息作为输出。
图像生成(Image generation) 在给定文本提示的情况下创建原始图像。
微调(Fine-tuning) 微调通过训练比提示(prompt)中更多的示例来改进小样本学习,让您在大量任务中取得更好的结果。对模型进行微调后,您将不再需要在提示(prompt)中提供示例。
嵌入(Embeddings) 嵌入是浮点数的向量(列表)。两个向量之间的距离衡量它们的相关性。小距离表示高相关性,大距离表示低相关性。
语音转文本(Speech to text) 输入是要进行转录的音频文件以及所需输出格式的音频文字稿。
审核(Moderation) 用于检查内容是否符合使用策略。
推理模型 (reasoning models) 能够花费更多时间和精力思考复杂的任务,比如制定战略、规划复杂问题的解决方案、以及基于大量模糊信息做出决策。
GPT 模型 (GPT models) 擅长处理清晰定义的任务,低延迟,追求速度和成本。

1. 经验法则和例子

参考网址:

Python标准库(草稿)

__main__ —— Top-level code environment

在python中,__main__ 这个特殊的名字主要用于两个地方:

  1. python程序的顶层环境的名字,可以用 __name__ == '__main__' 来检查。
  2. python包中的一个文件:__main__.py

__name__ = '__main__'

  • 当python中的模块或包导入时,__name__ 被设置为模块的名字(文件名去掉 .py 后缀):
1
2
import configparser
configparser.__name__  # 'configparser'
  • 如果这个文件是包的一部分,那么 __name__ 也会包含父包的路径:
1
2
from concurrent.futures import process
process.__name__  # 'concurrent.futures.process'
  • 如果模块是直接在顶层代码环境中执行的,那么 __name__ 的值就会被设置成字符串 '__main__'

什么是顶层代码环境?