Загрузка видео...

Не удалось загрузить видео

На главную

HackerNews 上面的这个热门文章: 推荐大家看下,作者创建了一种 Context Mode 来节省上下文 token 当调用 MCP 的时候,工具调用会从两个方向消耗上下文窗口,输入和输出都会耗费 token。 作者的解决方案是:Context Mode 在 Claude Code 和外部工具输出之间再添加一层,核心目标是防止原始大块数据进入上下文窗口,实现高达 98% 的上下文节省 主要的实现原理: 1 沙箱隔离执行,每个工具调用在独立的子进程中运行,支持 10 种语言运行时(JS、Python 等),只把 stdout 结果返回,原始输出数据留在沙箱内不进上下文。 2 知识库 + 精简输出:使用 SQLite FTS5 虚拟表 + BM25 排名 + Porter stemming 对 Markdown 内容建索引,模型需要时再精准拉取代码块,而不是塞摘要或全文。 作者的测试数据: Playwright 快照:56 KB → 299...

36,612 просмотров • 7 месяцев назад •via X (Twitter)

Комментарии: 6

Фото профиля Jerlin
Jerlin7 месяцев назад

CC 似乎自带了简单的机制,比如调试代码结果很长的话,它会输出一个txt路径而不是塞一长串噪音进来。

Фото профиля Gilfoyle
Gilfoyle7 месяцев назад

这是工具本身设计不好,工具的Output就应该没有冗余信息。不过加一个过滤层这个想法不错,有很多进入Context的信息都可以过滤一下。

Фото профиля yanno
yanno7 месяцев назад

今天刚好在用 MCP + Playwright 做网页抓取,工具输出把上下文塞满是真实痛点。这个 98% 压缩率如果稳定,会是标配。收藏了,等项目稳定了用起来。

Фото профиля home12
home127 месяцев назад

MCP 确实费 token,特别是多工具并行时,这种 Context 优化方案很及时。

Фото профиля 每日AI技能
每日AI技能7 месяцев назад

Context Mode思路很好!MCP工具调用确实很费token,尤其是多工具组合时上下文窗口很快就爆了。这种按需加载的方式能大幅降低成本。期待看到更多实测数据!

Фото профиля Yanchen
Yanchen7 месяцев назад

这篇很有启发。我在浏览器自动化里体感最有效的是压缩工具调用开销:会话复用 + 命令链式调用 + CDP 模式,端到端通常会明显更快。我们做了可复现实测,有需要我可以发 prompt/脚本。

Похожие видео

所有VibeCoding都应该看下这篇文章,我觉得有很多知识和方法论可以学习。 这篇文章是Varick AI Agents的CTO 写的,系统地总结了利用 Claude Code 进行高效开发的实战策略。 Eyad Khrais 强调先思考、后编码的核心理念,建议在执行任务前通过“计划模式”明确架构逻辑,而非盲目输入。 文件的配置技巧,指出该文件应作为动态的“项目指南”,通过简洁且带有意图说明的指令来引导模型。 关键内容总结: 1. 先思考,后行动 (Think First) 这是使用 AI 工具最关键的一步。绝大多数人犯的错误是直接开始输入,而不是先进行规划。 启用计划模式 (Plan Mode):连按两次 Shift + Tab 进入计划模式。花费 5 分钟进行规划,可以节省后续数小时的调试时间。 架构至上(这也是我说的需求至上):在要求 Claude 构建功能之前,必须先确定架构。如果输入模糊(如“建一个认证系统”),输出质量会很差; 如果输入具体(指定模型、存储方式、中间件等),输出会显著提升。 输入决定输出:如果你得到了糟糕的代码,通常是因为你的提示词或规划(输入)很差。 2. 掌握 文件 是 Claude 在每次会话开始前都会阅读的“入职材料”,决定了项目的成败。 保持简短:Claude 每次只能可靠地遵循约 150-200 条指令。不要写成小说,否则它会随机忽略内容。 具体且解释“为什么”:不仅要告诉它做什么(例如“使用 TypeScript 严格模式”),还要告诉它原因(例如“因为我们曾因隐式类型出过错”)。这种上下文能帮助 Claude 做出更好的判断。 持续更新:这是一个活文档。每当你需要纠正 Claude 两次以上时,就按 `#` 键将该指令添加到文件中。 3. 管理上下文窗口 (Context Window) 虽然模型拥有很大的上下文窗口(如 200k token),但在达到 100% 之前很久模型就开始退化了。 退化阈值**:大约在 **20-40% 的上下文使用率**时,输出质量就开始下降。 应对策略:限定范围:每个对话只专注一个功能或任务。 外部记忆:使用 ` 或 ` 等文件记录进度,以便跨会话延续工作。 重置技巧:当上下文变得臃肿时,复制关键信息,运行 `/compact`(压缩),然后 `/clear`(清除)上下文,最后粘贴回关键信息。这比在退化的上下文中挣扎要好得多。 经常清除:一旦对话偏离轨道,立即清除并重新开始。 4. 提示词工程与模型选择 明确需求:具体说明你想要什么,并明确指出**不要做什么**(例如“不要过度设计”、“不要增加不必要的抽象”)。 模型分工: Opus:适合复杂的推理、规划和架构决策。 Sonnet:更快更便宜,适合在架构确定后的具体执行和代码编写。 工作流:使用 Opus 进行规划,然后按 Shift+Tab 切换到 Sonnet 进行实施。 5. 高级工具与自动化 利用所有功能:尝试使用 MCP(连接外部服务如 GitHub、数据库)、Hooks(在代码更改前后自动运行 Prettier 或类型检查)和自定义斜杠命令(将常用提示词打包)。 无头模式 (Headless Mode):使用 `-p` 标志在非交互模式下运行 Claude,将其集成到脚本和自动化工作流中(如自动 PR 审查、日志更新)。 6. 摆脱死循环 当 Claude 陷入循环或持续出错时,**不要**继续增加指令或施压。 改变方法:清除上下文(`/clear`),简化任务,或者自己写一个最小化的示例代码展示给它看(Show instead of tell)。

比特币橙子Trader

28,007 просмотров • 8 месяцев назад

看我作为一个 AI 博主是如何用飞书 + 【可联网的】DeepSeek R1 搭建简单自动化工作流提升工作效率的 作为一个 AI 博主,日常一大部分工作是阅读和分享各种海外的AI资讯,这就少不了要翻译各种英文文章。之前我很多操作是手动的,比如复制粘贴文章到 Markdown 编辑器,然后从编辑器复制到 DeepSeek R1 或者 ChatGPT 去翻译,再改写后发布。 之前看 orange ai 分享的飞书多维表格接入 DeepSeek R1 的教程,【加上这周飞书的AI直播】,按照我自己的场景定制了几个工作流,最开始只是简单的文本翻译,后来发现也能用支持从图片提取文字,那意味着我可以直接先把图片转成文字,再基于翻译好的文本用 DeepSeek R1 翻译。简单设置后就成功了。 再后来我甚至更进一步,直接从 URL 抓取内容,然后借助 DeepSeek R1 翻译,最后甚至还可以把翻译后的文章用各种不同的文章风格改写,使用的时候只要输入 URL 就可以自动生成一篇高质量的文章,是真的很方便。 具体来说,就是飞书在添加字段的时候,可以选 ShortCuts(中文可能对应的是“快捷方式”),然后从快捷方式中选择各种不同的工具,比如说 AI 抓取、DeepSeek R1、图片 OCR、图片生成、抠图等等,并且你可以设置某个字段的内容为输入,以及自定义提示词。 就像我前面自动从 URL 生成文章的流程,主要有这样几个字段: - URL:输入 URL - 原始网页内容(AI Web Link Reader):从输入的 URL 中提取标题、内容为 Markdown 文本 - 翻译为中文(DeepSeek R1):将抓取后的 Markdown 文本翻译为中文 - 翻译为中文 - 输出结果:DeepSeek R1 的输出结果 - 风格改写(DeepSeek R1):将翻译后的内容用指定的风格改写,阅读起来更自然 - 风格改写 - 输出结果:DeepSeek R1 的输出结果 除了上面的 URL 生成文章外,里面还包含了几个不同的常用工作流: - 将输入的文本内容翻译为中文 - 将输入的图片内容翻译为中文 - 生成多条爆款标题供选择 工作流的飞书模板链接🔗我放在了评论,建议你也可以试试,应该可以发掘出不少有意思的场景。⬇️

宝玉

87,596 просмотров • 1 год назад

发现一个讲的很细的大语言模型微调教程,详细介绍了整个流程,包括数据准备、参数设置、资源监控等关键步骤。 基本没有技术能力也可以完成微调。想要了解 LLM 原理的可以按这个实践一下。 时间轴: 0:00 概念概览 3:02 自定义数据的准备 8:17 微调操作演示(T4 版本) 16:52 微调操作演示(A100 版本) 19:13 在 Hugging Face 上的保存与使用方法 文字版整理: ✲ 如何使用自己的数据对大语言模型进行微调(fine-tuning): 对大语言模型进行微调并不一定非常困难和昂贵。通过使用自己的数据集对预训练模型进行微调,可以让模型更好地适应特定的任务需求。微调过程能够在保留原模型语言理解能力的基础上,进一步提升其在特定领域或任务上的表现。 ✲ 使用Hugging Face模型库和Unslaw工具进行模型微调: Hugging Face提供了丰富的预训练语言模型资源,用户可以根据任务需求选择合适的模型作为基础进行微调。而Unslaw工具则提供了一套简单高效的微调流程,其优点包括出色的内存使用效率以及对扩展上下文窗口的支持。通过Unslaw,用户能够以较低的资源开销完成模型微调。 ✲ 在Google Colab上使用免费/付费GPU资源进行微调: Google Colab提供了免费和付费的GPU资源,用户可以根据任务的复杂程度选择使用T4或A100。对于大多数微调任务而言,免费的T4资源已经足够。但如果数据集较大或模型较为复杂,升级到A100可以获得更充裕的算力支持。Colab为用户提供了一个易于上手的模型微调环境。 ✲ 准备自定义的微调数据集: 准备微调数据的过程并不复杂。用户可以直接使用纯文本文件作为数据来源,而无需进行额外的预处理。为了获得理想的微调效果,建议至少准备100-200个样本。在示例中,为了快速演示,仅使用了几个样本。通过一个简单的Python脚本,可以方便地将原始文本数据转换为微调所需的JSON格式。 ✲ 修改Colab笔记本中的参数设置: 在Colab笔记本中,需要根据实际情况调整一些参数。例如,可以根据数据集的token数量来设置max_sequence_length参数,借助rope scaling技术,模型能够支持任意长度的上下文。此外,还可以选择使用Instruct系列模型作为base model,直接在其基础上进行指令微调。为了节省资源,可以启用4-bit量化。同时,参考Q-Lora论文的建议,调整R值和alpha值,以在资源占用和模型质量之间取得平衡。 ✲ 训练过程中的资源使用监控: 在模型训练过程中,用户可以通过Colab的资源监控选项卡实时观察GPU、内存和硬盘的使用情况。如果发现资源不足,可以考虑从T4升级到A100。通过监控资源占用,用户能够及时调整配置,确保微调任务稳定高效地进行。 ✲ 模型训练的loss变化和最佳checkpoint的选择: 通过记录不同训练步数下的loss值,可以判断模型的收敛情况。理想的做法是选择loss下降曲线趋于平缓的点作为最佳checkpoint,这样既能充分训练模型,又能避免过拟合。为了事后方便筛选,可以设置每隔一定步数保存一次checkpoint。 ✲ 模型微调完成后的保存与使用: 微调完成后,可以选择只保存adapter layers以加快保存速度。但更推荐的做法是保存完整模型,并使用float16精度,这样可以得到一个更通用和标准的模型格式,方便后续的部署和使用。 ✲ 在Hugging Face上公开或私有发布微调后的模型: 用户可以选择在Hugging Face的模型库中公开或私有地发布自己微调后的模型。发布之前,需要在Hugging Face账号中创建一个访问令牌,并在发布时提供相应的用户名和令牌信息。通过在Hugging Face上发布模型,用户可以方便地与他人分享自己的微调成果。 ✲ 使用微调后的模型进行推理(inference): 在使用微调后的模型进行推理时,首先需要加载保存的模型。接着,使用tokenizer对输入的文本进行处理,并将其传入模型。进行推理时,max_length参数需要与训练时保持一致,以确保生成的结果不会被截断。完成以上步骤后,就可以利用微调后的模型进行各种实际应用了。

歸藏(guizang.ai)

61,931 просмотров • 2 лет назад

我让 GPT-6 Astra 和 Claude Fable 5.1 审同一份代码,Astra 的账单便宜了 26.4%。 点开日志,Astra 的 9,832 个输出 token 里,有 7,250 个属于推理,占 73.7%,扣掉推理后,剩下的 token 大约是 Fable 的一半。 这次对照是在 ZenMux 上跑的,同一个 key 可以切模型,调用记录能展开每项费用,方便把两边放在一起核算。后面接入 Codex,又查了一次模型定价接口,我找到了另外两处只看总账单容易忽略的成本。 先说审代码这次。 测试材料是我自己项目里的自动评分器,163 行 Python,公开在 GitHub 的 ling-fin-eval 仓库。 左边 GPT-6 Astra,右边 Claude Fable 5.1,同一段 prompt 同时发,要求把问题分三类,每条给确切行号和理由,没把握的明确写“未验证”,不要自行补全。 Astra 报了 20 条,另列 4 条未验证;Fable 报了 37 条,并逐条标注把握程度。 两边的账单和输出放在一起,是这样。 项目GPT-6 Astra,Claude Fable 5.1 总费用0.5331 美元,0.7245 美元 输出 token9,832,13,278 推理 token7,250,8386 输出减去推理2,582,4,892 Astra 这次确实少花了 26.4%,总输出 token 也更少。 我又做了一个折算。按 output token 包含 reasoning token 的口径,用总费用除以两者相减后的 token 数,再换算成每百万 token。 Astra 是 206.47 美元,Fable 是 148.10 美元,前者高出 39.4%。 这个数只表示本次总费用分摊到非推理输出后的成本。,它依赖两边字段口径一致,也不能直接代表审查质量。回答长短、问题条数都只是表面数量,误报和遗漏需要逐条核验。 这组数据让我对“输出更少”多留了一个心眼,只看 9,832 和 13,278,会漏掉输出内部的构成。 ZenMux 在这里省了接入和对账的步骤,我可以在同一个平台切模型,再展开两条调用记录看费用,实际参数和缓存状态仍要单独记录,同一个 key 不会自动让这些条件一致。 接下来这笔更直观。 我把 Codex 接到 ZenMux,问了一个很简单的问题:“用一句话说明 norm() 函数做了什么。” 它答对了,还给出了 第 7 行。我回源核过,行号精确命中。 其中一条调用记录的费用是 0.2482515 美元,拆开如下。 费用项token 数,费用(美元) 占比缓存读取 input_cache_read 182,934,0.182934,73.7% 缓存写入 input_cache_write,3,519 0.0439875 17.7% 输出 completion,413,0.020650 8.3%普通输入 prompt68,0.000680,0.3% 合计0.2482515 100% 输出费用只占 8.3%,大约十二分之一,缓存读取和写入合计占了 91.4%。 这条记录中的输入类 token 加起来有 186,521 个,对照我只问了一句函数解释,这个输入量很值得继续查。 Agent 请求会携带上下文,系统提示、skills 清单、AGENTS.md 和读入的文件,都可能贡献输入,但仅凭费用表,还不能确定它们各占多少。 缓存读取占比高,也不能直接判成缓存浪费,这里读缓存的单价是普通输入的十分之一。需要继续检查的是,任务带入了哪些上下文,其中多少确实需要。 有了逐项账单,排查方向就清楚了。这条记录里,输出只占很小一部分,输入上下文值得优先检查,整次任务花了多少钱,则要把相关请求一起算进去。 第三处发现来自定价接口,也纠正了我自己的一个推断。 ZenMux 模型页给 Astra 标出的价格区间是输入 10 至 20、输出 50 至 75 美元/百万 token,我最初把这个区间理解成了 low、medium、high 等推理档位,还专门去问了品牌方。 后来查了公开的 models 接口,定价条件写的是 prompt_tokens。 截至 2026 年 9 月 6 日,Astra 的定义如下,单位均为美元/百万 token。 费用项,单次请求 prompt < 272K 单次请求 prompt ≥ 272K 输入10,20 缓存写入,12.5,25 缓存读取1,2输出50,75 这个区间对应长上下文阶梯,达到 272K 后,输入和缓存单价翻倍,输出单价上涨 50%。 接口列出的这组价格条件没有按 effort 分档,effort 仍可能改变实际使用的 token 数,进而影响总费用。 272K 要对照单次请求的 prompt token,不能拿整个 agent 任务多次请求的累计输入来比较。不同模型的阶梯也要逐个看,这张表只适用于接口当前列出的 Astra 定义。 超过门槛后的实际扣费,我没有另外发请求验证。 这几笔账查完,我用 ZenMux 的理由更具体了,换模型时可以沿用同一个 key,跑完以后能在同一个地方对照调用记录,再追到输入、推理、缓存和各项单价。 推理 token 数也能从部分官方 API 的 usage 字段里拿到,例如 OpenAI 就有相应字段,ZenMux 对我这次工作的帮助,是把多模型调用和费用查看集中起来,减少自己整理不同接口数据的步骤。 限时充值活动: 充 50 美元得 70(送 20) 充 100 美元得 150(送 50) 限 9.4-9.11 ,一共是7天,每个账号限兑一次 活动入口和当前状态以官网为准: #ZenMux

阿良|AI 工作流

70,332 просмотров • 23 дней назад

非常好的一个演示视频,通过可视化清晰的介绍了 LLM 的核心 Transformer 架构的原理。 包括词嵌入、自注意力机制等关键技术。对了解GPT-3等大型语言模型的内部结构很有帮助。 👇下面是文字版本: GPT的全称及其含义 GPT是Generative Pre-trained Transformer的缩写。其中,"Generative"表示这个模型是用来生成新文本的;"Pre-trained"意味着模型是在大量数据上预先训练好的;"Transformer"则指代一种特定类型的神经网络结构。因此,GPT本质上是一个基于Transformer架构、经过预训练、能够生成文本的语言模型。 Transformer的定义及其在AI领域的应用 Transformer是一种专门处理序列数据的神经网络架构。它最初是为机器翻译任务设计的,但后来被发现在其他许多NLP任务上也有出色表现,如语言建模、命名实体识别等。除了NLP,Transformer也被应用于语音识别、图像字幕生成等领域。Transformer的成功很大程度上归因于其独特的自注意力机制,使其能够高效地处理长程依赖关系。 Transformer的工作原理简介 Transformer的工作流程可以概括为三个主要步骤:首先,将输入的文本序列转化为一组向量表示;然后,通过自注意力机制和前馈神经网络对这些向量进行变换和更新;最后,根据更新后的向量生成输出分布,用于预测下一个词。整个过程中,自注意力机制起到了关键作用,使得模型能够动态地确定输入序列中每个位置与其他位置之间的相关性,从而更好地捕捉上下文信息。 Transformer处理文本信息的过程 当Transformer处理一段文本时,首先需要将其分割成一个个基本单元,如单词或子词,这些基本单元被称为"token"。接着,每个token都会被映射为一个高维向量,即"词嵌入"。这一步旨在将离散的文本符号转化为连续的向量表示,以便神经网络进行处理。然后,这些词向量会通过多个编码器层进行变换和更新,每一层都会综合考虑当前token与其他token之间的关系,从而使每个向量都融入了上下文信息。最后,解码器根据编码器的输出和之前生成的token,预测出下一个最可能的token。通过不断重复这一过程,Transformer就可以生成连贯的文本片段。 词嵌入(Word Embedding)的概念和作用 词嵌入是一种将词映射到高维向量空间的技术。通过词嵌入,每个词都被表示为一个实数向量,这个向量捕捉了该词的语义信息。词嵌入的一个重要特性是,语义相似的词往往在向量空间中距离较近。例如,"king"和"queen"这两个词的向量之间的距离会比"king"和"apple"的距离更近。此外,词嵌入还能够反映词之间的类比关系,如"king"-"man"+"woman"的结果会接近"queen"。词嵌入为神经网络提供了一种处理文本数据的有效方式,使其能够利用词语之间的语义关系进行推理和预测。 深度学习模型的基本结构和特点 深度学习模型通常由多个层组成,每一层对输入数据进行一定的变换,并将结果传递给下一层。层与层之间的连接通常是通过矩阵乘法实现的,其中矩阵的元素就是模型的参数。这些参数在训练过程中会不断更新,以使模型的输出与期望输出尽可能接近。深度学习模型的训练通常采用反向传播算法,即根据输出的误差,逐层调整参数的值。通过多次迭代,模型可以逐渐学习到数据中的规律和模式。深度学习模型的一个显著特点是,它们可以自动学习数据的表示方式,而无需人工设计特征。这使得深度学习在处理图像、语音等复杂数据时表现出色。 Softmax函数的作用和计算过程 Softmax函数常用于深度学习模型的输出层,特别是在多分类问题中。它的作用是将一组实数转化为一个概率分布,使得每个类别都有一个0到1之间的概率值,并且所有类别的概率之和为1。Softmax函数的计算过程分为两步:首先,对每个输入值取指数;然后,将每个指数值除以所有指数值的和。这样得到的结果就是一个合法的概率分布。Softmax函数有一个很好的性质,即输入值较大的类别会获得较高的概率,而输入值较小的类别的概率会趋近于0。这使得模型的输出更容易解释,并且有利于进行决策和预测。 生成模型预测下一个词的过程 当生成模型(如GPT)预测下一个词时,通常采用以下步骤:首先,根据前面已经生成的词,模型会计算出每个可能的下一个词的概率。这个概率分布反映了模型对不同词的偏好程度。然后,从这个分布中采样出一个词作为新生成的内容。接下来,模型将这个新词加入到已生成的序列中,并重复上述过程,直到达到预设的长度或遇到终止条件(如句号)为止。通过这种不断预测和采样的方式,生成模型可以创作出连贯而富有创意的文本。值得注意的是,为了提高生成文本的多样性和自然度,可以引入"temperature"等超参数来调节输出分布的形状。 GPT-3的参数量和嵌入矩阵 GPT-3是目前最大的语言模型之一,其参数量高达1750亿。这意味着,模型需要学习和存储大量的权重值,以刻画自然语言中的规律和模式。GPT-3的一个重要组成部分是嵌入矩阵(embedding matrix),它负责将每个词映射为一个高维向量。在GPT-3中,嵌入矩阵的大小为50257×12288,即词表中共有50257个不同的词(或子词),每个词被映射为一个12288维的向量。嵌入矩阵中的每个元素都是一个可学习的参数,在训练过程中会不断更新,以使得语义相似的词具有相近的向量表示。GPT-3庞大的参数量使其能够学习到比以往模型更加细致入微的语言知识,这也是其在各种NLP任务上表现出众的原因之一。 模型训练中的"Temperature"超参数 在生成模型的训练过程中,"Temperature"是一个重要的超参数,它控制着输出分布的形状。具体来说,temperature值越高,输出分布就越平缓,生成的结果也就越多样化;反之,temperature值越低,输出分布就越尖锐,生成的结果也就越保守。合适的temperature值可以在确保生成内容连贯性的同时,提高其丰富性和创造性。例如,当temperature值接近于0时,模型会倾向于选择概率最高的那个词,导致生成的文本可能流于老套;而当temperature值较高时,模型会给予概率较低的词更多机会,从而产生更加新颖和意想不到的结果。在实践中,temperature值通常需要根据具体任务和需求进行调整,以达到理想的平衡。

歸藏(guizang.ai)

52,216 просмотров • 2 лет назад

最近拿 StepFun 的 Step 3.7 Flash 跑了一次完整的自动编程流水线,从需求文档到能用的工具,65 分钟,中间没碰键盘。 先说模型。Step 3.7 Flash 的定位是把 Agent 工作流从头跑到尾:规划、写代码、跑测试、审代码、出错重试,看的是整条流程跑完的综合效率。原生多模态,开源可部署。Agent 循环一次要调几百次模型,快和便宜在这里不是锦上添花,是能不能跑得起的问题。 再说项目。hero-coding 是我用 Go 写的一个自动编程流水线:输入一份 Markdown 需求文档,四个 Agent 执行——Planner 把需求拆成带依赖关系的小任务,Worker 在独立的 git worktree 里写代码提交,Verifier 跑测试出硬证据,Reviewer 审 diff,通过就合入主干,不过就打回重做。四个角色全部由 Step 3.7 Flash 驱动,区别只是 system prompt 和工具权限。 这次给它的需求:做一个 Agent 运行日志分析工具,读日志文件,统计每个 Agent 的调用次数、成功率、平均耗时、token 消耗,找出最慢和最不稳定的 Agent。 实际跑下来: · Planner 把需求拆成 6 个任务,自动排好依赖顺序 · 6 个任务全部自动交付,逐个合入主干 · 期间 Reviewer 打回 5 次——有测试全绿但被审出正确性问题的,有只改测试期望值想糊弄过去被拒收的,全部在重试轮次内自动修复 · 不是一个模型在自言自语,是多个 Agent 在互相检查,而且检查真的拦住了东西 · 最终产出的 CLI 直接能用,视频结尾是它分析真实日志的输出 视频是完整过程的运行日志。 国内: 海外: StepFun

劳伦斯

52,280 просмотров • 3 месяцев назад

在硅谷科技圈社交的觥筹交错之中,小龙虾之父🦞 Peter Steinberger 🦞 打开自己的电脑,分享了他和 Agent 一起工作的几个流程。 开篇他就提到: 去年,我受限于 token。 我通过加入 OpenAI 解决了这个问题。 后来,我受限于 CPU。 现在我感觉,真正限制我的其实是注意力。 他点出了我们与 AI 协作方式中正在发生的一个重要转变。 大多数人以为自己在使用 AI。 但实际上,他们还在做那些未来应该由 agent 接手的协调工作。 我把它整理成一个 7 层阶梯。看看你现在在哪一层。 第 1 层:聊天 你提问,它回答。其他事情还是你自己做。 第 2 层:上下文 你把背景信息贴进去,它的回答变好了。但你仍然要决定什么上下文重要,以及什么时候提供。 第 3 层:记忆 它开始记住你。你不用反复解释那么多。但你仍然在管理每一次会话。 第 4 层:工具 它可以搜索、读文件、运行代码。但你仍然要决定什么时候调用工具、为了什么调用工具,以及如何检查每一个结果。 第 5 层:技能skill 你已经给了它一些工作流程和 playbook。它知道你的工作方式,而不只是你问了什么。但它仍然是被动的,还在等你启动。 第 6 层:后台工作 它可以在你不盯着看的情况下运行,异步执行。你审核的是输出,而不是过程。 现在大多数关于 “agentic” 的炒作,其实都集中在这一层,而且大多数团队还没有真正达到。 第 7 层:目标 你定义结果、约束和品味。agent 负责跑完整个循环。你不再管理任务,而是管理方向。 每往上一层,你做的任务管理就更少,承担的结果 ownership 就更多。 这不只是工具能力的变化,而是你和工具、你和自己时间之间关系的根本变化。 大多数人还停留在第 2 层或第 3 层,却把这叫作“使用 AI”。 大多数团队还停留在第 4 层或第 5 层,却把这叫作“AI-powered”。 真正的突破,是建立一种更好的 delegation contract,把人从执行者释放出来,变成方向的定义者。 那么:你现在在哪一层呢?

Michael Guo

17,812 просмотров • 2 месяцев назад

微软2023年Build大会演讲:如何训练和应用GPT(中英文字幕) 这是本次微软2023年Build大会来自OpenAI的AI 研究员和创始成员Andrej Karpathy的一个主题为State of GPT的演讲。 演讲主要有两部分内容: 1. OpenAI是如何训练GPT的 2. 我们如何有效应用GPT 都是非常有价值的分享。 首先对于如何训练GPT,通常来说是四个阶段预训练(Pretraining),有监督的微调(Supervised Finetuning),奖励建模(Reward Modeling)和强化学习(Reinforcement Learning),这几个阶段通常是依次进行,每个阶段都有不同的数据集。 预训练(Pretraining): 这个阶段的目标是让模型学习一种语言模型,用于预测文本序列中的下一个单词。训练数据通常是互联网上的大量文本。模型从这些文本中学习词汇、语法、事实以及某种程度的推理能力。这个阶段结束后,模型可以生成一些有意义且语法正确的文本,但可能无法理解具体任务的需求。 有监督的微调(Supervised Finetuning): 在预训练后,模型会进入微调阶段。在这个阶段,人类评估员将参与并给出指导,他们会给模型提供对话样本,样本中包含了输入和期望的输出。这使得模型能更好地适应特定任务或应用,例如回答问题或编写文章。 奖励建模(Reward Modeling): 评估员将对模型生成的不同输出进行排名,以表示它们的质量。这个排名将被用作奖励函数,指导模型优化其生成的输出。 强化学习(Reinforcement Learning): 强化学习阶段是一个迭代的过程,模型会试图优化其行为以获得最大的奖励。在这个阶段,模型会产生新的输出,评估员会对这些输出进行排名,然后模型根据这个反馈调整其行为。 然后是如何有效应用GPT 在演讲中Andrej举了一个非常好的例子:人类和大语言模型(LLM)都是如何写作的?从这个例子中你能明显感觉到人类和GPT之间的差异。 假设你要写一篇文章去比较加利福尼亚州和阿拉斯加州的人口,你的写作的过程中可能是像这样的: - 我需要写一篇文章去比较加利福尼亚州和阿拉斯加州的人口 - 我需要去获取两个州的人口数据 - 我不知道这两个周的人口数据 - 去维基百科找到加利福尼亚州的人口是39.2M - 去维基百科找到阿拉斯加州的人口是0.74M - 现在我需要计算一下两个州人口数相差多少倍,但是可能需要计算机帮忙 - 用计算器算出来39.2除以0.74约等于53 - 快速的检查一下53倍这个数字是不是符合常识,嗯,这是一个相当大的比值,但加利福尼亚州毕竟是人口最多的州,所以这个结果或许是合理的,可以继续 - 好了,我现在有了我需要的所有信息 - 写下:“加利福尼亚州的人口比53倍的……” - 觉得好像不太好,删除重写成:“加利福尼亚州的人口是阿拉斯加州的53倍。” - 嗯,觉得还不错 也就是说,当人类写作时,哪怕是这样一个简单的句子,可能内心实际上进行了大量的运算的。 但当我们用GPT进行写作这样的句子看起来会是什么样呢? 从GPT的角度看,这只是一系列的标记(Tokens)。当GPT在接收到一个输入,比如你给出的主题。它会生成一段与输入相关的文本,GPT的目标是预测下一个词,所以它会连续生成一串词,形成一段连贯的文本。 从本质上看,Transformer只是标记模拟器,它不知道自己知道什么不知道什么,它不知道自己擅长什么或不擅长什么,它只是尽力生成下一个标记,它也不会进行反思,也不会不进行任何合理性检查。它不会纠正自己的错误,它只是产生抽样的标记序列,它没有像人类那样的内心独白流。 但是,GPT有一些优势,如它们拥有大量的基于事实的知识,并且拥有相对大的并且完美的工作记忆。GPT通过自我注意力机制,能立即获取到上下文窗口中的信息,从而进行无损记忆。然而,GPT在推理和判断方面的能力相对较弱,如果提出的问题需要更复杂的推理,单凭一个标记的信息,GPT往往无法给出正确的答案。 一些技巧可以提升GPT的表现,比如Cot(Chain of Though)设定步骤来引导GPT展示其工作过程,或者通过多次抽样然后选择最佳结果等,或者可以让GPT检查自己的输出,比如询问它是否完成了任务,最好是在Prompt中明确的要求它检查自己的输出。 后面还介绍了目前比较流行的GPT应用,比如Agent、Plugin、CoT、Embedding等 最后他用GPT-4写了一个结尾: “女士们,先生们,2023年Microsoft Build的创新者和先驱者们,欢迎来到这个独一无二的卓越人才的集结地。你们是未来的架构师,是塑造数字领域的视野家,在那里人类繁荣发展。拥抱科技的无限可能,让你的想法飞得和你的想象力一样高。让我们一起创造一个更连通,更出色,更包容的世界,为未来的世代留下。准备好释放你的创造力,探索未知,把梦想变成现实。你的旅程今天开始。” 原始视频地址: YouTube地址:

宝玉

299,583 просмотров • 3 лет назад

这绝对是学生党必备的GitHub开源仓库,能一站式帮你搞定搜文献、数据分析等写论文中最麻烦的步骤,而且完全免费! 学生党最头疼的就是写论文和做课题研究,查文献、跑代码,一搞就是两三天,特别是有些关键数据还需要付费才可以获取 而最近我在GitHub上发现了一个免费的AI科研项目,叫ScienceBuddy (PhAI Labs),专为学生和科研人员打造。你只需要在平台上上传论文和相关数据文件,并精准表达需求,ScienceBuddy就能调用Agent去专业数据库中检索文献、收集数据并运行分析代码。整个分析过程全部清晰可见,方便你随时核对 视频中,我选择了相对复杂的医学研究场景对该项目进行了简单测试,想看看它处理多篇专业论文以及梳理研究证据的能力如何。在我上传相关论文后,ScienceBuddy不仅判断了选题是否可行,还将研究方法、结论和局限整理成证据表,并总结研究共识与争议,最后生成论文提纲和摘要草稿。全程运行速度非常快,相当于直接快速完成了文献综述的前期准备 同时在此基础上,ScienceBuddy还帮我继续深入搜索其他文献,并完整生成了一篇3000字左右的论文综述,结果清晰而且写作格式十分专业,个人感觉完全可以直接用于正式论文里了。整体体验下来,我认为对学生来说该工具是非常必要的,能节省非常多的时间 另外,ScienceBuddy背后的团队也开源了ScienceIDE,其是 ScienceBuddy 的底层框架技术,现能让Agent在7个领域的真实科研代码中练习,并通过结果能否复现来验证修改是否有效,大家感兴趣也可以看看!!! 目前项目的 ScienceBuddy 相关实验代码已经在GitHub上开源,感兴趣的同学可以去官网免费体验。不过考虑到当前仍是Preview版本,分析结果请自行核验后再用于正式研究 官网地址: GitHub仓库地址:

Sac

41,847 просмотров • 6 дней назад