LLMER必会技能:一行代码将任意python函数部署成http服务

LLMER必会技能:一行代码将任意python函数部署成http服务

LLMER: 一个化繁为简的大模型(LLM)应用开发者神器

llmer 是一个轻量级的 Python 库,旨在简化大型语言模型(LLMs)应用中的复杂过程。它提供了用于并行处理、运行时管理、文件处理和Prompt格式化等常用的高级 API 和实用工具,从而不用每次都需要重复开发相关代码,简化工作。

更多关于LLMER工具的详细功能,阅读原文

Notice: LLMER增加新功能,任意python函数,只需一行代码即可部署成FastAPI服务

一行代码帮你搞定 FastAPI 服务部署

LLMER 工具包 @deploy(host, port) 装饰器能快速便捷将任意函数部署成FastAPI服务。

安装LLMER

shell 复制代码
pip install llmer

使用举例:

在任意函数前加上装饰器@deploy(host=, port=),即可立即部署成FastAPI服务。

然后可通过 <函数名>.serve() 启动服务。

目前支持普通函数、异步函数、流式函数(生成器)、异步流式函数(异步生成器)

python 复制代码
from llmer.server import deploy
import time
import asyncio

# 普通服务
@deploy(host="127.0.0.1", port=9510)
def add(a: int, b: int):
    return a + b
# add.serve()

# 异步服务
@deploy(host="127.0.0.1", port=9510)
async def async_add(a: int, b: int):
    return a + b
# async_add.serve()

# 流式服务
@deploy(host="127.0.0.1", port=9511)
def stream_numbers(start: int, end: int):
    for i in range(start, end + 1):
        time.sleep(1)
        yield f'{{"number": {i}}}'
# stream_numbers.serve()

# 异步流式服务
@deploy(host="127.0.0.1", port=9511)
async def async_stream_numbers(start: int, end: int):
    for i in range(start, end + 1):
        await asyncio.sleep(1)
        yield {"number": i}
# async_stream_numbers.serve()

以最后一个异步流式服务为例,通过 async_stream_numbers.serve() 启动后

shell 复制代码
INFO:     Started server process [26081]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:9511 (Press CTRL+C to quit)

调用举例

shell 复制代码
curl -X POST "http://127.0.0.1:9511/async_stream_numbers" \
    -H "Content-Type: application/json" \
    -d '{"start": 1, "end": 5}'

流式输出

text 复制代码
data: {'number': 1}
data: {'number': 2}
data: {'number': 3}
data: {'number': 4}
data: {'number': 5}

更多关于LLMER工具的详细功能,快来阅读原文

相关推荐
神的孩子都在歌唱2 分钟前
3423. 循环数组中相邻元素的最大差值 — day97
java·数据结构·算法
YuTaoShao8 分钟前
【LeetCode 热题 100】73. 矩阵置零——(解法一)空间复杂度 O(M + N)
算法·leetcode·矩阵
dying_man1 小时前
LeetCode--42.接雨水
算法·leetcode
vortex52 小时前
算法设计与分析 知识总结
算法
艾莉丝努力练剑2 小时前
【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(三)
c语言·开发语言·数据结构·学习·算法
ZZZS05162 小时前
stack栈练习
c++·笔记·学习·算法·动态规划
hans汉斯2 小时前
【人工智能与机器人研究】基于力传感器坐标系预标定的重力补偿算法
人工智能·算法·机器人·信号处理·深度神经网络
vortex54 小时前
算法设计与分析:分治、动态规划与贪心算法的异同与选择
算法·贪心算法·动态规划
前端拿破轮4 小时前
🤡🤡🤡面试官:就你这还每天刷leetcode?连四数相加和四数之和都分不清!
算法·leetcode·面试
地平线开发者5 小时前
征程 6|工具链量化简介与代码实操
算法·自动驾驶