OpenELM 是 Apple 开源的高效 LLM 系列,包含:
sudo apt update
sudo apt install -y python3-venv git
python3 -m venv openelm-env
source openelm-env/bin/activatepip install --upgrade pip
pip install torch transformers accelerate sentencepieceGPU 用户建议安装 CUDA 版 PyTorch(示例):
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121pip install huggingface_hub直接加载官方模型(无需手动下载):
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "apple/OpenELM-3B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)git clone https://huggingface.co/apple/OpenELM-3Bfrom transformers import AutoModelForCausalLM, AutoTokenizer
model_path = "apple/OpenELM-3B"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(model_path)
prompt = "What is OpenELM?"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_length=200)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))运行:
python test_openelm.pypip install fastapi uvicornfrom fastapi import FastAPI
from transformers import AutoModelForCausalLM, AutoTokenizer
app = FastAPI()
model = AutoModelForCausalLM.from_pretrained("apple/OpenELM-3B")
tokenizer = AutoTokenizer.from_pretrained("apple/OpenELM-3B")
@app.post("/generate")
def generate(text: str):
inputs = tokenizer(text, return_tensors="pt")
out = model.generate(**inputs, max_length=200)
return {"result": tokenizer.decode(out[0])}启动:
uvicorn app:app --host 0.0.0.0 --port 8000访问:
http://服务器IP:8000/docsdevice_map="auto"(accelerate)确保:
transformers >= 4.39| 场景 | 方案 |
|---|---|
| 学习测试 | 本地 Python 脚本 |
| 内部使用 | FastAPI |
| 生产环境 | vLLM / TGI(后续可升级) |
如果你需要:
告诉我你的使用场景,我可以给你更精确的方案。