ChatGPT开源平替(2)llama

news/2024/4/29 18:38:03/文章来源:https://blog.csdn.net/qq_32223859/article/details/129824722

        最近,FacebookResearch 开源了他们最新的大语言模型 LLaMA,训练使用多达14,000 tokens 语料,包含不同大小参数量的模型 7B、13B 、30B、 65B,研究者可以根据自身算力配置进行选择。

        经过测试,(1)在算力要求上,7B的模型,需要19G显存要求,单卡3090可部署。(2)在生成效果上,额...,还行吧。

首先下载模型及代码:

    (1)模型:

        项目里是要求提交申请,然后Facebook官方发送模型下载链接,通过链接下载完整模型文件,才能运行项目,实测在huggingface上去下载拆分后的模型是不能运行的项目的。由于一直没有收到官方邮件提供的下载地址,我在网上找到了各大版本的模型文件下载链接:

7Bipfs://QmbvdJ7KgvZiyaqHw5QtQxRtUd7pCAdkWWbzuvyKusLGTw
13Bipfs://QmPCfCEERStStjg4kfj3cmCUu1TP7pVQbxdFMwnhpuJtxk
30Bipfs://QmSD8cxm4zvvnD35KKFu8D9VjXAavNoGWemPW1pQ3AF9ZZ
65Bipfs://QmdWH379NQu8XoesA8AFw9nKV2MpGR4KohK7WyugadAKTh

    (2)代码:

        https://github.com/facebookresearch/llama

运行模型:

        由于官方给的例子是写死的,不是一问一答交互形式,我将其改了一下:

# cli.py
import os,time, json,sys
import argparse
from waitress import serve
from typing import Tuple
import torch
from pathlib import Path
import torch.distributed as dist
from fairscale.nn.model_parallel.initialize import initialize_model_parallelfrom llama import ModelArgs, Transformer, Tokenizer, LLaMAdef setup_model_parallel() -> Tuple[int, int]:local_rank = int(os.environ.get("LOCAL_RANK", -1))world_size = int(os.environ.get("WORLD_SIZE", -1))print(f"local:{local_rank},world:{world_size}")dist.init_process_group("nccl")initialize_model_parallel(world_size)torch.cuda.set_device(local_rank)# seed must be the same in all processestorch.manual_seed(1)return local_rank, world_sizedef load(ckpt_dir: str, tokenizer_path: str, local_rank: int, world_size: int) -> LLaMA:start_time = time.time()checkpoints = sorted(Path(ckpt_dir).glob("*.pth"))assert (world_size == len(checkpoints)), f"Loading a checkpoint for MP={len(checkpoints)} but world size is {world_size}"ckpt_path = checkpoints[local_rank]print("Loading")checkpoint = torch.load(ckpt_path, map_location="cpu")with open(Path(ckpt_dir) / "params.json", "r") as f:params = json.loads(f.read())model_args: ModelArgs = ModelArgs(max_seq_len=1024, max_batch_size=8, **params)tokenizer = Tokenizer(model_path=tokenizer_path)model_args.vocab_size = tokenizer.n_wordstorch.set_default_tensor_type(torch.cuda.HalfTensor)model = Transformer(model_args)torch.set_default_tensor_type(torch.FloatTensor)model.load_state_dict(checkpoint, strict=False)generator = LLaMA(model, tokenizer)print(f"Loaded in {time.time() - start_time:.2f} seconds")return generatorif __name__ == "__main__":parser = argparse.ArgumentParser()parser.add_argument("--ckpt_dir")parser.add_argument("--tokenizer_path", type=str)args = parser.parse_args()local_rank, world_size = setup_model_parallel()generator = load(args.ckpt_dir, args.tokenizer_path, local_rank, world_size)print("------------------ Welcome to the llama model  -------------------\n")while True:prompt = input("User: ")if prompt =="cls":breakprint("LLAMA: ", end="")input_text = [prompt]# max_gen_len= input["max_gen_len"]results = generator.generate(input_text, max_gen_len=512, temperature=0.8, top_p=0.95)[0]print(results)"""启动服务:CUDA_VISIBLE_DEVICES=0 torchrun --nproc_per_node 1 cli.py --ckpt_dir $ckpt --tokenizer_path $tokenizer"""

测试结果:

(1)英文交互

b319c2e81d4540ccb5e601bb4e9d1bfb.png

(2)中文交互    

9e16dc6283a561c1db270ef2b8e234e4.png

        明显发现,llama中文交互效果较差,并且在英文生成回复上也没有chatgpt流畅圆滑,可能是由于Facebook为了抢风头,在数据质量和数据范围方面没有做太多工作,或者是因为这只是llama的demo版本,Facebook正在憋大招吧。

        请关注公众号:NLP有品,定期分享NLP干货。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_22.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「ChatGPT」爆火背后的大语言模型到底是什么?

点击上方关注 “终端研发部”设为“星标”,和你一起掌握更多数据库知识本文首发于我的知乎,终端研发部!链接:https://www.zhihu.com/question/585248111/answer/2903130554说起chatGPT,我们都知道非常的火爆&#xff0…

建议收藏:超详细ChatGPT(GPT 4.0)论文润色指南+最全提示词/咒语

在这篇文章中,我将分享如何利用ChatGPT 4.0辅助论文写作的技巧,并根据网上的资料和最新的研究补充更多好用的咒语技巧。 本篇文章持续更新,祝大家写作顺利,如果对你有帮助,记得三连! 欢迎大家在评论区补充…

ChatGPT兴起,这20种职业将迎来失业潮

OpenAI新近推出的ChatGPT已经爆火出圈,它的回答之智能之流畅让众人惊艳。据媒体报道,ChatGPT还通过了美国部分高校的法律、医学考试,并顺利通过了谷歌软件工程师入职测试,岗位年薪18万美元。当全球科技圈被 ChatGPT牵动&#xff0…

使用 ChatGPT 启发游戏创意|基于 AI 5 天创建一个农场游戏,第 2 天

欢迎使用 AI 进行游戏开发! 在本系列中,我们将使用各种 AI 工具,在 5 天内创建一个功能完备的农场游戏。到本系列结束时,你将了解到如何将多种 AI 工具整合到游戏开发流程中。本系列文章将向你展示如何将 AI 工具用于:美术风格游戏…

ChatGPT与Discord无缝接入指南,创建自己的聊天机器人(保姆级教程)

ChatGPT和Discord都非常流行,而在Discord内使用AI绘画也很受欢迎。如何将ChatGPT与Discord对接,在Discord内实现一个聊天机器人。 第一步:获取OpenAI API密钥。请按照以下步骤操作: 打开此链接 https://platform.openai.com/acco…

基础入门-ChatGPT结合安全融入技术高效赋能拓展需求

文章目录Chatgpt科普利用:安全开发逆向免杀代码审计蓝队应急APT社工学其他相关:Chatgpt科普 ChatGPT是什么? ChatGPT–可能很多人被这个缩写的名字搞糊涂了,第一眼无法看出到底什么意思,GPT 的英文原文是 Generative Pre-trainin…

基于Docker如何快速部署自己的ChatGPT

背景 随着OpenAI在2022年底发布的LLM模型-ChatGPT展现出的强大效果,ChatGPT无疑成为了当下炙手可热的明星模型。 现有的基于GPT的开源项目已经非常多,本文以现有的高热度github开源项目chatgpt-web为例,教大家简单快速地搭建属于自己的Chat…

windows-中科院学术ChatGPT优化安装记录

搭建中科院学术专业版 ChatGPT记录 1、git仓库获取 > git clone https://github.com/binary-husky/chatgpt_academic.git(在git bash 中打开输入就行) 打开后输入命令即可 然后你便得到了它,进入该文件夹 打开命令终端,为他配…

基于ChatGPT搭建公司内部ChatGPT服务器

一、前言 我是ChatGPT,一个由OpenAI训练的大型语言模型。我被设计用于回答各种问题并生成文本,可以处理多种自然语言任务,例如问答、摘要和翻译等。在我的学习过程中,我阅读了数百万篇文本,并使用这些文本来提高我的理…

赶上ChatGPT的车,百度文心一言和阿里通义千问上线

百度“文心一言”,地址:https://yiyan.baidu.com 阿里“通义千问”,地址:https://tongyi.aliyun.com 以下介绍来自官方: 一、“文心一言”介绍: 你好,我是文心一言 ERNIE Bot 作为一个人工…

ChatGPT火了,将给网络安全行业带来什么影响?

一、简介 作为全新的人工智能(AI)聊天机器人,ChatGPT被认为正在“掀起新一轮AI革命”。在股市上甚至出现了“ChatGPT概念股”的当下,ChatGPT究竟对于网络安全行业会产生怎样的影响,是值得思考的一个问题。 ChatGPT由…

你的 ChatGPT Not available in your country?教你如何解决

ChatGPT Not available 文章目录ChatGPT Not available问题描述解决方法一解决方法二教程图示方法一方法二相关文章问题描述 如果你使用科学上网却发现自己的页面上显示 OpenAIs services are not available in your country.,你可能会换其他地区,但是换…

一键免费部署你的私人 ChatGPT 网站

Hello,大家好,我是程序员树先生。今天手把手教大家如何“免费”部署一个私人专属的 ChatGPT 网站,即使你不懂编程,跟着本文也可以完成搭建,非常简单。 为什么要部署私人 ChatGPT 网站 ? 国内市场上已经有…

ChatGPT国内镜像站,轻松访问

镜像站网址:https://444.chat/ ChatGPT介绍 ChatGPT,全称聊天生成型预训练变换模型(英语:Chat Generative Pre-trained Transformer),是OpenAI开发的人工智能聊天机器人程序,于2022年11月推出。…

【AIGC】Notion AI 从注册到体验:如何免费使用

欢迎关注【youcans的AGI学习笔记】原创作品,火热更新中 【AIGC】Notion AI 从注册到体验1. Notion AI 介绍1.1 Notion AI 简介1.2 Notion AI 的核心能力1.3 Notion AI 与 ChatGPT 的比较2. Notion AI 国内用户注册2.1 PC 端用户注册2.2 移动端用户注册3. Notion AI …