要安装 OpenAI Go 库,只需在代码中引入:
import ( "github.com/openai/openai-go")或者通过命令行指定版本:
go get -u 'github.com/openai/openai-go@v0.0.1-alpha.0'以下是一个简单的使用示例,展示了如何通过 OpenAI Go 库进行聊天完成:
package mainimport ( "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 版本,可以及时关注官方的更新。
