Nagy teljesítményű, gyártásra kész LLM API létrehozása a FastAPI segítségével: Lépésről lépésre útmutató

2/19/2026
4 min read

Nagy teljesítményű, gyártásra kész LLM API létrehozása a FastAPI segítségével: Lépésről lépésre útmutató

A FastAPI, mint egy modern, nagy teljesítményű Python Web keretrendszer, népszerű a könnyű használhatósága, sebessége és automatikusan generált API dokumentációja miatt. Különösen az LLM (Large Language Model) alkalmazások háttér API-jának felépítésében mutatja meg a FastAPI a hatalmas előnyeit. Ez a cikk lépésről lépésre bemutatja, hogyan építhetsz egy gyártásra kész LLM API-t a FastAPI segítségével, és feltár néhány bevált gyakorlatot.

Miért válasszuk a FastAPI-t?

Az LLM alkalmazások API-jának felépítésekor a FastAPI a következő kulcsfontosságú előnyöket kínálja:

  • Nagy teljesítmény: Az ASGI-n alapuló FastAPI képes kezelni a nagy konkurens kéréseket, ami elengedhetetlen a gyors válaszokat igénylő LLM alkalmazásokhoz.
  • Aszinkron támogatás: A FastAPI beépített támogatást nyújt az async és await kulcsszavakhoz, ami megkönnyíti az aszinkron műveletek kezelését, például az LLM következtetés meghívását, elkerülve a fő szál blokkolását.
  • Automatikus API dokumentáció: A FastAPI az OpenAPI és a JSON Schema segítségével automatikusan generál interaktív API dokumentációt (Swagger UI), ami megkönnyíti a fejlesztők számára az API tesztelését és használatát.
  • Adatellenőrzés: A FastAPI a Pydantic segítségével végzi az adatellenőrzést, biztosítva a kérés paramétereinek helyességét, csökkentve a hibákat.
  • Függőségi injektálás: A FastAPI függőségi injektálási rendszere megkönnyíti az erőforrások, például az LLM modellek kezelését és megosztását.
  • Aktív közösség: A FastAPI hatalmas és aktív közösséggel rendelkezik, amelyből bőséges erőforrásokhoz és támogatáshoz juthatsz.

Előkészületek

  1. Python telepítése: Győződj meg arról, hogy telepítve van a Python 3.7 vagy újabb verziója.

  2. FastAPI és Uvicorn telepítése: Telepítsd a FastAPI-t és az Uvicorn-t (ASGI szerver) a pip segítségével:

    pip install fastapi uvicorn
    
  3. LLM modell kiválasztása: Válaszd ki a használni kívánt LLM modellt. Lehet OpenAI modell, vagy nyílt forráskódú modell, például a TinyLlama. Ha az OpenAI-t választod, be kell szerezned egy OpenAI API kulcsot. Ha a TinyLlama-t választod, le kell töltened a modellfájlt.

1. lépés: FastAPI alkalmazás létrehozása

Hozz létre egy main.py nevű fájlt, és add hozzá a következő kódot:

from fastapi import FastAPI, HTTPException
from pydantic import BaseModel

app = FastAPI(title="LLM API", description="Egy egyszerű API az LLM-ekkel való interakcióhoz.")

class InputText(BaseModel):
    text: str

class OutputText(BaseModel):
    generated_text: str

Ez a kód definiál egy FastAPI alkalmazást, és definiál két Pydantic modellt: az InputText a bemeneti szöveg fogadására, az OutputText a generált szöveg visszaadására szolgál.

2. lépés: LLM következtetési logika hozzáadása

A választott LLM modellnek megfelelően add hozzá a megfelelő következtetési logikát. Itt az OpenAI API használatát vesszük példának:

import openai
import os

# OpenAI API kulcs lekérése
openai.api_key = os.environ.get("OPENAI_API_KEY")  # Javasolt a környezeti változó használata
```@app.post("/generate", response_model=OutputText)
async def generate_text(input_text: InputText):
    """
    Generates text based on the input text using OpenAI.
    """
    try:
        response = openai.Completion.create(
            engine="text-davinci-003", # Modell kiválasztása
            prompt=input_text.text,
            max_tokens=150,
            n=1,
            stop=None,
            temperature=0.7,
        )
        generated_text = response.choices[0].text.strip()
        return OutputText(generated_text=generated_text)
    except Exception as e:
        raise HTTPException(status_code=500, detail=str(e))

Ez a kódrészlet egy /generate útvonalat definiál, amely egy InputText objektumot fogad bemenetként, meghívja az OpenAI API-t szöveg generálására, és a generált szöveget OutputText objektumként adja vissza. Ügyeljen arra, hogy a text-davinci-003-at a választott megfelelő modellre cserélje.

Ha helyi modelleket, például a TinyLlama-t használ, telepítenie kell a megfelelő könyvtárakat, például a transformers-t, és be kell töltenie a modellt a memóriába. A kód példája a következő:

from transformers import pipeline
import torch

generator = pipeline('text-generation', model="TinyLlama/TinyLlama-1.1B-Chat-v1.0", torch_dtype=torch.bfloat16, device_map="auto")

@app.post("/generate", response_model=OutputText)
async def generate_text(input_text: InputText):
    """
    Generates text based on the input text using TinyLlama.
    """
    try:
        generated_text = generator(input_text.text, max_length=50, do_sample=True, temperature=0.7)[0]['generated_text']
        return OutputText(generated_text=generated_text)
    except Exception as e:
        raise HTTPException(status_code=500, detail=str(e))

3. lépés: A FastAPI alkalmazás futtatása

A FastAPI alkalmazás futtatása Uvicorn segítségével:

uvicorn main:app --reload
```Ez elindít egy helyi szervert, amelyet a böngészőben a `http://127.0.0.1:8000/docs` címen érhet el az automatikusan generált API dokumentáció megtekintéséhez. A `--reload` paraméter lehetővé teszi a szerver automatikus újraindítását a kód módosítása után, ami megkönnyíti a fejlesztést.

## 4. lépés: API tesztelése

Tesztelje az API-t az API dokumentáció vagy olyan eszközök, mint a curl segítségével. Például küldjön egy POST kérést a curl segítségével:

```bash
curl -X POST -H \A FastAPI egy hatékony eszköz a nagy teljesítményű, éles környezetre kész LLM API-k létrehozásához. Ezen útmutató segítségével gyorsan beállíthatsz egy LLM API-t, és kiterjesztheted és optimalizálhatod az igényeidnek megfelelően. Ne feledd, a folyamatos tanulás és gyakorlás kulcsfontosságú ahhoz, hogy kiváló LLM alkalmazásfejlesztővé válj. A cikkben említett Hornbeam egy figyelemre méltó ASGI szerver is, amely állítólag gyorsabb és stabilabb, mint a Gunicorn, és használható FastAPI alkalmazások telepítésére.
Published in Technology

You Might Also Like

Hogyan használjuk a felhőalapú számítástechnikai technológiát: Az első felhőinfrastruktúra teljes útmutatójaTechnology

Hogyan használjuk a felhőalapú számítástechnikai technológiát: Az első felhőinfrastruktúra teljes útmutatója

[[HTMLPLACEHOLDER0]] [[HTMLPLACEHOLDER1]] [[HTMLPLACEHOLDER2]] [[HTMLPLACEHOLDER3]] [[HTMLPLACEHOLDER4]] [[HTMLPLACEHOLD...

Figyelmeztetés! Claude Code atyja kijelenti: 1 hónap múlva a Plan Mode használata nélkül eltűnik a szoftvermérnök címTechnology

Figyelmeztetés! Claude Code atyja kijelenti: 1 hónap múlva a Plan Mode használata nélkül eltűnik a szoftvermérnök cím

Figyelmeztetés! Claude Code atyja kijelenti: 1 hónap múlva a Plan Mode használata nélkül eltűnik a szoftvermérnök cím N...

2026年 Top 10 深度学习资源推荐Technology

2026年 Top 10 深度学习资源推荐

2026年 Top 10 深度学习资源推荐 随着深度学习在各个领域的迅速发展,越来越多的学习资源和工具涌现出来。本文将为您推荐2026年最值得关注的十个深度学习资源,帮助您在这一领域中快速成长。 1. Coursera Deep Learn...

2026-os Top 10 AI ügynök: A kulcsfontosságú jellemzők elemzéseTechnology

2026-os Top 10 AI ügynök: A kulcsfontosságú jellemzők elemzése

2026-os Top 10 AI ügynök: A kulcsfontosságú jellemzők elemzése Bevezetés A mesterséges intelligencia gyors fejlődésével ...

2026-os Top 10 AI Eszköz Ajánlás: Az Mesterséges Intelligencia Valódi Potenciáljának KiaknázásaTechnology

2026-os Top 10 AI Eszköz Ajánlás: Az Mesterséges Intelligencia Valódi Potenciáljának Kiaknázása

2026-os Top 10 AI Eszköz Ajánlás: Az Mesterséges Intelligencia Valódi Potenciáljának Kiaknázása A technológia gyors fejl...

2026年 Top 10 AWS工具和资源推荐Technology

2026年 Top 10 AWS工具和资源推荐

2026年 Top 10 AWS工具和资源推荐 在快速发展的云计算领域,Amazon Web Services (AWS) 一直是领军者,提供丰富的服务和工具,帮助开发者、企业和技术专家在云上有效工作。以下是2026年值得关注的十大AWS工...