deepseek API 调用-golang

【1】golang使用POST提交请求

Go 复制代码
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://api.deepseek.com/chat/completions"
  method := "POST"

  payload := strings.NewReader(`{
  "messages": [
    {
      "content": "You are a helpful assistant",
      "role": "system"
    },
    {
      "content": "Who are you ?",
      "role": "user"
    }
  ],
  "model": "deepseek-chat",
  "frequency_penalty": 0,
  "max_tokens": 2048,
  "presence_penalty": 0,
  "response_format": {
    "type": "text"
  },
  "stop": null,
  "stream": false,
  "stream_options": null,
  "temperature": 1,
  "top_p": 1,
  "tools": null,
  "tool_choice": "none",
  "logprobs": false,
  "top_logprobs": null
}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("Accept", "application/json")
  req.Header.Add("Authorization", "Bearer <TOKEN>")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}

【2】 content返回问题答案

css 复制代码
{"id":"d84be7ce-98be-4975-85fe-fd0a51d8837c","object":"chat.completion","created":1738826843,"model":"deepseek-chat","choices":[{"index":0,"message":{"role":"assistant","content":"您好!我是由中国的深度求索(DeepSeek)公司开发的智能助手DeepSeek-V3。如您有任何任何问题,我会尽我所能为您提供帮助。"},"logprobs":null,"finish_reason":"stop"}],"usage":{"prompt_tokens":10,"completion_tokens":37,"total_tokens":47,"prompt_tokens_details":{"cached_tokens":0},"prompt_cache_hit_tokens":0,"prompt_cache_miss_tokens":10},"system_fingerprint":"fp_3a5770e1b4"}
相关推荐
军训猫猫头1 小时前
66.两组RadioButton的使用 C#例子 WPF例子
开发语言·c#·wpf
天堂的恶魔9463 小时前
C++封装
java·开发语言·c++
2501_903238654 小时前
Spring Boot中使用MockMvc测试PATCH请求控制器
spring boot·后端·log4j·个人开发
LUCIAZZZ4 小时前
为什么在springboot中使用autowired的时候它黄色警告说不建议使用字段注入
java·spring boot·后端·spring
Мартин.4 小时前
[Meachines] [Easy] Nunchucks Express Nodejs SSTI+AppArmor Bypass+Perl权限提升
开发语言·express·perl
阿猿收手吧!4 小时前
【CPP】CPP经典面试题
开发语言·c++·面试·协程
莫非技术栈4 小时前
Spring Boot统一异常拦截实践指南
java·spring boot·后端
去往火星4 小时前
【ffmpeg 到Qt的图片格式转换】精彩的像素:深入解析 AVFrame 到 QImage 的转换
开发语言·qt·ffmpeg
山禾女鬼0015 小时前
JavaScript常见事件和修饰符
开发语言·javascript·ecmascript