AI大模型开发入门:OpenAI API的Hello World

AI大模型时代下,我们也要学点大模型知识了。 前面我们简单实现了将GPT接入微信公众号: [【超详细!】Python微信公众号开发(4)- 手把手教你接入GPT],算是已经用过一点AI的知识了,浅尝辄止。 这还不够,为了不掉队(蹭热度),跟上时代的步伐,趁着现在大模型如此火爆,我们还是需要学习一下如何利用大模型来提高我们的工作效率或实现我们的需求。

Flag

立个flag,看能不能实现,欢迎大家监督!完全从0开始学,也欢迎大家一起。

  • 该系列文章,力争80%都是实战,从实战中学习。
  • 希望能涵盖到大模型的方方面面,例如:Prompt工程、Function Calling、Agent、Fine-tune、多模态等
  • 学习使用目前比较火热的框架,如LangChain等
  • 学习目前比较火热的开源项目,如MetaGPT、AutoGPT、XAgent等

开发环境

  • 一台电脑(平常的笔记本就可以)
  • Python 3.11
  • OpenAI API > 1.0

本系列代码开发过程不再需要租服务器,只是学习的话,在自己常用的本地机器就可以运行。

不会搭Python环境的,可以去扒一扒我之前的文章,有详细的教程。


今天,我们先来开个篇,经典的入门“Hello World”,让自己有个感觉。AI大模型的背景就不介绍了,网上一搜一大堆。

0. OpenAI 环境

接入OpenAI,是通过调用OpenAI API的方式。在这之前,你首先需要一个OpenAI的Key。

0.1 OpenAI Key的获取

由于众所周知的原因,OpenAI是不对国内用户正式开放的。所以如果你想使用ChatGPT或调用OpenAI的接口,要么搭梯子翻墙,要么使用国内代理。

0.1.1 原生OpenAI Key的获取

这种方式就是搭梯子翻墙,去OpenAI官方注册账号,申请Key。网上教程很多,也很详细,但是也很繁琐。尤其是注册账号需要国外的手机号、需要特定的邮箱,这两个限制就堵死了绝大多数人的路。

0.1.2 使用国内代理

做OpenAI国内代理的很多,我这里使用的是DevAGI。别问为什么,也是被别人推荐的,也没有过其它的… DevAGI用起来比较简单,它提供给你一个虚拟的API key,支持原生OpenAI的API,用起来和原生的没区别。 (1)注册DevAGI账号

  • 去[DevAGI官网]注册

(2)登录后,点击“获取key”

image.png

(3)应该能看到你的Key了,首次注册应该会赠送一定的免费次数,用多了之后可能就需要花钱了… 没办法,毕竟人家代理服务器也需要成本(自己搭梯子也要花钱,还不稳定…)。如果你有更好的方式,欢迎私信或评论告诉我,我也很想知道有没有白嫖的方式,毕竟比较穷…

image.png

1. 你的第一个OpenAI程序

有了key,让我们来真正开始自己的第一个OpenAI程序! (1)确保你已经有了Python环境可用,并在本地创建一个项目文件夹,名称最好为英文,无特殊字符。

(2)打开VSCode —> 打开刚才创建的“文件夹”

(3)在项目文件夹里,创建一个名为 .env 的文件

image.png

(4)在.env文件中输入下列信息:

  • 如果你是原生的OpenAI API Key,有科学上网的方法,则在.env文件中写:```
    OPENAI_API_KEY=“sk-xxx” # <-------- 你的原生 OpenAI API Key

    
    
  • 如果你是用我上面说的DevAGI平台的虚拟API Key,则在.env文件中写:```
    OPENAI_API_KEY=“sk-xxx” # <-------- 你的原生 OpenAI API Key
    OPENAI_BASE_URL=“https://api.fe8.cn/v1” # 注意:一个字母都不要错

    
    

.env文件的作用就是配置一些Key或URL或一些环境变量,在程序运行时通过 load_dotenv 加载。这样也避免了将一些重要的信息暴露在代码中。

(5)安装OpenAI相关库

pip install python-dotenv openai

注意我这里安装到的openai版本为1.6.1,openai的接口在<1.0和>1.0的版本中有很大变化。 在这里插入图片描述

(6)新建一个文件名为"openai_test.py",填入以下代码:

from openai import OpenAI
# 加载 .env 到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())client = OpenAI()response = client.chat.completions.create(model="gpt-3.5-turbo-1106",messages=[{"role": "user","content": "你是谁?"}],
)print(response.choices[0].message.content)

(7)运行程序,结果如下说明运行成功。

在这里插入图片描述

以上这段代码的意思就是调用OpenAI的接口,发送“你是谁?”,然后收到回复“我是一个AI助手,能为您提供帮助和回答您的问题。有什么我可以帮到您的吗?”

如果你遇到下面的错误:

image.png

说明你的原生OpenAI Key没有科学上网,无法链接OpenAI网络。或者你的DevAGI的.env文件中的虚拟Key和Base没有配置对。请仔细检查。


从今天开始,持续学习,开始搞事情。踩坑不易,欢迎关注我,围观我!

在这里插入图片描述

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

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

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

相关文章

[吃瓜教程]南瓜书第5章神经网络

1.M-P神经元 M-P神经元&#xff0c;全称为McCulloch-Pitts神经元&#xff0c;是一种数学模型&#xff0c;用于模拟生物神经元的功能。这个模型是由Warren McCulloch和Walter Pitts在1943年提出的。它是人工智能和计算神经科学领域中非常重要的早期模型。 M-P神经元接收n个输入…

[数据集][目标检测]轮椅检测数据集VOC+YOLO格式13826张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;13826 标注数量(xml文件个数)&#xff1a;13826 标注数量(txt文件个数)&#xff1a;13826 标…

java如何把list转换成map

不废话&#xff0c;直接上代码 public static void main(String[] args) {List<UserxVO> list new ArrayList<>();for (int i 0; i < 10; i) {list.add(new UserxVO("n" i, "dd" i));}Map<String, String> map list.stream().co…

类和对象-友元-成员函数做友元

成员函数做友元 #include<iostream> #include<string> using namespace std;class Building;class GoodGay { public:GoodGay();void visit(); //让visit函数可以访问Building中私有成员void visit2(); //让visit函数不可以访问Building中私有成员Building* buil…

充分发挥董事会作用,让决议落地见效

督查督办是贯彻会议决议部署、推动决策实施、促进工作落实的重要途径之一。董事会决议落实工作可以分为日常决议落实和董事会会议决策落实跟进&#xff0c;董事会的决议落实有利于加强董事会的监督作用&#xff0c;让决议战略落地生效&#xff0c;这对增强公司管理治理水平有着…

Python学习笔记28:进阶篇(十七)常见标准库使用之质量控制中的代码质量与风格第二部分

前言 本文是根据python官方教程中标准库模块的介绍&#xff0c;自己查询资料并整理&#xff0c;编写代码示例做出的学习笔记。 根据模块知识&#xff0c;一次讲解单个或者多个模块的内容。 教程链接&#xff1a;https://docs.python.org/zh-cn/3/tutorial/index.html 质量控制…

【浦语大模型开源探索】InternLM实战营第二期:技术笔记与全链路解析

本次课程链接在GitHub上&#xff1a; InternLM/Tutorial at camp2 (github.com) 第一次课程录播链接&#xff1a; 书生浦语大模型全链路开源体系_哔哩哔哩_bilibili InternLM2技术报告&#xff1a; arxiv.org/pdf/2403.17297.pdf 一、书生浦语大模型全链路开源体系笔记 Int…

TCP连接,如果server端所在机器突然掉电,client是如何以及多久感知tcp连接断开

TCP连接&#xff0c;如果server端所在机器突然掉电&#xff0c;client是如何以及多久感知tcp连接断开 文章目录 TCP连接&#xff0c;如果server端所在机器突然掉电&#xff0c;client是如何以及多久感知tcp连接断开1. 场景&#xff1a;1.1 client没有发数据给server场景1.1.1 T…

如何利用TikTok的个性化趋势提升独立站的市场竞争力?

在当今数字化时代&#xff0c;TikTok平台以其独特的算法和广泛的用户基础&#xff0c;正逐步成为独立站个性化营销的新宠。本文Nox聚星将和大家分析TikTok平台上的个性化内容趋势对消费者行为的影响&#xff0c;以及如何选择、培养TikTok达人。 一、TikTok平台上的个性化内容趋…

Maven 构建过程

Maven 配置总结 生动概括 想象你正在建造一座房子。Maven 就像你的项目经理&#xff0c;它帮你安排好所有的材料、工人和施工计划。你只需要告诉它房子的设计图&#xff08;POM 文件&#xff09;&#xff0c;它就会自动为你准备好所有的建材&#xff08;依赖&#xff09;&…

太速科技-FMC209-基于FMC的4路125MAD输入、2路1GDA输出子卡

FMC209-基于FMC的4路125MAD输入、2路1GDA输出子卡 一、板卡概述 本子卡基于FMC连接器实现4路125M采样率AD输出&#xff0c;两路1G采样率DA输出子卡&#xff0c;板卡默认由FMC连接器12V供电&#xff0c;支持外参考时钟&#xff0c;外输入时钟&#xff0c;外触发。 …

相机光学(二十五)——数字相机和模拟相机

数字摄像机是指摄像机的图像处理及信号的记录全部使用数字信号完成的摄像机。此种摄像机的最大的特征是磁带上记录的信号为数字信号&#xff0c;而非模拟信号。数字摄像机摄取的图像信号经CCD转化为电信号后&#xff0c;马上经电路进行数字化&#xff0c;以后在记录到磁带之前的…

交互未来入选“北京市通用人工智能产业创新伙伴计划”模型伙伴

在“开启数智新时代&#xff0c;共享数字新未来”的宏大主题下&#xff0c;2024全球数字经济大会于近日盛大开幕&#xff0c;汇聚全球智慧&#xff0c;共谋数字经济新篇章。大会首日&#xff0c;备受瞩目的人工智能专题论坛率先拉开帷幕&#xff0c;以“应用即未来——大模型赋…

视频太大发不出去怎么处理,视频太大发不了邮件怎么办

在数字化时代&#xff0c;视频已成为我们分享生活、传递信息的重要方式。然而&#xff0c;当遇到视频文件过大&#xff0c;无法发送或分享时&#xff0c;你是否感到困扰&#xff1f;别担心&#xff0c;本文将为你揭秘轻松解决视频太大发不了的问题。 电脑频编辑器可以用于简单的…

图书借阅小程序论文(设计)开题报告

一、课题的背景和意义 近些年来&#xff0c;随着移动互联网巅峰时期的来临&#xff0c;互联网产业逐渐趋于“小、轻、微”的方向发展&#xff0c;符合轻应用时代特点的各类技术受到了不同领域的广泛关注。在诸多产品中&#xff0c;被誉为“运行着程序的网站”之名的微信小程序…

【大数据】—量化交易实战案例(海龟交易策略)

声明&#xff1a;股市有风险&#xff0c;投资需谨慎&#xff01;本人没有系统学过金融知识&#xff0c;对股票有敬畏之心没有踏入其大门&#xff0c;今天用另外一种方法模拟炒股&#xff0c;后面的模拟的实战全部用同样的数据&#xff0c;最后比较哪种方法赚的钱多。 海龟交易…

LaTeX表格灵活设置列宽

一些基本的插入表格的操作见&#xff1a;https://blog.csdn.net/gsgbgxp/article/details/129457872 遇到问题先查阅《IShort》和刘海洋老师的《LaTeX入门》。 设置表格列宽基础操作&#xff08;不借助tabularx&#xff09; 先从一个简单表格开始 \begin{table}[!h]\centeri…

勒索病毒入门级理解

勒索病毒是泛指一切通过锁定被感染者计算机系统或文件并施以敲诈勒索的新型计算机病毒。其特点和相关信息可以归纳如下&#xff1a; 一、定义与特征 定义&#xff1a;勒索病毒是一种恶意软件&#xff0c;它通过加密用户的文件或阻止用户访问计算机操作系统&#xff0c;以此要…

分页联合查询实现方法(Java)

controller层 GetMapping("/page")Operation(summary "获得标注属性管理分页")public CommonResult<PageResult<MarkerPropertyViewVO>> getMarkerPropertyPage(Valid MarkerPropertyPageReqVO pageVO) {PageResult<MarkerPropertyDO> …

软件确认测试和系统测试包括哪些测试内容?有什么区别?

一、软件确认测试 软件确认测试&#xff0c;顾名思义&#xff0c;是为了确认软件的正确性和完整性而进行的测试过程。它旨在验证软件是否符合用户需求和软件开发规范。测试内容包括&#xff1a; 1、功能确认&#xff1a;通过对软件各项功能进行测试&#xff0c;验证其是否按照…