| 对接方式 | 适用场景 | 难度 |
|---|---|---|
| 本地直接运行 | 学习 / 内网部署 | ⭐⭐ |
| Python 调用(transformers) | 二次开发 / 微调 | ⭐⭐⭐ |
| 封装成 API(FastAPI) | 业务系统对接 | ⭐⭐⭐⭐ |
| 使用 Ollama / vLLM | 快速上线 | ⭐ |
| 企业级部署 | 高并发 / 生产 | ⭐⭐⭐⭐⭐ |
curl -fsSL https://ollama.com/install.sh | shollama pull llama3ollama run llama3POST http://localhost:11434/api/generate{
"model": "llama3",
"prompt": "你好,介绍一下自己",
"stream": false
}✅ 优点:
pip install transformers torch acceleratefrom transformers import AutoModelForCausalLM, AutoTokenizer
model_path = "meta-llama/Meta-Llama-3-8B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(
model_path,
device_map="auto",
torch_dtype="auto"
)
prompt = "用中文解释什么是大语言模型"
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=200)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))⚠️ 注意:
from fastapi import FastAPI
from transformers import pipeline
app = FastAPI()
generator = pipeline(
"text-generation",
model="meta-llama/Meta-Llama-3-8B-Instruct",
device=0
)
@app.post("/chat")
def chat(prompt: str):
result = generator(prompt, max_new_tokens=200)
return {"response": result[0]["generated_text"]}启动:
uvicorn main:app --host 0.0.0.0 --port 8000| 组件 | 作用 |
|---|---|
| vLLM | 高性能推理 |
| FastAPI | 接口封装 |
| Docker | 环境隔离 |
| Nginx | 负载均衡 |
| Redis | 限流 / 缓存 |
pip install vllmfrom vllm import LLM, SamplingParams
llm = LLM(model="meta-llama/Meta-Llama-3-8B-Instruct")
params = SamplingParams(temperature=0.7, max_tokens=200)
result = llm.generate(["你好"], params)
print(result)✅ 适合:
RestTemplate restTemplate = new RestTemplate();
String url = "http://localhost:11434/api/generate";
Map body = Map.of(
"model", "llama3",
"prompt", "你好",
"stream", false
);
Map result = restTemplate.postForObject(url, body, Map.class); 你可以直接告诉我:
我可以直接给你 一套可运行代码 + 部署方案。