litserve添加了更友好的多endpoint支持

对于多endpoint 的支持还是很必要的,以前官方也讨论过,新的已经支持了个更加友好的多endpoint 支持

参考玩法

  • app.py
from transformers import pipeline
import litserve as ls

class SentimentAnalysisAPI(ls.LitAPI):
    def setup(self, device):
        self.model = pipeline("sentiment-analysis", model="stevhliu/my_awesome_model", device=device)

    def decode_request(self, request: dict):
        return request["text"]

    def predict(self, text):
        return self.model(text)[0]

class TextGenerationAPI(ls.LitAPI):
    def setup(self, device):
        self.generator = pipeline("text-generation", model="gpt2", device=device)

    def decode_request(self, request: dict):
        return request["prompt"]

    def predict(self, prompt):
        return self.generator(prompt)[0]["generated_text"]

if __name__ == "__main__":
    sentiment_api = SentimentAnalysisAPI(api_path="/classify-text")
    chat_api = TextGenerationAPI(api_path="/v1/chat/completions")

    server = ls.LitServer([sentiment_api, chat_api])
    server.run(port=8000)

说明

新版本多endpoint 比较符合fastapi 的模式,对于多服务endpoint 的需要推荐使用

参考资料

https://github.com/Lightning-AI/LitServe/pull/513

https://lightning.ai/docs/litserve/features/multiple-endpoints

posted on 2025-07-09 08:00  荣锋亮  阅读(27)  评论(0)    收藏  举报

导航