【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,我也是个小白,期待与志同道合的朋友一起讨论,共同进步!

相关推荐
程序员X小鹿9 小时前
新出的多模态AI笔记工具:视频秒变图文笔记、生成脑图、播客等,太好用了!
aigc
_张一凡10 小时前
OpenAI Sora 2提示词指南:打造精准视频生成指令
aigc·音视频
后端小肥肠11 小时前
【n8n 入门系列】10 分钟部署 n8n,手把手教你搭第一个自动化工作流,小白可学!
人工智能·aigc
iThinkAi智能体12 小时前
狂揽6779.8万播放的邪修玩法!用Coze智能体工作流1分钟生成100个爆款视频,附详细教程
aigc
猫头虎15 小时前
HAMi 2.7.0 发布:全面拓展异构芯片支持,优化GPU资源调度与智能管理
嵌入式硬件·算法·prompt·aigc·embedding·gpu算力·ai-native
新智元17 小时前
全球 AI 视频大战升级!「中国版 Sora」Vidu Q2 参考生月底发布,能力对标 Sora 2
人工智能·openai
新智元17 小时前
刚刚,Figure 03 惊天登场!四年狂造 10 万台,人类保姆集体失业
人工智能·openai
Mintopia18 小时前
动态数据驱动的 AIGC 模型:Web 端实时更新训练的技术可行性
前端·javascript·aigc
墨风如雪1 天前
Ling-1T:蚂蚁百灵如何以“非思考”策略,开启万亿参数效率新篇章?
aigc
明月(Alioo)1 天前
用AI帮忙,开发刷题小程序:微信小程序中实现Markdown图片解析与渲染功能详解
微信小程序·小程序·aigc