Qwen2.5-Coder-7B-Instruct FastApi 部署调用
时间: 2025-02-21 14:23:01 浏览: 180
### 使用 FastAPI 部署和调用 Qwen2.5-Coder-7B-Instruct 模型
#### 安装依赖库
为了能够顺利运行并部署该模型,需安装必要的 Python 库。这包括 `transformers` 和 `torch` 等用于加载预训练模型及其权重文件;以及 `fastapi` 及其 Uvicorn 服务器来创建 API 接口。
```bash
pip install transformers torch fastapi uvicorn
```
#### 加载模型
通过 Hugging Face Transformers 库可以方便地加载 Qwen2.5-Coder-7B-Instruct 模型。具体实现如下:
```python
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2.5-Coder-7B-Instruct")[^1]
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-Coder-7B-Instruct", trust_remote_code=True)
```
#### 创建 FastAPI 应用程序
定义一个简单的 FastAPI 应用来接收 POST 请求并将输入文本传递给已加载的模型进行推理处理。
```python
from fastapi import FastAPI, Request
import json
app = FastAPI()
@app.post("/predict/")
async def predict(request: Request):
data = await request.json()
input_text = data.get('input', '')
inputs = tokenizer(input_text, return_tensors="pt")
outputs = model.generate(**inputs)
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
response_data = {"output": result}
return JSONResponse(content=response_data)
```
此部分代码实现了从 HTTP 请求中获取用户提交的数据作为模型输入,并返回由模型生成的结果字符串。
#### 启动服务
最后一步是在本地环境中启动 FastAPI Web 服务器实例以便测试接口功能。
```bash
uvicorn main:app --reload
```
这里假设上述所有代码保存在一个名为 `main.py` 文件内,则可以通过命令行执行以上指令开启开发模式下的自动重载功能的服务监听。
阅读全文
相关推荐


















