華為云Flexus+DeepSeek征文|DeepSeek-V3/R1 免費服務開通全流程與Rest API和OpenAI SDK調用詳解
前言
本文將詳細介紹DeepSeek-V3/R1 免費服務開通全流程,并且詳細講解通過本地方式Rest API和OpenAI SDK兩種方式調用DeepSeek-V3/R1
前提準備
1、訪問 ModelArts Studio_MaaS大模型即服務平臺華為云
官網地址:ModelArts Studio大模型即服務平臺
官方教程文檔:官網文檔
2、進入ModelArts Studio控制臺3、接受服務服務聲明
4、點擊在線推理,授權委托
5、勾選委托并且創建
6、服務授權
7、確認授權
免費服務開通
1、免費服務:僅適合用于體驗模型,且受嚴格的速率限制。平臺可能會不定時調整其適用模型、免費額度、有效期等內容。(免費服務中單個模型提供200萬token推理額度,額度消耗完后可開通使用商用級別的推理API服務(僅限貴陽一),或前往我的服務部署為我的服務后付費使用)
2、領取額度
3、領取成功
免費服務在線體驗
1、點擊在線體驗
2、這里可以進行提問體驗感受DeepSeek-V3/R1的能力
3、參數調配(可以根據需求調配不同的參數,讓大模型更加智能)
參數 說明 溫度/Temperature 設置推理溫度。 - 數值較高,輸出結果更加隨機。 - 數值較低,輸出結果更加集中和確定。 取值范圍:0-2 默認值:不同模型的默認值不同,請以實際環境為準。 核采樣/top_p 設置推理核采樣。調整輸出文本的多樣性,數值越大,生成文本的多樣性就越高。 取值范圍:0.1~1 默認值:不同模型的默認值不同,請以實際環境為準。 top_k 選擇在模型的輸出結果中選擇概率最高的前K個結果。 取值范圍:1~1000 默認值:20
4、體驗感受
- 我的提問
DeepSeek-V3-32K是什么,能做什么
- DeepSeek-V3/R1的回答
DeepSeek-V3-32K 是什么? DeepSeek-V3-32K 是深度求索(DeepSeek)公司開發的一款先進的大型語言模型(LLM)。它基于最新的深度學習技術,具備強大的自然語言處理(NLP)能力,能夠理解和生成人類語言。以下是其核心特點:32K 上下文長度: 模型支持高達 32,000 token 的上下文長度,這意味著它可以處理更長的文本輸入,保持對上下文的理解和連貫性,適合長文檔、復雜對話和多輪交互場景。多模態能力: 除了文本處理,DeepSeek-V3-32K 可能還支持圖像、音頻等多模態數據的處理,能夠實現跨模態的理解和生成。高精度和高效性: 模型經過大規模數據訓練高精度的語言理解和生成能力,同時優化了計算效率,適用于多種應用場景。可定制化: 支持針對特定行業或任務的微調和定制,以滿足用戶的個性化需求。DeepSeek-V3-32K 能做什么? DeepSeek-V3-32K 的應用場景非常廣泛,以下是一些主要功能:文本生成:撰寫文章、報告、故事、。 生成營銷文案、社交媒體內容。 自動摘要長篇文章或文檔。 對話與問答:構建智能客服系統,提供即時、準確的回答。 實現多輪對話,支持復雜問題的解答。 作為虛擬助手,協助用戶完成日常任務。 翻譯與多語言支持:支持多種語言之間的高質量翻譯。 跨語言溝通和文檔處理。 代碼生成與編程輔助:自動生成代碼片段或完整程序。 提供編程問題解答和調試建議。 輔助開發人員進行代碼優化。 數據分析與洞察:從大量文本數據中提取關鍵信息。 生成數據報告和可視化圖表。 幫助用戶發現數據中的模式和趨勢。 教育與:提供個性化學習建議和知識講解。 自動生成練習題和考試題目。 輔助教師進行課程設計和內容開發。 創意與設計:生成創意文案、廣告語、品牌名稱等。 輔助設計工作,如生成圖像描述或設計靈感。 多模態應用:結合圖像和音頻數據進行跨模態生成如生成圖像描述或語音轉文字。 支持多模態內容的創作和編輯。 適用場景 企業應用:智能客服、自動化文檔處理、市場分析、員工培訓等。 教育領域:在線教學、學習輔助、課程開發等。 創意產業:內容創作、廣告設計、媒體制作等。 科研與技術:數據分析、代碼開發、學術研究等。 --- 總結DeepSeek-V3-32K 是一款功能強大、靈活多變的大型語言模型,能夠滿足多種場景下的自然語言處理需求。其超長的上下文支持和多模態能力使其在復雜任務中表現出色,同時其可定制化特性也為企業和個人用戶提供了高度適配的解決方案。
免費服務API調用
API KEY獲取
1、點擊調用說明可以查看API調用 方法
2、按照調用說明的步驟進行操作
- Rest API調用和OpenAI SKD調用兩種方式
3、步驟一: 獲取API Key
- 點擊API KEY管理-創建API KEY
- 創建API KEY(輸入標簽和描述)
- 保存密鑰(請將此密鑰保存在安全且可訪問的地方。這是唯一一次可以查看密鑰的機會。您以后將無法查看它。但您可以隨時創建新的訪問密鑰)
- 密鑰創建獲取成功即完成了步驟一
Rest API調用
1、步驟二: 復制調用示例并替換接口信息、API Key
打開pycharm平臺,將調用示例代碼復制并替換對應的參數信息
- 復制下方調用示例代碼
- 替換其中的接口信息(API地址、模型名稱)為上方接口信息
- 替換其中的API Key為已獲取的API Key
2、pychram粘貼代碼
3、運行代碼(如下顯示則為調用成功)
如下報錯信息不影響知識一種警告(這個警告信息是由
urllib3
庫發出的,提示你正在向api.modelarts-maas.com
發送未經驗證的 HTTPS 請求)
OpenAI SDK調用
1、點擊OpenAI SDK
2、pycharm安裝環境(pycharm終端進行環境安裝)
pip install --upgrade "openai>=1.0"
3、如果出校網絡超時,或者報錯預計是國外鏡像源太慢了更換國內鏡像源進行下載
pip install --upgrade "openai>=1.0" -i https://pypi.tuna.tsinghua.edu.cn/simple
4、復制調用代碼
5、粘貼入pycharm命令行
此處有三個地方需要根據自己的修改
- API地址
- API Key
- 模型名稱
6、運行代碼,如果出現如下報錯代表問題出在處理流式響應的方式上,設置
stream=True
時,OpenAI API 返回的是一個生成器對象,需要迭代它來獲取完整內容,而不是直接訪問choices
屬性
- 修改代碼如下
# coding=utf-8from openai import OpenAIbase_url = "API地址" # API地址 api_key = "API Key" # 替換為實際API Keyclient = OpenAI(api_key=api_key, base_url=base_url)response = client.chat.completions.create(model = "DeepSeek-V3", # 模型名稱messages = [{"role": "system", "content": "You are a helpful assistant"},{"role": "user", "content": "你好"},],temperature = 1,stream = True )# 處理流式響應 full_response = "" for chunk in response:# 先確認choices列表長度大于0if len(chunk.choices) > 0 and chunk.choices[0].delta.content is not None:full_response += chunk.choices[0].delta.contentprint(full_response)
官方實例代碼可能會報錯所以此處我對代碼做了一定的修改,主要修改了
- 流式響應處理:使用
for chunk in response
遍歷生成器,獲取每個數據塊- 增量內容提取:通過
chunk.choices[0].delta.content
獲取每個數據塊中的實際文本內容- 內容拼接:將所有數據塊的內容累積到
full_response
中- 訪問
choices[0]
之前,添加了len(chunk.choices) > 0
的檢查,以此保證列表不為空7、成功運行(如下則表示調用成功)
8、官方實例不能夠實現持續對話,如果要實現終端中的持續對話,你需要在現有代碼基礎上添加一個循環結構,讓用戶可以不斷輸入問題,并持續接收 AI 的回答。以下是修改后的代碼:
此處有三個地方需要根據自己的修改
- API地址
- API Key
- 模型名稱
# coding=utf-8from openai import OpenAIbase_url = "API地址" # API地址 api_key = "替換為實際API Key" # 替換為實際API Keyclient = OpenAI(api_key=api_key, base_url=base_url)# 初始化對話歷史 messages = [{"role": "system", "content": "You are a helpful assistant"}]print("開始對話 (輸入'退出'結束)")while True:# 獲取用戶輸入user_input = input("\n你: ")# 檢查退出條件if user_input.lower() == "退出":print("對話已結束")break# 添加用戶消息到對話歷史messages.append({"role": "user", "content": user_input})# 調用APIresponse = client.chat.completions.create(model="DeepSeek-V3", # 模型名稱messages=messages,temperature=1,stream=True)# 處理流式響應print("AI:", end="", flush=True)full_response = ""for chunk in response:if len(chunk.choices) > 0 and chunk.choices[0].delta.content is not None:content = chunk.choices[0].delta.contentfull_response += contentprint(content, end="", flush=True)# 添加AI回復到對話歷史messages.append({"role": "assistant", "content": full_response})
本地部署免費服務DeepSeek-V3
使用這個改進后的代碼,可以與 DeepSeek-V3 模型進行多輪對話,模型會根據完整的對話歷史生成回復,就像在聊天應用中一樣
這段代碼通過調用 DeepSeek-V3 API 實現持續對話功能:
- 初始化消息歷史并循環獲取用戶輸入
- 將用戶消息添加到歷史中發送請求
- 處理流式響應實時顯示回復內容
- 將完整回復追加到歷史以保持對話上下文
- 支持輸入 “exit” 終止對話并處理可能的異常
此處也有三個地方需要根據自己的修改
- API地址
- API Key
- 模型名稱
# coding=utf-8import requests import json import urllib3# 禁用不安全請求警告(僅用于測試環境) urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)def main():url = "https://api.modelarts-maas.com/v1/chat/completions" # API地址api_key = "yourApiKey" # 把yourApiKey替換成已獲取的API Key # 初始化消息歷史,包含系統提示messages = [{"role": "system", "content": "You are a helpful assistant."}]headers = {'Content-Type': 'application/json','Authorization': f'Bearer {api_key}'}print("==== 開始對話 ====")print("輸入 'exit' 結束對話")while True:# 獲取用戶輸入user_input = input("\n你: ")if user_input.lower() == "exit":break# 添加用戶消息到歷史messages.append({"role": "user", "content": user_input})# 準備請求數據data = {"model": "DeepSeek-V3", # 模型名稱"messages": messages,"stream": True,"temperature": 0.6}try:# 發送請求response = requests.post(url, headers=headers, data=json.dumps(data), verify=False, stream=True)if response.status_code == 200:print("助手: ", end='', flush=True)full_response = ""# 處理流式響應for line in response.iter_lines():if line:line = line.decode('utf-8')if line.startswith('data: '):data = line[6:]if data != '[DONE]':try:json_data = json.loads(data)if 'choices' in json_data and len(json_data['choices']) > 0:delta = json_data['choices'][0].get('delta', {})content = delta.get('content', '')if content:print(content, end='', flush=True)full_response += contentexcept json.JSONDecodeError as e:print(f"\n解析響應時出錯: {e}")# 添加助手回復到消息歷史if full_response:messages.append({"role": "assistant", "content": full_response})print() # 換行else:print(f"\n請求失敗,狀態碼: {response.status_code}")print(response.text)except requests.exceptions.RequestException as e:print(f"\n請求異常: {e}")breakif __name__ == '__main__':main()
免費服務模型體驗-文本對話
1、進入模型體驗中心
2、免費服務模型體驗
3、體驗成功
總結
華為云Flexus整合DeepSeek-V3/R1提供低成本高效開發路徑:通過ModelArts Studio快速開通免費服務,基于Rest API和OpenAI SDK兼容調用實現V3對話生成與R1邏輯推理,結合MoE架構靈活適配輕量/復雜場景,顯著縮短開發周期并降低資源成本。