360Zhinao2-7B:360推出自研360智脑大模型的升级版

本文涉及的产品
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_高级版,每接口累计50万次
NLP自然语言处理_基础版,每接口每天50万次
简介: 360Zhinao2-7B是360自研的AI大模型360智脑7B参数升级版,涵盖基础模型及多种上下文长度的聊天模型。该模型在语言理解与生成、聊天能力、数学逻辑推理等方面表现出色,支持多语言和多上下文长度,适用于多种商业应用场景。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

  1. 模型升级:360Zhinao2-7B是360智脑7B参数的升级版,采用全新的多阶段训练方式和更优质的数据处理策略。
  2. 功能强大:模型支持语言理解与生成、聊天能力、数学逻辑推理等多项功能,适用于多种商业场景。
  3. 技术领先:在国内外同尺寸开源模型中,360Zhinao2-7B在中文能力、IFEval指令遵循7B和复杂数学推理能力方面均排名第一。

正文(附运行示例)

360Zhinao2-7B是什么

公众号: 蚝油菜花 - 360zhinao2

360Zhinao2-7B是360自研的AI大模型360智脑7B参数升级版,涵盖基础模型及多种上下文长度的聊天模型。该模型是继360Zhinao1-7B之后的重要更新,基于采用全新的多阶段训练方式和更优质的数据处理策略,提升中英文通用能力,增强模型的数学逻辑推理能力。

在国内外同尺寸开源模型中,360Zhinao2-7B在中文能力、IFEval指令遵循7B和复杂数学推理能力方面均排名第一。模型的长文本微调能力在各个长文本benchmark上也位列第一梯队。

360Zhinao2-7B的主要功能

  • 语言理解与生成:能理解和生成中文和英文文本,适用于多种语言处理任务。
  • 聊天能力:提供强大的聊天功能,支持生成流畅、相关且准确的对话回复。
  • 多上下文长度支持:具有不同上下文长度的聊天模型,能处理从4K到360K不同长度的对话历史。
  • 数学逻辑推理:在数学问题解答和逻辑推理方面表现出色,能处理复杂的数学问题。
  • 多语言支持:除中文,模型也支持英文,能在不同语言的数据集上进行训练和推理。
  • 商业应用:支持免费商用,适用于教育、医疗、智能客服等多个商业场景。

360Zhinao2-7B的技术原理

  • 大规模预训练:采用两阶段训练方法,首先进行大规模的无差别数据训练,然后增加高质量数据的比例,进行第二阶段训练。
  • 大量数据训练:模型训练涉及10T(万亿)个token的第一阶段训练和100B(百亿)个token的第二阶段训练。
  • Transformer架构:基于Transformer架构,一种深度学习模型,广泛应用于自然语言处理任务。
  • 自注意力机制:模型使用自注意力机制处理输入序列中的每个元素,让模型能理解单词或短语之间的复杂关系。
  • 上下文建模:聊天模型支持不同长度的上下文,能根据对话历史生成回复,要求模型具备良好的上下文建模能力。
  • 优化策略:采用余弦退火等学习率调度策略,优化训练过程;采用BF16(Brain Floating Point 16)等混合精度训练技术,提高训练效率和减少内存使用。

如何运行 360Zhinao2-7B

依赖安装

  • python >= 3.8
  • pytorch >= 2.0
  • transformers >= 4.37.2
  • CUDA >= 11.4
pip install -r requirements.txt

可选安装Flash-Attention 2以提高性能和减少内存占用。

FLASH_ATTENTION_FORCE_BUILD=TRUE pip install flash-attn==2.3.6

🤗 Transformers

基础模型推理示例

from transformers import AutoTokenizer, AutoModelForCausalLM
from transformers.generation import GenerationConfig

MODEL_NAME_OR_PATH = "qihoo360/360Zhinao2-7B-Base"

tokenizer = AutoTokenizer.from_pretrained(
    MODEL_NAME_OR_PATH, 
    trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained(
    MODEL_NAME_OR_PATH,
    device_map="auto",
    trust_remote_code=True)

generation_config = GenerationConfig.from_pretrained(
    MODEL_NAME_OR_PATH,
    trust_remote_code=True)

inputs = tokenizer('中国二十四节气\n1. 立春\n2. 雨水\n3. 惊蛰\n4. 春分\n5. 清明\n', return_tensors='pt')
inputs = inputs.to(model.device)

pred = model.generate(input_ids=inputs["input_ids"], generation_config=generation_config)
print("outputs:\n", tokenizer.decode(pred.cpu()[0], skip_special_tokens=True))

聊天模型推理示例

from transformers import AutoTokenizer, AutoModelForCausalLM
from transformers.generation import GenerationConfig

MODEL_NAME_OR_PATH = "qihoo360/360Zhinao2-7B-Chat-4K"

tokenizer = AutoTokenizer.from_pretrained(
    MODEL_NAME_OR_PATH, 
    trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained(
    MODEL_NAME_OR_PATH,
    device_map="auto",
    trust_remote_code=True)

generation_config = GenerationConfig.from_pretrained(
    MODEL_NAME_OR_PATH,
    trust_remote_code=True)

messages = []
#round-1
messages.append({
   "role": "user", "content": "介绍一下刘德华"})
response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config)
messages.append({
   "role": "assistant", "content": response})
print(messages)

#round-2
messages.append({
   "role": "user", "content": "他有什么代表作?"})
response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config)
messages.append({
   "role": "assistant", "content": response})
print(messages)

🤖 ModelScope

基础模型推理示例

from modelscope import AutoModelForCausalLM, AutoTokenizer
from modelscope import GenerationConfig

MODEL_NAME_OR_PATH = "qihoo360/360Zhinao2-7B-Base"

tokenizer = AutoTokenizer.from_pretrained(
    MODEL_NAME_OR_PATH, 
    trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained(
    MODEL_NAME_OR_PATH,
    device_map="auto",
    trust_remote_code=True)

generation_config = GenerationConfig.from_pretrained(
    MODEL_NAME_OR_PATH,
    trust_remote_code=True)

inputs = tokenizer('中国二十四节气\n1. 立春\n2. 雨水\n3. 惊蛰\n4. 春分\n5. 清明\n', return_tensors='pt')
inputs = inputs.to(model.device)

pred = model.generate(input_ids=inputs["input_ids"], generation_config=generation_config)
print("outputs:\n", tokenizer.decode(pred.cpu()[0], skip_special_tokens=True))

聊天模型推理示例

from modelscope import AutoModelForCausalLM, AutoTokenizer
from modelscope import GenerationConfig

MODEL_NAME_OR_PATH = "qihoo360/360Zhinao2-7B-Chat-4K"

tokenizer = AutoTokenizer.from_pretrained(
    MODEL_NAME_OR_PATH, 
    trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained(
    MODEL_NAME_OR_PATH,
    device_map="auto",
    trust_remote_code=True)

generation_config = GenerationConfig.from_pretrained(
    MODEL_NAME_OR_PATH,
    trust_remote_code=True)

messages = []
#round-1
messages.append({
   "role": "user", "content": "介绍一下刘德华"})
response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config)
messages.append({
   "role": "assistant", "content": response})
print(messages)

#round-2
messages.append({
   "role": "user", "content": "他有什么代表作?"})
response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config)
messages.append({
   "role": "assistant", "content": response})
print(messages)

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关文章
|
10月前
|
人工智能 自然语言处理 开发者
Co-op Translator:微软推出面向开发者的开源多语言翻译工具
微软推出的开源多语言翻译工具Co-op Translator,基于Azure AI服务,能够自动化处理项目文档和图像中的文本翻译,简化技术文档的本地化流程,促进全球开发者协作。
259 25
Co-op Translator:微软推出面向开发者的开源多语言翻译工具
|
10月前
|
Web App开发 机器学习/深度学习 人工智能
Magic Copy:开源的 AI 抠图工具,在浏览器中自动识别图像进行抠图
Magic Copy 是一款开源的 AI 抠图工具,支持 Chrome 浏览器扩展。它基于 Meta 的 Segment Anything Model 技术,能够自动识别图像中的前景对象并提取出来,简化用户从图片中提取特定元素的过程,提高工作效率。
462 7
Magic Copy:开源的 AI 抠图工具,在浏览器中自动识别图像进行抠图
|
10月前
|
人工智能 测试技术 API
FlagEvalMM:智源开源的多模态模型评测框架
FlagEvalMM 是由北京智源人工智能研究院开源的多模态模型评测框架,旨在全面评估处理文本、图像、视频等多种模态的模型。该框架支持多种任务和指标,采用评测与模型推理解耦的设计,提升评测效率,便于快速适配新任务和模型。
338 11
FlagEvalMM:智源开源的多模态模型评测框架
|
10月前
|
机器学习/深度学习 人工智能
Micro LLAMA:教学版 LLAMA 3模型实现,用于学习大模型的核心原理
Micro LLAMA是一个精简的教学版LLAMA 3模型实现,旨在帮助学习者理解大型语言模型的核心原理。该项目仅约180行代码,便于理解和学习。Micro LLAMA基于LLAMA 3中最小的8B参数模型,适合对深度学习和模型架构感兴趣的研究者和学生。
230 18
Micro LLAMA:教学版 LLAMA 3模型实现,用于学习大模型的核心原理
|
12月前
|
JSON 数据处理 Go
一文教会你如何使用 iLogtail SPL 处理日志
iLogtail 作为日志、时序数据采集器,在 2.0 版本中,全面支持了 SPL 。本文对处理插件进行了梳理,介绍了如何编写 SPL 语句,从插件处理模式迁移到 2.0 版本的 SPL 处理模式,帮助用户实现更加灵活的端上数据处理。
773 135
|
10月前
|
人工智能
AnchorCrafter:中科院联合腾讯推出的AI虚拟主播带货视频制作技术
AnchorCrafter是由中科院和腾讯联合推出的一项AI虚拟主播带货视频制作技术。该技术基于扩散模型,能够自动生成高保真度的主播风格产品推广视频,通过整合人-物交互(HOI)技术,实现对物体外观和运动控制的高度还原。AnchorCrafter在物体外观保持、交互感知以及视频质量方面优于现有方法,为在线广告和消费者参与提供了新的可能性。
1430 31
AnchorCrafter:中科院联合腾讯推出的AI虚拟主播带货视频制作技术
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
GLM-Edge:智谱开源的端侧大语言和多模态系列模型
GLM-Edge是智谱开源的一系列端侧部署优化的大语言对话模型和多模态理解模型,旨在实现模型性能、实机推理效果和落地便利性之间的最佳平衡。该系列模型支持在手机、车机和PC等端侧设备上高效运行,适用于智能助手、聊天机器人、图像标注等多种应用场景。
296 7
GLM-Edge:智谱开源的端侧大语言和多模态系列模型
|
11月前
|
物联网 Swift Python
基于qwen模型实现大模型应用探索-党务知识小助手
本项目基于qwen2-7b-instruct模型,采用LoRA技术,在党务知识数据集与通用数据集上进行微调,专为党务领域问答设计,涵盖党员教育等场景。通过数据准备、模型微调、推理测试及部署应用。
451 0
|
10月前
|
人工智能 自然语言处理 JavaScript
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
Agent-E 是一个基于 AutoGen 代理框架构建的智能自动化系统,专注于浏览器内的自动化操作。它能够执行多种复杂任务,如填写表单、搜索和排序电商产品、定位网页内容等,从而提高在线效率,减少重复劳动。本文将详细介绍 Agent-E 的功能、技术原理以及如何运行该系统。
684 5
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
|
10月前
|
存储 UED
「Mac畅玩鸿蒙与硬件37」UI互动应用篇14 - 随机颜色变化器
本篇将带你实现一个随机颜色变化器应用。用户点击“随机颜色”按钮后,界面背景会随机变化为淡色系颜色,同时显示当前的颜色代码,页面还会展示一只猫咪图片作为装饰,提升趣味性。
221 36
「Mac畅玩鸿蒙与硬件37」UI互动应用篇14 - 随机颜色变化器

热门文章

最新文章