OpenAI 现已支持 Go 语言SDK

文摘   2024-08-07 06:53   美国  

OpenAI 近日推出了官方 Go 语言库,这一消息无疑为广大 Go 语言开发者带来了福音。通过该库,开发者可以轻松访问 OpenAI 强大的 REST API,从而在 Go 应用中集成先进的 AI 能力。

安装与基本使用

要安装 OpenAI Go 库,只需在代码中引入:

import (
 "github.com/openai/openai-go"
)

或者通过命令行指定版本:

go get -u 'github.com/openai/openai-go@v0.0.1-alpha.0'

以下是一个简单的使用示例,展示了如何通过 OpenAI Go 库进行聊天完成:

package main

import (
 "context"
 "github.com/openai/openai-go"
 "github.com/openai/openai-go/option"
)

func main() {
 client := openai.NewClient(
  option.WithAPIKey("Your API Key"),
 )
 chatCompletion, err := client.Chat.Completions.New(context.TODO(), openai.ChatCompletionNewParams{
  Messages: openai.F([]openai.ChatCompletionMessageParamUnion{
    openai.UserMessage("Say this is a test"),
  }),
  Model: openai.F(openai.ChatModelGPT4o),
 })
 if err != nil {
  panic(err.Error())
 }
}

功能亮点

1. 强大灵活的请求处理: 通过泛型 Field 类型区分零值、null 和省略字段,确保请求参数的准确性和灵活性。

2. 完整的响应对象: 所有响应字段为值类型,包含详细的 JSON 信息和 Extras 字段,便于处理和扩展未预见的 API 响应。

3. 便捷的分页处理: 提供自动分页方法,无缝处理大量数据,简化复杂的分页操作。

4. 智能错误处理: 详细的错误信息,帮助快速定位和解决问题,确保应用稳定运行。

5. 灵活的超时与重试机制: 支持配置请求超时和重试策略,保证请求的可靠性和稳定性。

6. 文件上传支持: 支持多部分请求中的文件上传,并可自定义文件名和内容类型,满足多样化需求。

7. 自定义请求与响应处理: 支持未记录的请求参数和响应属性访问,扩展 API 使用范围。

8. 中间件支持: 提供中间件功能,可在请求前后执行自定义逻辑,增强请求处理能力。

9. Azure OpenAI 集成: 与 Microsoft Azure OpenAI 无缝集成,通过 Azure 凭据进行身份验证,拓展使用场景。

注意

OpenAI Go库不过在初期 alpha 版本,可以及时关注官方的更新。

AGI01专注于深度学习、自然语言处理及AI技术栈的研究,推动产品落地,并深入探索全球商业应用,促进AGI技术的发展,欢迎关注。


AGI01
专注AGI技术研究、最新AGI技术分享给大家,欢迎来讨论AI业务需求、及落地方案。
 最新文章