feat: runner 层抽象 (#839)

This commit is contained in:
RockChinQ
2024-07-28 18:45:27 +08:00
parent 48cc3656bd
commit 8cad4089a7
10 changed files with 172 additions and 65 deletions
+27
View File
@@ -0,0 +1,27 @@
from __future__ import annotations
from . import runner
from ..core import app
from .runners import localagent
class RunnerManager:
ap: app.Application
using_runner: runner.RequestRunner
def __init__(self, ap: app.Application):
self.ap = ap
async def initialize(self):
for r in runner.preregistered_runners:
if r.name == self.ap.provider_cfg.data['runner']:
self.using_runner = r(self.ap)
await self.using_runner.initialize()
break
def get_runner(self) -> runner.RequestRunner:
return self.using_runner