将 ChatGLM2-6B 部署成 OpenAI API 服务

将 ChatGLM2-6B 部署成 OpenAI API 服务

  • 0. 背景
  • 1. FastChat 部署使用 ChatGLM2-6B
    • 1-1. 创建虚拟环境
    • 1-2. 克隆代码
    • 1-3. 安装依赖库
    • 1-4. 使用 UI 进行推理
    • 1-5. 使用 OpenAI API 方式进行推理

0. 背景

最近一直在使用 OpenAI 的 API 做一些学习和调研。使用 OpenAI 的 API,一是会产生费用,二是要解决网络问题,三是还有各种访问限速。

所以尝试使用开源大语言模型搭建一个本地的 OpenAI 的 API 服务。

此次使用的开源技术是 FastChat。

1. FastChat 部署使用 ChatGLM2-6B

1-1. 创建虚拟环境

conda create -n fastchat python==3.10.6 -y
conda activate fastchat 

1-2. 克隆代码

git clone https://github.com/lm-sys/FastChat.git; cd FastChat
pip install --upgrade pip  # enable PEP 660 support

1-3. 安装依赖库

pip install -e .
pip install transformers_stream_generator
pip install cpm_kernels

1-4. 使用 UI 进行推理

启动 controller,

python3 -m fastchat.serve.controller

启动 model worker(s),

python3 -m fastchat.serve.model_worker --model-path THUDM/chatglm2-6b

启动 model worker(s)完成后,启动 Gradio web server,

python3 -m fastchat.serve.gradio_web_server

问它几个问题,问题和答案截图如下,

在这里插入图片描述

1-5. 使用 OpenAI API 方式进行推理

启动 controller,

python3 -m fastchat.serve.controller

启动 model worker(s),

python3 -m fastchat.serve.model_worker --model-names "gpt-3.5-turbo,text-davinci-003,text-embedding-ada-002" --model-path THUDM/chatglm2-6b

启动 RESTful API server,

python3 -m fastchat.serve.openai_api_server --host localhost --port 8000

设置 OpenAI base url,

export OPENAI_API_BASE=http://localhost:8000/v1

设置 OpenAI API key,

export OPENAI_API_KEY=EMPTY

问它几个问题,代码和答案截图如下,

import os
import openaifrom dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv()) # read local .env file
os.environ['OPENAI_API_KEY'] = 'EMPTY'
os.environ['OPENAI_API_BASE'] = 'http://localhost:8000/v1'
openai.api_key = 'none'
openai.api_base = 'http://localhost:8000/v1'
def get_completion(prompt, model="gpt-3.5-turbo"):messages = [{"role": "user", "content": prompt}]response = openai.ChatCompletion.create(model=model,messages=messages,temperature=0,)return response.choices[0].message["content"]
get_completion("你是谁?")

在这里插入图片描述

get_completion("世界上第二高的山峰是哪座")

在这里插入图片描述

get_completion("鲁迅和周树人是什么关系?")

在这里插入图片描述

(可选)如果在创建嵌入时遇到 OOM 错误,请使用环境变量设置较小的 BATCH_SIZE,

export FASTCHAT_WORKER_API_EMBEDDING_BATCH_SIZE=1

(可选)如果遇到超时错误,

export FASTCHAT_WORKER_API_TIMEOUT=1200

refer1: https://github.com/lm-sys/FastChat/blob/main/docs/langchain_integration.md

refer2:https://github.com/lm-sys/FastChat

完结!

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

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

相关文章

chatgpt赋能Python-python_downloader

优秀Python下载器的重要性 在今天的数字化世界中,下载器是一个极其重要的工具。随着互联网速度的不断提升和存储设备的容量的增加,大量的数据和文件需要及时下载到本地计算机或存储设备中。许多编程语言都提供了相应的下载库,但Python是其中…

免费使用GPT-4的N种方法

很多朋友因为各种限制无法开通#ChatGPT Plus,而申请OpenAI的GPT-4 API也要慢慢排队(我的也还没下来)。于是在这里我搜集了X个可以免费使用的方法。 注:哪有什么真正免费,只不过有人在替你付钱。因此下述的方法都有限制,也有些可能会很快失效。新方法随时更新。 方法一: …

ChatGPT 拓展资料:ChatGPT插件系统上线 卷众生入局,燃天地斗气!

ChatGPT 拓展资料:ChatGPT插件系统上线 卷众生入局,燃天地斗气! ChatGPT 插件 我们已经在 ChatGPT 中实现了对插件的初步支持。插件是专门为以安全为核心原则的语言模型设计的工具,可帮助 ChatGPT 访问最新信息、运行计算或使用第三方服务。 根据我们的迭代部署理念,我们…

ChatGPT开始联网,最后的封印解除了

省时查报告-专业、及时、全面的行研报告库 省时查方案-专业、及时、全面的营销策划方案库 【免费下载】2023年2月份热门报告合集 最新亲测国内可用ChatGPT使用教程(3分钟搞定) 文心一言、GPT3.5及GPT4应用测评对比报告 ChatGPT团队背景研究报告 ChatGPT的…

chatgpt最大的竞争对手-claude

介绍 Claude是Anthropic公司开发的AI聊天机器人,与ChatGPT类似,由OpenAI前副总裁创办。和虽然比不上GPT4,但在连续对话能力、写小说、编写代码、解释概念等方面表现出色。 Claude是Anthropic公司开发的大语言模型(LLM),主要特点…

巧用 ChatGPT,让开发者的学习和工作更轻松

引言 随着人工智能技术的快速发展和广泛应用,ChatGPT 作为一种新兴的自然语言处理模型,近期备受瞩目,引发了广泛讨论。 ChatGPT 具有多种应用场景,既可以用作聊天机器人,实现智能问答和自然语言交互,也可…

【promptulate专栏】使用ChatGPT和XMind快速构建思维导图

本文节选自笔者博客:https://www.blog.zeeland.cn/archives/ao302950h3j 💖 作者简介:大家好,我是Zeeland,全栈领域优质创作者。📝 CSDN主页:Zeeland🔥📣 我的博客&#…

ChatGPT常用的指令(prompts)系列十——职业顾问、私人教练、心理健康顾问

系列文章目录 内容翻译自:https://github.com/f/awesome-chatgpt-prompts,并加入自己的实践内容 1、 ChatGPT常用的提示语(prompts)系列一 2、 ChatGPT常用的提示语(prompts)系列二 3、 ChatGPT常用的提示语…

ChatGPT为什么能够火出圈

最近ChatGPT可以说是火遍了全世界,作为由知名人工智能研究机构OpenAI于2022年11月30日发布的一个大型语言预训练模型,他的核心在于能够理解人类的自然语言,并使用贴近人类语言风格的方式来进行回复。模型开放使用以来,在人工智能领…

ChatGPT为什么会一本正经胡说八道?我们如何改进它?| 文内附有代码

ChatGPT为什么会一本正经胡说八道?我们如何改进它?| 文内附有代码 众所周知,在OpenAI平台上的ChatGPT模型目前有两大痛点:1. 它所学习的数据资料都是截止到2021年为止的,因此无法给出2022年之后的发生的事情。2. 有些时…

干货!150个chatgpt指令大全!chatGPT输出结果的质量高低,和你使用什么样质量的输入内容有关。

干货!150个chatgpt指令大全 chatGPT输出结果的质量高低,和你使用什么样质量的输入内容有关。 在外网有大佬们已经整理出一些标准的问话模板,直接拿来使用后,效果极佳! 把已经过验证的优质问法可以直接拿来用&#xf…

我用 ChatGPT 干的 18 件事!

👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇 来自:CSDN,作者:ㄣ知冷煖★ 原文链接: https://blog.csdn.net/weixin_42475060/article/details/129399125 版权声明…

[Golang实战]如何快速接入chatgpt/openai?[引入go-gpt3][新手开箱可用]

如何快速接入chatgpt?[引入go-gpt3] 上文介绍了如何在网页使用chatgpt?V1.介绍下在golang中使用chatgpt?1.查看官网推荐的chatgpt项目2.访问go-gpt33.使用并运行在自己的项目中...(是因为例子很难理解,所以一一对应了属性做了配置)3.1安装项目3.2换上自己的代码3.3换上自己的…

用ChatGPT操控机器人,微软开启居家机器人新纪元!

编|LRS 源|新智元 ChatGPT不止会动嘴,还能帮你操控无人机! 虽然ChatGPT已经被调教为符合人类的偏好,但在各种反向操作下,还是能够逼问出一些「不道德的内容」,比如ChatGPT可以给你列一份详细的…

ChatGPT:微软人工智能Office和电邮即将登场...

PS:欢迎大家关注我的Twitter:Alphatu4 (深夜写稿不易,会有很多独家内容) 欢迎点击在看、转发~谢谢大家!🐇 *转载请扫码添加后台微信二维码,转载请注明来源,且附上本文的…

联网、多模态版ChatGPT?微软BingChat评测,New Bing竟然是个大美女?

微软开放了New Bing,大家都可以注册使用了,详细见我的文章 北方的郎:微软放大招,所有人都能用New Bing了 今天把它的功能简单评测一下,首先如果想要体验多模态,要选择更有创造力选项。 首先让它画一张小猫…

ChatGPT淘汰程序员?不可能的!看代码生成机器人如何让我更强。

AIGC让程序员失业?不存在的!聆思开发聊天助手Chaty让你更高效地开发CSK芯片代码、更自在地摸鱼! 当遇上十万火急,产品提完需求马上要怎么办? 且看Chaty如何破局 以往流程: Chaty加持: Chat…

周鸿祎称搭不上ChatGPT企业会被淘汰;马斯克会议现场解雇推特高级工程师;同时应聘十几个工作靠裁员补偿年入千万 | EA周报...

EA周报 2023年2月10日 每个星期1分钟,元宝带你喝一杯IT人的浓缩咖啡,了解天下事、掌握IT核心技术。 周报看点 1、周鸿祎谈 ChatGPT:搭不上这班车的企业会被淘汰 2、马斯克被爆当场解雇推特工程师 原因竟是人气下降 3、苏宁张康阳遭建行全球追…

uni-app 聊天对话滚动到最底部

uni-app 之 聊天室滚到最底部 请注意 !: 知识点为uni-app 与 vue 结合 这次写到聊天室,碰到一个emmmmm问题比较严重的事情,聊天嘛,咱们想实现的就无非是微信,QQ那种聊天的效果嘛,我们研究了&am…

用uniapp跨平台开发一款商用的ai绘图ai作画软件的全过程

随着科技的发展,人工智能将会是以后的主流方向,ai绘图、chatgpt高科技先后出台,都获得了火爆的发展,因此想借着势头开发一款主打ai绘图的app小程序 一、前期准备 1、选定技术框架 因为后面需要多平台发布,而尽可能减…