python通過curl訪問deepseek的API調用案例

廢話少說,開干!

API申請和充值

下面是deepeek的API網站

https://platform.deepseek.com/

進去先注冊,是不是手機賬號密碼都不重要,都一樣,完事充值打米,主要是打米后左側API Keys里面創建一個API Keys,注意自己手抄一個Key,那個你自己完了也打不開而是一堆******,記不住只能重新生成

本地curl訪問代碼腳本

部分參數意義和選項在代碼里標注了

import subprocess
import json
import osdef call_deepseek_api(prompt,api_key="sk-0d83************f3a3461486",model="deepseek-chat",temperature=0.7,max_tokens=1000):"""使用cURL調用DeepSeek API參數:- prompt: 提示文本- api_key: DeepSeek API密鑰,如果未提供則從環境變量獲取- model: 要使用的模型名稱通過指定 model='deepseek-chat' 即可調用 DeepSeek-V3。通過指定 model='deepseek-reasoner',即可調用 DeepSeek-R1。- temperature: 控制隨機性的溫度參數(隨機性,越低越選擇概率高的答案,最高1,最低0,0.7時均衡,0.2時死板,1時靈活)- max_tokens: 生成的最大token數(計費是通過token,模型的分詞器(Tokenizer)決定,粗略的說,1 個單詞 ≈ 1.3 個 Token,1 個漢字 ≈ 1~1.5 個 Token,單次費用=輸入token*0.0001+輸出token*0.0003    返回:- API響應的JSON解析結果"""# 如果未提供API密鑰,則從環境變量獲取if api_key is None:api_key = os.environ.get("DEEPSEEK_API_KEY")if not api_key:raise ValueError("需要提供DeepSeek API密鑰")# 構建API請求的JSON數據request_data = {"model": model,"messages": [{"role": "user", "content": prompt}],"temperature": temperature,"max_tokens": max_tokens,"stream":False}# 構建cURL命令#這里可能存在一個問題,訪問地址可能是"https://api.deepseek.com/chat/completions"curl_cmd = ["curl","-X", "POST","https://api.deepseek.com/v1/chat/completions","-H", f"Authorization: Bearer {api_key}","-H", "Content-Type: application/json","-d", json.dumps(request_data)]try:# 執行cURL命令result = subprocess.run(curl_cmd,capture_output=True,text=True,encoding='utf-8', check=True)# 解析JSON響應response = json.loads(result.stdout)return responseexcept subprocess.CalledProcessError as e:print(f"API請求失敗: {e.stderr}")raiseexcept json.JSONDecodeError:print(f"無法解析API響應: {result.stdout}")raise# 使用示例
if __name__ == "__main__":# 方式1: 通過環境變量設置API密鑰# os.environ["DEEPSEEK_API_KEY"] = "your_api_key_here"# 方式2: 直接在函數調用中提供API密鑰api_key = "sk-0d8*******f3a3461486"# 調用APItry:response = call_deepseek_api(prompt="你好,請介紹一下你自己",api_key=api_key)# 打印API返回的內容if "choices" in response and len(response["choices"]) > 0:message = response["choices"][0]["message"]["content"]print("API響應:")print(message)else:print("API返回格式異常:", response)except Exception as e:print(f"發生錯誤: {e}")

這里是上面代碼嘗試跑起來的結果

API響應:
你好!我是 DeepSeek Chat,由深度求索(DeepSeek)公司研發的智能AI助手。我可以幫助你解答各種問題,包括學習、工作、編程、寫作、生活百科等,還能處理上傳的文檔(如PDF、Word、Excel等),并從中提取和分析信息。 ### 我的特點:
? 免費使用:目前無需付費,你可以隨時向我提問!
? 知識豐富:我的知識截至 2024年7月,可以為你提供較新的信息。
? 超長上下文:支持 128K 上下文記憶,能處理超長文本和復雜問題。
? 文件閱讀:可以解析 PDF、Word、Excel、PPT、TXT 等文件內容。
? 多語言支持:能用中文、英文等多種語言交流。 ### 我能幫你做什么?
📚 學習輔導:解題思路、論文潤色、知識點講解
💼 工作助手:寫郵件、做PPT、數據分析
💡 創意寫作:生成故事、廣告文案、詩歌
📊 編程支持:代碼調試、算法優化、技術問答
🔍 信息查詢:新聞、科技、歷史、生活小技巧
如果你有任何問題,盡管問我吧!😊

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/79680.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/79680.shtml
英文地址,請注明出處:http://en.pswp.cn/web/79680.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【計算機視覺】OpenCV項目實戰:基于face_recognition庫的實時人臉識別系統深度解析

基于face_recognition庫的實時人臉識別系統深度解析 1. 項目概述2. 技術原理與算法設計2.1 人臉檢測模塊2.2 特征編碼2.3 相似度計算 3. 實戰部署指南3.1 環境配置3.2 數據準備3.3 實時識別流程 4. 常見問題與解決方案4.1 dlib安裝失敗4.2 人臉檢測性能差4.3 誤識別率高 5. 關鍵…

第6章: SEO與交互指標

第6章: SEO與交互指標 在當今的SEO環境中,Google越來越重視用戶交互指標,如頁面停留時長、交互性能等。本章將深入探討如何優化網頁速度和用戶交互體驗,以提升SEO效果和用戶滿意度。 1. Google的新時代SEO指標 隨著互聯網技術的發展&#xff…

Starrocks的主鍵表涉及到的MOR Delete+Insert更新策略

背景 寫這個文章的作用主要是做一些總結和梳理,特別是正對大數據場景下的實時寫入更新策略 COW 和 MOR 以及 DeleteInsert 的技術策略的演進, 這也適用于其他大數據的計算存儲系統。該文章主要參考了Primary Key table. 分析總結 Starrocks 的主鍵表主…

C 語言_常見排序算法全解析

排序算法是計算機科學中的基礎內容,本文將介紹 C 語言中幾種常見的排序算法,包括實現代碼、時間復雜度分析、適用場景和詳細解析。 一、冒泡排序(Bubble Sort) 基本思想:重復遍歷數組,比較相鄰元素,將較大元素交換到右側。 代碼實現: void bubbleSort(int arr[], i…

JIT+Opcache如何配置才能達到性能最優

首先打開php.ini文件,進行配置 1、OPcache配置 ; 啟用OPcache opcache.enable1; CLI環境下啟用OPcache(按需配置) opcache.enable_cli0; 預加載腳本(PHP 7.4,加速常用類) ; opcache.preload/path/to/prel…

Python訓練打卡Day23

機器學習管道 pipeline 基礎概念 pipeline在機器學習領域可以翻譯為“管道”,也可以翻譯為“流水線”,是機器學習中一個重要的概念。 在機器學習中,通常會按照一定的順序對數據進行預處理、特征提取、模型訓練和模型評估等步驟,以…

GPU SIMT架構的極限壓榨:PTX匯編指令級并行優化實踐

點擊 “AladdinEdu,同學們用得起的【H卡】算力平臺”,H卡級別算力,按量計費,靈活彈性,頂級配置,學生專屬優惠。 一、SIMT架構的調度哲學與寄存器平衡藝術 1.1 Warp Scheduler的調度策略解構 在NVIDIA GPU…

HarmonyOS 【詩韻悠然】AI古詩詞賞析APP開發實戰從零到一系列(二、項目準備與后臺服務搭建)

在開發一款面向HarmonyOS平臺的應用程序——【詩韻悠然】AI古詩詞賞析APP時,選擇了流行Go語言作為后端開發語言,并使用了go-zero微服務框架來搭建服務接口。本文將詳細介紹項目準備和后臺服務搭建的過程,幫助大家更好地理解和掌握go-zero框架…

QT5.14安裝以及新建基礎項目

進入qt中文網站:Qt | 軟件開發全周期的各階段工具 額,考慮新手可能還是找不到,我就分享一下我下載的的吧 通過網盤分享的文件:qt-opensource-windows-x86-5.14.2.exe 鏈接:https://pan.baidu.com/s/1yQTRp-b_ISje5B3UWb7Apw?pw…

深入解析 I/O 模型:原理、區別與 Java 實踐

一、I/O 模型的核心概念 I/O 操作的本質是數據在用戶空間(應用程序內存)和內核空間(操作系統內核內存)之間的傳輸。根據數據準備與拷貝階段的處理方式不同,I/O 模型可分為以下五類: 阻塞 I/O(…

EMQX v5.0通過連接器和規則同步數據

1 概述 EMQX數據集成功能,幫助用戶將所有的業務數據無需額外編寫代碼即可快速完成處理與分發。 數據集成能力由連接器和規則兩部分組成,用戶可以使用數據橋接或 MQTT 主題來接入數據,使用規則處理數據后,再通過數據橋接將數據發…

重構門店網絡:從“打補丁“到“造地基“的跨越

您是否遇到過這樣的窘境? 新店開張要等一周,就為裝根網線; 偏遠地區門店三天兩頭斷網,顧客排長隊卻結不了賬; 總部想看實時數據,結果收到一堆亂碼報錯; 總部ERP系統升級,2000家門…

PH熱榜 | 2025-05-13

1. FirstQuadrant 標語:通過以人為本的人工智能來最大化B2B銷售 介紹:銷售人工智能,幫助創始人和收益團隊提高效率,保持組織有序,并促成更多交易。它通過簡化銷售幕后工作,確保每個細節都不會遺漏。 產品…

【即插即用漲點模塊】【上采樣】CARAFE內容感知特征重組:語義信息與高效計算兩不誤【附源碼】

《------往期經典推薦------》 一、AI應用軟件開發實戰專欄【鏈接】 項目名稱項目名稱1.【人臉識別與管理系統開發】2.【車牌識別與自動收費管理系統開發】3.【手勢識別系統開發】4.【人臉面部活體檢測系統開發】5.【圖片風格快速遷移軟件開發】6.【人臉表表情識別系統】7.【…

esp32硬件支持AT指令

步驟1:下載AT固件 從樂鑫官網或Git鑫GitHub倉庫(https://github.com/espressif/esp-at)獲取對應ESP32型號的AT固件(如ESP32-AT.bin)。 步驟2:安裝燒錄工具 使用 esptool.py(命令行工具&#…

【神經網絡與深度學習】局部最小值和全局最小值

引言 在機器學習和優化問題中,目標函數的優化通常是核心任務。優化過程可能會產生局部最小值或全局最小值,而如何區分它們并選擇合適的優化策略,將直接影響模型的性能和穩定性。 在深度學習等復雜優化問題中,尋找全局最小值往往…

鏈表的面試題4之合并有序鏈表

這篇文章我們繼續來講鏈表中很經典的面試題:合并有序鏈表。 目錄 迭代 遞歸 我們首先來看一下這張圖片里面的要求,給你兩個鏈表,要求把他們按照從小到大的方式排列。 這里涉及到幾個問題,首先,我們的頭節點是不是要…

flea-cache使用之Redis哨兵模式接入

Redis哨兵模式接入 1. 參考2. 依賴3. 基礎接入3.1 定義Flea緩存接口3.2 定義抽象Flea緩存類3.3 定義Redis客戶端接口類3.4 定義Redis客戶端命令行3.5 定義哨兵模式Redis客戶端實現類3.6 定義Redis哨兵連接池3.7 定義Redis哨兵配置文件3.8 定義Redis Flea緩存類3.9 定義抽象Flea…

OpenAI for Countries:全球AI基礎設施的“技術基建革命”

2025年5月7日,OpenAI宣布啟動“OpenAI for Countries”計劃,目標是為全球各國構建本土化的AI基礎設施,提供定制化服務。這一計劃被視為其“星際之門”項目的全球化延伸,以技術合作為核心,覆蓋數據中心建設、模型適配與…

Linux精確列出非法 UTF-8 字符的路徑或文件名

Docker構建的時候報錯:failed to solve: Internal: rpc error: code = Internal desc = grpc: error while marshaling: string field contains invalid UTF-8 1、創建一個test.sh文件 find . -print0 | while IFS= read -r -d file;