创建自定义扩展#
随着0.4版本的新包结构推出,创建并发布自己的AutoGen生态扩展比以往更加简单。本文档详述了一些最佳实践,以确保您的扩展包能良好融入AutoGen生态系统。
最佳实践#
命名规范#
虽然对命名没有硬性要求,但建议在包名前添加autogen-
前缀以便于搜索发现。
通用接口#
扩展应尽可能实现autogen_core
包提供的接口,这将为用户带来更一致的体验。
AutoGen依赖管理#
为确保扩展与其设计时对应的AutoGen版本兼容,建议在pyproject.toml
的依赖项部分明确指定AutoGen版本约束:
[project]
# ...
dependencies = [
"autogen-core>=0.4,<0.5"
]
类型标注使用#
AutoGen倡导使用类型提示来提升开发体验,建议扩展尽可能使用类型标注。
扩展发现#
为了让用户更容易找到您的扩展、示例代码或服务,您可以为GitHub仓库添加主题标签:
通用标签:
autogen
扩展专用:
autogen-extension
示例代码专用:
autogen-sample
0.2版本的变更#
在AutoGen 0.2版本中,通常会将第三方扩展和代码示例合并到主代码库中。我们非常感谢所有为0.2版本生态系统贡献了notebook、模块和页面的用户。然而,我们正在逐步改变这一模式,以提供更大的灵活性并降低维护负担。
我们提供了autogen-ext
包用于官方支持的一级扩展,但会进行选择性管理以控制维护工作量。如果您认为自己的扩展适合加入autogen-ext
,请提交issue与我们讨论。否则,我们建议您将扩展发布为独立包,并遵循发现机制部分的指南,方便用户查找您的扩展。