当前位置: 首页 > wzjs >正文

宣传网站建设方案模板地区门户网站 wap app

宣传网站建设方案模板,地区门户网站 wap app,成品在线短视频免费入口,衡水教育行业网站建设文章目录 简介代码实战调用官方API协程异步调用异步协程 方法二 vllm_infer 简介 使用协程调用DeepSeek的API,发现效果并不明显,没有加速的效果。 但如是本地部署DeepSeek,本地部署需要支持异步调用,我使用 llamafactory 部署&am…

文章目录

    • 简介
    • 代码实战
      • 调用官方API
      • 协程异步调用
      • 异步协程 方法二
    • vllm_infer

简介

使用协程调用DeepSeek的API,发现效果并不明显,没有加速的效果。
但如是本地部署DeepSeek,本地部署需要支持异步调用,我使用 llamafactory 部署,发现协程加速的效果还是很显著的。

代码实战

调用官方API

DeepSeek官方文档 https://api-docs.deepseek.com/zh-cn/
python 的调用代码如下,该调用方式为同步调用速度很慢。

# Please install OpenAI SDK first: `pip3 install openai`from openai import OpenAIclient = OpenAI(api_key="<DeepSeek API Key>", base_url="https://api.deepseek.com")response = client.chat.completions.create(model="deepseek-chat",messages=[{"role": "system", "content": "You are a helpful assistant"},{"role": "user", "content": "Hello"},],stream=False
)
print(response.choices[0].message.content)

import os
from tqdm import tqdm
from dotenv import load_dotenv
# 加载 .env 文件的密钥
load_dotenv()api_key = os.getenv("deepseek_api")
queries = ["What is AI?","How does deep learning work?","Explain reinforcement learning.","人工智能的应用领域有哪些?","大模型是如何进行预训练的?","什么是自监督学习,它有哪些优势?","Transformer 结构的核心组件是什么?","GPT 系列模型是如何生成文本的?","强化学习在游戏 AI 中的应用有哪些?","目前 AI 领域面临的主要挑战是什么?"
]answer1 = []for query in tqdm(queries):# 官方提供的API调用方式response = client.chat.completions.create(model="deepseek-chat",messages=[{"role": "system", "content": "You are a helpful assistant"},{"role": "user", "content": "Hello"},],stream=False,)content = response.choices[0].message.contentanswer1.append(content)

为了防止在分享代码的时候,导致 API Key 泄露,我把key保存到 .env 文件中,通过load_dotenv加载密钥。
在这里插入图片描述

协程异步调用

import asyncio
from typing import List# from langchain.chat_models import ChatOpenAI
from langchain_openai import ChatOpenAI
from langchain.schema import SystemMessage, HumanMessage# 初始化模型
llm = ChatOpenAI(model_name="deepseek-chat",# model_name="deepseek-reasoner",openai_api_key=api_key,openai_api_base="https://api.deepseek.com/v1",
)async def call_deepseek_async(query: str, progress) -> str:messages = [SystemMessage(content="You are a helpful assistant"),HumanMessage(content=query),]response = await llm.ainvoke(messages)progress.update(1)return response.contentasync def batch_call_deepseek(queries: List[str], concurrency: int = 5) -> List[str]:semaphore = asyncio.Semaphore(concurrency)progress_bar = tqdm(total=len(queries), desc="Async:")async def limited_call(query: str):async with semaphore:return await call_deepseek_async(query, progress_bar)tasks = [limited_call(query) for query in queries]return await asyncio.gather(*tasks)# for python script 
# responses = asyncio.run(batch_call_deepseek(queries, concurrency=10))# for jupyter
response = await batch_call_deepseek(queries, concurrency=10)

注意:异步调用需要使用 await 等待。

下述是tqdm 另外的一种,协程进度条的写法:

from tqdm.asyncio import tqdm_asyncio
results = await tqdm_asyncio.gather(*tasks)

上述的异步协程代码,我调用DeepSeek的API,没有加速效果,我怀疑官方进行了限速。

我使用本地llamafactory部署的DeepSeek,上述异步协程的效果加速明显。

llamafactory vllm本地部署 deepseek的脚本,只支持 linux 系统。

deepseek_7B.yaml 文件内容:

model_name_or_path: deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
template: deepseek3
infer_backend: vllm
vllm_enforce_eager: true
trust_remote_code: true

linux 部署脚本:

 nohup llamafactory-cli api deepseek_7B.yaml > deepseek_7B.log 2>&1 &

异步协程 方法二

下述是 ChatGPT 生成的另外一种异步协程写法。
(下述方法我没有在本地部署的API上测试过,仅供大家参考)

import asyncio
from tqdm.asyncio import tqdm_asyncioanswer = []async def fetch(query):response = await client.chat.completions.create(model="deepseek-chat",messages=[{"role": "system", "content": "You are a helpful assistant"},{"role": "user", "content": query},],stream=False,)return response.choices[0].message.contentasync def main():tasks = [fetch(query) for query in queries]results = await tqdm_asyncio.gather(*tasks)answer.extend(results)asyncio.run(main())

vllm_infer

如果你是linux系统,那么相比API调用,最快的方式就是vllm推理。
你需要使用下述脚本,
https://github.com/hiyouga/LLaMA-Factory/blob/main/scripts/vllm_infer.py

python vllm_infer.py \
--model_name_or_path deepseek-ai/DeepSeek-R1-Distill-Qwen-7B \
--template deepseek3 \
--dataset industry_cls \
--dataset_dir ../../data/llamafactory_dataset/ \
--save_name output/generated_predictions.jsonl

llamafactory 可以指定自定义的数据集地址,你需要构建相应格式的数据集文件。

数据集文件夹下的文件:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


文章转载自:

http://1WtWJgE1.bfrff.cn
http://kD2qtPmE.bfrff.cn
http://Yk4RRn50.bfrff.cn
http://XB7RljYm.bfrff.cn
http://7c9LrAg7.bfrff.cn
http://rTemQs8z.bfrff.cn
http://BYbA8yYW.bfrff.cn
http://EXwyslxO.bfrff.cn
http://SUcYwjh3.bfrff.cn
http://c9gXp4XZ.bfrff.cn
http://wcR0cbuf.bfrff.cn
http://fs5eX0BY.bfrff.cn
http://PheGGxyB.bfrff.cn
http://haTGEYM6.bfrff.cn
http://z9V6Bi9r.bfrff.cn
http://HtCmZ700.bfrff.cn
http://kZ6Ab9C9.bfrff.cn
http://fsS3Hys2.bfrff.cn
http://fIv4TXtH.bfrff.cn
http://6esLGf8v.bfrff.cn
http://ysoAEs0H.bfrff.cn
http://xGhXDlXA.bfrff.cn
http://6f9BCqZN.bfrff.cn
http://6XJRCsmN.bfrff.cn
http://aDGH5GaG.bfrff.cn
http://1cTJmcFN.bfrff.cn
http://A9fPxBzz.bfrff.cn
http://6lMCRaj7.bfrff.cn
http://krbY5cb0.bfrff.cn
http://6wcPIqvk.bfrff.cn
http://www.dtcms.com/wzjs/736329.html

相关文章:

  • 专门做橱柜衣柜效果图的网站织梦手机网站模板安装
  • 网站建设求职信息青岛市网站建设
  • 创意网站 案例 下载成都企业展厅设计公司
  • wordpress全站广告位aspnet网站开发书
  • 深圳汽车网站建设阳高县网站建设
  • 网站发展的方向餐饮品牌设计哪个公司最好
  • 有个网站301什么做游戏奖金不被发现网站
  • 南京专业做网站的公司汕头网站建设制作方案
  • 企业宣传网站多大主机四川专做餐饮的网站
  • 域名备案查询站长之家网站开发 ie兼容
  • 公司做网站需要准备什么材料网络营销的发展趋势和前景
  • 做网站的销售能干什么网站安全加固
  • fms 视频网站建设谷歌推广哪家好
  • discuz网站建设教学视频长治网站制作怎么做
  • 墙外必去的网站厦门石材网站建设
  • 有哪些做图纸的网站广东省建设工程造价信息网官网
  • 大神做的动漫网站wordpress注册取消邮箱验证码
  • 东莞住房和城乡建设厅网站个人网站备案信息填写
  • 网站开发的有关公司苏州市住房和城乡建设局网站地震局
  • 263企业邮箱官方入口郑州seo排名优化
  • 深圳网站建设 诺骐网建设摩托车官网110
  • 中云建设集团网站怎么加速网页
  • 哪个素材网站免费特色专业建设网站
  • php企业网站开发pdf株洲seo排名
  • 江西建设银行官方网站seo推广效果
  • 厦门学校网站建设建设银行网站总是崩溃
  • dede网站优化网站开发培训费
  • 网站打开慢原因亚马逊官网入口
  • 长沙创建一个网站需要多少钱网站建设代理政策
  • 全站仪建站视频比较权威的房产网站