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

数字人开发01--后端服务配置

这是一个系列文章,主要介绍基于大模型的实时数字人的开发,本文是第一篇,主要介绍后端服务器环境的配置。

0、服务器硬件

我采用的是ucloud的云端服务器,配有3090的显卡,1.5元/时。操作系统用的是ubuntu22.04。

1、NVIDIA 驱动安装

sudo apt update
sudo apt install ubuntu-drivers-common# 自动安装合适的版本
sudo ubuntu-drivers install
#安装完成后重启
sudo shutdown -r now#重启完成后,验证
nvidia-smi

2、安装python

#安装python
sudo apt install python3 python3-pip python3-dev#安装uv
curl -LsSf https://astral.sh/uv/install.sh | sh

uv在国内,比较麻烦,用上面的命令几乎成功不了。用下面命令再次尝试:

# 安装
pip install uv#验证
uv --version# 配置环境变量
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc #再次验证
uv --version

在这里插入图片描述
测试一下,新建一个项目:

mkdir -p ~/work
cd ~/work
uv init my_adh
cd my_adh

改源:
进入my_adh目录,找到pyproject.toml, 在开头加入下面内容:

[[tool.uv.index]]
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
default = true

保存,添加openai的库:

uv add openai

在这里插入图片描述

3、大模型本地部署

3.1、安装ollama:

curl -fsSL https://ollama.com/install.sh | sh

编辑服务:

sudo systemctl edit ollama.service

添加如下内容:

[Service]
Environment=“OLLAMA_HOST=0.0.0.0”

3.2、安装大模型:

ollama run qwen3:8bollama run deepseek-r1:7b

下面是测试代码,用于测试本地模型。

import os                                                                                                               
from openai import OpenAI                                                                                               client = OpenAI(                                                                                                        api_key = "ollama",                                                                                                 base_url = "http://localhost:11434/v1"                                                                              
)                                                                                                                       completion = client.chat.completions.create(                                                                            # model="deepseek-r1",                                                                      model="qwen3:8b", # 可按需更换模型名称,名称要和ollama list中的名字对上                                                                               messages=[                                                                                                          {'role': 'user', 'content': '西安有名的地方有哪些?'}                                                                    ]                                                                                                                   
)                                                                                                                       print(" 最终答案:")                                                                                                     
print(completion.choices[0].message.content)      

好了,第一篇结束了。
//~~

http://www.dtcms.com/a/310972.html

相关文章:

  • ABP VNext + Redis Bloom Filter:大规模缓存穿透防护与请求去重
  • 嵌入式第十八课!!数据结构篇入门及单向链表
  • Python 类三大方法体系深度解析:静态方法、类方法与实例方法
  • LeetCode 每日一题 2025/7/28-2025/8/3
  • js的BOM
  • Redis核心机制与实践深度解析:从持久化到分布式锁
  • 中科院开源HYPIR图像复原大模型:1.7秒,老照片变8K画质
  • 北斗变形监测在地质灾害预警中的应用
  • 机器学习消融实验:方法论演进、跨领域应用与前沿趋势
  • sqli-labs:Less-19关卡详细解析
  • 基于单片机智能雨刷器/汽车刮水器设计
  • CCF IVC 2025“汽车安全攻防赛” -- Crypto -- WriteUp
  • 进程 Vs 线程
  • 小迪23年-22~27——php简单回顾(1)
  • 滚珠花键在汽车制造中有哪些高要求?
  • 【05】VisionMaster入门到精通——圆查找
  • 内网渗透——红日靶场七
  • 排序算法-堆排序
  • MybatisPlus-静态工具DB
  • 在 AKS 中运行 Azure DevOps 私有代理-1
  • 云原生三剑客:Kubernetes + Docker + Spring Cloud 实战指南与深度整合
  • 基于 LFU 策略的存储缓存系统设计与实现
  • 深入 Go 底层原理(八):sync 包的实现剖析
  • Node.js 操作 MongoDB
  • 【机器学习】“回归“算法模型的三个评估指标:MAE(衡量预测准确性)、MSE(放大大误差)、R²(说明模型解释能力)
  • 分布式事务----spring操作多个数据库,事务以及事务回滚还有用吗
  • Oracle 11gR2 Clusterware应知应会
  • 【unity组件_Transform 】
  • 设计模式篇:在前端,我们如何“重构”观察者、策略和装饰器模式
  • 蓝桥杯----串口