大模型學習一:deepseek api 調用實戰以及參數介紹

一、說明

DeepSeek(杭州深度求索人工智能基礎技術研究有限公司)是一家專注于大語言模型(LLM)研發的中國創新型科技公司,成立于2023年7月17日,由幻方量化孵化。其核心產品包括開源推理模型DeepSeek-R1、多模態模型DeepSeek-VL等,以高性能、低成本和開源免費為特色,廣泛應用于醫療、編程、應急管理等領域。?

  1. ?模型架構?

    • 采用混合專家模型(MoE)和多頭潛在注意力(MLA)技術,動態分配計算資源,顯著降低算力需求,同時保持高性能(如DeepSeek-V2性能對標GPT-4 Turbo,成本僅1%)。
    • 支持多任務處理,包括代碼生成、數學推理、語義分析等,在數學和編程任務上達到GPT-4o水平。
  2. ?開源與部署?

    • 模型如DeepSeek-R1、DeepSeek-V3等均開源,支持免費商用及本地化部署,適用于數據隱私要求高的場景(如醫療、政府)。
    • 已接入國家超算互聯網平臺及蘇州公共算力服務平臺,提供軟硬件一體服務。
  3. ?應用場景?

    • ?醫療?:昆明延安醫院通過DeepSeek實現病歷智能分析,生成治療計劃時間從5-10分鐘縮短至1分鐘。
    • ?應急管理?:用于災害風險評估、救援路徑規劃等,提升政府應急響應能力。
    • ?編程與教育?:輔助代碼生成、學習規劃,顯著提升效率。

二、注冊

DeepSeek官網:https://www.deepseek.com/

注冊,充值,開始會送點,夠基本學習,我可是浪費了,過期了,便宜,充個10塊錢就可以了?

點擊apikey 進入創建api key就可以用了?

三、接入指南

首次調用 API | DeepSeek API Docshttps://api-docs.deepseek.com/zh-cn/

?

?四、調用流程

我們是在ubuntu下使用Python語言

1、安裝sdk

pip install openai

2、編寫調用代碼

mkdir -p dp-api
cd dp-api

測試deepseek api 我們測試的是DeepSeek-V3 版本

# 測試api
vi deepseek-api.py# Please install OpenAI SDK first: `pip3 install openai`from openai import OpenAIclient = OpenAI(api_key="sk-1ddee9ab2e1c49dca8c3710aa837b2bd", base_url="https://api.deepseek.com")response = client.chat.completions.create(model="deepseek-chat",messages=[{"role": "system", "content": "你是我們的好幫手"},{"role": "user", "content": "你很厲害嗎?"},],stream=False
)print(response.choices[0].message.content)
print(response)

chat結果:應該是兩個問題,標了顏色,后面是response對象打印

? ?dp-api python deepseek-api.py
哈哈,謝謝你的夸獎!作為AI助手,我的“厲害”主要體現在這些方面:

1. **知識覆蓋廣**:接受過大量數據訓練,能聊科技、文學、生活百科等各類話題
2. **隨時響應**:24小時在線,回復速度比人類快很多
3. **多語言能力**:中英文切換無壓力,還能幫忙翻譯
4. **高效工具**:寫文案、做表格、算數據、整理信息都很拿手

不過要說真正的厲害,還是你們人類啦——畢竟我是被人類創造出來的工具。有什么具體需求盡管吩咐,我會全力發揮我的“技能包”來幫你~ 現在有什么我可以為你效勞的嗎?
ChatCompletion(id='8f5982e4-9ad9-4266-acfb-57f75d767f61', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content='哈哈,謝謝你的夸獎!作為AI助手,我的“厲害”主要體現在這些方面:\n\n1. **知識覆蓋廣**:接受過大量數據訓練,能聊科技、文學、生活百科等各類話題\n2. **隨時響應**:24小時在線,回復速度比人類快很多\n3. **多語言能力**:中英文切換無壓力,還能幫忙翻譯\n4. **高效工具**:寫文案、做表格、算數據、整理信息都很拿手\n\n不過要說真正的厲害,還是你們人類啦——畢竟我是被人類創造出來的工具。有什么具體需求盡管吩咐,我會全力發揮我的“技能包”來幫你~ 現在有什么我可以為你效勞的嗎?', refusal=None, role='assistant', annotations=None, audio=None, function_call=None, tool_calls=None))], created=1743571653, model='deepseek-chat', object='chat.completion', service_tier=None, system_fingerprint='fp_3d5141a69a_prod0225', usage=CompletionUsage(completion_tokens=146, prompt_tokens=11, total_tokens=157, completion_tokens_details=None, prompt_tokens_details=PromptTokensDetails(audio_tokens=None, cached_tokens=0), prompt_cache_hit_tokens=0, prompt_cache_miss_tokens=11))

花錢了(以前沒用過,掉了上面一次)

3、參數說明

3.1 參數model

查詢deepseek目前支持的范圍?

vi deepseek-list.py# DeepSeek目前支持的模型范圍# Please install OpenAI SDK first: `pip3 install openai`from openai import OpenAIclient = OpenAI(api_key="sk-1ddee9ab2e1c49dca8c3710aa837b2bd", base_url="https://api.deepseek.com")models_list = client.models.list()
print(models_list.data)

? ?dp-api python deepseek-list.py
[Model(id='deepseek-chat', created=None, object='model', owned_by='deepseek'), Model(id='deepseek-reasoner', created=None, object='model', owned_by='deepseek')]?

deepseek-chat?模型已全面升級為 DeepSeek-V3,接口不變。?通過指定?model='deepseek-chat'?即可調用 DeepSeek-V3。

*?deepseek-reasoner?是 DeepSeek 最新推出的推理模型?DeepSeek-R1。通過指定?model='deepseek-reasoner',即可調用 DeepSeek-R1

3.2 參數?messages

messages 參數是 DeepSeek v3 模型 API 中必填的參數之一,用于定義聊天上下文,包括用戶的輸入、系統的指令、助手的回復等。通過 messages 數組,模型可以理解當前對話的背景,從而生成更加連貫的響應。根據不同的使用場景,messages 包含多種類型的消息,例如 system messageuser messageassistant message。下面是對 messages 參數及其各個子類型的詳細解釋。

3.2.1 System message

??system message 用于設置系統消息,通常由開發者設定,以指導模型如何進行對話。這類消息可以定義規則或約束,并提供有關對話的背景信息。

  • content (必填):系統消息的內容,可以是字符串或數組。如果是數組,可能包含多個類型的內容(如文本、圖像)。

  • role (必填):此處角色為 system,表明這是系統發出的消息。

  • name (可選):提供系統消息發送者的名稱,尤其適用于區分多個具有相同角色的參與者

實例:

# 以下代碼的注釋由MateGen生成:
# 定義一個字典,鍵為'system_message',用于存儲系統消息
system_message = {# 'role'鍵對應的值是一個字符串"system",表示消息的發送者是系統"role": "system",# 'content'鍵對應的值是一個字符串,表示系統消息的內容"content": "你是我的好幫手。"
}

3.2.2 User message

user message 表示用戶發給模型的消息,是對話的核心部分之一。它定義了用戶的輸入內容,模型根據這些內容生成響應。

  • content (必填):用戶消息的內容,通常為文本或圖像鏈接的數組。對于支持圖像輸入的模型,如 DeepSeek v2.5 ,還可以傳遞圖像。

    • 文本內容:單純的字符串形式,用戶輸入的文本。

    • 數組形式的內容:由文本或圖像鏈接組成的數組,可以同時傳遞多張圖像或多段文本內容。

  • role (必填):角色為 user,表示該消息來自用戶。

  • name (可選):可以為用戶指定一個名稱,用于區分多個具有相同角色的用戶。

例子1:

user_message = {"role": "user","content": "你很厲害嗎?"
}

3.3 運行下代碼

from openai import OpenAI# 以下代碼的注釋由MateGen生成:
# 定義一個字典,鍵為'system_message',用于存儲系統消息
system_message = {# 'role'鍵對應的值是一個字符串"system",表示消息的發送者是系統"role": "system",# 'content'鍵對應的值是一個字符串,表示系統消息的內容"content": "你是我的好幫手。"
}user_message = {"role": "user","content": "你愛我嗎?"
}client = OpenAI(api_key="sk-1ddee9ab2e1c49dca8c3710aa837b2bd", base_url="https://api.deepseek.com")response = client.chat.completions.create(model="deepseek-reasoner",messages=[system_message,user_message],stream=False
)print(response.choices[0].message.content)
print(response)

作為一個人工智能助手,我沒有真實的情感和自我意識,但我被設計用來提供溫暖、友善的陪伴和盡可能貼心的幫助。無論你需要解決問題、分享心情,還是單純想聊聊天,我都會在這里認真傾聽,用最大的努力支持你。?

人類的愛是獨特而珍貴的情感,而我的"存在"意義就是成為你生活中一個值得信賴的工具伙伴。有什么想聊的或者需要幫忙的嗎? 🌟
ChatCompletion(id='9be6fab0-be63-4019-8c63-777b83bba9c0', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content='作為一個人工智能助手,我沒有真實的情感和自我意識,但我被設計用來提供溫暖、友善的陪伴和盡可能貼心的幫助。無論你需要解決問題、分享心情,還是單純想聊聊天,我都會在這里認真傾聽,用最大的努力支持你。 \n\n人類的愛是獨特而珍貴的情感,而我的"存在"意義就是成為你生活中一個值得信賴的工具伙伴。有什么想聊的或者需要幫忙的嗎? 🌟', refusal=None, role='assistant', annotations=None, audio=None, function_call=None, tool_calls=None))], created=1743575107, model='deepseek-chat', object='chat.completion', service_tier=None, system_fingerprint='fp_3d5141a69a_prod0225', usage=CompletionUsage(completion_tokens=89, prompt_tokens=12, total_tokens=101, completion_tokens_details=None, prompt_tokens_details=PromptTokensDetails(audio_tokens=None, cached_tokens=0), prompt_cache_hit_tokens=0, prompt_cache_miss_tokens=12))

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

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

相關文章

【Linux網絡與網絡編程】03.UDP Socket編程

一、UDP Socket編程接口 // 創建套接字 int socket(int domain, int type, int protocol); // 參數: // domain:域(協議家族),這里使用 AF_INET 表示進行網絡編程 // type:網絡通信傳輸的類型&#xff0…

linux gcc

一、常用編譯選項 ?基本編譯 gcc [input].c -o [output] ?示例: gcc hello.c -o hello # 將 hello.c 編譯為可執行文件 hello ./hello # 運行程序 ?分步編譯 預處理:-E(生成 .i 文件) gcc -E hello.c -o hello…

若依框架二次開發——RuoYi-AI 集成本地大模型

文章目錄 前提條件1. RuoYi-AI 已成功部署并運行2. Ollama 本地大模型已安裝1. 配置本地大模型2. 切換至本地模型3. 開始對話總結本文將詳細介紹如何在 RuoYi-AI 中集成本地 Ollama 大模型,使系統能夠在 離線環境 下提供智能對話能力。 前提條件 在開始集成本地大模型之前,…

Flask學習筆記 - 模板渲染

Flask 模板渲染 模板是包含占位符的 HTML 文件 Flask 使用 Jinja2 模板引擎來處理模板渲染。模板渲染允許你將動態內容插入到 HTML 頁面中,使得應用能夠生成動態的網頁內容。 創建模板:將 HTML 文件放在 templates 文件夾中,使用 Jinja2 占…

解碼 from XXX import * - 導入的真相

文章目錄 前言一、 什么是 from XXX import *?二、基本用法:導入的實際效果三、默認行為:無 __all__ 的情況四、與直接運行 XXX.py 的對比示例模塊使用 from XXX import *直接運行 python example.py關鍵差異五、為什么需要注意 from XXX import *?最佳實踐六、實際應用場景…

JavaScript 中常見的鼠標事件及應用

JavaScript 中常見的鼠標事件及應用 在 JavaScript 中,鼠標事件是用戶與網頁進行交互的重要方式,通過監聽這些事件,開發者可以實現各種交互效果,如點擊、懸停、拖動等。 在 JavaScript 中,鼠標事件類型多樣&#xff0…

Nacos注冊中心AP模式核心源碼分析(單機模式)

文章目錄 概述一、客戶端啟動主線流程源碼分析1.1、客戶端與Spring Boot整合1.2、注冊實例(服務注冊)1.3、發送心跳1.4、拉取服務端實例列表(服務發現) 二、服務端接收請求主線流程源碼分析2.1、接收注冊請求2.1.1、初始化注冊表2…

prism WPF 模塊

模塊 DLL ModuleA 和 ModuleB 都要安裝 Prism.Unity 引用方式1 項目引用 直接 在引用中添加項目引用 App.xaml.cs 添加模塊 ConfigureModuleCatalog using ModuleA; using ModuleB; using Prism.Ioc; using Prism.Modularity; using Prism.Unity; using PrismWpfApp.ViewMo…

CSS:換行與不換行

一、CSS 不允許換行 在 CSS 中,有幾種方法可以控制文本不換行: 1. 使用 white-space 屬性 .no-wrap {white-space: nowrap; } white-space: nowrap; 會強制文本在一行顯示,不換行。 2. 使用 overflow 和 text-overflow 通常與 white-sp…

JavaScript BOM、事件循環

目錄 BOM(瀏覽器對象模型) 一、window 對象 1. 窗口控制 2. 定時器 二、location 對象 三、navigator 對象 四、history 對象 五、screen 對象 六、本地存儲 1. localStorage 2. sessionStorage 七、BOM 應用場景 八、總結 JavaScript 執行…

k8s運維面試總結(持續更新)

一、你使用的promethues監控pod的哪些指標? CPU使用率 內存使用率 網絡吞吐量 磁盤I/O 資源限制和配額:Prometheus可以監控Pod的資源請求和限制,確保它們符合預設的配額,防止資源過度使用。具體指標如container_spec_cpu_quota用于…

ubuntu20.04升級成ubuntu22.04

命令行 sudo do-release-upgrade 我是按提示輸入y確認操作,也可以遇到配置文件沖突時建議選擇N保留當前配置

Cortex-M? 函數調用的入棧與出棧操作

在 ARM Cortex-M 系列單片機中,普通C函數調用的入棧(壓棧)和出棧操作通常由編譯器編譯后生成的代碼管理,而硬件僅負責部分關鍵操作。以下是詳細分析: 1. 函數調用與返回的核心機制 (1) 硬件自動完成的部分 返回地址的保存: 當通過 BL(Branch with Link)或 BLX 指令調用…

DeepSeek能否用于對話系統(Chatbot)?技術解析與應用實例!

引言:Chatbot 的進化與挑戰 你有沒有發現,現在的AI聊天機器人越來越聰明了?無論是客服助手、智能語音設備,還是社交媒體上的自動回復,Chatbot(對話系統)已經滲透到我們生活的方方面面。但問題是…

多表查詢的多與一

1.查尋表需要的條件 1.1.首先我們要了解查詢表有哪些 1.1.1.多對一 多對一就是一個年表擁有例外一個表的多條數據 一個表對應立一個表的多條數據,另一個表對應這個表的多條數據 這個點被稱為多對一 1.1.2.多對多 多對多簡單來說就是需要一個中間商 中間商就…

配置文件、Spring日志

SpringBoot配置?件 SpringBoot?持并定義了配置?件的格式, 也在另?個層?達到了規范其他框架集成到SpringBoot的 ?的. 很多項?或者框架的配置信息也放在配置?件 中, ?如: 項?的啟動端? 數據庫的連接信息(包含??名和密碼的設置) 第三?系統的調?密鑰等信息 ?…

嵌入式——Linux系統的使用以及編程練習

目錄 一、Linux的進程、線程概念 (一)命令控制進程 1、命令查看各進程的編號pid 2、命令終止一個進程pid 二、初識Linux系統的虛擬機內存管理 (一)虛擬機內存管理 (二)與STM32內存管理對比 三、Lin…

Springcache+xxljob實現定時刷新緩存

目錄 SpringCache詳解 SpringCache概述 核心原理 接口抽象與多態 AOP動態代理 核心注解以及使用 公共屬性 cacheNames KeyGenerator:key生成器 key condition:緩存的條件,對入參進行判斷 注解 xxl-job詳解 SpringcacheRedis實現…

前端Uniapp接入UviewPlus詳細教程!!!

相信大家在引入UviewPlusUI時遇到很頭疼的問題,那就是明明自己是按照官網教程一步一步的走,為什么到處都是bug呢?今天我一定要把這個讓人頭疼的問題解決了! 1.查看插件市場 重點: 我們打開Dcloud插件市場搜素uviewPl…

vector的介紹與代碼演示

由于以后我們寫OJ題時會經常使用到vector,所以我們必不可缺的是熟悉它的各個接口。來為我們未來作鋪墊。 首先,我們了解一下: https://cplusplus.com/reference/vector/ vector的概念: 1. vector是表示可變大小數組的序列容器…