

- Meta AI团队最新推出的开源代码生成模型Code Llama
今天我们的主题是Meta AI团队最新推出的开源代码生成模型Code Llama。 Code Llama是一个基于Llama 2的代码生成专用语言模型,经过在大规模代码数据集上的继续预训练后,在代码生成任务上取得了领先的性能。Code Llama最大的模型规模达到340亿参数,在HumanEval和MBPP这两个编程基准测试中,其生成代码的正确率分别达到53.7%和56.2%,超过了当前公开的其他代码生成语言模型。 Code Llama提供了三种规模的模型,分别是7亿、13亿和340亿参数,以适应不同的部署需求。此外,Meta还发布了两个细化变种模型,一个是专门针对Python进行了进一步微调的Code Llama - Python,另一个是通过自然语言指令微调的Code Llama - Instruct,后者在处理自然语言提示时表现更优。 Code Llama的训练方式和模型权重都在GitHub上开源,任何人都可以免费使用。这对于代码生成领域的公开创新和安全性来说都是非常重要的。通过社区参与,可以更全面地评估模型性能,发现问题并修复漏洞。 Code Llama的推出为程序员的工作流程带来诸多便利。它可以协助编写新代码、调试bug、代码补全等任务,提高开发效率。未来如果能把Code Llama嵌入到IDE和其他开发工具中,可能会进一步提升编程的效率。 当然,像Code Llama这样强大的工具也存在一定风险,需要谨慎对待。Meta AI团队在发布前进行了大量的安全红队测试,并在随同发布的论文中详细披露了模型的局限性、已知挑战和风险缓解措施。我们希望开发者在使用Code Llama时,也要注意评估安全风险,建立透明的用户交互机制。 Code Llama的开源释出标志着代码生成领域向开放创新迈进了一大步。我们期待 voir 它带来更多有趣的downstream应用和创新成果。如果你对Code Llama感兴趣,记得去GitHub上搜寻相关资源啊!
- 首个真正意义上的多模态翻译系统 SeamlessM4T 开源
昨天,Meta AI团队发布了一项重要研究成果——首个真正意义上的多模态翻译系统SeamlessM4T。这无疑是跨语言无障碍交流迈出的一大步。 SeamlessM4T支持近100种语言进行语音或文本输入,可以翻译输出100种语言的文本和35种语言的语音。这是首个支持直接语音到语音翻译的系统。以往的翻译系统要么只能处理文本,要么需要先识别语音转化为文本,再翻译输出,中间环节增多了错误和延迟的风险。SeamlessM4T作为一个统一的多任务模型,可以同时处理语音识别、语音翻译、文本翻译等任务,翻译更准确流畅。 这主要得益于该团队在语音编码、文本编码、语音解码等多个方面的创新。SeamlessM4T的语音编码器通过学习大量多语种语音,能提取语音中的语义信息,无需额外语种识别。文本编码器基于NLLB模型,支持100种语言的编码。两个编码器协同工作,可处理不同语种的语音或文本输入。此外,该团队还开发了新的建模工具和语料库,进一步提升了模型性能。 可以说,SeamlessM4T实现了语音翻译的全面突破——语言覆盖广泛,翻译质量大幅提高,并支持灵活的多语种语音或文本输入与输出。这为跨语言群体的无障碍交流创造了更大可能。 如今,语言仍是一道重要的界限。据统计,全球约7000种语言中,谷歌翻译支持的语言还不到200种;而语音交互系统支持的语言更少。SeamlessM4T极大拓宽了语言覆盖面,为更多“少语种”用户提供了获得信息和表达自我的可能性。 当然,语音翻译领域还面临许多挑战,离完美系统还有一定差距。但SeamlessM4T的推出无疑是这个领域一个重要的进展。它为后续研究奠定了坚实基础,也向业界发出了进一步推动语音翻译发展的号召。让我们继续努力,推动语言科技为跨文化交流架起沟通的桥梁!
- Claude Instant 1.2 更新发布
今天我们要和大家分享的消息是人工智能公司 Anthropic 最近发布了他们的聊天机器人Claude Instant 的 1.2 版本更新。 Claude Instant 是 Anthropic 提供的一个更便宜和响应更快的模型,它可以处理各种任务,包括日常对话、文本分析、摘要和文件理解。据 Anthropic 介绍, 1.2 版本相比 1.1 版本在数学和编码方面有了显著提升,在 Anthropic 内部的 Codex 评估中, 1.2 版本的正确率达到 58.7%,而 1.1 版本仅为 52.8%。在 GSM8K 基准测试中,1.2 版本也取得了86.7% 的正确率,而 1.1 版本为 80.9%。 除此之外,1.2 版本在安全性方面也有了改进。根据自动红队测试评估,它在 hallucination 和脱敏方面都有了减少,防止模型被光临和利用更强大。这表明 Anthropic在最新版本中继续加强了对安全的重视。 对于需要使用克劳德实时模型进行对话项目的企业来说,这一 1.2 版本的升级带来了更好的性能和体验。开发者现在可以通过 Anthropic 的 API 直接调用 1.2 版本模型进行开发试用。如果您有兴趣与 Anthropic 合作,也可以在网站上留下您的信息。 这就是我们今天为大家准备的 Claude Instant 1.2 版本更新消息。非常感谢您的收听,下期《猿来如此》还将为您带来更多人工智能前沿动态,敬请期待。
- Meta 推出的一个新的 AI 创作工具 - AudioCraft
欢迎收听《猿来如此》。今天我们要介绍Meta最近推出的一个新的 AI 创作工具——AudioCraft。 AudioCraft 可以根据文本生成高品质的音频和音乐。它包含 MusicGen、AudioGen 和 EnCodec 三个模型。 MusicGen 通过由 Meta 版权专用和许可的音乐训练,能根据文本提示生成音乐。 AudioGen 通过公开音效训练,能根据文本提示生成各种声音效果。 EnCodec 可以提高音乐生成的品质,减少生成的杂音。Meta 也公开 AudioGen 模型和权重,让研究人员可以使用自己的数据集来训练并提高生成音频效果。 在画面衍生技术方面已经取得很大进展,但音频这个方面则相对滞后。AudioCraft 可以生成长时间稳定且高品质的音频。 它的设计相对简单,易于使用。它能用于音乐、声音和压缩编码。研究人员可以在相同的代码库上构建更好的音频生成器。 Meta 相信 AudioCraft 可以帮助音乐家和声音设计人员获得灵感。它可以很快帮助他们迭代和创作。Meta 期待发掘人们使用 AudioCraft 创造的新作品。 这就是 Meta 新推出的 AudioCraft AI 音频工具的介绍。感谢收听。
- Meta 和微软推出了新一代开源大型语言模型 Llama 2
Meta和微软推出了新一代开源大型语言模型Llama 2。Llama 2免费供研究和商业使用。微软将成为Llama 2的首选合作伙伴。开放Llama 2旨在让更广泛的科技公司、学术界和政策制定者都能参与开放创新方式开发当前的AI技术。 文章提到Meta和微软将通过支持开放方式增加全球企业对基础AI技术的访问。文章还提到Llama 2可通过AWS、Hugging Face等提供商使用。Meta还创建了一些新举措来收集对模型性能和改进的反馈。 Meta承诺负责任地开发,并提供资源帮助Llama 2的用户。
- Passkey密码管理技术
相信大家都深有体会,传统的账号密码验证模式存在太多问题,密码设置复杂或重复使用、容易被黑客破解等风险层出不穷。为了解决这一痛点,一种新的验证方式应运而生,那就是Passkey。
- Rust 1.71.0 发布!
今天我们要聊的是 Rust 编程语言的最新版本 Rust 1.71.0发布情况。
- 小明和“去中心化”
很久很久以前,在一个小村庄里住着一个叫小明的小男孩。小明是一个非常聪明和好奇的孩子,他总是对新事物充满了兴趣。 有一天,小明听说了一个神奇的技术叫做"去中心化"。他听说这个技术可以让人们更加自由和平等地进行合作和交流,于是他决定去探索一下。 https://mirror.xyz/zhanghe.eth/UvrP-WXqP2SF0VTkpQUktUUmaMZmVHkQyv5Y-R4yXJY
- Rust 程序设计 - vector 用来储存一系列的值
Vec,也被称为 vector。vector 允许我们在一个单独的数据结构中储存多个值,所有值在内存中彼此相邻排列。vector 只能储存相同类型的值。它们在拥有一系列项的场景下非常实用,例如文件中的文本行或购物车中商品的价格。 张赫的博客 (zhanghe.cool)
- Rust 程序设计 - 将模块分割进不同文件
到目前为止,本章所有的例子都在一个文件中定义多个模块。当模块变得更大时,你可能想要将它们的定义移动到单独的文件中,从而使代码更容易阅读。 张赫的博客 (zhanghe.cool)
- Rust 程序设计 - 使用 use 关键字将名称引入作用域
到目前为止,似乎我们编写的用于调用函数的路径都很冗长且重复,并不方便。例如,示例 7-7 中,无论我们选择 add_to_waitlist 函数的绝对路径还是相对路径,每次我们想要调用 add_to_waitlist 时,都必须指定 front_of_house 和 hosting。幸运的是,有一种方法可以简化这个过程。我们可以使用 use 关键字将路径一次性引入作用域,然后调用该路径中的项,就如同它们是本地项一样。 张赫的博客 (zhanghe.cool)
- Rust 程序设计 - 路径用于引用模块树中的项
来看一下 Rust 如何在模块树中找到一个项的位置,我们使用路径的方式,就像在文件系统使用路径一样。如果我们想要调用一个函数,我们需要知道它的路径。 路径有两种形式: * 绝对路径(absolute path)从 crate 根部开始,以 crate 名或者字面量 crate 开头。 * 相对路径(relative path)从当前模块开始,以 self、super 或当前模块的标识符开头。 张赫的博客 (zhanghe.cool)
- Rust 程序设计 - 定义模块来控制作用域与私有性
在本节,我们将讨论模块和其它一些关于模块系统的部分,如允许你命名项的 路径(paths);用来将路径引入作用域的 use 关键字;以及使项变为公有的 pub 关键字。我们还将讨论 as 关键字、外部包和 glob 运算符。现在,让我们把注意力放在模块上! 张赫 (zhanghe.cool)
- Rust 程序设计 - 使用包、Crate 和 模块 管理不断增长的项目
当你编写大型程序时,组织你的代码显得尤为重要,因为你想在脑海中通晓整个程序,那几乎是不可能完成的。通过对相关功能进行分组和划分不同功能的代码,你可以清楚在哪里可以找到实现了特定功能的代码,以及在哪里可以改变一个功能的工作方式。 张赫 (zhanghe.cool)
- Rust 程序设计 - if let 简单控制流
if let 语法让我们以一种不那么冗长的方式结合 if 和 let,来处理只匹配一个模式的值而忽略其他模式的情况。可以认为 if let 是 match 的一个语法糖,它当值匹配某一模式时执行代码而忽略所有其他值。 张赫 (zhanghe.cool)