介绍
DeepSeek 是一个基于深度学习的搜索引擎,旨在提供精准的搜索结果。它利用自然语言处理和计算机视觉技术,支持文本、图像和视频的搜索。DeepSeek 还可以进行数据分析和个性化推荐,帮助用户发现相关信息和趋势。其核心在于深度学习模型,能够不断优化搜索体验。
目的
春节期间 DeepSeek 冲上热搜,成了春节期间最热门的 AI 工具。
由于火热导致,我们在 web 服务端使用 R1 推理总是出现超时问题,用的是真心上火。
重点:如果通过 API 进行调用使用,是否也会有超时问题呢?
我来给大家验证一下
正文
注册 deepseek 账号并充钱
deepseek api 地址[https://platform.deepseek.com/]
由于是国内是服务,这里就没必要过多介绍,从官网直接用国内手机号注册及冲值即可。
阅读 API 文档使用案例编写测试代码
官网给出了 Curl 、Python 、nodejs 三种方式。
我比较熟练使用 golang。 还是用 golang 开发。
根据官网介绍
重点: 我们需要 API Key,接下来我们先创建一个 API key
创建 API key
重点:这个只展示这么一次,记得保存后面需要用。(就没必要记录我的了,当你看到这个图片的时候,它已经就被我给删了)。不信?请看下图
接下来,编写代码
package main import ( "bytes" "encoding/json" "fmt" "net/http" "sync" "time" ) func main() { url := "https://api.deepseek.com/chat/completions" apiKey := "sk-72a1e9***************79bb270" // 替换为你的 API 密钥 // 构建请求数据 requestBody := map[string]interface{}{ "model": "deepseek-reasoner", "messages": []map[string]string{ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Hello!"}, }, "stream": false, } // 将请求数据编码为 JSON jsonData, err := json.Marshal(requestBody) if err != nil { fmt.Println("Error marshaling JSON:", err) return } client := &http.Client{} var wg sync.WaitGroup var totalDuration time.Duration for i := 0; i < 200; i++ { // 修改为 200 次请求 wg.Add(1) go func() { defer wg.Done() // 创建新的请求 req, err := http.NewRequest("POST", url, bytes.NewBuffer(jsonData)) if err != nil { fmt.Println("Error creating request:", err) return } // 设置请求头 req.Header.Set("Content-Type", "application/json") req.Header.Set("Authorization", "Bearer "+apiKey) // 开始计时 startTime := time.Now() // 发送请求 resp, err := client.Do(req) if err != nil { fmt.Println("Error sending request:", err) return } defer resp.Body.Close() // 结束计时 elapsedTime := time.Since(startTime) // 读取响应 // _, err := ioutil.ReadAll(resp.Body) // if err != nil { // fmt.Println("Error reading response:", err) // return // } // 打印响应 fmt.Println("Response Status:", resp.Status) //fmt.Println("Response Body:", string(body)) fmt.Printf("Time taken: %v\n", elapsedTime) // 累加时间 totalDuration += elapsedTime }() } wg.Wait() // 计算并打印平均时间 averageDuration := totalDuration / 100 fmt.Printf("平均时间: %v\n", averageDuration) }
输出内容
结论
API 调用使用没有出现超时情况。所以大家可以放心的进行充值体验。
附加内容
扩展一:价格对比
OpenAI 价格(页面汉化翻译了一下)
谷歌 (好便宜)
xAI(马斯克家的,全球最强算力)
DeepSeek
各位换算一下价格,对比对比吧。
扩展二:如何使用 API ?新手指导
需要的内容1:开源的界面
使用它官网介绍的部署方式就可以。
这个东西是一个通用的静态页面,可以将其部署到美国。再通过 key 进行使用。
页面长这样: