大模型开发(五):实现Jupyter本地调用OpenAI API

全文共3000余字,预计阅读时间约15分钟 | 满满干货,建议收藏!

在这里插入图片描述

大模型开发(五):实现Jupyter本地调用OpenAI API

OpenAI作为本轮大语言模型技术进步的先驱,其系列大型模型在效果上一直保持着领先。其推出的各类模型如文本模型、对话模型、嵌入模型、编码模型、图文模型及语音模型,构建了全面而丰富的模型生态圈。

另外,OpenAI的大语言模型能够在线进行推理和微调的模型,与那些需要在本地部署的开源模型相比,其在硬件需求、操作难度以及维护成本上都有明显优势。在许多实际开发情景中,OpenAI的在线大模型成为了首选方案。

本文先从如何实现本地调用OpneAI API流程开始!

一、 官网结构组成

OpenAI官网一定是最权威的帮助文档。给出了各类模型详细的参数解释、应用范例,而且还提供了在线调用和测试模型参数的页面。

同时由于需要根据实际调用API情况进行计费,因此查阅调用API计费规则、查阅账户余额以及及时充值,也是很有必要的!

OpenAI API官网地址

1.1 Documentation

image-20230717164853336

其中要重点关注:

对于大模型来说多轮对话的累积输入文本的最大数量是有限的,超出这个限制就会导致之前的文本被逐渐遗忘。在Documentation页面,需要清楚了解每个模型的MAX TOKENS,表示输入的最大文本限制。

image-20230717165131175

绝大多数模型的MAX TOKENS都是4096tokens,这类模型被称为4k模型,部分模型的MAX TOKENS都是16384tokens,这是一类最新更新的模型(6月13号更新的模型),且尾缀带有16k标志。

一个大概估算的规则是:4K个tokens约等于8000个单词,约4-5页PDF。

1.2 API reference

这个页面中详细讲解了各模型API的参数解释,是开发人员必不可少的说明手册

image-20230717165528130

1.3 Playground

Playground页面相当于是网页端的大模型调用应用,可以在这里直接选择不同类型模型、选择不同的参数、输入不同的提示测试模型输出结果,并且这个页面还可以查看网页端操作对应的代码,整体操作流程非常便捷,也非常适合初学者进行零代码的大模型功能测试。

image-20230717165719091

1.4 计费规则

OpenAI的在线大模型是通过个人API-Key在线验证的方式向OpenAI线上模型提交计算申请,并实时获取返回结果。因此,在实际调用OpenAI在线大模型会根据调用的不同模型、调用次数及输入输出文本数量进行计费,因此在使用时需要时刻关注费用支出情况。具体计费规则可以在Pricing页面查看

image-20230717170509137

image-20230717170258106

其中4K Model就表示MAX TOKENS=4096 tokens的模型,而16K模型则表示MAX TOKENS=16384 tokens的模型。

16K模型的费用是4K模型费用的两倍,其实也是因为16K模型需要有相比4K模型更大的“隐藏空间”容量,模型更加复杂,调用所需费用也更高。因此建议若非进行超大规模的多轮对话,应当尽量选择4K模型。

1.5 调用限制

在实际调用API的过程中,出于对计算资源的保护,OpenAI还限制了各模型API的每分钟请求最大次数(RPM:requests-per-minute)和每分钟Token通信量最大值(TPM:tokens-per-minute),这些限制可以在个人中心的Rate limits页面中进行查看

image-20230717170646665

如果希望放宽限制,则可以填写申请表格,向官方申请提高限制上限。

申请地址

1.6 账户余额

需要时刻关注账户余额及目前使用金额。可以在个人中心的Usage页面查看当前账户余额,以及过去一段时间的账户消费情况

image-20230717170917465

对于每个注册的新账户,系统会默认赠送5刀的使用额度,并保留4个月左右的使用期限。

如果是 商用开发的话,可以在Billing–>Usage limits页面设置每个月最大消费总金额,默认为120刀,若当月API使用金额超过该金额限制,则OpenAI会停止对该API Key调用的响应。该设置可以有效防止由于API滥用导致费用超支

image-20230717171154796

1

其中soft limit指的是当API使用支出超过某个预设金额时,会发送邮件进行提醒。

1.7 账户充值

OpenAI账户充值方法和ChatGPT升级PLUS时的充值方法类似,都是先绑定银行卡然后再进行扣费。在Billing–>Payment methods页面绑定可以用于支付的银行卡即可。OpenAI会根据每个月使用消费金额进行扣费,如果不知道如何付费的,看文末内容

2

二、在Jupyter中本地调用OpenAI API

2.1 环境配置

先配置环境变量,前一篇文章已经讲过了,看这篇文章的前三节:

在Jupyter中调用OpenAI API方法

保存重启电脑,使环境变量生效后,即可启动Jupyter测试能否在Jupyter环境下调用OpenAI大模型API。

对于国内用户,是无法直接访问OpenAI的,需要让Jupyter在代理环境下启动,即需要令Jupyter可以通过代理来访问网络。具体设置方法如下:

Step 1:启动魔法并设置全局代理模型

以我自己用的魔法举例,代理端口如下:

image-20230717172418370

大多数代理都是借助本地回环进行代理,即127.0.0.1,因此当前魔法的代理地址和端口为:127.0.0.1:15732。

Step 2: 配置Jupyter代理

让Jupyter通过代理方式访问网络,最简单的方法就是利用cmd命令行启动jupyter

image-20230717172758128

然后在命令行中启动Jupyter,并且每次启动前输入代理环境设置,即按照如下命令顺序启动Jupyter:

image-20230717172902758

如果报错:

image-20230717173008620

解决办法:

新版Anaconda安装时并不会自动添加环境变量,打开环境变量配置页面,然后点击系统变量内的Path并点击编辑:

image-20230717173511590

然后添加C:\ProgramData\anaconda3\condabin和C:\ProgramData\anaconda3\Scripts两个变量(这两个变量的地址需要是自己安装Anaconda时的安装位置)

image-20230717173636341

再次测试:

image-20230717173836594

  

2.2 调用测试

顺利启动Jupyter之后,即可测试能否顺利调用OpenAI大模型,测试代码如下:

import os
import openaiopenai.api_key = os.getenv("OPENAI_API_KEY")openai.Completion.create(model="text-davinci-003",prompt="Say this is a test",max_tokens=7,temperature=0
)

结果如下:成功

image-20230717174116898

好了,完成,快动手试一试吧!下一篇继续!

最后,感谢您阅读这篇文章!如果您觉得有所收获,别忘了点赞、收藏并关注我,这是我持续创作的动力。您有任何问题或建议,都可以在评论区留言,我会尽力回答并接受您的反馈。如果您希望了解某个特定主题,也欢迎告诉我,我会乐于创作与之相关的文章。谢谢您的支持,期待与您共同成长!

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

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

相关文章

[考研数据结构]第2章之顺序表的基本知识与操作

前言 从本篇文章开始,正式开启考研专业课之一的数据结构的复习之旅,数学与专业课并驾齐驱,早开始,后期才能游刃有余。另外博客重点分享数据结构需要动手实践的代码部分,对于概念的解释将被一笔带过或者忽略&#xff0c…

线程池 2(第二部分--循环队列)

在考虑如何去设计一个任务容器的时候,其实尝试了很多。最开始的时候直接用的是std::queue容器,主要是看了知乎上面的 “ 基于C11实现线程池 - 知乎 ”这个帖子,去封装一个安全队列。但是这个操作每次都要上一次锁,实在是太浪费时间…

ubuntu20.04 硬盘挂载、显卡驱动安装

前几天ubuntu系统莫名出问题了,修不好只能重装,在此记录安装ubuntu系统后的硬盘挂载和显卡驱动安装。 注意,本文并非教程,只是个人安装过程的记录,仅供参考 ubuntu系统:Ubuntu 20.04.6 LTS 硬件设备&…

一文带你搞清 ChatGPT 与 Azure OpenAI 的区别

这两周是我从2017年开始全职涉入 NLP 领域后最忙的两周,无数的同事和客户都在向我提出一个询问:ChatGPT 可以帮到我们什么? 特别是在2023年3月31日我做了一场微软 Azure OpenAI [布局助力企业]拥抱新智能时代的演讲之后,这几天我…

ChatGPT的真相:强泛化的秘密以及众多关键问题

进NLP群—>加入NLP交流群 本文转载自AI科技评论,作者韩庐山。 本文从ChatGPT带来的即时学习能力(in-context learning)入手,逐步深入地探讨了ChatGPT目前众多的关键性问题,包括: ChatGPT带来了从未有过的…

chatgpt赋能python:用Python向手机发送信息是如何实现的?

用Python向手机发送信息是如何实现的? 在今天的信息时代,随时随地保持联系已经成为生活不可或缺的一部分。随着技术的发展,我们可以使用各种方式发送和接收信息,而使用Python向手机发送短信是其中一种非常方便的方式。 Python的…

chatgpt赋能python:Python自动认证上网教程

Python自动认证上网教程 随着互联网的普及,越来越多的人需要通过手机、电脑等设备上网,而许多场所都要求进行认证才能使用网络。每次都手动操作认证费时费力,这时Python就可以派上用场了。Python是一种高级的编程语言,具有可读性…

双因素认证(2FA)教程

所谓认证(authentication)就是确认用户的身份,是网站登录必不可少的步骤。 密码是最常见的认证方法,但是不安全,容易泄露和冒充。 越来越多的地方,要求启用双因素认证(Two-factor authenticatio…

如何实现双因素认证?

增强数字安全的愿望引起了世界各国政府的关注,所有政府都希望保护消费者和企业。因此,许多人提出了立法,将两因素身份验证 (2FA) 作为 IT 系统的强制性要求。其实,在我国等级保护制度中等级保护第三级以上都要求完成双因素认证的&…

网络安全合规-Tisax(汽车安全评估讯息交换平台)一

**TISAX(汽车安全评估讯息交换平台(可信信息安全评估交换平台))**是2017年由德国汽车工业联合会(VDA) 联合欧洲网络交换所(ENX) 所推出的资讯交换平台,通过应用欧洲网络交换协会(ENX)和德国汽车…

从医疗保健攻击到HIPAA 合规性

医疗机构无疑是网络攻击的热门目标。攻击者因在暗网上出售一条健康记录而获取高额 佣金,在各行业网络安全报告中医疗保健行业的攻击事件占比居高不下,这有什么奇怪的吗? 根据2022 年 SonicWall 网络威胁报告,医疗保健行业&#x…

漫话:如何给女朋友解释鸿蒙OS是怎样实现跨平台的?

周末在家休息,女朋友在刷朋友圈,突然她问我: 鸿蒙OS回顾 2019年8月9日华为开发者大会上,华为消费者业务CEO余承东正式宣布发布自有操作系统鸿蒙,内核为Linux内核、鸿蒙微内核和LiteOS。未来将摆脱Linux内核和LiteOS&am…

腾讯研发动画组件,以后动画制作用PAG

你好,我是tiantian。 我们知道,动画特效可以辅助视觉制作焦点,引导注意力的方向,越来越为广大视觉设计师青睐,并广泛应用于各类场景开发。 关于动画设计工具,既有 Framer.js、Origami, 也有交互…

能直接修复代码 BUG,比 ChatGPT 还厉害

【公众号回复 “1024”,免费领取程序员赚钱实操经验】 大家好,又见面了,我是章鱼猫! 最近 ChatGPT 非常的火,而且是火出圈的那种,各个领域的人都知道。但是不得不说程序员做的工具,对程序员还是…

chatgpt赋能Python-ipv4地址python

IPv4地址 Python编程介绍 IPv4地址在互联网中扮演着非常重要的角色,英文名称为 Internet Protocol Version 4 Address。每一个连接到互联网上的设备都会被分配一个唯一的IPv4地址,它由32位二进制数以点分十进制的形式呈现出来。在Python编程中&#xff…

chatgpt赋能Python-pythonip地址是否合法

Python中如何判断IP地址是否合法 在网络中,IP地址是非常重要的概念。它用来标识网络中每个设备的唯一地址。IP地址通常分为IPv4和IPv6两种类型。在Python中,有多种方法可以判断IP地址是否合法。在本文中,我们将介绍如何使用Python编程语言来…

可喜可贺,暴雪即将收购第一家工作室Proletariat,魔法吃鸡停运

暴雪娱乐在超过15年的时间里收购了第一家工作室。在VentureBeat的一份报告中,该公司收购了总部位于波士顿的工作室Proletariat。 “经过四年多的元素魔法和咒语组合,我们决定结束Spellbreak的研发,”该公司在其网站上写道。“这些服务器将于2…

修改战网昵称服务器错误,暴雪又改了游戏平台名字 暴雪战网回来了

暴雪一定是个纠结的处女座,距离上一次更改游戏平台名称之后,8月15日早上6点,暴雪中国又一次在微博上发表公告称“暴雪战网品牌名称更新”,名字从上一次的暴雪游戏平台改成了暴雪战网。 按暴雪的意思来看,之所以玩这么一…

暴雪战网服务器维护,炉石无法通过暴雪战网服务进行登录

有很多玩家常常遇到战网无法登陆、炉石传说无法登陆至战网服务等问题。那么下面就告诉大家这种解决办法,希望对你有帮助! 1、关闭游戏或安装程序,打开任务管理器,终止以下进程:Agent.exe,Blizzard Launcher…

【吴恩达deeplearning.ai】基于ChatGPT API打造应用系统(上)

以下内容均整理来自deeplearning.ai的同名课程 Location 课程访问地址 DLAI - Learning Platform Beta (deeplearning.ai) 一、大语言模型基础知识 本篇内容将围绕api接口的调用、token的介绍、定义角色场景 调用api接口 import os import openai import tiktoken from dote…