卡卷网
当前位置:卡卷网 / 每日看点 / 正文

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?

作者:卡卷网发布时间:2024-12-09 14:11浏览数量:188次评论数量:0次

魔搭社区开放了免费的开源模型推理API,仅需使用魔搭的SDK Token,就可以通过简单的API请求探索各种强大的开源模型的使用。通过API-Inference接口,无需本地的GPU和环境设置,就能轻松的依托不同开源模型的能力,展开富有创造力的尝试,与工具结合调用,来构建多种多样的AI应用原型。

1. 用魔搭API-Inference建立与开源模型的链接

魔搭开源模型推理API提供了一种快速且免费的方式来探索不同任务的模型。当前的公测期间,我们主要通过提供OpenAI格式兼容的大语言模型API接口。后续更多魔搭上的开源模型,也会陆续接入来为开发者提供更好的推理API服务,包括:

  • 多模态文本生成:包括视觉理解大模型和语音多模态大模型。
  • 图像生成:使用当下流行的文生图模型轻松生成图像。
  • 经典人工智能任务:比如语音识别,语音合成,图像分割等。

2. 魔搭API-Inference公测期间支持的模型

API-Inference主要为在魔搭社区中获得广泛关注的开源模型(参考了点赞,下载等数据)提供便利的调用接口。因此,在能力更强,关注度更高的下一代开源模型发布之后,现有的模型支持清单也会持续迭代。当前支持的模型列表如下:

  • Qwen/Qwen2.5-Coder-32B-Instruct
  • Qwen/Qwen2.5-Coder-14B-Instruct
  • Qwen/Qwen2.5-Coder-7B-Instruct
  • Qwen/Qwen2.5-72B-Instruct
  • Qwen/Qwen2.5-32B-Instruct
  • Qwen/Qwen2.5-14B-Instruct
  • Qwen/Qwen2.5-7B-Instruct

3. 魔搭API-Inference使用方法

当前魔搭平台提供的免费模型推理API,针对大语言模型提供OpenAI API兼容的接口。在通过pip install openai安装OpenAI的library,就可以通过标准的调用方式使用:

from openai import OpenAI client = OpenAI( api_key="MODELSCOPE_SDK_TOKEN", # ModelScope Token base_url="https://api-inference.modelscope.cn/v1" ) response = client.chat.completions.create( model="Qwen/Qwen2.5-Coder-32B-Instruct", # ModleScope Model-Id messages=[ { 'role': 'system', 'content': 'You are a helpful assistant.' }, { 'role': 'user', 'content': '用python写一下快排' } ], stream=True ) for chunk in response: print(chunk.choices[0].delta.content, end='', flush=True)

在这个范例里,针对魔搭平台提供的API,适配的有几个地方:

  • base url 指向魔搭的服务:api-inference.modelscope.cn
  • api_key 使用魔搭的SDK token
  • 模型名字(model)使用魔搭上开源模型的Model Id,例如Qwen/Qwen2.5-Coder-32B-Instruct

这其中,魔搭的SDK Token,可以从您的魔搭账号中获取:

modelscope.cn/my/myacce

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第1张

魔搭的SDK Token

4. 在Cherry Studio中使用魔搭API-Inference

第一步:设置模型API提供商及类型

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第2张

设置模型API提供商及类型

第二步:添加与管理模型并进行测试

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第3张

设置API密钥及Base_URL地址

添加新模型:

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第4张

添加新模型及管理删除存在模型


5. 最佳实践:

Cursor+Inference API 代码助手

我们选取了使用Cursor来实现魔搭API-Inference的最佳实践,这里我们选用了魔搭提供的Qwen2.5-Coder-32B-Instruct模型的免费推理API,来提升开发者的开发效率。

第一步:环境配置

在获取 api_key(ModelScope SDK Token),base_url(api-inference.modelscope.cn),以及model(Qwen/Qwen2.5-Coder-32B-Instruct)信息后,将其填写到Cursor的模型配置页面(设置->模型)

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第5张

第二步:代码生成

使用Cursor chat功能(command+i),写一个“番茄钟”小应用

prompt:

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第6张

代码生成ing:

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第7张



效果:


把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第8张

第三步:tab键写个说明书

用万能tab,写一个产品说明书。

第四步:代码解读,应用完善

使用多轮对话,或者chat,edit等能力,进一步完善应用

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第9张

WebUI+Inference API 本地对话助手

第一步:安装依赖和配置 API key

!pip install gradio modelscope_studio openai

第二步:封装用户输入和对话界面

有了一个基础对话流程后,我们可以借助 gradio 来将它封装为一个对话界面。

使用最基础的 gr.ChatInterface 即可完成一个最基础的对话界面。

import gradio as gr from openai import OpenAI import os client = OpenAI( api_key=os.getenv("MODELSCOPE_ACCESS_TOKEN"), base_url="https://api-inference.modelscope.cn/v1" ) def chat(prompt, history): messages = [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": prompt} ] try: response = client.chat.completions.create( model="Qwen/Qwen2.5-7B-Instruct", messages=messages, ) yield response.choices[0].message.content except Exception as e: yield str(e) # 仅在 Notebook 中使用需要一下代码,如果之前已经定义过 `app`,关闭它 try: app.close() except NameError: # 如果 `app` 不存在,忽略这个异常 pass # end app = gr.ChatInterface(fn=chat, title="Basic Chat") app.launch(server_port=7860)

把开源大模型部署在本地(只做推理),需要哪些硬件、软件?如何实现推理模块的数据输入、结果输出?  第10张

参考链接

[1] 开发者福利,魔搭推出免费模型推理API,注册就送每日2000次调用!

[2] 大语言模型客户端工具--Cherry Studio - 知乎


END

免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。

卡卷网

卡卷网 主页 联系他吧

请记住:卡卷网 Www.Kajuan.Net

欢迎 发表评论:

请填写验证码