福利 华为云无服务器函数调用chatGPT

# 什么是FunctionGraph
华为云的FunctionGraph基于事件驱动的函数托管计算服务,只需编写业务代码和设置运行条件,无需配置和管理服务器等基础设施,函数即可以免运维、高可靠的方式运行,另外支持多种语言的编写

# 如何使用FunctionGraph调用chatGPT
支持chatGPT调用的方式有很多,但是因为chatGPT不能在中国访问,所以我把业务代码部署在华为云的拉美-圣保罗一区域,也可以部署在其他非国内的区域进行chatGPT的调用
## 先来看看简单的示例
```
# -*- coding:utf-8 -*-
import os
import openai
def handler (event, context):
    openai.api_key = "此处填写openai的api-key"

    def ask_chatgpt(q):
        completion = openai.ChatCompletion.create(
                model="gpt-3.5-turbo",
                messages=[{"role": "user", "content": q}]
        )
        #print(completion)
        print(completion.get("choices")[0]["message"]["content"])
    ask_chatgpt("此处填写要提问的内容")
```
通过这个简单的示例就可以实现chatgpt的调用,那么如果这样编写的话就会暴露我们的api-key,所以把api-key设置成为加密的环境变量,这样也方便进行api-key的管理,不需要每次都要修改业务代码重新部署,那么改进后的代码就如下:
```
# -*- coding:utf-8 -*-
import os
import openai
def handler (event, context):
    openai.api_key = context.getUserData("openai-keys")
    def ask_chatgpt(q):
        completion = openai.ChatCompletion.create(
                model="gpt-3.5-turbo",
                messages=[{"role": "user", "content": q}]
        )
        #print(completion)
        print(completion.get("choices")[0]["message"]["content"])
    ask_chatgpt("你好")
```

## 看一下运行结果


那么现在我们就开始部署,首先需要把代码打包所需的依赖,华为云推荐的是使用HuaweiCloudEulerOS操作系统,安装之后就会有**默认的python**,所以需要做的只是pip install xxx,代码中需要的依赖有os以及openai,所以只需安装这两个依赖进行打包即可,在HuaweiCloudEulerOS操作系统安装好python的依赖之后进入依赖的下载目录使用命令进行打包,并把依赖包复制到本地电脑进行上传即可
**操作命令**:
```
pip3 install os --root /usr/lib/python3/dist-packages 
pip3 install openai --root /usr/lib/python3/dist-packages 
cd  /usr/lib/python3/dist-packages/
zip -rq text.zip *
```
*完成依赖的制作后进入正题*
进入函数工作流点击创建函数,选择对应的编程语言以及版本进行创建,在进入函数里编写业务代码点击部署即可运行
**业务代码如下**
```
# -*- coding:utf-8 -*-
import os
import openai
def handler (event, context):
    openai.api_key = context.getUserData("openai-keys")
    def ask_chatgpt(q):
        completion = openai.ChatCompletion.create(
                model="gpt-3.5-turbo",
                messages=[{"role": "user", "content": q}]
        )
        #print(completion)
        print(completion.get("choices")[0]["message"]["content"])
    ask_chatgpt("你好")
```
部署完成之后点击测试即可运行,更多关于FunctionGraph以后再做介绍

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值