庆云古诗词

庆云古诗词

chatgpt 高效使用 ChatGPT使用了什么框架

互联资讯 0

淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】

chatgpt,chatgpt怎么下载,chatgpt国内能用吗,chatgpt怎么用

鞭牛士 3月24日消息,据媒体报道,OpenAI宣布推出插件功能,赋予ChatGPT使用工具、联网、运行计算的能力。例如在官方演示中,ChatGPT一旦接入数学知识引擎Wolfram Alpha,就再也不用担心数值计算不精准的问题。

并且OpenAI还开放了两个新的插件:网络浏览器和代码解释器。以前因为不联网,用户只能查询到2021年9月之前的消息,但现在不仅能直接检索到最新新闻,就连数理计算也能一并解决了。

第三方插件列表中,还包括:让ChatGPT查询世界各国语言词汇、短语意思;让ChatGPT查询航班、酒店信息,帮你规划差旅;让ChatGPT访问各大电商数据,帮你比价甚至直接下单。

后续制作插件的权限和方法,同样会向开发者开放。


ChatGPT开源平替(2)——LLaMA

开源ippbx,plato 开源,开源pxe,开源cti

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

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

首先下载模型及代码:(1)模型:

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

7Bipfs://【【微信】】Ud7pCAdkWWbzuvyKusLGTw
13Bipfs://【【微信】】cmCUu1TP7pVQbxdFMwnhpuJtxk
30Bipfs://【【微信】】8D9VjXAavNoGWemPW1pQ3AF9ZZ
65Bipfs://【【微信】】w9nKV2MpGR4KohK7WyugadAKTh

(2)代码:

运行模型:

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

# cli.py  import os,time, json,sys  import argparse  from waitress import ser【【微信】】ple  import torch  from pathlib import Path  import torch.distributed as dist  from fairscale.nn.model_parallel.initialize import initialize_model_parallel    from llama import ModelArgs, Transformer, Tokenizer, LLaMA    def setup_model_parallel() -> Tuple[int, int]:      local_rank=int(os.environ.get("【【微信】】", -1))      world_size=int(os.environ.get("【【微信】】", -1))      print(f"loca【【微信】】},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 processes      torch.manual_seed(1)      return local_rank, world_size    def 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, 【【微信】】=8, **params)      tokenizer=Tokenizer(model_path=tokenizer_path)      model_args.【【微信】】=tokenizer.n_words      torch.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 generator    if __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  -------------------\  ")      while True:          prompt=input("User: ")          if prompt=="cls":              break          print("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_【【微信】】=0 torchrun --nproc_per_node 1 cli.py --ckpt_dir $ckpt --tokenizer_path $tokenizer      """

测试结果:(1)英文交互

(2)中文交互

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

关注NLP有品,多少有些收获不是