Replit 如何为代码修复构建 LLM
Replit 正在训练原生代码修复 LLM,用 LSP 诊断数据生成修复 diff。其数据来自用户会话中的 OT 编辑历史和 LSP 诊断,Python 项目中仅 10% 的 LSP 诊断消息自带修复方案,因此用 LLM 合成并验证 diff,目标数据集 10 万条,管线基于 Databricks 上的 PySpark,可再扩展一个数量级。
Replit 正在训练原生代码修复 LLM,用 LSP 诊断数据生成修复 diff。其数据来自用户会话中的 OT 编辑历史和 LSP 诊断,Python 项目中仅 10% 的 LSP 诊断消息自带修复方案,因此用 LLM 合成并验证 diff,目标数据集 10 万条,管线基于 Databricks 上的 PySpark,可再扩展一个数量级。
Weights & Biases 基于 llama-index、FAISS 向量库、Cohere embeddings 和 OpenAI GPT-4 构建了 RAG 问答机器人 WandBot,并托管在 Replit 上,可接入 Discord、Slack、Zendesk 和 ChatGPT GPTs。
Hugging Face 团队用自家 GitHub 组织的公开仓库代码微调 StarCoder,做出名为 HugCoder 的个人代码助手,并公开了完整流程。数据采集上他们克隆全部公开仓库本地提取内容,只保留代码文件并排除 .git、__pycache__ 等路径,最终数据集发布在 Hub 上。
推荐理由:完整给出从数据采集到 QLoRA 微调、VS Code 接入和本地部署的流程与成本对比,可照着复现。
独立开发者 @n-raidenai 在 Replit 上发布开源生成式 UI 组件框架 openv0,可通过描述界面自动生成 Tailwind 驱动的 UI 代码,支持 Next.js、React、Svelte 及 NextUI、Flowbite、Shadcn、Lucide。
Mistral AI 发布首个 7B 参数模型 Mistral 7B,采用 Apache 2.0 许可,官方称其在所有标准英文与代码基准上超过现有 13B 参数以内的开源模型。该模型可用于摘要、结构化与问答等任务,处理与生成文本速度更快、成本更低。Mistral AI 同时开放 GitHub 仓库和 Discord 频道,并表示后续将发布更大模型及面向企业的本地部署方案。
推荐理由:Mistral AI 官方发布首个 7B 开源模型并说明开放权重路线,可了解其与闭源模型的定位差异。
Hugging Face 对 Llama 2 在 Amazon SageMaker 上的 60 种部署配置做了基准测试,覆盖 7B、13B、70B 三种模型规模、1/5/10/20 并发请求,以及 g5.2xlarge、g5.12xlarge、g5.48xlarge 和 p4d.24xlarge 四种实例。
Hugging Face 发布的企业级代码助手 SafeCoder 基于 155 亿参数的 StarCoder 开源模型,支持 80 多种编程语言和 8192 token 上下文窗口,可微调适配企业自身代码规范,并以 Docker 容器形式本地或云端部署,数据完全由企业掌控。
Replicate 发布教程,介绍如何用一行代码在云端运行 Meta AI 的 Llama 2,支持官方 JavaScript、Python 客户端以及 cURL 直接调用 HTTP API。
推荐理由:Replicate 官方给出用一行代码在云端调用 Llama 2 的方式,并对比四个模型变体的取舍。
Supabase 向 OpenAI 仓库贡献了 Postgres 和 Supabase 两种向量存储实现,让 ChatGPT 检索插件可以直接用 pgvector 存取私有数据。
推荐理由:Supabase 为 ChatGPT 检索插件贡献了 Postgres 与 Supabase 两种向量存储实现,并给出从建库到接入的完整步骤。
Hugging Face 发布教程,介绍如何把 16B 参数的 StarCoder 微调成对话式编程助手 StarChat,并公开代码、数据集与模型。流程包括用 ChatML 特殊 token 组织对话、屏蔽用户轮次的标签,再用 DeepSpeed ZeRO-3 在 8 张 A100 80GB 上训练约 45 分钟。
推荐理由:Hugging Face 公开了把 StarCoder 微调成对话式编程助手的完整流程,含数据格式与训练配置。
BigCode 发布代码大模型 StarCoder 与 StarCoderBase,基于 GitHub 上 80 多种编程语言的宽松许可数据训练,约 15B 参数、1 万亿 token,上下文长度超过 8,000 token。
推荐理由:BigCode 公开 StarCoder 的模型权重、训练数据与评测结果,可对照其与 Codex 等模型的基准差距。
Replicate 发布 AutoCog,用 GPT-4 为机器学习仓库自动生成 cog.yaml 和 predict.py,并运行 cog predict 命令,失败时自动诊断修复,最多重试五次。AutoCog 可从 PyPI 安装,支持 --continue 参数在人工介入后继续。由于 GPT-4 仅接受 8096 tokens,AutoCog 会按重要性排序并截断仓库文件。
Supabase 发布文档问答功能 Supabase Clippy,在 supabase.com/docs 按 cmd + / 即可调出搜索框提问,目前是隐藏的 MVP 功能。
Replicate 宣布支持在云端用一次 API 调用训练 LoRA 模型,用于微调 Stable Diffusion。LoRA 由微软研究人员提出,Simo Ryu 将其应用到 Stable Diffusion;相比 DreamBooth 约二十分钟的训练和数 GB 的产物,LoRA 训练最快约八分钟,产物约 5MB,且推理无需冷启动。
推荐理由:Replicate 上线 LoRA 训练与推理接口,并对比 DreamBooth 的训练时长和产物体积,便于开发者判断迁移成本。
Replit 认为编程正从「社交编程 + 云 + 专业化」的第三时代迈入 ML 驱动的结对编程第四时代,并称 Replit 是训练代码模型数据最丰富的平台,掌握实时键击与点击流、执行与性能数据、字符级文件改动。
Replicate 发布指南,介绍如何在 M1 或 M2 芯片的 Mac 上本地运行 Stable Diffusion,需 macOS 12.3 以上、16GB 内存(8GB 可用但极慢)和 Python 3.10。该方案改用 pip 而非 Conda 安装依赖,通过二进制 wheel 免编译,并需从 Hugging Face 下载约 4GB 的 sd-v1-4.ckpt 权重。
OpenAI 的 GPT-3 为 Replit 撰写了一篇客座博客,称基于 repl 的可分享计算会把编程从私有代码转向公开网络,让代码像网页一样可链接、可协作。文章认为这将终结 Apple App Store 和 Google Play 的围墙花园,使应用商店变得无关紧要,并让 DNS 与网站托管等互联网架构过时。