feat: AWEL flow supports dynamic parameters (#1251)

This commit is contained in:
Fangyin Cheng
2024-03-04 21:52:32 +08:00
committed by GitHub
parent 3c93fe589a
commit 191f546ca4
6 changed files with 122 additions and 35 deletions

View File

@@ -13,6 +13,7 @@ from dbgpt.core import (
)
from dbgpt.core.awel import JoinOperator, MapOperator
from dbgpt.core.awel.flow import (
FunctionDynamicOptions,
IOField,
OperatorCategory,
OperatorType,
@@ -29,6 +30,15 @@ from dbgpt.storage.vector_store.connector import VectorStoreConnector
from dbgpt.util.function_utils import rearrange_args_by_type
def _load_space_name() -> List[OptionValue]:
return [
OptionValue(label=space.name, name=space.name, value=space.name)
for space in knowledge_space_service.get_knowledge_space(
KnowledgeSpaceRequest()
)
]
class SpaceRetrieverOperator(MapOperator[IN, OUT]):
"""knowledge space retriever operator."""
@@ -51,12 +61,7 @@ class SpaceRetrieverOperator(MapOperator[IN, OUT]):
"Space Name",
"space_name",
str,
options=[
OptionValue(label=space.name, name=space.name, value=space.name)
for space in knowledge_space_service.get_knowledge_space(
KnowledgeSpaceRequest()
)
],
options=FunctionDynamicOptions(func=_load_space_name),
optional=False,
default=None,
description="space name.",