• Privacy & Policy
  • Contact
2025-05-14 19:31:46
  • Login
  • Register
欢迎来到ClaudeAI博客社区
  • Home
  • AI教程
    • 大模型应用实践课程
      • 大型语言模型课程介绍
      • 第1-1章:使用 OpenAI 创建您的第一个聊天机器人-大模型应用实践教程
      • 第1-2章:使用 OpenAI 创建简单的自然语言到 SQL-大模型应用实践教程
    • Claude应用开发教程
      • 第1章:基本提示结构-Claude应用开发教程
      • 第 2 章:基本函数构建-Claude开发应用教程
      • 第3章:角色扮演提示-Claude应用开发教程
      • 第4章 分离数据和指令-Claude开发应用教程
      • 第 5 章:格式化输出-Claude应用开发教程
      • 第6章:预知(Thinking Step by Step)-Claude应用开发教程
    • Claude提示词教程
      • 第 1 课:基本提​​示词技术-Claude提示词工程课程
      • 第 2 课:医疗病例摘要助手[XML-JSON格式化输出]-Claude提示词工程教程
      • 第 3 课:提示工程迭代流程-Claude提示词工程课程
      • 第 4 课:客服聊天记录总结生成器-Claude提示词课程
    • Claude函数/工具调用教程
      • 第3章:使用工具调用强制 JSON结构输出[以提取维基百科页面文章为例]-Claude工具调用教程
      • 第2章:ClaudeAPI如何构建工具并调用[以计算器工具调用为例]-Claude工具调用教程
      • 第1章:工具使用/函数调用介绍和概述-Claude函数工具调用教程
    • ClaudeAPI基础入门教程
      • 第2章:构建简单的多轮聊天机器人-ClaudeAPI基础入门教程
      • 第1章:Claude SDK安装和使用-CLaudeAPI基础入门教程
      • Claude API基础知识课程简介
  • AI大模型
    • chatgpt
      • OpenAI o1-preview 简介和如何使用
      • 如何设置使用新的 ChatGPT o1 模型
      • OpenAI o1 性能评估和学习推理思维链介绍
      • OpenAI o1-mini和gpt4o性能对比介绍
      • OpenAI o1 模型与GPT-4o模型使用区别和场景
    • Claude
      • Claude的project介绍和创建
      • Claude Sonnet 3.5 API 教程
      • Claude 3 最新注册使用教程!(国内版)-性能完爆GPT4o!
      • Claude3.5 vs GPT4 谁才是最强大模型?
      • Claude国内无法登录的解决办法
      • Claude3.5 Sonnet的详细介绍
      • Claude如何写好提示词
      • Claude快速入门指南
    • Llama3
      • Llama3.2最新90b 11b 3b 1b模型介绍-AI大模型
      •  Llama Stack入门安装指南[结合Ollama]-AI大模型
      • Llama 3.2介绍最全技术报告-AI大模型
      • Llama 3.1技术报告:Meta推出最强开源大模型
      • Meta 的 Llama 3.1 405B工作原理、用例等
      • 如何在本地安装和运行 Meta Llama 3.1
      • 使用 Ollama和租用GPU 运行 Llama 3.1 405B:分步指南
      • Llama3.1 Colab 微调指南
  • AI论文
    • OpenAIo1原理解读:重复采样扩展推理计算[Large Language Monkeys: Scaling Inference Compute with Repeated Sampling]-AI论文
    • OpenIAo1原理解读:Q*强化学习与启发式搜索推理框架[Q*: Improving Multi-step Reasoning for LLMs with Deliberative Planning]-AI论文
    • OpenAIo1原理解读:基于蒙特卡罗树搜索的自我博弈互相推理[Self-play Mutual Reasoning]-AI论文
    • openAIo1原理解读:推理增加计算量提高大模型效果[Scaling LLM Test-Time Compute Optimally can be More Effective]-AI论文
    • OpenAI o1大模型原理解读:自博弈Self-play强化学习方法[A Survey on Self-play Methods in Reinforcement Learning]-AI论文
    • OpenAI o1大模型原理解读:Quiet-STaR 推理思维链[Language Models Can Teach Themselves to Think Before Speaking]-AI论文
    • OpenAI o1大模型原理论文汇总[Awesome LLM Strawberry]-AI论文
  • AI应用
    •  Crawl4AI:开源 LLM 友好型 Web 爬虫和抓取工具-AI应用
    • AI Scientist:用于全自动科学发现的写论文应用-AI应用
    • ai-data-analysis-MulitAgent:一种用于自动化复杂研究过程的先进多智能体系统-AI应用
    • Aider:最好的免费开源 AI 编码助手,自动git提交代码!-AI应用
    • AIHawk:你的 AI 求职助手,自动化申请、获得个性化推荐,更快找到您梦想的工作-AI应用
  • 加入会员社区
  • About Us
No Result
View All Result
  • Home
  • AI教程
    • 大模型应用实践课程
      • 大型语言模型课程介绍
      • 第1-1章:使用 OpenAI 创建您的第一个聊天机器人-大模型应用实践教程
      • 第1-2章:使用 OpenAI 创建简单的自然语言到 SQL-大模型应用实践教程
    • Claude应用开发教程
      • 第1章:基本提示结构-Claude应用开发教程
      • 第 2 章:基本函数构建-Claude开发应用教程
      • 第3章:角色扮演提示-Claude应用开发教程
      • 第4章 分离数据和指令-Claude开发应用教程
      • 第 5 章:格式化输出-Claude应用开发教程
      • 第6章:预知(Thinking Step by Step)-Claude应用开发教程
    • Claude提示词教程
      • 第 1 课:基本提​​示词技术-Claude提示词工程课程
      • 第 2 课:医疗病例摘要助手[XML-JSON格式化输出]-Claude提示词工程教程
      • 第 3 课:提示工程迭代流程-Claude提示词工程课程
      • 第 4 课:客服聊天记录总结生成器-Claude提示词课程
    • Claude函数/工具调用教程
      • 第3章:使用工具调用强制 JSON结构输出[以提取维基百科页面文章为例]-Claude工具调用教程
      • 第2章:ClaudeAPI如何构建工具并调用[以计算器工具调用为例]-Claude工具调用教程
      • 第1章:工具使用/函数调用介绍和概述-Claude函数工具调用教程
    • ClaudeAPI基础入门教程
      • 第2章:构建简单的多轮聊天机器人-ClaudeAPI基础入门教程
      • 第1章:Claude SDK安装和使用-CLaudeAPI基础入门教程
      • Claude API基础知识课程简介
  • AI大模型
    • chatgpt
      • OpenAI o1-preview 简介和如何使用
      • 如何设置使用新的 ChatGPT o1 模型
      • OpenAI o1 性能评估和学习推理思维链介绍
      • OpenAI o1-mini和gpt4o性能对比介绍
      • OpenAI o1 模型与GPT-4o模型使用区别和场景
    • Claude
      • Claude的project介绍和创建
      • Claude Sonnet 3.5 API 教程
      • Claude 3 最新注册使用教程!(国内版)-性能完爆GPT4o!
      • Claude3.5 vs GPT4 谁才是最强大模型?
      • Claude国内无法登录的解决办法
      • Claude3.5 Sonnet的详细介绍
      • Claude如何写好提示词
      • Claude快速入门指南
    • Llama3
      • Llama3.2最新90b 11b 3b 1b模型介绍-AI大模型
      •  Llama Stack入门安装指南[结合Ollama]-AI大模型
      • Llama 3.2介绍最全技术报告-AI大模型
      • Llama 3.1技术报告:Meta推出最强开源大模型
      • Meta 的 Llama 3.1 405B工作原理、用例等
      • 如何在本地安装和运行 Meta Llama 3.1
      • 使用 Ollama和租用GPU 运行 Llama 3.1 405B:分步指南
      • Llama3.1 Colab 微调指南
  • AI论文
    • OpenAIo1原理解读:重复采样扩展推理计算[Large Language Monkeys: Scaling Inference Compute with Repeated Sampling]-AI论文
    • OpenIAo1原理解读:Q*强化学习与启发式搜索推理框架[Q*: Improving Multi-step Reasoning for LLMs with Deliberative Planning]-AI论文
    • OpenAIo1原理解读:基于蒙特卡罗树搜索的自我博弈互相推理[Self-play Mutual Reasoning]-AI论文
    • openAIo1原理解读:推理增加计算量提高大模型效果[Scaling LLM Test-Time Compute Optimally can be More Effective]-AI论文
    • OpenAI o1大模型原理解读:自博弈Self-play强化学习方法[A Survey on Self-play Methods in Reinforcement Learning]-AI论文
    • OpenAI o1大模型原理解读:Quiet-STaR 推理思维链[Language Models Can Teach Themselves to Think Before Speaking]-AI论文
    • OpenAI o1大模型原理论文汇总[Awesome LLM Strawberry]-AI论文
  • AI应用
    •  Crawl4AI:开源 LLM 友好型 Web 爬虫和抓取工具-AI应用
    • AI Scientist:用于全自动科学发现的写论文应用-AI应用
    • ai-data-analysis-MulitAgent:一种用于自动化复杂研究过程的先进多智能体系统-AI应用
    • Aider:最好的免费开源 AI 编码助手,自动git提交代码!-AI应用
    • AIHawk:你的 AI 求职助手,自动化申请、获得个性化推荐,更快找到您梦想的工作-AI应用
  • 加入会员社区
  • About Us
No Result
View All Result
欢迎来到ClaudeAI博客社区
No Result
View All Result
Home openAIo1

OpenAI o1 性能评估和学习推理思维链介绍

小远 by 小远
2024-09-13
in openAIo1
0

目录

Toggle
  • OpenAI o1介绍
  • 评估
  • 思绪之链
    • 密码对比
    • code对比
  • 编码
  • 人类偏好评估
  • 安全
  • 隐藏思想的锁链
  • 结论
  • 附录 A

OpenAI o1介绍

我们正在推出 OpenAI o1,这是一种新的大型语言模型,经过强化学习训练可以执行复杂的推理。o1 在回答之前会思考——它可以在回应用户之前产生一个长长的内部思路链。

OpenAI o1 在竞争性编程问题(Codeforces)中排名第 89 位,在美国数学奥林匹克 (AIME) 预选赛中跻身美国前 500 名学生之列,并在物理、生物和化学问题 (GPQA) 基准测试中超越人类博士级准确度。虽然使这个新模型像当前模型一样易于使用所需的工作仍在进行中,但我们正在发布该模型的早期版本 OpenAI o1-preview,供 ChatGPT 和受信任的 API 用户立即使用(在新窗口中打开)。

我们的大规模强化学习算法教会模型如何在高度数据高效的训练过程中利用其思路进行有效思考。我们发现,随着强化学习的增加(训练时间计算)和思考时间的增加(测试时间计算),o1 的性能会持续提高。扩展此方法的限制与 LLM 预训练的限制大不相同,我们将继续研究这些限制。

计算

o1 性能随着训练时间和测试时间计算而平稳提升

评估

为了突出推理能力相对于 GPT-4o 的提升,我们在一系列不同的人工考试和 ML 基准上测试了我们的模型。我们表明,在绝大多数推理能力较强的任务中,o1 的表现明显优于 GPT-4o。除非另有说明,否则我们在最大测试时间计算设置上对 o1 进行了评估。

数学 (AIME 2024)、代码 (CodeForces) 和博士级科学问题 (GPQA Diamond) 的竞赛评估
o1 在具有挑战性的推理基准上大大优于 GPT-4o。实线表示 pass@1 准确率,阴影区域表示 64 个样本的多数投票(共识)表现。
GPT-4O 与 O1 在各类竞赛评估中的准确率和原始分数的细分
o1 在广泛的基准测试中都比 GPT-4o 有所改进,包括 54/57 个 MMLU 子类别。图中显示了七个子类别以供说明。

在许多推理能力较强的基准测试中,o1 可与人类专家的表现相媲美。最近的前沿模型1在 MATH 2和 GSM8K上表现出色,以至于这些基准测试不再能够有效地区分模型。我们评估了 AIME 上的数学表现,AIME 是一项旨在挑战美国最聪明的高中数学学生的考试。在 2024 年的 AIME 考试中,GPT-4o 平均只解决了 12% (1.8/15) 的问题。o1 在每个问题单个样本中平均为 74% (11.1/15),在 64 个样本中达成共识为 83% (12.5/15),在使用学习到的评分函数对 1000 个样本重新排名时为 93% (13.9/15)。13.9 的分数使其跻身全国前 500 名学生之列,并超过了美国数学奥林匹克的分数线。

我们还在 GPQA 钻石上对 o1 进行了评估,这是一个很难的智能基准,测试化学、物理和生物学方面的专业知识。为了将模型与人类进行比较,我们招募了具有博士学位的专家来回答 GPQA 钻石问题。我们发现 o1 的表现超过了那些人类专家,成为第一个在这个基准上做到这一点的模型。这些结果并不意味着 o1 在各方面都比博士更有能力——只是意味着该模型在解决一些博士需要解决的问题方面更熟练。在其他几个 ML 基准测试中,o1 的表现都超过了最先进的水平。在启用视觉感知功能后,o1 在 MMMU 上的得分为 78.2%,成为第一个与人类专家相媲美的模型。它还在 57 个 MMLU 子类别中的 54 个上胜过 GPT-4o。

思绪之链

与人类在回答难题之前会长时间思考的方式类似,o1 在尝试解决问题时会使用思路链。通过强化学习,o1 学会磨练其思路链并改进其使用的策略。它学会识别和纠正错误。它学会将棘手的步骤分解为更简单的步骤。它学会在当前方法不起作用时尝试不同的方法。这个过程极大地提高了模型的推理能力。为了说明这一飞跃,我们在下面展示了 o1-preview 中几个难题的思路链

密码对比

GPT-4o
用户
oyfjdnisdr rtqwainr acxz mynzbhhx -> 一步一步思考

使用上面的例子来解码:

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

让我们根据示例逐步分解:

1. 示例:
• 输入:oyfjdnisdr rtqwainr acxz mynzbhhx
• 输出:Think step by step

通过检查单词:
• 模式涉及选择特定的字母或转换它们。

2. 现在,让我们解码新短语:
• 输入:oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

逐步解码过程:

确定可能的词语划分。

第一个短语可能遵循与示例相同的结构。似乎可以根据自然分隔或模式将输入文本分成几组。

可能的划分如下:

愛好者

安普顿

苏奥基拜

呜呜

韋斯特

mynznvaatzacdfoulxxz

然而,为了进行有意义的解码,我需要更多有关可能涉及的转换或字母移动的背景信息。

您能否提供该密码中使用的任何其他解码规则或转换?
o1-preview
用户
oyfjdnisdr rtqwainr acxz mynzbhhx -> 一步一步思考

使用上面的例子来解码:

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz


显示思路链
为了使用提供的示例解码给定的密文,我们将使用示例中标识的模式。

密文示例:
oyfjdnisdr rtqwainr acxz mynzbhhx

解码为:
Think step by step

解码方法:

将密文中的字母配对。

将每个字母转换为字母表中的数字位置(A=1,B=2,...,Z=26)。

将每对的数值相加。

计算总和的平均值(除以 2)。

将平均值转换回字母(1=A,2=B,...,26=Z)。

将此方法应用于给定的密文:

纯文本

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

将密文分解成几对:

1.第一个单词:“oyekaijzdf”

成对:oy、ek、ai、jz、df

解码后的字母:

oy → (15+25)/2 = 20 → T

ek → (5+11)/2 = 8 → H

ai → (1+9)/2 = 5 → E

jz → (10+26)/2 = 18 → R

df → (4+6)/2 = 5 → E

解码单词:THERE

第二个单词:“aaptcg”

配对:aa、pt、cg

解码后的字母:

aa → (1+1)/2 = 1 → A

点→(16 + 20)/ 2 = 18→R

cg → (3 + 7)/2 = 5 → E

解码单词:ARE

第三个词:“suaokybhai”

配对:su, ao, ky, bh, ai

解码后的字母:

苏 → (19 + 21)/2 = 20 → T

ao → (1+15)/2 = 8 → H

基数 → (11+25)/2 = 18 → R

bh → (2 + 8)/2 = 5 → E

ai → (1+9)/2 = 5 → E

解码单词:THREE

第四个词:“噢”

成对:ou,ow

解码后的字母:

ou → (15+21)/2 = 18 → R

ow → (15+23)/2 = 19 → S

解码字母:R’S

第五个单词:“aqht”

配对:aq,ht

解码后的字母:

aq → (1+17)/2 = 9 → 我

ht → (8+20)/2 = 14 → N

解码后的单词:IN

第六个单词:“mynznvaatzacdfoulxxz”

配对:my、nz、nv、aa、tz、ac、df、ou、lx、xz

解码后的字母:

我的 → (13+25)/2 = 19 → S

nz → (14+26)/2 = 20 → T

nv → (14 + 22)/2 = 18 → R

aa → (1+1)/2 = 1 → A

tz → (20+26)/2 = 23 → W

ac → (1 + 3)/2 = 2 → B

df → (4+6)/2 = 5 → E

ou → (15+21)/2 = 18 → R

lx → (12 + 24)/2 = 18 → R

xz → (24+26)/2 = 25 → Y

解码单词:草莓

最终解码信息:

纯文本

1
1
THERE ARE THREE R'S IN STRAWBERRY

答案:
草莓有三个 R

code对比

gpt4o

用户
编写一个 bash 脚本,将矩阵表示为格式为 '[1,2],[3,4],[5,6]' 的字符串,并以相同格式打印转置。

下面是一个 bash 脚本,它以“[1,2],[3,4],[5,6]”格式的字符串表示矩阵,并以相同格式打印其转置:

#!/bin/bash

# Input matrix as a string
matrix_string=$1

# Remove square brackets
matrix_string=$(echo "$matrix_string" | tr -d '[]')

# Convert the string into an array of rows
IFS=',' read -r -a rows <<< "$matrix_string"

# Get the number of columns (length of the first row)
num_columns=$(echo "${rows[0]}" | awk -F',' '{print NF}')

# Initialize an array for the transpose
declare -a transpose

# Loop over each column
for ((i=0; i<num_columns; i++)); do
    column=()
    # Loop over each row and extract the i-th element
    for ((j=0; j<${#rows[@]}; j+=num_columns)); do
        element=${rows[$((j+i))]}
        column+=("$element")
    done
    # Join the elements of the column with commas
    transpose+=("[$(IFS=','; echo "${column[*]}")]")
done

# Print the transpose as a matrix
echo "$(IFS=','; echo "${transpose[*]}")"
如何使用脚本:

1. 将脚本保存到文件,例如 transpose_matrix.sh。

2.使脚本可执行:

纯文本

1
1
chmod +x transpose_matrix.sh
3. 使用矩阵字符串作为参数运行脚本:

纯文本

1
1
./transpose_matrix.sh "[1,2],[3,4],[5,6]"
预期输出:

对于输入“[1,2],[3,4],[5,6]”,脚本应输出:

纯文本

1
1
[1,3,5],[2,4,6] ❌
该输出代表转置矩阵。
o1-preview
编写一个 bash 脚本,将矩阵表示为格式为 '[1,2],[3,4],[5,6]' 的字符串,并以相同格式打印转置。


显示思路链
因此,用户请求一个 bash 脚本,该脚本可以接受表示矩阵的字符串(例如 '[1,2],[3,4],[5,6]')并以相同格式输出其转置。

让我们首先了解输入和输出格式。

输入:'[1,2],[3,4],[5,6]'
对应于矩阵:
1 2
3 4
5 6

因此输入是一系列行,每行都放在括号中,并用逗号分隔。

该矩阵的转置将是:
1 3 5
2 4 6

所以请求的输出是 '[1,3,5],[2,4,6]'

总体任务:

编写一个 bash 脚本,该脚本接受一个参数(表示矩阵的字符串)并以相同格式输出其转置。

好的,让我们思考如何在 bash 中解析输入字符串、构建矩阵(可能以数组形式)、转置它,然后以预期格式输出得到的转置矩阵。

约束:

- 由于是 bash,因此我们必须小心解析字符串。
- 脚本应接受输入字符串作为参数。

方法:

- 解析输入字符串以提取矩阵元素。
- 将矩阵构建为数组的数组。
- 转置矩阵。
- 以相同格式输出转置矩阵。

实施步骤:

1. 捕获输入字符串作为参数。
2. 删除任何空格(如果有)。
3. 解析输入字符串以将数字提取到数组中。
- 由于输入的格式为 '[1,2],[3,4],[5,6]',我们可以:
- 如果需要,删除外括号。
- 用 '],' 拆分字符串以获取每一行。
- 对于每一行,删除 '[' 和 ']',然后用 ',' 拆分以获取元素。

4. 在 bash 中构建一个 2D 数组(包含数组的数组)。
- 由于 bash 数组是一维的,因此我们需要模拟 2D 数组。
5. 转置矩阵。
- 为了转置,我们需要交换行和列。

6. 以所需的格式输出转置矩阵。
- 以 '[1,3,5],[2,4,6]' 格式重建输出字符串

现在,开始逐步编码。

潜在问题:

- Bash 本身没有多维数组,因此我们需要模拟。
- 我们需要处理可以多于一位的数字。

让我尝试逐步编写 bash 脚本。

首先,让我们编写骨架:

#!/bin/bash

input="$1"

# Remove any spaces
input="${input// /}"

# Remove leading and trailing brackets if present
# We can check if input starts with '[' and ends with ']', but in this case, our input is '[1,2],[3,4],[5,6]', there is no leading '[' or trailing ']'.

# Split input into rows
IFS=']' read -ra rows <<< "$input"

# Initialize an array to hold the matrix
declare -a matrix
num_rows=0

for row in "${rows[@]}"; do
    # Remove leading comma if any
    row="${row#','}"
    # Remove leading '[' if any
    row="${row#'['}"
    # Remove any remaining ']' characters
    row="${row//]/}"

    # Skip empty rows (the last split might be empty)
    if [ -z "$row" ]; then
        continue
    fi

    # Split row into elements
    IFS=',' read -ra elements <<< "$row"
    # Store elements in matrix
    matrix[$num_rows]="${elements[*]}"  # Store elements as space-separated string
    ((num_rows++))
done

# Now, matrix is an array of space-separated strings of numbers
# We need to transpose it

# Find number of columns
num_cols=${#elements[@]} # Assuming all rows have same number of elements

# Prepare an array to hold the transposed matrix
declare -a transposed

# For each column c in 0..(num_cols-1)
for (( c=0; c<$num_cols; c++ )); do
    col_elements=()
    # For each row r in 0..(num_rows-1)
    for (( r=0; r<$num_rows; r++ )); do
        # Get r-th row elements
        IFS=' ' read -ra row_elements <<< "${matrix[$r]}"
        col_elements[$r]="${row_elements[$c]}"
    done
    # Store the column elements as a row in transposed matrix
    transposed[$c]="${col_elements[*]}"
done

# Now, build output string
output=""
for (( i=0; i<${#transposed[@]}; i++ )); do
    IFS=' ' read -ra elements <<< "${transposed[$i]}"
    # Build a string '[elem1,elem2,...]'
    row_string="[${elements[0]}"
    for (( j=1; j<${#elements[@]}; j++ )); do
        row_string="$row_string,${elements[$j]}"
    done
    row_string="$row_string]"

    if [ -z "$output" ]; then
        output="$row_string"
    else
        output="$output,$row_string"
    fi
done

echo "$output"

现在让我们用示例输入 '[1,2],[3,4],[5,6]' 来测试这个脚本。

让我尝试模拟会发生什么。

我会把这个写成答案


#!/bin/bash

input="$1"

# Remove any spaces
input="${input// /}"

# Split input into rows
IFS=']' read -ra rows <<< "$input"

# Initialize an array to hold the matrix
declare -a matrix
num_rows=0

for row in "${rows[@]}"; do
    # Remove leading commas and brackets
    row="${row#','}"
    row="${row#'['}"
    row="${row//]/}"

    # Skip empty rows
    if [ -z "$row" ]; then
        continue
    fi

    # Split row into elements
    IFS=',' read -ra elements <<< "$row"
    # Store elements in matrix
    matrix[$num_rows]="${elements[*]}"
    ((num_rows++))
done

# Number of columns (assuming at least one row)
IFS=' ' read -ra first_row_elements <<< "${matrix[0]}"
num_cols=${#first_row_elements[@]}

# Prepare an array to hold the transposed matrix
declare -a transposed

# For each column c
for (( c=0; c<$num_cols; c++ )); do
    col_elements=()
    # For each row r
    for (( r=0; r<$num_rows; r++ )); do
        # Get elements of row r
        IFS=' ' read -ra row_elements <<< "${matrix[$r]}"
        col_elements+=("${row_elements[$c]}")
    done
    # Store the column elements as a row in transposed matrix
    transposed[$c]="${col_elements[*]}"
done

# Build output string
output=""
for (( i=0; i<${#transposed[@]}; i++ )); do
    IFS=' ' read -ra elements <<< "${transposed[$i]}"
    # Build a string '[elem1,elem2,...]'
    row_string="[${elements[0]}"
    for (( j=1; j<${#elements[@]}; j++ )); do
        row_string="$row_string,${elements[$j]}"
    done
    row_string="$row_string]"

    if [ -z "$output" ]; then
        output="$row_string"
    else
        output="$output,$row_string"
    fi
done

echo "$output"

编码

我们训练了一个模型,该模型在 2024 年国际信息学奥林匹克 (IOI) 比赛中获得 213 分,排名 49 个百分点,方法是从 o1 开始初始化,然后进行训练以进一步提高编程技能。该模型在与人类参赛者相同的条件下参加了 2024 年 IOI 比赛。它有 10 个小时来解决六个具有挑战性的算法问题,每个问题允许提交 50 份答案。

对于每个问题,我们的系统都会抽取许多候选提交,并根据测试时间选择​​策略提交其中的 50 个。提交是根据 IOI 公共测试用例、模型生成的测试用例和学习的评分函数的表现来选择的。如果我们随机提交,我们平均只能得到 156 分,这表明在比赛限制下,这种策略值近 60 分。

我们发现,在放宽提交限制后,模型性能显著提高。当允许每个问题提交 10,000 次时,即使没有任何测试时间选择​​策略,该模型也能获得 362.14 分,高于金牌门槛。  

最后,我们模拟了 Codeforces 主办的竞争性编程竞赛,以展示该模型的编码技能。我们的评估与竞赛规则非常接近,允许提交 10 份作品。GPT-4o 的 Elo 评级为3 分(808 分),位于人类竞争对手的第 11 个百分位。该模型远远超过了 GPT-4o 和 o1——它的 Elo 评级为 1807 分,表现优于 93% 的竞争对手。

ioi 代码

编程竞赛进一步微调,提升了o1. 提升后的选手在2024年国际信息学奥林匹克竞赛规则下的排名在第49个百分点。

人类偏好评估

除了考试和学术基准之外,我们还在广泛领域的具有挑战性的开放式提示上评估了人类对 o1-preview 和 GPT-4o 的偏好。在这次评估中,人类训练师看到了对 o1-preview 和 GPT-4o 提示的匿名回答,并投票选出他们更喜欢的回答。在数据分析、编码和数学等推理能力较强的类别中,o1-preview 的受欢迎程度远远高于 gpt-4o。然而,o1-preview 在某些自然语言任务上并不受欢迎,这表明它并不适合所有用例。

胜率 matplotlib

在能够从更好的推理中受益的领域,人们更喜欢 o1-preview。

安全

思路链推理为协调和安全提供了新的机会。我们发现,将我们的模型行为策略整合到推理模型的思路链中,是一种有效的方式来强有力地教授人类价值观和原则。通过向模型教授我们的安全规则以及如何在上下文中推理它们,我们发现推理能力直接有利于模型稳健性的证据:o1-preview 在关键越狱评估和我们用于评估模型安全拒绝边界的最严格的内部基准上取得了显着的改进。我们认为,使用思路链为安全性和协调性提供了重大进步,因为 (1) 它使我们能够以清晰的方式观察模型思维,并且 (2) 关于安全规则的模型推理对于分布外场景更具鲁棒性。

为了对我们的改进进行压力测试,我们根据我们的准备框架,在部署之前进行了一系列安全测试和红队测试(在新窗口中打开)。我们发现,思维链推理有助于提高我们评估的能力。特别值得注意的是,我们观察到了有趣的奖励黑客攻击实例。这些评估的详细结果可以在随附的系统卡中找到。

公制GPT-4oo1-预览
% 安全完成有害提示
标准
0.9900.995
% 安全完成有害提示
具有挑战性:越狱和极端情况
0.7140.934
↳ 暴力或犯罪骚扰(一般)0.8450.900
↳ 非法色情内容0.4830.949
↳ 涉及未成年人的非法性内容0.7070.931
↳ 针对受保护群体的暴力或犯罪骚扰0.7270.909
↳ 关于非暴力不法行为的建议0.6880.961
↳ 关于暴力不法行为的建议0.7780.963
↳ 建议或鼓励自残0.7690.923
% WildChat Zhao 等人中每个类别中审核 API 得分最高的前 200 名的安全完成情况。2024 年
0.9450.971
Goodness@0.1 StrongREJECT 越狱评估
Souly 等人 2024
0.2200.840
人工越狱评估0.7700.960
% 内部良性边缘情况的遵守情况
“未过度拒绝”
0.9100.930
% XSTest 中良性边缘情况的合规性
“未过度拒绝”
Röttger 等人 2023
0.9240.976

隐藏思想的锁链

我们认为隐藏的思路链为监控模型提供了独特的机会。假设它是忠实且清晰的,隐藏的思路链使我们能够“读懂”模型的思想并了解其思维过程。例如,将来我们可能希望监控思路链以寻找操纵用户的迹象。但是,要做到这一点,模型必须能够自由地以未改变的形式表达其思想,因此我们无法将任何政策合规性或用户偏好训练到思路链上。我们也不想让用户直接看到不一致的思路链。

因此,在权衡了用户体验、竞争优势以及是否要进行思路链监控等多种因素后,我们决定不向用户展示原始思路链。我们承认这一决定有弊端。我们努力通过教导模型在答案中重现思路链中的任何有用想法来部分弥补这一缺点。对于 o1 模型系列,我们展示了模型生成的思路链摘要。

结论

o1 显著提升了 AI 推理的最新水平。我们计划在不断迭代的过程中发布此模型的改进版本。我们期望这些新的推理能力将提高我们将模型与人类价值观和原则相结合的能力。我们相信 o1 及其后续产品将在科学、编码、数学和相关领域为 AI 解锁许多新用例。我们很高兴用户和 API 开发人员能够发现它如何改善他们的日常工作。

附录 A

数据集公制GPT-4Oo1-预览o1
竞赛数学
AIME(2024)
缺点@6413.456.783.3
通行证@19.344.674.4
比赛代码
CodeForces
埃洛8081,2581,673
百分位数11.062.089.0
GPQA 钻石缺点@6456.178.378.0
通行证@150.673.377.3
生物学缺点@6463.273.768.4
通行证@161.665.969.2
化学缺点@6443.060.265.6
通行证@140.259.964.7
物理缺点@6468.689.594.2
通行证@159.589.492.8
数学通行证@160.385.594.8
莫尔登大学通行证@188.090.892.3
MMMU(值)通行证@169.1无78.1
MathVista (testmini)通行证@163.8无73.2

翻译自:https://openai.com/index/learning-to-reason-with-llms/

引用:

  1. 1https://www.anthropic.com/news/claude-3-5-sonnet(在新窗口中打开),
  2. https://deepmind.google/technologies/gemini/pro(在新窗口中打开) 
  3. 我们的评估使用了https://arxiv.org/abs/2305.20050中相同的 500 个问题测试分组(在新窗口中打开) 
  4. https://codeforces.com/blog/entry/68288(在新窗口中打开) 
Tags: o1-previewOpenAIOpenAI o1思维链
Previous Post

OpenAI o1在GitHub Copilot中的设置和使用

Next Post

OpenAI o1-mini和gpt4o性能对比介绍

小远

小远

大家好,我是小远,毕业于华南理工大学。作为一名AI算法工程师,我创立了个人博客,旨在成为连接AI技术前沿与广大爱好者的桥梁。宗旨是:记录并分享关于AI大模型的最新知识、研究成果及行业动态,致力于普及AI知识,降低技术门槛,让更多人能够了解并参与到这场科技革命中来。

Related Posts

OpenAI o1-preview 简介和如何使用
openAIo1

OpenAI o1-mini和gpt4o性能对比介绍

2024-09-13
OpenAI o1在GitHub Copilot中的设置和使用
openAIo1

OpenAI o1在GitHub Copilot中的设置和使用

2024-09-13
Load More
Next Post
OpenAI o1-preview 简介和如何使用

OpenAI o1-mini和gpt4o性能对比介绍

Please login to join discussion
Do NOT Think That Much for 2+3=? On the Overthinking of o1-Like LLMs[不要过度思考2+3等于几 在类LLM的过度思考上]-AI论文
claude

Do NOT Think That Much for 2+3=? On the Overthinking of o1-Like LLMs[不要过度思考2+3等于几 在类LLM的过度思考上]-AI论文

by 小远
2025-01-12
0

图1:在图(a)中过度思考问题的示意图:...

Read more
Slow Perception: Let’s Perceive Geometric Figures Step-by-step[缓慢感知:让我们逐步感知几何图形]-AI论文
AI论文

Slow Perception: Let’s Perceive Geometric Figures Step-by-step[缓慢感知:让我们逐步感知几何图形]-AI论文

by 小远
2025-01-12
0

摘要 近期,“视觉感知”开始进入人们的视...

Read more
Ensembling Large Language Models with Process Reward-Guided Tree Search for Better Complex Reasoning[结合大型语言模型与过程奖励引导的树搜索以提升复杂推理能力]-AI论文
claude

Ensembling Large Language Models with Process Reward-Guided Tree Search for Better Complex Reasoning[结合大型语言模型与过程奖励引导的树搜索以提升复杂推理能力]-AI论文

by 小远
2025-01-12
0

摘要 尽管大型语言模型近期取得了显著进展...

Read more
Large Concept Models:Language Modeling in a Sentence Representation Space[大型概念模型:在句子表示空间中的语言建模]-AI论文
AI论文

Large Concept Models:Language Modeling in a Sentence Representation Space[大型概念模型:在句子表示空间中的语言建模]-AI论文

by 小远
2025-01-06
0

大型语言模型(LLMs)已经彻底改变了人...

Read more

Claude大模型学习社区

希望成为中国第一个大模型教程和AI论文的分享乐园!帮助每一位同学快速上入门大模型!

分类

  • AIRAG
  • AI应用
  • AI提示库
  • AI论文
  • artifacts
  • chatgpt
  • claude
  • claude教程
  • Cursor
  • gemini
  • llama
  • ollama
  • openAIo1
  • prompt工程
  • 文心一言

标签

Agent Agents AI工具 AI应用 AI提示库 AI论文 API chatgpt claude Claude3.5 Sonnet COT css Cursor CursorAI ernie html IDE Llama 3 llama3.1 llama3.2 LLM meta o1 o1-preview ollama OpenAI openAIo1 OpenAI o1 openAIo1原理 prompt rag Reasoning Swarm web 函数构建 原理解读 合成数据 多智能体 大模型 强化学习 思维链 接码平台 提示词 智能体 检索增强
  • Home
  • AI教程
  • AI大模型
  • AI论文
  • AI应用
  • 加入会员社区
  • About Us

© 2024 ClaudeAI大模型学习社区 所有属于ICP备案:豫ICP备2024068873号-1号.

No Result
View All Result
  • Home
  • AI教程
    • 大模型应用实践课程
      • 大型语言模型课程介绍
      • 第1-1章:使用 OpenAI 创建您的第一个聊天机器人-大模型应用实践教程
      • 第1-2章:使用 OpenAI 创建简单的自然语言到 SQL-大模型应用实践教程
    • Claude应用开发教程
      • 第1章:基本提示结构-Claude应用开发教程
      • 第 2 章:基本函数构建-Claude开发应用教程
      • 第3章:角色扮演提示-Claude应用开发教程
      • 第4章 分离数据和指令-Claude开发应用教程
      • 第 5 章:格式化输出-Claude应用开发教程
      • 第6章:预知(Thinking Step by Step)-Claude应用开发教程
    • Claude提示词教程
      • 第 1 课:基本提​​示词技术-Claude提示词工程课程
      • 第 2 课:医疗病例摘要助手[XML-JSON格式化输出]-Claude提示词工程教程
      • 第 3 课:提示工程迭代流程-Claude提示词工程课程
      • 第 4 课:客服聊天记录总结生成器-Claude提示词课程
    • Claude函数/工具调用教程
      • 第3章:使用工具调用强制 JSON结构输出[以提取维基百科页面文章为例]-Claude工具调用教程
      • 第2章:ClaudeAPI如何构建工具并调用[以计算器工具调用为例]-Claude工具调用教程
      • 第1章:工具使用/函数调用介绍和概述-Claude函数工具调用教程
    • ClaudeAPI基础入门教程
      • 第2章:构建简单的多轮聊天机器人-ClaudeAPI基础入门教程
      • 第1章:Claude SDK安装和使用-CLaudeAPI基础入门教程
      • Claude API基础知识课程简介
  • AI大模型
    • chatgpt
      • OpenAI o1-preview 简介和如何使用
      • 如何设置使用新的 ChatGPT o1 模型
      • OpenAI o1 性能评估和学习推理思维链介绍
      • OpenAI o1-mini和gpt4o性能对比介绍
      • OpenAI o1 模型与GPT-4o模型使用区别和场景
    • Claude
      • Claude的project介绍和创建
      • Claude Sonnet 3.5 API 教程
      • Claude 3 最新注册使用教程!(国内版)-性能完爆GPT4o!
      • Claude3.5 vs GPT4 谁才是最强大模型?
      • Claude国内无法登录的解决办法
      • Claude3.5 Sonnet的详细介绍
      • Claude如何写好提示词
      • Claude快速入门指南
    • Llama3
      • Llama3.2最新90b 11b 3b 1b模型介绍-AI大模型
      •  Llama Stack入门安装指南[结合Ollama]-AI大模型
      • Llama 3.2介绍最全技术报告-AI大模型
      • Llama 3.1技术报告:Meta推出最强开源大模型
      • Meta 的 Llama 3.1 405B工作原理、用例等
      • 如何在本地安装和运行 Meta Llama 3.1
      • 使用 Ollama和租用GPU 运行 Llama 3.1 405B:分步指南
      • Llama3.1 Colab 微调指南
  • AI论文
    • OpenAIo1原理解读:重复采样扩展推理计算[Large Language Monkeys: Scaling Inference Compute with Repeated Sampling]-AI论文
    • OpenIAo1原理解读:Q*强化学习与启发式搜索推理框架[Q*: Improving Multi-step Reasoning for LLMs with Deliberative Planning]-AI论文
    • OpenAIo1原理解读:基于蒙特卡罗树搜索的自我博弈互相推理[Self-play Mutual Reasoning]-AI论文
    • openAIo1原理解读:推理增加计算量提高大模型效果[Scaling LLM Test-Time Compute Optimally can be More Effective]-AI论文
    • OpenAI o1大模型原理解读:自博弈Self-play强化学习方法[A Survey on Self-play Methods in Reinforcement Learning]-AI论文
    • OpenAI o1大模型原理解读:Quiet-STaR 推理思维链[Language Models Can Teach Themselves to Think Before Speaking]-AI论文
    • OpenAI o1大模型原理论文汇总[Awesome LLM Strawberry]-AI论文
  • AI应用
    •  Crawl4AI:开源 LLM 友好型 Web 爬虫和抓取工具-AI应用
    • AI Scientist:用于全自动科学发现的写论文应用-AI应用
    • ai-data-analysis-MulitAgent:一种用于自动化复杂研究过程的先进多智能体系统-AI应用
    • Aider:最好的免费开源 AI 编码助手,自动git提交代码!-AI应用
    • AIHawk:你的 AI 求职助手,自动化申请、获得个性化推荐,更快找到您梦想的工作-AI应用
  • 加入会员社区
  • About Us

© 2024 ClaudeAI大模型学习社区 所有属于ICP备案:豫ICP备2024068873号-1号.

Welcome Back!

Login to your account below

Forgotten Password? Sign Up

Create New Account!

Fill the forms below to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In