ChatGPT的api接口调用

  Java   6分钟   827浏览   1评论

前言

平时我们如果遇到问题,要么问人,要么百度或者谷歌一下,

问人,自然是相当地好,对你的帮助是非常巨大的;

但人是有情绪有身份的,你得考虑人际交往因素,也不能24小时随问随答,不能上知天文下知地理之类的。

若通过搜索引擎,效率确实高,不用搞啥人情世故,缺点就是:有的时候要翻半天,网上的垃圾信息太多了,而且这些信息是杂乱的,需要你自己归纳总结。

这两种方案,各有优点,如果能有一个东西能集两者之所长就好了,

现在有了:chatGPT

这玩意具体有多厉害,我这里就不吹了。

怎么接入?

关于人工智能,关于chatGPT的底层,是怎么实现的,我们并不需要关心,如同不必了解车子的原理,只会驾驶便可。

我现在想在网站内新增一个机器人问答的小功能,我只要会接入api就够了。

需要一点准备:

  • 能上谷歌的网络环境
  • 香港/国外的服务器

至于为什么需要,或者怎么达成,这儿就不说了。

流程

  • 注册账号
  • 获取key
  • 写代码

简单三步就ok了,一点都不麻烦。

注册账号

去网上搜索:如何注册openAI账号,因为chatGPT是openAI公司的

如果自己尝试了半天,还是不行,去某宝之类的平台,也是可以花钱购买现成的账号。

擦亮眼睛,提防骗子

获取key

你调用别人的接口,肯定得有个身份凭证吧,

https://platform.openai.com/account/api-keys

这里可以创建你的密钥

写代码

官方api文档:https://platform.openai.com/docs/api-reference

这官方提供有python模块、Node.js模块,你也可以直接看他的文档,按照教程试试自己能不能实现。

我下面要介绍的是:用http请求的方式,也就是不用官方提供的模块,直接发网络请求。

贴上一段PHP代码,仅供参考:

<?php

function get_ai($API_KEY,$TEXT){

    //一些参数,具体可以去文档看
    $params = json_encode(array(
        'prompt' => $TEXT,
        'model' => 'text-davinci-003',
        'temperature' => 0.5,
        'max_tokens' => 2000,
        'top_p' => 1.0,
        'frequency_penalty' => 0.8,
        'presence_penalty' => 0.0,
        'stop' => [
            "\nNote:",
            "\nQuestion:"
        ]
    ));

    //发请求的一些头部信息
    $options = array(
        'http' => array(
            'method' => 'POST',
            'header' => "Authorization: Bearer " . $API_KEY."\r\n"."Content-type: application/json",
            'content' => $params,
            'timeout' => 15 * 60 
        ),'ssl'=>array('verify_peer' => false,'verify_peer_name' => false)
    );

    //发请求
    $context = stream_context_create($options);
    $response = @file_get_contents('https://api.openai.com/v1/completions', false, $context);

    $text = "服务器连接错误,请稍后再试!";

    //得到结果
    if (isset($response)) {
        $json_array = json_decode($response, true);
        if( isset( $json_array['choices'][0]['text'] ) ) {
            $text = str_replace( "\\n", "\n", $json_array['choices'][0]['text'] );
        } elseif( isset( $json_array['error']['message']) ) {
            $text = $json_array['error']['message'];
        } else {
            $text = "一看就是没钱了";
        }
    }
    print_r($text);
}

$aa = 'chatgpt到底是人工智能,还是人工智障?';
get_ai('填入你的密钥',$aa);

代码逻辑很简单:封装请求头,然后请求官方api地址,然后得到数据。

这里演示用的是PHP,用其他语言也是一样的。

最后

我原以为能利用这个在自己的小网站上,搞个类似于机器人回答的小功能了,

可以是可以,得交钱,因为人家并不是做慈善的,

注册完账号,官方会送你代金券,这个代金券有时效,我这个账号有18刀乐的额度,但有效期好像是四个月。

因为是国外的产品,充钱也挺麻烦的,所以还是不搞了。

小心上当受骗,有问题评论区留言。

如果你觉得文章对你有帮助,那就请作者喝杯咖啡吧☕
微信
支付宝
  1 条评论
召田最帅boy 博主   广东省广州市

无需翻墙的chatgpt免费使用:https://www.hqxiaozou.top/post/JaqUCUfKA7D