手把手教你用【Go】语言调用DeepSeek大模型_go语言调用deepseek api
1、首先呢,点击 “DeepSeek”” 这个,
可以充1块玩玩。
2、然后获取api-key
3、替换apiKey
const (apiURL = \"https://api.deepseek.com/v1/chat/completions\"apiKey = \"your api key\" // 替换为你的实际 API KeymodelName = \"deepseek-chat\" // 或其他可用模型)
4、在上方更改api之后,只需要套用下方即可:
package mainimport (\"bytes\"\"encoding/json\"\"fmt\"\"io\"\"net/http\")const (apiURL = \"https://api.deepseek.com/v1/chat/completions\"apiKey = \"your api key\" // 替换为你的实际 API KeymodelName = \"deepseek-chat\" // 或其他可用模型)// 请求结构体type RequestBody struct {Model string `json:\"model\"`Messages []Message `json:\"messages\"`}type Message struct {Role string `json:\"role\"`Content string `json:\"content\"`}// 响应结构体type APIResponse struct {Choices []struct {Message struct {Content string `json:\"content\"`} `json:\"message\"`} `json:\"choices\"`}func main() {// 1. 构造请求数据// 也就是在这里发起提问requestBody := RequestBody{Model: modelName,Messages: []Message{{Role: \"user\", Content: \"请解释量子计算的基本原理\"},},}jsonBody, _ := json.Marshal(requestBody)// 2. 创建 HTTP 请求req, _ := http.NewRequest(\"POST\", apiURL, bytes.NewBuffer(jsonBody))req.Header.Set(\"Authorization\", \"Bearer \"+apiKey)req.Header.Set(\"Content-Type\", \"application/json\")// 3. 发送请求client := &http.Client{}resp, err := client.Do(req)if err != nil {panic(\"请求失败: \" + err.Error())}defer resp.Body.Close()// 4. 读取响应body, _ := io.ReadAll(resp.Body)// 5. 解析响应var apiResp APIResponseif err := json.Unmarshal(body, &apiResp); err != nil {panic(\"解析响应失败: \" + err.Error())}// 6. 输出结果if len(apiResp.Choices) > 0 {fmt.Println(\"模型回复:\", apiResp.Choices[0].Message.Content)} else {fmt.Println(\"未收到有效回复\")}}
模型&价格解说:
这么复杂,第一次看,一定很吃力。
但没办法,谁让我有AI呢,看来只能魔法对抗魔法喽。
照片下方,是最新的解读。
我用最直白的话帮你解读 DeepSeek 的模型和价格,就像逛超市看商品标签一样简单:
一、先搞懂几个关键名词
-
Token:
可以理解为 “文字单位”,比如中文里一个字、一个词,或者英文里一个单词、标点符号,模型会把你输入的文字拆成这种小单元处理。
举例:“你好,世界!” 大概是 3-4 个 tokens。 -
上下文长度:
就是你和模型对话时,能 “记住” 的历史内容长度。比如 64K 相当于能记住 约 4 万字的对话记录(中文)。
注意:这里的8K、64K,是指 8K tokens、64k tokens这么多tokens表示,大概能输入/分解,多少文字
-
输出长度:
模型一次能回复的文字量。比如:deepseek-chat
最多能回 8K(约 6000 字)deepseek-reasoner
最多能回 64K(约 4.8 万字)(适合写长报告、复杂推理)。
二、模型区别:选哪个?
三、价格表:怎么花钱?
先看费用结构:花的钱 = 输入 token 数 × 单价 + 输出 token 数 × 单价
(输入:你发给模型的文字;输出:模型回复你的文字)
1. 标准时段(北京时间 08:30-00:30):正常价格
- 缓存未命中(新内容):2 元
- 缓存未命中:4 元
举个栗子🌰:
- 你用
deepseek-chat
发了 100 万 tokens 的问题(新内容,缓存未命中),模型回了 100 万 tokens 的答案:
费用 = 2 元(输入) + 8 元(输出)= 10 元。
2. 优惠时段(北京时间 00:30-08:30):打骨折!
- 缓存未命中:1 元(5 折)
- 缓存未命中:1 元(2.5 折)
举个栗子🌰:
- 同样的操作(100 万输入 + 100 万输出),在优惠时段:
费用 = 1 元(输入) + 4 元(输出)= 5 元,直接省一半!
借鉴资料:
1、DeepSeek API 文档
2、【GoLang】手把手教你用Go语言调用DeepSeek-R1大模型