将B类注入到另外一个A类之中,是不是只需要在B类上面使用@inject就可以了?
@inject
@dataclass
class BuiltinToolService:
"""内置工具服务"""
builtin_provider_manager: BuiltinProviderManager
def get_builtin_tools(self) -> list:
"""获取LLMOps项目中的所有内置提供商+工具对应的信息"""
# 1.获取所有的提供商
providers = self.builtin_provider_manager.get_providers()
# 2.遍历所有的提供商并提取工具信息
builtin_tools = []
for provider in providers:
provider_entity = provider.provider_entity
builtin_tool = {
**provider_entity.model_dump(exclude=["icon"]),
"tools": []
}
以上是B类的代码,需要将这个BuiltinToolService注入到A类BuiltinToolHandler中:
@inject
@dataclass
class BuiltinToolHandler(object):
"""内置工具处理器"""
builtin_tool_service: BuiltinToolService
def get_builtin_tools(self):
"""获取LLMOps所有内置工具信息+提供商信息"""
builtin_tools = self.builtin_tool_service.get_builtin_tools()
pass
发现A类BuiltinToolHandler也有@inject,BuiltinToolHandler这里的@inject是不是可以不用写?
正在回答 回答被采纳积分+1
- 参与学习 640 人
- 解答问题 457 个
全流程打造你自己的(Coze/Dify)低代码智能体开发平台;2025年入行正当时,企业急需,人才稀缺,竞争小;无论入行还是转行,首选口碑好课,门槛低、成长高
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星