page contents

用Python玩转大模型:本地部署LLM的5个神操作

本地跑大模型,数据不出门、响应快如闪电、还不用交月费。这年头,谁还愿意把私密数据喂给云端?Ollama、vLLM这些工具,让16G内存的笔记本也能轻松驾驭7B级别的模型。自己当AI的主人,不香吗?

attachments-2026-04-8znslt8e69e826afd73fa.png本地跑大模型,数据不出门、响应快如闪电、还不用交月费。这年头,谁还愿意把私密数据喂给云端?Ollama、vLLM这些工具,让16G内存的笔记本也能轻松驾驭7B级别的模型。自己当AI的主人,不香吗?


神操作一:Ollama + Python,三行代码开聊

Ollama是本地部署的“瑞士军刀”,安装简单到哭。Python官方库直接调用,连HTTP请求都省了。

import ollama
response = ollama.chat(model='qwen3:4b', messages=[
  {'role''user''content''你好啊!'}
])
print(response['message']['content'])


核心优势:自动管理模型下载和运行时,一行ollama pull qwen3:4b搞定一切。配上OpenWebUI,立刻拥有私人ChatGPT界面。


神操作二:vLLM,速度狂魔专治慢吞吞

如果你有块NVIDIA显卡,vLLM就是你的终极武器。它用PagedAttention技术,把显存利用率榨干,吞吐量比普通方案高3-5倍。

from vllm import LLM, SamplingParams
llm = LLM(model="Qwen/Qwen2.5-7B-Instruct")
sampling_params = SamplingParams(temperature=0.7, max_tokens=256)
outputs = llm.generate("解释量子纠缠", sampling_params)
for output in outputs:
    print(output.outputs[0].text)

实测数据:在RTX 4090上,vLLM跑Qwen2.5-7B,每秒能生成120+个token。做批量推理或API服务,选它准没错。


神操作三:llama-cpp-python,CPU党最后的倔强

没独显?别慌!llama-cpp-python让你的老旧笔记本重获新生。它能把模型量化成4-bit,7B模型只需6GB内存就能跑。

# 安装带Metal加速的Mac版本(Windows/Linux类似)
CMAKE_ARGS="-DLLAMA_METAL=on" pip install llama-cpp-python
from llama_cpp import Llama
llm = Llama(
    model_path="./qwen2-7b.Q4_K_M.gguf",
    n_gpu_layers=0,  # CPU模式设为0
    n_ctx=2048
)
output = llm("写一首关于春天的诗", max_tokens=128)
print(output["choices"][0]["text"])

关键技巧:去HuggingFace Hub下载GGUF格式的模型,认准Q4_K_M这种量化版本,体积小、速度快。


神操作四:LangChain编排,让AI自己干活

单个模型太无聊?用LangChain把它们串起来,打造自动化工作流。比如,让一个模型查资料,另一个模型写报告

from langchain_community.llms import Ollama
from langchain_core.prompts import ChatPromptTemplate

llm = Ollama(model="qwen3:4b")
prompt = ChatPromptTemplate.from_template("用{style}风格总结:{topic}")
chain = prompt | llm

result = chain.invoke({"style""鲁迅""topic""人工智能的利与弊"})
print(result)

这招特别适合做RAG(检索增强生成),把本地文档库变成AI的知识源,再也不用担心AI胡说八道了。


神操作五:Docker一键封装,开发到交付无缝衔接

写好的脚本怎么给同事用?打包成Docker镜像,一次构建,到处运行。下面是个极简的FastAPI服务化例子。

FROM python:3.11-slim
RUN pip install "vllm>=0.5.0" "fastapi[all]"
COPY ./app.py /app/
CMD ["uvicorn""app:app""--host""0.0.0.0""--port""8000"]


# app.py
from fastapi import FastAPI
from vllm import LLM, SamplingParams

app = FastAPI()
llm = LLM(model="Qwen/Qwen2.5-7B-Instruct")

@app.post("/generate")
def generate(prompt: str):
    outputs = llm.generate(prompt, SamplingParams(max_tokens=100))
    return {"text": outputs[0].outputs[0].text}

docker build -t my-llm-api . 然后 docker run -p 8000:8000 my-llm-api,一个生产级的API服务就诞生了。

更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

1979 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 2228 文章
  3. Pack 1979 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章