CohereForAI更新企业级开源模型 c4ai-command-r-08-2024和c4ai-command-r-plus-08-2024

2024-09-01 08:36

本文主要是介绍CohereForAI更新企业级开源模型 c4ai-command-r-08-2024和c4ai-command-r-plus-08-2024,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

C4AI Command R 08-2024 是一个 350 亿参数高性能生成模型的研究版本。 Command R 08-2024 是一个大型语言模型,采用开放式权重,针对推理、总结和问题解答等各种用例进行了优化。 Command R 08-2024 具备多语言生成功能,曾在 23 种语言上进行过训练,并在 10 种语言上进行过评估,还具备高性能的 RAG 功能。

  • Point of Contact: Cohere For AI: cohere.for.ai
  • License: CC-BY-NC, requires also adhering to C4AI’s Acceptable Use Policy
  • Model: c4ai-command-r-08-2024
  • Model Size: 35 billion parameters
  • Context length: 128K

在这里插入图片描述

C4AI Command R+ 08-2024 是一个 1040 亿参数模型的开放权重研究版本,具有非常先进的功能,包括检索增强生成(RAG)和工具使用,可自动完成复杂的任务。 该模型生成中的工具使用可实现多步骤工具使用,从而使模型能够在多个步骤中结合多个工具来完成困难的任务。 C4AI Command R+ 08-2024 是一个多语种模型,使用 23 种语言进行训练,并用 10 种语言进行评估。 Command R+ 08-2024 针对推理、总结和问题解答等各种使用情况进行了优化。

  • Point of Contact: Cohere For AI: cohere.for.ai
  • License: CC-BY-NC, requires also adhering to C4AI’s Acceptable Use Policy
  • Model: c4ai-command-r-plus-08-2024
  • Model Size: 104 billion parameters
  • Context length: 128K

代码

# pip install 'transformers>=4.39.1'
from transformers import AutoTokenizer, AutoModelForCausalLMmodel_id = "CohereForAI/c4ai-command-r-08-2024"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)# Format message with the command-r-08-2024 chat template
messages = [{"role": "user", "content": "Hello, how are you?"}]
input_ids = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")
## <BOS_TOKEN><|START_OF_TURN_TOKEN|><|USER_TOKEN|>Hello, how are you?<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>gen_tokens = model.generate(input_ids, max_new_tokens=100, do_sample=True, temperature=0.3,
)gen_text = tokenizer.decode(gen_tokens[0])
print(gen_text)
# pip install 'transformers>=4.39.1'
from transformers import AutoTokenizer, AutoModelForCausalLMmodel_id = "CohereForAI/c4ai-command-r-plus-08-2024"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)# Format message with the command-r-plus-08-2024 chat template
messages = [{"role": "user", "content": "Hello, how are you?"}]
input_ids = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")
## <BOS_TOKEN><|START_OF_TURN_TOKEN|><|USER_TOKEN|>Hello, how are you?<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>gen_tokens = model.generate(input_ids, max_new_tokens=100, do_sample=True, temperature=0.3,)gen_text = tokenizer.decode(gen_tokens[0])
print(gen_text)

模型详细信息

输入: 模型仅输入文本。

输出: 模型仅生成文本。

模型架构: 这是一个自动回归语言模型,使用优化的转换器架构。 经过预训练后,该模型使用监督微调(SFT)和偏好训练,使模型行为与人类对有用性和安全性的偏好保持一致。 我们使用分组查询关注(GQA)来提高推理速度。

涵盖语言: 该模型已在 23 种语言(英语、法语、西班牙语、意大利语、德语、葡萄牙语、日语、韩语、阿拉伯语、简体中文、俄语、波兰语、土耳其语、越南语、荷兰语、捷克语、印尼语、乌克兰语、罗马尼亚语、希腊语、印地语、希伯来语和波斯语)上进行了训练,并在 10 种语言(英语、法语、西班牙语、意大利语、德语、葡萄牙语、日语、韩语、阿拉伯语和简体中文)上进行了评估。

接地生成和 RAG 功能:R08-2024 指挥系统经过专门培训,具备接地生成功能。 这意味着它可以根据提供的文件片段列表生成响应,并在响应中包含标明信息来源的基础跨度(引文)。 这种行为是通过监督微调和偏好微调混合使用特定的提示模板训练到模型中的。 偏离该提示模板可能会降低性能,但我们鼓励尝试。

R 08-2024 命令的底层生成行为以对话为输入(可选择用户提供的系统前言,说明任务、上下文和所需的输出风格),以及检索到的文档片段列表。 文档片段应该是片段,而不是长文档,通常每个片段大约 100-400 字。 文档片段由键值对组成。

在默认情况下,Command R 08-2024 将通过以下方式生成接地响应:首先预测哪些文档是相关的,然后预测它将引用哪些文档,最后生成答案。 最后,它会在答案中插入接地跨度。 请看下面的示例。 这就是所谓的精确接地生成。

该模型在训练时还采用了其他一些答题模式,可通过更改提示来选择。 标记符号生成器支持快速引用模式,该模式将直接生成包含接地跨度的答案,而无需先将答案全文写出。 这样做会牺牲一些接地的准确性,而有利于生成更少的标记。

代码功能:Command R 08-2024 经过优化,可通过请求代码片段、代码解释或代码重写与您的代码进行交互。 对于纯粹的代码自动补全,它的性能可能不会很好。 为了获得更好的性能,我们还建议对代码生成相关指令使用低温(甚至是贪婪解码)。

这篇关于CohereForAI更新企业级开源模型 c4ai-command-r-08-2024和c4ai-command-r-plus-08-2024的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1126449

相关文章

MySQL追踪数据库表更新操作来源的全面指南

《MySQL追踪数据库表更新操作来源的全面指南》本文将以一个具体问题为例,如何监测哪个IP来源对数据库表statistics_test进行了UPDATE操作,文内探讨了多种方法,并提供了详细的代码... 目录引言1. 为什么需要监控数据库更新操作2. 方法1:启用数据库审计日志(1)mysql/mariad

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Mybatis Plus JSqlParser解析sql语句及JSqlParser安装步骤

《MybatisPlusJSqlParser解析sql语句及JSqlParser安装步骤》JSqlParser是一个用于解析SQL语句的Java库,它可以将SQL语句解析为一个Java对象树,允许... 目录【一】jsqlParser 是什么【二】JSqlParser 的安装步骤【三】使用场景【1】sql语

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

Oracle 通过 ROWID 批量更新表的方法

《Oracle通过ROWID批量更新表的方法》在Oracle数据库中,使用ROWID进行批量更新是一种高效的更新方法,因为它直接定位到物理行位置,避免了通过索引查找的开销,下面给大家介绍Orac... 目录oracle 通过 ROWID 批量更新表ROWID 基本概念性能优化建议性能UoTrFPH优化建议注

Redis中6种缓存更新策略详解

《Redis中6种缓存更新策略详解》Redis作为一款高性能的内存数据库,已经成为缓存层的首选解决方案,然而,使用缓存时最大的挑战在于保证缓存数据与底层数据源的一致性,本文将介绍Redis中6种缓存更... 目录引言策略一:Cache-Aside(旁路缓存)策略工作原理代码示例优缺点分析适用场景策略二:Re

Pandas利用主表更新子表指定列小技巧

《Pandas利用主表更新子表指定列小技巧》本文主要介绍了Pandas利用主表更新子表指定列小技巧,通过创建主表和子表的DataFrame对象,并使用映射字典进行数据关联和更新,实现了从主表到子表的同... 目录一、前言二、基本案例1. 创建主表数据2. 创建映射字典3. 创建子表数据4. 更新子表的 zb

MySQL更新某个字段拼接固定字符串的实现

《MySQL更新某个字段拼接固定字符串的实现》在MySQL中,我们经常需要对数据库中的某个字段进行更新操作,本文就来介绍一下MySQL更新某个字段拼接固定字符串的实现,感兴趣的可以了解一下... 目录1. 查看字段当前值2. 更新字段拼接固定字符串3. 验证更新结果mysql更新某个字段拼接固定字符串 -