ConfigAPI

interface ConfigAPI(source)

管理环境变量、模型提供商、模型。

See also

Functions

Link copied to clipboard
abstract suspend fun addApiKey(key: CoreConfig.ProviderConfig.ApiKey)

添加一个新的 api key。

Link copied to clipboard

获取所有设置,此 api 通常用于向用户展示,要获取自己注册的设置项请使用 io.github.autotweaker.api.config.SettingService.invoke

Link copied to clipboard
abstract fun getDefaultModel(): UUID?

获取默认模型的 id,关于默认模型,参见 setDefaultModel

Link copied to clipboard
abstract suspend fun getEnv(type: CoreConfig.JsonConfig.Env.Type, id: String): String?

获取一个环境变量的值。

Link copied to clipboard
abstract suspend fun getModel(id: UUID): CoreConfig.ProviderConfig.Model?

获取一个模型的数据。

Link copied to clipboard

获取指定提供商的数据,找不到返回 null。

Link copied to clipboard

获取指定类型提供商的元数据。可以用于展示或快速创建提供商配置。

Link copied to clipboard
abstract fun getSettingDef(id: String): SettingDef<*>?

获取设置条目硬编码的默认值和默认描述,可用于向用户展示或快速重置。

Link copied to clipboard
abstract suspend fun listApiKey(): List<String>

列出所有 api key 的名称(不是值)。

Link copied to clipboard

列出可用的提供商类型,即 LlmClient 注册的 name

Link copied to clipboard
abstract suspend fun listEnv(type: CoreConfig.JsonConfig.Env.Type): List<String>

列出指定类型的环境变量。

Link copied to clipboard

获取所有模型的数据。

Link copied to clipboard

获取所有已配置提供商的数据。

Link copied to clipboard
abstract suspend fun removeApiKey(name: String): Boolean

删除一个 api key。

Link copied to clipboard
abstract suspend fun removeEnv(type: CoreConfig.JsonConfig.Env.Type, id: String): Boolean

删除一个环境变量。

Link copied to clipboard
abstract suspend fun removeModel(id: UUID)

删除一个模型配置。

Link copied to clipboard
abstract suspend fun removeProvider(id: UUID): Boolean

删除提供商,同时删除提供商的所有模型。

Link copied to clipboard
abstract suspend fun setDefaultModel(id: UUID)

设置一个默认模型。

Link copied to clipboard
abstract suspend fun setEnv(env: CoreConfig.JsonConfig.Env)

添加一个环境变量,允许覆盖。

Link copied to clipboard
abstract suspend fun setModel(model: CoreConfig.ProviderConfig.Model)

添加或更新一个模型。

Link copied to clipboard
abstract suspend fun setProvider(provider: CoreConfig.ProviderConfig.Provider)

创建或更新一个提供商。

Link copied to clipboard
abstract suspend fun setSetting(id: String, value: SettingValue<*>)

更新一个设置项的值,要更新自己注册的设置项请使用 io.github.autotweaker.api.config.SettingService.set