news 2026/7/2 6:48:58

Go调用几个常见的大模型基座方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Go调用几个常见的大模型基座方法

Go 语言如何调用主流大模型基座,本文将详细介绍OpenAI 系列(GPT-3.5/4)、智谱 AI(GLM)、百度文心一言(ERNIE)这三个常见大模型的调用方法,涵盖核心依赖、完整代码示例和关键说明。

一、前置准备

  1. 安装 Go 核心 HTTP 客户端依赖(部分场景可简化,推荐使用成熟库简化开发):
    # OpenAI 官方推荐的 Go 客户端库(简化认证和请求构造)go get github.com/sashabaranov/go-openai# 通用 HTTP 客户端(处理智谱、文心一言的自定义请求)go get github.com/go-resty/resty/v2
  2. 获取各平台 API Key:
    • OpenAI:OpenAI 平台 申请 API Key
    • 智谱 AI:智谱开放平台 申请 API Key
    • 文心一言:百度智能云 申请 API Key 和 Secret Key

二、调用 OpenAI 大模型(GPT-3.5/4)

方式1:使用官方推荐的go-openai库(推荐,简化开发)

packagemainimport("context""fmt""log""github.com/sashabaranov/go-openai")// 调用 OpenAI GPT 模型funccallOpenAI(apiKeystring){// 1. 初始化 OpenAI 客户端(传入 API Key 认证)client:=openai.NewClient(apiKey)ctx:=context.Background()// 2. 构造请求参数(指定模型、对话内容、温度等)req:=openai.ChatCompletionRequest{Model:openai.GPT3Dot5Turbo,// 可选:openai.GPT4、openai.GPT4TurboMessages:[]openai.ChatCompletionMessage{{Role:openai.ChatMessageRoleUser,// 角色:user/assistant/systemContent:"请用Go语言简要介绍大模型调用流程",// 用户输入内容},},Temperature:0.7,// 生成随机性,0-2 之间MaxTokens:500,// 最大生成令牌数}// 3. 发送请求并获取响应resp,err:=client.CreateChatCompletion(ctx,req)iferr!=nil{log.Fatalf("调用 OpenAI 失败:%v",err)}// 4. 解析并输出结果fmt.Println("=== OpenAI 响应结果 ===")fmt.Println(resp.Choices[0].Message.Content)}funcmain(){// 替换为你的 OpenAI API KeyopenAIAPIKey:="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"callOpenAI(openAIAPIKey)}

方式2:原生 HTTP 请求调用(无第三方库依赖)

packagemainimport("bytes""encoding/json""fmt""log""net/http")// OpenAI 请求结构体typeOpenAIRequeststruct{Modelstring`json:"model"`Messages[]struct{Rolestring`json:"role"`Contentstring`json:"content"`}`json:"messages"`Temperaturefloat64`json:"temperature"`MaxTokensint`json:"max_tokens"`}// OpenAI 响应结构体typeOpenAIResponsestruct{Choices[]struct{Messagestruct{Contentstring`json:"content"`}`json:"message"`}`json:"choices"`
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/28 23:04:45

day39图像数据与显存

一、 图像数据的介绍 1.1 灰度图像 从这里开始我们进入到了图像数据相关的部分,也是默认你有之前复试班计算机视觉相关的知识,但是一些基础的概念我仍然会提。 昨天我们介绍了minist这个经典的手写数据集,作为图像数据,相较于结…

作者头像 李华
网站建设 2026/7/1 18:29:07

React Native搭建环境一文说清:Windows配置流程

React Native环境搭建全攻略:Windows平台从零到跑通App 你是不是也经历过这样的时刻?满心欢喜想用React Native写个跨平台应用,结果刚打开终端执行 npx react-native init ,就弹出一连串错误:找不到JDK、SDK路径异常…

作者头像 李华
网站建设 2026/7/1 15:50:18

考古发掘现场:保存原始挖掘环境的声音全貌

考古发掘现场:保存原始挖掘环境的声音全貌 在陕西一处新石器时代遗址的探方边缘,考古领队蹲在土层交界处,对着助手低声讲解:“这个灰坑开口呈不规则椭圆形,底部有明显踩踏痕迹……”风声混着远处机械筛土的震动&#x…

作者头像 李华
网站建设 2026/6/28 21:33:41

地方戏曲数字化:建立濒危剧种的标准语音数据库

地方戏曲数字化:建立濒危剧种的标准语音数据库 在浙江某县文化馆的档案室里,一排排泛黄的录音带静静躺在铁皮柜中——那是上世纪八十年代几位越剧老艺人的清唱实录。如今,这些磁带已严重老化,播放时杂音刺耳,而熟悉那段…

作者头像 李华
网站建设 2026/6/28 23:24:44

音色和情感可以分开控制?深度解读IndexTTS 2.0解耦设计原理

音色和情感可以分开控制?深度解读IndexTTS 2.0解耦设计原理 在短视频、虚拟主播、有声读物日益普及的今天,用户对语音合成的要求早已超越“能说话”的基础阶段。人们希望听到的是更像真人的声音——有情绪起伏、有个性音色、节奏精准,甚至能在…

作者头像 李华
网站建设 2026/6/26 10:59:48

地下矿井救援:被困人员微弱声音的精准拾取与识别

地下矿井救援:被困人员微弱声音的精准拾取与识别 在一次真实的矿难搜救中,救援队连续监听了12小时的井下音频,几乎被机械余震和风流噪声淹没。直到第8小时,系统突然弹出一条文字:“三号巷道……还有三人……氧气快没了…

作者头像 李华