Config

May 15, 2026 · View on GitHub


类所在位置:

oxygent/config.py

简介

Config 是 OxyGent 框架的集中式配置管理类。它提供了一套分层配置体系,支持按环境区分设置、加载 JSON 文件以及环境变量替换。该类管理所有配置方面,包括应用设置、日志、LLM 参数、数据库连接、服务器设置等。

参数

参数类型 / 允许值默认值描述
_envstr"default"当前环境名称
_configdict{}包含所有设置的主配置字典

配置模块

模块描述
app应用名称和版本设置
env环境文件路径和覆盖设置
log日志配置,包括级别、颜色和输出设置
llm大语言模型配置
cache缓存目录设置
message消息处理和存储配置
vearch向量搜索数据库配置
esElasticsearch 配置
redisRedis 配置
schema数据模式配置
serverWeb 服务器配置
agentAgent 相关配置

方法

方法协程 (async)返回值用途
load_from_json()None类方法,从 JSON 文件加载配置
set_module_config()None设置指定模块的配置
get_module_config()Any获取指定模块的配置
set_app_config()None设置应用配置
get_app_config()dict获取应用配置
set_app_name()None设置应用名称
get_app_name()str获取应用名称
set_app_version()None设置应用版本
get_app_version()str获取应用版本
set_env_config()None设置环境配置
get_env_config()dict获取环境配置
set_env_path()None设置环境文件路径
get_env_path()str获取环境文件路径
set_env_is_override()None设置环境覆盖标志
get_env_is_override()bool获取环境覆盖标志
set_log_config()None设置日志配置
get_log_config()dict获取日志配置
set_log_path()None设置日志文件路径
get_log_path()str获取日志文件路径
set_log_level_root()None设置根日志级别
get_log_level_root()str获取根日志级别
set_log_level_terminal()None设置终端日志级别
get_log_level_terminal()str获取终端日志级别
set_log_level_file()None设置文件日志级别
get_log_level_file()str获取文件日志级别
set_log_color_is_on_background()None设置背景颜色标志
get_log_color_is_on_background()bool获取背景颜色标志
set_log_is_bright()None设置亮色标志
get_log_is_bright()bool获取亮色标志
set_log_only_message_color()None设置仅消息着色标志
get_log_only_message_color()bool获取仅消息着色标志
set_log_color_tool_call()None设置工具调用颜色
get_log_color_tool_call()str获取工具调用颜色
set_log_color_observation()None设置观测结果颜色
get_log_color_observation()str获取观测结果颜色
set_log_is_detailed_tool_call()None设置详细工具调用标志
get_log_is_detailed_tool_call()bool获取详细工具调用标志
set_log_is_detailed_observation()None设置详细观测结果标志
get_log_is_detailed_observation()bool获取详细观测结果标志
set_llm_config()None设置 LLM 配置
get_llm_config()dict获取 LLM 配置
set_cache_config()None设置缓存配置
get_cache_config()dict获取缓存配置
set_cache_save_dir()None设置缓存保存目录
get_cache_save_dir()str获取缓存保存目录
set_message_config()None设置消息配置
get_message_config()dict获取消息配置
set_message_is_send_tool_call()None设置发送工具调用标志
get_message_is_send_tool_call()bool获取发送工具调用标志
set_message_is_send_observation()None设置发送观测结果标志
get_message_is_send_observation()bool获取发送观测结果标志
set_message_is_send_think()None设置发送思考过程标志
get_message_is_send_think()bool获取发送思考过程标志
set_message_is_send_answer()None设置发送回答标志
get_message_is_send_answer()bool获取发送回答标志
set_message_is_stored()None设置消息存储标志
get_message_is_stored()bool获取消息存储标志
set_es_config()None设置 Elasticsearch 配置
get_es_config()dict获取 Elasticsearch 配置
set_vearch_config()None设置 Vearch 配置
get_vearch_config()dict获取 Vearch 配置
get_vearch_embedding_model_url()str获取 Vearch 嵌入模型 URL
set_redis_config()None设置 Redis 配置
get_redis_config()dict获取 Redis 配置
set_server_config()None设置服务器配置
get_server_config()dict获取服务器配置
set_server_host()None设置服务器主机地址
get_server_host()str获取服务器主机地址
set_server_port()None设置服务器端口
get_server_port()int获取服务器端口
set_server_auto_open_webpage()None设置自动打开网页标志
get_server_auto_open_webpage()bool获取自动打开网页标志
set_server_on_latest_webpage()None设置使用最新网页标志
get_server_on_latest_webpage()bool获取使用最新网页标志
set_server_log_level()None设置服务器日志级别
get_server_log_level()str获取服务器日志级别
set_agent_config()None设置 Agent 配置
get_agent_config()dict获取 Agent 配置
set_agent_prompt()None设置 Agent 提示词
get_agent_prompt()str获取 Agent 提示词
set_agent_llm_model()None设置 Agent LLM 模型
get_agent_llm_model()str获取 Agent LLM 模型
set_agent_input_schema()None设置 Agent 输入模式
get_agent_input_schema()dict获取 Agent 输入模式
set_schema_config()None设置数据模式配置
get_schema_config()dict获取数据模式配置
get_shared_data_schema()dict获取共享数据模式

函数

函数协程 (async)返回值用途
deep_update()None递归地用另一个字典更新目标字典
replace_env_var()Any替换配置值中的环境变量

用法

from oxygent import Config

# 从 JSON 文件加载配置,支持环境分层
Config.load_from_json("config.json", env="prod")

# 编程式配置
Config.set_server_host("0.0.0.0")
Config.set_server_port(9090)
Config.set_server_auto_open_webpage(False)
Config.set_log_path("./logs/app.log")
Config.set_cache_save_dir("./cache")
Config.set_agent_llm_model("my_llm")