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

创建环境

激活案件

安装相关依赖

复制代码
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 类中启动

相关推荐
浅念-6 小时前
Redis基础详解:单线程模型、String与Hash数据结构
服务器·数据库·redis·sql·mysql·nosql数据库·nosql
日常筹谋记6 小时前
自动化仓储安全防护工况评估:明治传感器AS-33C技术适配性分析
大数据·运维·创业创新·业界资讯
susplus6 小时前
【ARM 裸机开发 (IMX6ULL-mini)】GNU工具、Makefile 工程构建、链接脚本详解|C 语言点灯 + 蜂鸣器驱动
linux·arm·makefile·imx6ull
Shadow(⊙o⊙)6 小时前
Linux进阶知识1.0
linux·运维·服务器
>Andre<7 小时前
UFS5.0标准中文全译·卷一:范围、术语与架构
android·linux·嵌入式硬件
用户0510122572967 小时前
Linux下有关QT显示环境变量设置
linux·嵌入式
闲云自留地7 小时前
告别命令恐惧症,openEuler 基础操作 + 文本 + 网络管理实战
linux·运维·云计算
剑指offer.7 小时前
ARM裸机开发-点亮LED灯
linux·服务器·嵌入式硬件
GeW8 小时前
工作忙.基础弱,也能快速拿RHCE?这套方法亲测有效
linux
Wang's Blog8 小时前
Java 接入Redis: 使用Jedis操作Redis
java·服务器·redis