llama-agents 的server 服务

llama-agents 基于starlette web 框架提供了基于rest api 的workflow 管理能力,对于希望实现灵活控制的场景是比较有用的

参考玩法

  • 安装依赖
pip install llama-agents-server
  • 启动 包含了编程模式以及cli模式
import asyncio
from workflows import Workflow, step
from workflows.context import Context
from workflows.events import Event, StartEvent, StopEvent
from llama_agents.server import WorkflowServer


class StreamEvent(Event):
    sequence: int


# Define a simple workflow
class GreetingWorkflow(Workflow):
    @step
    async def greet(self, ctx: Context, ev: StartEvent) -> StopEvent:
        for i in range(3):
            ctx.write_event_to_stream(StreamEvent(sequence=i))
            await asyncio.sleep(0.3)

        name = ev.get("name", "World")
        return StopEvent(result=f"Hello, {name}!")

greet_wf = GreetingWorkflow()


# Create a server instance
server = WorkflowServer()

# Add the workflow to the server
server.add_workflow("greet", greet_wf)

# To run the server programmatically (e.g., from your own script)
# import asyncio
#
# async def main():
#     await server.serve(host="0.0.0.0", port=8080)
#
# if __name__ == "__main__":
#     asyncio.run(main())

cli 模式

python -m workflows.server my_server.py

说明

提供的接口以及参数可以参考官方文档,实际上WorkflowServer 是支持持久化存储的(sqlite 以及pg dbos 支撑的)

参考使用

sqlite

from llama_agents.server import WorkflowServer, SqliteWorkflowStore

store = SqliteWorkflowStore(db_path="workflows.db")

server = WorkflowServer(workflow_store=store)
server.add_workflow("greet", greet_wf)

pg

from dbos import DBOS
from llama_agents.dbos import DBOSRuntime
from llama_agents.server import WorkflowServer

# Configure DBOS — uses SQLite by default, or set system_database_url for Postgres
DBOS(config={"name": "my-app", "run_admin_server": False})

runtime = DBOSRuntime()

server = WorkflowServer(
    workflow_store=runtime.create_workflow_store(),
    runtime=runtime.build_server_runtime(),
)
server.add_workflow("greet", GreetingWorkflow())

参考资料

https://developers.llamaindex.ai/python/llamaagents/workflows/deployment/

posted on 2026-06-05 08:00  荣锋亮  阅读(20)  评论(0)    收藏  举报

导航