我的编程空间,编程开发者的网络收藏夹
学习永远不晚

调用OpenAi出现连接超时的解决方案

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

调用OpenAi出现连接超时的解决方案

在向https://api.openai.com/v1/completions发起http请求之前,使用java.net包下面的Proxy进行代理。

代码如下:

public class OpenAiApi {    public String OpenAiAnswerer(CompletionRequest request, String openAiApiKey) {        //代理        String proxyHost = "代理地址";        int proxyPort = 代理端口;        String url = "https://api.openai.com/v1/completions";        // json为请求体        String json = JSONUtil.toJsonStr(request);        String result = "";        Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));        try {            HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection(proxy);            connection.setRequestProperty("Authorization", "Bearer " + openAiApiKey);            connection.setRequestProperty("Content-Type", "application/json");            connection.setRequestMethod("POST");            connection.setDoOutput(true);            byte[] requestBodyBytes = json.getBytes(StandardCharsets.UTF_8);            try (OutputStream outputStream = connection.getOutputStream()) {                outputStream.write(requestBodyBytes, 0, requestBodyBytes.length);            }            try (InputStream inputStream = connection.getInputStream()) {                BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));                StringBuilder response = new StringBuilder();                String line;                while ((line = reader.readLine()) != null) {                    response.append(line);                }                result = response.toString();            }        } catch (IOException e) {            throw new RuntimeException(e);        }        return JSONUtil.toBean(result, CompletionResponse.class);    }}

connection.setRequestProperty("Authorization", "Bearer " + openAiApiKey);
connection.setRequestProperty("Content-Type", "application/json");

我在使用的时候忘记设置了Content-Type,结果一直报错,后面反复观看文档才发现这个必须得设置。

下面是OpenAiAnswerer方法里面形参类CompletionRequest,这里使用了Lombok插件里的@Data注解,自动填入get、set方法和无参构造。(如果添加了有参构造,那么务必加上无参构造)

@Data public class CompletionRequest {    private String model;    private String prompt;    private Integer max_tokens;    private Integer temperature;    private Integer top_p;    private Integer n;    private Boolean stream;    private Integer logprobs;    private String stop;}

来源地址:https://blog.csdn.net/dantui_/article/details/130072028

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

调用OpenAi出现连接超时的解决方案

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python连接MySQL时如何处理连接超时问题?(当Python连接MySQL出现超时,应如何解决?)

如何解决Python连接MySQL超时问题设置连接超时时间(connect_timeout)。调整MySQL配置(connect_timeout、wait_timeout)。使用连接池(MySQLConnectionPool)。使用异步I/O(asyncio.connect)。检查网络连接、服务器负载、驱动程序、虚拟内存等其他因素。
Python连接MySQL时如何处理连接超时问题?(当Python连接MySQL出现超时,应如何解决?)
2024-04-02

Navicat连接MySQL出现2059错误的解决方案

目录Navicat连接mysql出现2059错误解决方法方法1方法2:升级Navicat详细步骤注意事项总结Navicat连接MySQL出现2059错误在Navicat中连接MySQL时遇到错误代码 2059,这表示MySQL服务器不接受
Navicat连接MySQL出现2059错误的解决方案
2024-10-21

花生壳诊断连接时出现1007错误的解决方案

在内网配置好花生壳客户端后,发现连接失败 经搜索,在这个页面找到了原因,使用2和3中的命令测试都没有得到正确结果,说明DNS有问题 在Linux平台上修改DNS,注意要用sudo获取只读文件的修改权限 首先sudo vi /etc/re
2023-08-18

Navicat连接MySQL时出现的连接失败问题及解决

目录一、安装mysql的注意事项二、Navicat连接mysql方法一方法二总结一、安装MySQL的注意事项官网下载安装,选择zip包,解压后不用安装只用配置好环境变量Path并在解python压后的文件夹里新建文本文档my.ini,编辑
2023-05-12

MongoDB技术开发中遇到的连接超时问题解决方案分析

MongoDB技术开发中遇到的连接超时问题解决方案分析摘要:在MongoDB技术开发过程中,由于网络或服务器等因素,经常会遇到连接超时的问题。本文将从断开连接的原因分析、解决方案以及具体的代码示例三个方面进行探讨,帮助开发者解决连接超时问题
2023-10-22

阿里云服务器公网IP连接超时原因及解决方案

在使用阿里云服务器的过程中,我们可能会遇到公网IP连接超时的问题,这可能会影响到我们的正常工作和生活。本文将详细说明这个问题的原因,并提供相应的解决方案。正文:阿里云服务器的公网IP连接超时,通常是指在通过公网IP访问阿里云服务器时,连接过程中出现了超时现象。这种现象可能由多种原因导致,包括网络问题、服务器问题、
阿里云服务器公网IP连接超时原因及解决方案
2023-11-20

plsql连接超时的原因和解决方法是什么

PL/SQL连接超时的原因可能有多种,包括网络故障、数据库服务器负载过高、连接池配置不当等。以下是一些常见的解决方法:1. 检查网络连接:确保网络连接正常,可以尝试使用其他网络来连接数据库,或者使用ping命令检查网络延迟和丢包情况。2.
2023-10-12

Win7电脑总是弹出宽带连接的解决方案

如何处理Win7计算机总是弹出宽带连接?这个问题主要来自网络连接,但如果网络连接丢失或断开,宽带拨号窗口会弹出,导致Win7用户经常遇到宽带拨号窗口的问题,有时一分钟几次。1.首先在win7中打开IE浏览器,然后在浏览器菜单中选择工具按钮,
2023-07-10

亚马逊免费服务器连接超时的解决方法

1.检查网络连接首先,确保你的网络连接正常。检查你的网络设置,确保你的设备已连接到互联网,并且没有任何网络故障。你可以尝试连接其他网站或服务,以确认问题是否仅限于亚马逊免费服务器。2.检查服务器状态在连接超时之前,检查一下你的亚马逊免费服务器的状态。登录到你的亚马逊AWS控制台,导航到EC2服务,然后选择你的实例。确保实例正在运行,并且没有任何错误或警告。3.调整安全组设置安全组是亚马逊EC2实例的防火墙...
2023-10-27

win7连接远程桌面提示超出了最大允许连接数的解决方法

说起远程桌面想必大家都不会陌生吧,通过远程可以在连接后www.cppcns.com成功的控制另一端的计算机,方便我们实时的操作,不过在远程桌面登录到终端服务器的时候就有不少用户遇到提示“终端服务”的故障,该怎么办呢?
2023-06-07

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录