大模型模型部署和暴露接口

创建环境

激活案件

安装相关依赖

复制代码
conda create -n fastApi python=3.10
conda activate fastApi
conda install -c conda-forge fastapi uvicorn transformers pytorch
pip install safetensors sentencepiece protobuf

新建文件夹

复制代码
mkdir App
cd App
touch main.py

复制代码main.py

复制代码
from fastapi import FastAPI
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

app = FastAPI()

# 模型路径
model_path = "/root/autodl-tmp/Models/deepseek-r1-1.5b-merged"

# 加载 tokenizer (分词器)
tokenizer = AutoTokenizer.from_pretrained(model_path)

# 加载模型并移动到可用设备(GPU/CPU)
device = "cuda" if torch.cuda.is_available() else "cpu"
model = AutoModelForCausalLM.from_pretrained(model_path).to(device)

@app.get("/generate")
async def generate_text(prompt: str):
    # 使用 tokenizer 编码输入的 prompt
    inputs = tokenizer(prompt, return_tensors="pt").to(device)
    
    # 使用模型生成文本
    outputs = model.generate(inputs["input_ids"], max_length=150)
    
    # 解码生成的输出
    generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
    
    return {"generated_text": generated_text}

运行app.py文件

复制代码
uvicorn main:app --reload --host 0.0.0.0

可能报错,升级 huggingface-hub,运行以下命令升级到兼容版本

复制代码
pip install --upgrade huggingface-hub
uvicorn main:app --reload --host 0.0.0.0

浏览器打开

复制代码
http://localhost:8000/docs

后端接口

然后就是做一个网站调用大模型接口,类似如下

前端项目:https://github.com/huangyf2013320506/magic_conch_frontend.git

复制代码
npm instal1
npm run dev

后端项目:https://github.com/huangyf2013320506/magic_conch_backend.git

记得把jdk改一下,之前一直用的是1.8

把网址改成"http://127.0.0.1:5173",因为前端网址是这

编译一下

然后运行启动就行,注意要在在MagicconchBackendApplication.java 类中启动

相关推荐
乌萨奇也要立志学C++34 分钟前
【Linux】进程概念(六):进程地址空间深度解析:虚拟地址与内存管理的奥秘
linux·运维
月殇_木言5 小时前
Linux 线程
linux
wangjialelele5 小时前
Linux中的线程
java·linux·jvm·c++
tritone7 小时前
我在阿贝云免费服务器上搭建RustDesk自建服务器(Self-Hosting)的真实体验【推荐】
运维·服务器
2301_800050997 小时前
DNS 服务器
linux·运维·笔记
慌糖7 小时前
自动化接口框架搭建分享-pytest第二部分
运维·自动化·pytest
Lin_Aries_04217 小时前
容器化简单的 Java 应用程序
java·linux·运维·开发语言·docker·容器·rpc
SELSL7 小时前
SQLite3的API调用实战例子
linux·数据库·c++·sqlite3·sqlite实战
洲覆7 小时前
Redis 核心数据类型:从命令、结构到实战应用
服务器·数据库·redis·缓存
岁岁种桃花儿7 小时前
详解 Kubernetes 命令:kubectl exec -it nginx -- bash 及实战场景
运维·nginx·kubernetes