Index-1.9B学习资料汇总 - 哔哩哔哩开源的轻量级多语言大模型

RayRay
Index-1.9B模型对话模型评估结果开源Github开源项目

Index-1.9B模型介绍

Index-1.9B是由哔哩哔哩(B站)自主研发并开源的一个轻量级多语言大模型系列,包括以下几个版本:

  • Index-1.9B base: 基础模型,具有19亿非嵌入参数,在2.8T主要中英文语料上预训练。
  • Index-1.9B pure: 基础模型的对照版本,过滤掉了所有指令相关数据。
  • Index-1.9B chat: 基于base模型进行SFT和DPO对齐的对话模型。
  • Index-1.9B character: 在SFT和DPO基础上引入RAG,实现少样本角色扮演定制。

该模型在多个评测基准上表现优异,与同等规模模型相比处于领先地位。

Index-1.9B模型评测结果

模型下载

Index-1.9B系列模型可在以下平台下载:

使用教程

环境配置

  1. 克隆代码仓库:
git clone https://github.com/bilibili/Index-1.9B cd Index-1.9B
  1. 安装依赖:
pip install -r requirements.txt

使用Transformers加载模型

可以使用以下代码加载Index-1.9B-Chat模型进行对话:

import argparse from transformers import AutoTokenizer, pipeline parser = argparse.ArgumentParser() parser.add_argument('--model_path', default="./IndexTeam/Index-1.9B-Chat/", type=str, help="") parser.add_argument('--device', default="cpu", type=str, help="") # 也可以是"cuda"或苹果芯片的"mps" args = parser.parse_args() tokenizer = AutoTokenizer.from_pretrained(args.model_path, trust_remote_code=True) generator = pipeline("text-generation", model=args.model_path, tokenizer=tokenizer, trust_remote_code=True, device=args.device) system_message = "你是由哔哩哔哩自主研发的大语言模型,名为"Index"。你能够根据用户传入的信息,帮助用户完成指定的任务,并生成恰当的、符合要求的回复。" query = "续写 天不生我金坷垃" model_input = [] model_input.append({"role": "system", "content": system_message}) model_input.append({"role": "user", "content": query}) model_output = generator(model_input, max_new_tokens=300, top_k=5, top_p=0.8, temperature=0.3, repetition_penalty=1.1, do_sample=True) print('User:', query) print('Model:', model_output)

Web演示

依赖Gradio,安装命令:

pip install gradio==4.29.0

运行以下代码启动Web服务器:

python demo/web_demo.py --port='port' --model_path='/path/to/model/'

命令行演示

运行以下代码启动命令行演示:

python demo/cli_demo.py --model_path='/path/to/model/'

OpenAI API演示

依赖Flask,启动Flask API:

python demo/openai_demo.py --model_path='/path/to/model/'

可以通过命令行进行对话:

curl http://127.0.0.1:8010/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "messages": [ {"role": "system", "content": "你是由哔哩哔哩自主研发的大语言模型,名为"Index"。你能够根据用户传入的信息,帮助用户完成指定的任务,并生成恰当的、符合要求的回复。"}, {"role": "user", "content": "花儿为什么这么红?"} ] }'

角色扮演

Index-1.9B-Character模型支持少样本角色扮演定制。使用方法如下:

  1. 准备类似roleplay/character/三三.csv的对话语料(文件名需要与想要创建的角色名称一致)。
  2. 准备相应的角色描述。
  3. 点击生成角色完成创建。
  4. Role name字段输入想要对话的角色,输入query,点击submit开始对话。

详细用法请参考roleplay文件夹。

量化

依赖bitsandbytes,安装命令:

pip install bitsandbytes==0.43.0

可以使用以下脚本进行int4量化,以减少性能损失并进一步节省显存:

import torch import argparse from transformers import ( AutoModelForCausalLM, AutoTokenizer, TextIteratorStreamer, GenerationConfig, BitsAndBytesConfig ) parser = argparse.ArgumentParser() parser.add_argument('--model_path', default="", type=str, help="") parser.add_argument('--save_model_path', default="", type=str, help="") args = parser.parse_args() tokenizer = AutoTokenizer.from_pretrained(args.model_path, trust_remote_code=True) quantization_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_compute_dtype=torch.float16, bnb_4bit_use_double_quant=True, bnb_4bit_quant_type="nf4", llm_int8_threshold=6.0, llm_int8_has_fp16_weight=False, ) model = AutoModelForCausalLM.from_pretrained(args.model_path, device_map="auto", torch_dtype=torch.float16, quantization_config=quantization_config, trust_remote_code=True) model.save_pretrained(args.save_model_path) tokenizer.save_pretrained(args.save_model_path)

微调

请参考微调教程快速微调Index-1.9B-Chat模型,定制专属的Index模型。

扩展工作

Index-1.9B是一个功能强大的轻量级多语言模型,希望本文的资料汇总能够帮助大家更好地了解和使用这一模型。如有任何问题,欢迎在GitHub Issues中讨论。

编辑推荐精选

博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

下拉加载更多