创建自定义扩展#

随着0.4版本的新包结构推出,创建并发布自己的AutoGen生态扩展比以往更加简单。本文档详述了一些最佳实践,以确保您的扩展包能良好融入AutoGen生态系统。

最佳实践#

命名规范#

虽然对命名没有硬性要求,但建议在包名前添加autogen-前缀以便于搜索发现。

通用接口#

扩展应尽可能实现autogen_core包提供的接口,这将为用户带来更一致的体验。

AutoGen依赖管理#

为确保扩展与其设计时对应的AutoGen版本兼容,建议在pyproject.toml的依赖项部分明确指定AutoGen版本约束:

[project]

# ...
dependencies = [
    "autogen-core>=0.4,<0.5"
]

类型标注使用#

AutoGen倡导使用类型提示来提升开发体验,建议扩展尽可能使用类型标注。

扩展发现#

为了让用户更容易找到您的扩展、示例代码或服务,您可以为GitHub仓库添加主题标签

0.2版本的变更#

在AutoGen 0.2版本中,通常会将第三方扩展和代码示例合并到主代码库中。我们非常感谢所有为0.2版本生态系统贡献了notebook、模块和页面的用户。然而,我们正在逐步改变这一模式,以提供更大的灵活性并降低维护负担。

我们提供了autogen-ext包用于官方支持的一级扩展,但会进行选择性管理以控制维护工作量。如果您认为自己的扩展适合加入autogen-ext,请提交issue与我们讨论。否则,我们建议您将扩展发布为独立包,并遵循发现机制部分的指南,方便用户查找您的扩展。