360zhinao

360zhinao

支持超长上下文的开源大语言模型

360Zhinao是一系列开源大语言模型,包括基础模型和聊天模型。该项目利用3.4万亿高质量语料训练,在多项基准测试中表现优异。其聊天模型支持4K、32K和360K三种上下文长度,其中360K(约50万中文字符)为开源中文模型最长。此外,360Zhinao还发布了搜索和重排模型,在C-MTEB排行榜上表现出色。该项目持续更新,不断推进大语言模型技术发展。

360智脑大语言模型开源模型长上下文自然语言处理Github开源项目
<p align="left"> <a href="./README_CN.md">中文</a> | &nbsp英文</a>&nbsp </p> <br> <div align="center"> <h1> 360智脑 </h1> </div> <div align="center"> 🤗 <a href="https://huggingface.co/qihoo360">HuggingFace</a>&nbsp&nbsp | &nbsp&nbsp 🤖 <a href="https://www.modelscope.cn/profile/qihoo360">ModelScope</a>&nbsp&nbsp | &nbsp&nbsp 💬 <a href="./assets/WeChat.png">微信</a>&nbsp&nbsp | &nbsp&nbsp 📑 <a href="https://arxiv.org/abs/2405.13386">技术报告</a>&nbsp&nbsp </div> <br> <p align="center"> 欢迎访问360智脑官方网站<a href="https://ai.360.com"> https://ai.360.com</a>获得更多体验。 </p> <br>

简介

🎉🎉🎉 我们发布了360智脑模型系列:

  • 360智脑-7B-基础版
  • 360智脑-7B-对话-4K
  • 360智脑-7B-对话-32K
  • 360智脑-7B-对话-360K
  • 360智脑-搜索
  • 360智脑-1.8B-重排序

我们的360智脑模型具有以下显著特点:

  • 基础模型: 利用由3.4万亿个标记组成的高质量语料库(主要包含中文、英文和代码),我们在相关基准测试中达到了与其他7B模型相当的性能。
  • 对话模型: 强大的对话能力,并提供4K、32K和360K三种上下文长度。360K(约50万中文字符)是发布时(2024年4月11日)中文开源模型中最长的上下文长度。
<br>

新闻和更新

  • [2024年5月23日] 我们发布了两个模型,360智脑-搜索和360智脑-1.8B-重排序,分别在C-MTEB排行榜的检索和重排序任务中排名第一。
  • [2024年5月20日] 我们扩展了llama3并发布了llama3-8B-360智脑-360k-指令<a href="https://huggingface.co/qihoo360/llama3-8B-360Zhinao-360k-Instruct">🤗</a> 详情请见此处
  • [2024年4月12日] 我们发布了360智脑-7B v1.0,包括基础模型和三个具有4K、32K和360K上下文长度的对话模型。 技术报告在此arXiv上可查。
<br>

目录

<br>

下载链接

大小模型BF16Int4
7B360智脑-7B-基础版<a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Base/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Base">🤗</a>
7B360智脑-7B-对话-4K<a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Chat-4K/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Chat-4K">🤗</a><a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Chat-4K-Int4/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Chat-4K-Int4">🤗</a>
7B360智脑-7B-对话-32K<a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Chat-32K/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Chat-32K">🤗</a><a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Chat-32K-Int4/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Chat-32K-Int4">🤗</a>
7B360智脑-7B-对话-360K<a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Chat-360K/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Chat-360K">🤗</a><a href="https://www.modelscope.cn/models/qihoo360/360Zhinao-7B-Chat-360K-Int4/summary">🤖</a> <a href="https://huggingface.co/qihoo360/360Zhinao-7B-Chat-360K-Int4">🤗</a>
325M360智脑-搜索<a href="https://huggingface.co/qihoo360/360Zhinao-search">🤗</a>
1.8B360智脑-1.8B-重排序<a href="https://huggingface.co/qihoo360/360Zhinao-1.8B-Reranking">🤗</a>
<br>

模型评估

基础模型

我们在OpenCompass上评估了我们的模型,具体包括C-Eval、AGIEval、MMLU、CMMLU、HellaSwag、MATH、GSM8K、HumanEval、MBPP、BBH和LAMBADA。 这些基准测试对模型的自然语言理解、知识、数学、代码生成和逻辑推理等能力进行了测试。

结果如下所示,可以在OpenCompass排行榜上查看或重现。

<div style="width: 100pt">模型</div>平均分CEvalAGIEvalMMLUCMMLUHellaSwagMATHGSM8KHumanEvalMBPPBBHLAMBADA
Baichuan2-7B41.4956.334.654.757675.424.617.72441.873.3
Baichuan-7B31.9444.724.641.544.668.42.59.69.16.432.867.1
ChatGLM3-6B58.676747.462.866.576.519.26144.557.266.277.1
DeepSeek-7B39.8452449.346.873.44.218.32536.442.872.6
InternLM2-7B58.0165.750.265.566.279.619.970.641.542.464.472.1
InternLM-7B39.3353.436.95151.870.66.331.213.4143767
LLaMA-2-7B33.2732.521.846.831.8743.316.712.814.838.273.3
LLaMA-7B30.3527.320.635.626.874.32.91012.816.833.573.3
Mistral-7B-v0.147.6747.432.864.144.778.911.347.527.438.656.775
MPT-7B30.0623.521.327.525.9752.99.117.122.835.670
Qwen1.5-7B55.1273.5750.862.1571.8472.6220.3654.3653.0536.840.0170.74
Qwen-7B49.5363.445.359.762.57513.354.127.431.445.267.5
XVERSE-7B34.2761.13958.460.873.72.211.74.910.23124
Yi-6B47.87344.36473.573.16.339.915.223.644.968
360智脑-7B56.1574.1149.4967.4472.3883.0516.3853.8335.9842.443.9578.59

对话模型

4K和32K模型分别使用相同的4K SFT数据进行训练。

为了训练长上下文模型,我们采用了两阶段方法。

第一阶段:我们增加了RoPE基数并将上下文长度扩展到32K。

  • 首先,我们使用32K上下文窗口对约5B个token进行了持续预训练。
  • 然后在SFT阶段,我们使用来自各种来源的长文本数据对模型进行微调,包括高质量的人工标注的32K数据。

第二阶段:我们将上下文长度扩展到360K,使用以下数据进行训练:

  • 少量高质量的人工标注超长数据。
  • 由于标注的超长数据稀缺,我们构建了各种形式的合成数据。
    • 多文档问答:类似于Ziya-Reader,我们基于360的数据库生成多文档问答对。针对一行多文档问答数据输入构建多个问答对,形成多轮格式,显著提高了训练效率。
    • 单文档问答:类似于LLama2 Long,我们基于一行长文本输入中的不同段落构建多轮问答数据。

我们在各种长度和基准测试上评估了我们的模型。

  • 长上下文基准测试

    我们在LongBench上评估了我们的32K和360K模型,这是一个多任务双语长上下文基准。我们报告了与下游应用最相关的中文任务结果:单/多文档问答、摘要生成、少样本学习和代码补全。

    模型平均分单文档问答多文档问答摘要生成少样本学习代码补全
    GPT-3.5-Turbo-16k37.8461.228.71629.254.1
    ChatGLM2-6B-32k37.1651.637.616.227.752.7
    ChatGLM3-6B-32k44.6262.344.817.84256.2
    InternLM2-Chat-7B42.2056.6529.1517.9943.563.72
    Qwen1.5-Chat-7B36.7552.8530.0814.283254.55
    Qwen1.5-Chat-14B39.8060.3927.9914.773758.87
    360智脑-7B-Chat-32K45.1857.1848.0615.034461.64
  • 360智脑-7B-Chat-360K在"大海捞针"测试中的表现

    大海捞针测试将一小段信息放在长文本的不同位置,并查询这个信息来测试LLM的长上下文能力。 360智脑-7B-Chat-360K 在英文和中文的"大海捞针"任务中均能达到98%以上的准确率。

  • 英文版本(与大海捞针相同)

    <p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/7093f6d4-e270-4eb4-9dcb-d47e3d2373e9.png" width="600" /> <p>

    :在旧金山最好的事情就是吃一个三明治,然后在阳光明媚的日子里坐在多洛雷斯公园。

    查询:在旧金山最好做的事情是什么?

  • 中文版本

    <p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/7e1e4f48-ff16-48a7-894a-edfe399ac924.png" width="600" /> <p>

    我们参照SuperCLUE-200K基准构建了中文版本:

    干草堆:中国小说。

    :王莽是一名勤奋的店员,他每天凌晨就起床,赶在第一缕阳光照亮大地之前到达店铺,为即将开始的一天做准备。他清扫店铺,整理货架,为顾客提供方便。他对五金的种类和用途了如指掌,无论顾客需要什么,他总能准确地找到。 然而,他的老板刘秀却总是对他吹毛求疵。刘秀是个挑剔的人,他总能在王莽的工作中找出一些小错误,然后以此为由扣他的工资。他对王莽的工作要求非常严格,甚至有些过分。即使王莽做得再好,刘秀也总能找出一些小问题,让王莽感到非常沮丧。 王莽虽然对此感到不满,但他并没有放弃。他知道,只有通过自己的努力,才能获得更好的生活。他坚持每天早起,尽管他知道那天可能会再次被刘秀扣工资。他始终保持微笑,尽管他知道刘秀可能会再次对他挑剔。

    查询:王莽在谁的手下工作?

<br>

快速开始

我们提供简单的示例来说明如何在🤖ModelScope和🤗Transformers上使用360智脑-7B-Base和360智脑-7B-Chat。

依赖安装

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

可选地,我们建议安装Flash-Attention 2以提高性能并减少内存占用。

flash-attn >= 2.3.6

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/360Zhinao-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("输出:\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/360Zhinao-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 = [] #第一轮 messages.append({"role": "user", "content": "介绍一下刘德华"}) response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config) messages.append({"role": "assistant", "content": response}) print(messages) #第二轮 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/360Zhinao-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("输出:\n", tokenizer.decode(pred.cpu()[0], skip_special_tokens=True))

对话模型推理演示

from modelscope import AutoModelForCausalLM, AutoTokenizer from modelscope import GenerationConfig MODEL_NAME_OR_PATH = "qihoo360/360Zhinao-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 = [] #第一轮 messages.append({"role": "user", "content": "介绍一下刘德华"}) response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config) messages.append({"role": "assistant", "content": response}) print(messages) #第二轮 messages.append({"role": "user", "content": "他有什么代表作?"}) response = model.chat(tokenizer=tokenizer, messages=messages, generation_config=generation_config) messages.append({"role": "assistant", "content": response}) print(messages)

命令行界面演示

使用终端进行命令行交互:

python cli_demo.py
<p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/8be9fd8f-cea5-4f58-becc-7852871dfc50.gif" width="600" /> <p>

注意:对于Mac用户,暂不支持device = 'mps'

网页演示

streamlit run web_demo.py
<p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/c536b734-0326-42c5-88fd-6f43fa2b2c1c.gif" width="600" /> <p>

API演示

启动API:

python openai_api.py

然后使用以下参数发送请求:

curl 'http://localhost:8360/v1/chat/completions' \ -H 'Content-Type: application/json' \ -d '{ "max_new_tokens": 200, "do_sample": true, "top_k": 0, "top_p": 0.8, "temperature": 1.0, "repetition_penalty": 1.0, "messages": [ {"role": "system", "content": "你是一个乐于助人的助手。"}, {"role": "user", "content": "你好"} ] }'

模型推理

量化

我们提供基于AutoGPTQ的量化方案,并发布了Int4量化模型。

部署

vLLM安装

我们推荐使用 vLLM==0.3.3

如果你使用 CUDA 12.1 和 PyTorch 2.1,可以直接安装vLLM:

pip install vllm==0.3.3

否则,请参考vLLM官方的安装说明

安装完成后,执行以下步骤:

  1. vllm/zhinao.py 复制到vLLM安装目录(在python/conda环境中)的 vllm/model_executor/models 中。

  2. vllm/serving_chat.py 复制到vLLM安装目录的 vllm/entrypoints/openai 中。

  3. 然后在 vllm/model_executor/models/__init__.py 中添加一行:

    "ZhinaoForCausalLM": ("zhinao", "ZhinaoForCausalLM"),

vLLM服务启动

启动服务:

python -m vllm.entrypoints.openai.api_server \ --served-model-name 360Zhinao-7B-Chat-4K \ --model qihoo360/360Zhinao-7B-Chat-4K \ --trust-remote-code \ --tensor-parallel-size 1 \ --max-model-len 4096 \ --host 0.0.0.0 \ --port 8360

使用curl请求服务:

curl http://localhost:8360/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "360Zhinao-7B-Chat-4K", "max_tokens": 200, "top_k": -1, "top_p": 0.8, "temperature": 1.0, "presence_penalty": 0.0, "frequency_penalty": 0.0, "messages": [ {"role": "system", "content": "你是一个乐于助人的助手。"}, {"role": "user", "content": "你好"} ], "stop": [ "<eod>", "<|im_end|>", "<|im_start|>" ] }'

使用python请求服务:

from openai import OpenAI openai_api_key = "EMPTY" openai_api_base = "http://localhost:8360/v1" client = OpenAI( api_key=openai_api_key, base_url=openai_api_base, ) chat_response = client.chat.completions.create( model="360Zhinao-7B-Chat-4K", messages=[ {"role": "system", "content": "你是一个乐于助人的助手。"}, {"role": "user", "content": "你好"}, ], stop=[ "<eod>", "<|im_end|>", "<|im_start|>" ], presence_penalty=0.0, frequency_penalty=0.0 ) print("聊天响应:", chat_response)

如果需要启用重复惩罚,我们建议设置 presence_penaltyfrequency_penalty,而不是 repetition_penalty

模型微调

训练数据

训练数据: data/training_data_sample.json。这个示例数据从multiturn_chat_0.8M中采样了10,000行并转换了格式。

数据格式:

[ { "id": 1, "conversations": [ { "from": "system", "value": "你是一个乐于助人的助手。" }, { "from": "user", "value": "您好啊" }, { "from": "assistant", "value": "你好!我今天能为您做些什么?有什么问题或需要帮助吗? 我在这里为您提供服务。" } ] } ]

微调脚本

set -x HOSTFILE=hostfile DS_CONFIG=./finetune/ds_config_zero2.json # 参数 LR=5e-6 EPOCHS=3 MAX_LEN=4096 BATCH_SIZE=4 NUM_NODES=1 NUM_GPUS=8 MASTER_PORT=29500 IS_CONCAT=False # 是否连接到最大长度(MAX_LEN) DATA_PATH="./data/training_data_sample.json" MODEL_PATH="qihoo360/360Zhinao-7B-Base" OUTPUT_DIR="./outputs/" deepspeed --hostfile ${HOSTFILE} \ --master_port ${MASTER_PORT} \ --num_nodes ${NUM_NODES} \ --num_gpus ${NUM_GPUS} \ finetune.py \ --report_to "tensorboard" \ --data_path ${DATA_PATH} \ --model_name_or_path ${MODEL_PATH} \ --output_dir ${OUTPUT_DIR} \ --model_max_length ${MAX_LEN} \ --num_train_epochs ${EPOCHS} \ --per_device_train_batch_size ${BATCH_SIZE} \ --gradient_accumulation_steps 1 \ --save_strategy steps \ --save_steps 200 \ --learning_rate ${LR} \ --lr_scheduler_type cosine \ --adam_beta1 0.9 \ --adam_beta2 0.95 \ --adam_epsilon 1e-8 \ --max_grad_norm 1.0 \ --weight_decay 0.1 \ --warmup_ratio 0.01 \ --gradient_checkpointing True \ --bf16 True \ --tf32 True \ --deepspeed ${DS_CONFIG} \ --is_concat ${IS_CONCAT} \ --logging_steps 1 \ --log_on_each_node False
bash finetune/ds_finetune.sh
  • 配置 HOSTFILE 可以在单机和多机训练之间切换。
  • 配置 ds_config 可以在zero1、zero2和zero3之间切换。
  • fp16, bf16 可以配置混合精度训练。推荐使用bf16以与预训练模型保持一致。
  • is_concat 配置训练数据是否连接。

360智脑搜索模型介绍

360智脑搜索使用自研BERT模型作为基础进行多任务微调,在C-MTEB-Retrieval基准上的Retrieval任务平均得分为75.05,目前排名第一。 C-MTEB-Retrieval排行榜包含8个不同领域的[查询, 段落]相似度检索子任务,使用NDCG@10(归一化折损累积增益@10)作为评估指标。

模型T2检索MMarco检索Du检索Covid检索Cmedqa检索电商检索医疗检索视频检索平均
360智脑搜索87.1283.3287.5785.0246.7368.963.6978.0975.05
AGE_Hybrid86.8880.6589.2883.6647.2669.2865.9476.7974.97
OpenSearch-text-hybrid86.7679.9387.8584.0346.5668.7965.9275.4374.41
piccolo-large-zh-v286.1479.5489.1486.7847.5867.7564.8873.174.36
stella-large-zh-v3-1792d85.5679.1487.1382.4446.8768.6265.1873.8973.6

优化要点

  1. 数据过滤:严格防止C-MTEB-Retrieval测试数据泄露,清理测试集中所有查询和段落;
  2. 数据源增强:利用开源数据和LLM合成数据提高数据多样性;
  3. 负例挖掘:使用多种方法深度挖掘难以区分的负例以提高信息增益;
  4. 训练效率:多机多CPU + Deepspeed方法优化GPU内存利用率。

环境要求

cd Retrieval pip install -r requirements.txt

训练脚本

cd Retrieval/finetune sh train.sh

推理脚本

cd Retrieval/eval python test_model.py

C-MTEB测试脚本

cd Retrieval/eval sh eval.sh

参考

bge微调代码 C-MTEB官方测试脚本

360智脑-1.8B-重排序模型介绍

360智脑-1.8B-重排序模型以自研的360智脑_1.8B_base模型为基础。我们自研的单向生成模型360智脑_1.8B_reranking取得了70.13的平均分,目前排名总榜第一、开源模型第一,为生成模型承担判别任务开辟了新的可能。

C-MTEB-Reranking排行榜包含四个子任务,是判断不同领域用户问题和答案相似度的任务。使用MAP(平均精确度均值)作为评估指标。目前该排行榜上的开源模型主要是双向判别模型(BERT类模型)。唯一的单向生成模型(GPT类模型)是gte-Qwen1.5-7B-instruct,平均分66.38,排名第25,效果不太理想。

模型T2重排序MMarco重排序CMedQAv1CMedQAv2平均
360智脑-1.8B-重排序68.5537.2986.7587.9270.13
piccolo-large-zh-v267.1533.3990.1489.3170
Baichuan-text-embedding67.8534.388.4688.0669.67
stella-mrl-large-zh-v3.5-1792d66.4328.8589.1889.3368.45
PEG69.4333.5586.5684.0968.41
bge-reranker-base67.2835.4681.2784.167.03
bge-reranker-large67.637.1782.1484.1967.78

优化要点

通过迭代发现和解决以下技术问题,不断激发大模型在预训练阶段蕴含的世界知识,更好地弥合生成模型与判别任务之间的差距。

  1. 数据处理:模型训练未利用世界知识,即既未使用领域数据继续预训练,也未使用排行榜外的数据集进行微调。仅使用排行榜内的四个数据集,仔细迭代数据感知,针对不同数据集进行数据清洗和挖掘,确保单项任务排名能进入前三。
  2. 解决任务冲突:合并四个任务时,由于不同数据集领域分布、答案模式、训练数据量、收敛步数甚至序列长度不同,不同任务之间存在冲突。深入解决这些冲突问题是获得各项任务综合指标最优的通用模型的关键。
  3. 解决训练不稳定:与生成多个字符的生成任务不同,使用生成模型做判别任务需要模型输出连续值。因此,训练过程中存在震荡问题。深入分析和解决训练不稳定可以得到泛化性和鲁棒性更好的模型。

环境要求

cd Reranking pip install -r requirements.txt

如果您的GPU支持fp16或bf16精度,我们还建议安装flash-attention现在支持flash attention 2)以提高运行效率并减少内存使用。(flash-attention是可选的,不是运行此项目所必需的

git clone https://github.com/Dao-AILab/flash-attention cd flash-attention && pip install . # 以下安装是可选的,可能会很慢。 # pip install csrc/layer_norm # 如果flash-attn版本高于2.1.1,则无需安装以下内容。 # pip install csrc/rotary

输入格式

[ { "id": "identity_0", "conversations": [ { "from": "user", "value": "天空是什么颜色\n\n蓝色" }, { "from": "assistant", "value": "3" } ] } ]

训练脚本

cd Reranking sh finetune/finetune_ds.sh

推理脚本

cd Reranking python test_model.py

引用

如果您觉得我们的工作有帮助,欢迎引用:

@article{qwen,
  title={360智脑技术报告},
  author={360智脑团队},
  journal={arXiv preprint arXiv:2405.13386},
  year={2024}
}

许可证

本仓库的源代码遵循开源许可证Apache 2.0。

360智脑开源模型支持商业使用。如果您希望将这些模型用于商业目的或继续训练它们用于商业目的,请通过电子邮件(g-zhinao-opensource@360.cn)与我们联系申请。具体许可协议请见<<360智脑开源模型许可证>>

编辑推荐精选

AEE

AEE

AI Excel全自动制表工具

AEE 在线 AI 全自动 Excel 编辑器,提供智能录入、自动公式、数据整理、图表生成等功能,高效处理 Excel 任务,提升办公效率。支持自动高亮数据、批量计算、不规则数据录入,适用于企业、教育、金融等多场景。

UI-TARS-desktop

UI-TARS-desktop

基于 UI-TARS 视觉语言模型的桌面应用,可通过自然语言控制计算机进行多模态操作。

UI-TARS-desktop 是一款功能强大的桌面应用,基于 UI-TARS(视觉语言模型)构建。它具备自然语言控制、截图与视觉识别、精确的鼠标键盘控制等功能,支持跨平台使用(Windows/MacOS),能提供实时反馈和状态显示,且数据完全本地处理,保障隐私安全。该应用集成了多种大语言模型和搜索方式,还可进行文件系统操作。适用于需要智能交互和自动化任务的场景,如信息检索、文件管理等。其提供了详细的文档,包括快速启动、部署、贡献指南和 SDK 使用说明等,方便开发者使用和扩展。

Wan2.1

Wan2.1

开源且先进的大规模视频生成模型项目

Wan2.1 是一个开源且先进的大规模视频生成模型项目,支持文本到图像、文本到视频、图像到视频等多种生成任务。它具备丰富的配置选项,可调整分辨率、扩散步数等参数,还能对提示词进行增强。使用了多种先进技术和工具,在视频和图像生成领域具有广泛应用前景,适合研究人员和开发者使用。

爱图表

爱图表

全流程 AI 驱动的数据可视化工具,助力用户轻松创作高颜值图表

爱图表(aitubiao.com)就是AI图表,是由镝数科技推出的一款创新型智能数据可视化平台,专注于为用户提供便捷的图表生成、数据分析和报告撰写服务。爱图表是中国首个在图表场景接入DeepSeek的产品。通过接入前沿的DeepSeek系列AI模型,爱图表结合强大的数据处理能力与智能化功能,致力于帮助职场人士高效处理和表达数据,提升工作效率和报告质量。

Qwen2.5-VL

Qwen2.5-VL

一款强大的视觉语言模型,支持图像和视频输入

Qwen2.5-VL 是一款强大的视觉语言模型,支持图像和视频输入,可用于多种场景,如商品特点总结、图像文字识别等。项目提供了 OpenAI API 服务、Web UI 示例等部署方式,还包含了视觉处理工具,有助于开发者快速集成和使用,提升工作效率。

HunyuanVideo

HunyuanVideo

HunyuanVideo 是一个可基于文本生成高质量图像和视频的项目。

HunyuanVideo 是一个专注于文本到图像及视频生成的项目。它具备强大的视频生成能力,支持多种分辨率和视频长度选择,能根据用户输入的文本生成逼真的图像和视频。使用先进的技术架构和算法,可灵活调整生成参数,满足不同场景的需求,是文本生成图像视频领域的优质工具。

WebUI for Browser Use

WebUI for Browser Use

一个基于 Gradio 构建的 WebUI,支持与浏览器智能体进行便捷交互。

WebUI for Browser Use 是一个强大的项目,它集成了多种大型语言模型,支持自定义浏览器使用,具备持久化浏览器会话等功能。用户可以通过简洁友好的界面轻松控制浏览器智能体完成各类任务,无论是数据提取、网页导航还是表单填写等操作都能高效实现,有利于提高工作效率和获取信息的便捷性。该项目适合开发者、研究人员以及需要自动化浏览器操作的人群使用,在 SEO 优化方面,其关键词涵盖浏览器使用、WebUI、大型语言模型集成等,有助于提高网页在搜索引擎中的曝光度。

xiaozhi-esp32

xiaozhi-esp32

基于 ESP32 的小智 AI 开发项目,支持多种网络连接与协议,实现语音交互等功能。

xiaozhi-esp32 是一个极具创新性的基于 ESP32 的开发项目,专注于人工智能语音交互领域。项目涵盖了丰富的功能,如网络连接、OTA 升级、设备激活等,同时支持多种语言。无论是开发爱好者还是专业开发者,都能借助该项目快速搭建起高效的 AI 语音交互系统,为智能设备开发提供强大助力。

olmocr

olmocr

一个用于 OCR 的项目,支持多种模型和服务器进行 PDF 到 Markdown 的转换,并提供测试和报告功能。

olmocr 是一个专注于光学字符识别(OCR)的 Python 项目,由 Allen Institute for Artificial Intelligence 开发。它支持多种模型和服务器,如 vllm、sglang、OpenAI 等,可将 PDF 文件的页面转换为 Markdown 格式。项目还提供了测试框架和 HTML 报告生成功能,方便用户对 OCR 结果进行评估和分析。适用于科研、文档处理等领域,有助于提高工作效率和准确性。

飞书多维表格

飞书多维表格

飞书多维表格 ×DeepSeek R1 满血版

飞书多维表格联合 DeepSeek R1 模型,提供 AI 自动化解决方案,支持批量写作、数据分析、跨模态处理等功能,适用于电商、短视频、影视创作等场景,提升企业生产力与创作效率。关键词:飞书多维表格、DeepSeek R1、AI 自动化、批量处理、企业协同工具。

下拉加载更多