【AI大模型应用开发】0. 开篇,用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大模型的背景就不介绍了,网上一搜一大堆。

以下内容与 【超详细!】Python微信公众号开发(4)- 手把手教你接入GPT 前半部分重复,已经看过的,可以跳过,不用再浪费时间了,这里只是与微信公众号剥离一下,作为此系列的开篇。

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账号

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

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

1. 你的第一个OpenAI程序

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

(2)打开VSCode ---> 打开刚才创建的"文件夹"

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

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

  • 如果你是原生的OpenAI API Key,有科学上网的方法,则在.env文件中写:

    bash 复制代码
    OPENAI_API_KEY="sk-xxx"   # <-------- 你的原生 OpenAI API Key
  • 如果你是用我上面说的DevAGI平台的虚拟API Key,则在.env文件中写:

    bash 复制代码
    OPENAI_API_KEY="sk-xxx"   # <-------- 你的原生 OpenAI API Key
    OPENAI_BASE_URL="https://api.fe8.cn/v1" # 注意:一个字母都不要错

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

(5)安装OpenAI相关库

bash 复制代码
pip install python-dotenv openai

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

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

python 复制代码
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助手,能为您提供帮助和回答您的问题。有什么我可以帮到您的吗?"

如果你遇到下面的错误:

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


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

有任何问题,欢迎+vx:jasper_8017,我也是个小白,期待与志同道合的朋友一起讨论,共同进步!

相关推荐
AI极客菌1 小时前
Controlnet作者新作IC-light V2:基于FLUX训练,支持处理风格化图像,细节远高于SD1.5。
人工智能·计算机视觉·ai作画·stable diffusion·aigc·flux·人工智能作画
水豚AI课代表7 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
程序员X小鹿9 小时前
全部免费!6款AI对口型神器,让照片开口说话唱歌,早晚用得上,建议收藏!(附保姆级教程)
aigc
真忒修斯之船9 小时前
大模型分布式训练并行技术(三)流水线并行
面试·llm·aigc
学习前端的小z11 小时前
【AIGC】如何通过ChatGPT轻松制作个性化GPTs应用
人工智能·chatgpt·aigc
zzZ_CMing13 小时前
大语言模型训练的全过程:预训练、微调、RLHF
人工智能·自然语言处理·aigc
杰说新技术16 小时前
Meta AI最新推出的长视频语言理解多模态模型LongVU分享
人工智能·aigc
热爱跑步的恒川1 天前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
火山引擎边缘云1 天前
创新实践:基于边缘智能+扣子的智慧婴儿监控解决方案
物联网·aigc·边缘计算
算家云1 天前
如何在算家云搭建Aatrox-Bert-VITS2(音频生成)
人工智能·深度学习·aigc·模型搭建·音频生成·算家云