chatGPT正式发布已经有段时间了,这段时间我也深度体验了chatGPT的魅力。

OpenAI除了提供网页版的chatGPT,还通过api的形式提供了很多其它服务,包括文字纠错、图片生成、音频转换等等。

作为程序员,即使有现成的openai库,但还是免不了想自己造轮子,所以就有这个openai库

当前这个库刚刚开发完成,还有很多需要优化的地方,所要实现的功能都是OpenAI API提供的,目前已经完成了以下接口的开发:

以下接口还未实现:

Engines已经废弃,其功能由Models提供。

在项目的cmd目录下提供了一个简单地http服务,实现了对上面接口的调用。

以下是chatGPT的接口调用的简单示例:

package main

import (
"context"
"fmt"
"os" "github.com/mengbin92/openai"
) func main() {
client := openai.NewClient("your token", "your org", "proxy") resp, err := client.CreateChatCompletion(
context.Background(),
&openai.ChatCompletionRequset{
Model: openai.GPT3Dot5Turbo,
Messages: []openai.Message{
{Role: openai.ChatMessageRoleUser, Content: "hi!"},
},
},
)
if err != nil {
fmt.Printf("CreateChatCompletion error: %s\n", err.Error())
os.Exit(-1)
}
fmt.Println(resp.Choices[0].Message.Content)
}

声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可,使用时请注明出处。

Author: mengbin

blog: mengbin

Github: mengbin92

cnblogs: 恋水无意


我的OpenAI库发布了!!!的更多相关文章

  1. Gradle 1.12用户指南翻译——第46章. Java 库发布插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  2. 私有maven库发布及使用流程

    ## 私有maven库发布流程 ### 环境配置 - idea环境下,如果使用内置maven,需要手动生成settings.xml,并关联. - 操作如下 - 生成settings.xml 右键pom ...

  3. 搭建私有maven库发布及使用流程

    一:背景 Apache Maven是当Java技术栈前最流行的项目管理工具,它提供了一系列方便快捷的命令帮助程序员们进行Java工程的开发工作.Maven服务器位于美国,由于出国带宽和众多因素,在国内 ...

  4. 我把自己的java库发布到了maven中央仓库,从此可以像Jackson、Spring的jar一样使用它了

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  5. 将 Vue 组件库发布到 npm

    制作了一套自己的组件库,并发布到npm上,项目代码见 GitHub . 前期准备 有一个npm账号 安装了vue-cli 搭建项目 vue init webpack hg-vcomponents cd ...

  6. O365(世纪互联)SharePoint 之使用列表库发布新闻

    前言 上一篇文章,我们简单介绍了如何个性化O365的SharePoint站点,本文我们演示一下如何使用SharePoint自带的列表应用程序,定制一个公司新闻的栏目. 其间,用到的主要工具是Share ...

  7. android开源库发布到jcenter图文详解与填坑

    相信很多人都用过开源项目,特别是android studio普及以后,使用开源库更方便简单.而如何上传开源库到jcenter供大家方便使用,虽然网上也有教程,但还是遇坑了,最后总结一下,希望可以帮助大 ...

  8. 创建cocoapod静态库发布到网上使用

    1,在github上创建一个空仓库,要有licence和readme,clone到本地 2,pod lib create 项目名,这样就创建了一个静态库 3,pod spec create 项目名,创 ...

  9. 从Zero到Hero,OpenAI重磅发布深度强化学习资源

    https://zhuanlan.zhihu.com/p/49044306 https://spinningup.openai.com/en/latest/

  10. avalon新一代UI库发布

    任何前端框架,尤其是国内的,想推广开,必须有一个UI库,光是一个核心库当光头司令是不行的.此外还有一个小圈子,供大家遇到问题时可以发问,一起完善.自从avalon嫁入"去哪儿网"后 ...

随机推荐

  1. java的3中代理模式

    代理模式是什么 代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展. 比如有个歌手对象叫Singer,这个对象有一个唱歌方法叫sing(). 1 public class ...

  2. layui 手册

    https://layui.yii666.com/doc/modules/layer.html

  3. .net core 使用 Nlog 集成 exceptionless 配置文件

    nlog.config文件 安装nuget包: NLog.Web.AspNetCore Exceptionless.NLog 配置文件开始 <?xml version="1.0&quo ...

  4. OSPF v3与v2的区别

  5. 对于如何在IDEA中给Terminal添加git的详解

    具体步骤 1.配置本机环境变量 进入到环境变量的设置界面,然后找到下面的Path变量,双击点开: 然后新建一个变量,路径定义到git的目录下面的bin目录下: 2.WIN+R,然后输入cmd,进入终端 ...

  6. 第二章 数据和C

    2.1错误和警告 如果输入这个程序的过程中出现错误(error),比如少了一个分号,编译器会给出语法错误消息.即使输入正确,编译器还可能发出这样的警告(warning):"警告------从 ...

  7. 使用ASP.NET CORE SignalR实现APP扫描登录

    使用signalr实现APP扫码登录 1. 背景介绍 在移动化时代,web开发很多时候都会带着移动端开发,这个时候为了减少重复输入账号密码以及安全性,很多APP端都会提供一个扫码登录功能,web端生成 ...

  8. Skywalking搭建

    因毕设前端太丑,所以后端要稍微搞的高大上一点才能忽悠住老师,所以分享一下搭建skywalking的步. 我是参考https://baijiahao.baidu.com/s?id=17211835411 ...

  9. Facebook 的 Thrift

    更多内容,前往个人博客 Thrift 源于 Facebook,在 2007 年 Facebook 将 Thrift 作为一个开源项目提交给了 Apache 基金会.对于当时的 Facebook 来说, ...

  10. LevelDb-基本数据结构

    目录 Slice Arena skip list 跳表本质 时空复杂度 插入,删除数据(如何维护索引) 极端情况分析:不维护索引 极端情况分析:每次插入都维护 插入效率和查找效率取舍 删除 对比红黑树 ...