mirror of
https://github.com/snailyp/gemini-balance.git
synced 2026-09-07 16:56:36 +08:00
feat(config): 新增流式输出优化器开关配置
在环境变量示例文件(.env.example)和配置类(config.py)中新增 STREAM_OPTIMIZER_ENABLED 配置项,用于控制流式输出优化器的启用状态,默认设为 false 调整 Gemini 和 OpenAI 聊天服务的流式响应处理逻辑: - 仅在流式优化器启用时(settings.STREAM_OPTIMIZER_ENABLED 为 true) - 才会对文本内容执行流式输出优化处理 - 保持原有文本提取逻辑不变,仅增加配置条件判断 该变更使流式输出优化器变为可选功能,方便根据实际需求进行开关控制
This commit is contained in:
@@ -22,6 +22,7 @@ CLOUDFLARE_IMGBED_URL=https://xxxxxxx.pages.dev/upload
|
|||||||
CLOUDFLARE_IMGBED_AUTH_CODE=xxxxxxxxx
|
CLOUDFLARE_IMGBED_AUTH_CODE=xxxxxxxxx
|
||||||
##########################################################################
|
##########################################################################
|
||||||
#########################stream_optimizer 相关配置########################
|
#########################stream_optimizer 相关配置########################
|
||||||
|
STREAM_OPTIMIZER_ENABLED=false
|
||||||
STREAM_MIN_DELAY=0.016
|
STREAM_MIN_DELAY=0.016
|
||||||
STREAM_MAX_DELAY=0.024
|
STREAM_MAX_DELAY=0.024
|
||||||
STREAM_SHORT_TEXT_THRESHOLD=10
|
STREAM_SHORT_TEXT_THRESHOLD=10
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ class Settings(BaseSettings):
|
|||||||
CLOUDFLARE_IMGBED_AUTH_CODE: str = ""
|
CLOUDFLARE_IMGBED_AUTH_CODE: str = ""
|
||||||
|
|
||||||
# 流式输出优化器配置
|
# 流式输出优化器配置
|
||||||
|
STREAM_OPTIMIZER_ENABLED: bool = False
|
||||||
STREAM_MIN_DELAY: float = DEFAULT_STREAM_MIN_DELAY
|
STREAM_MIN_DELAY: float = DEFAULT_STREAM_MIN_DELAY
|
||||||
STREAM_MAX_DELAY: float = DEFAULT_STREAM_MAX_DELAY
|
STREAM_MAX_DELAY: float = DEFAULT_STREAM_MAX_DELAY
|
||||||
STREAM_SHORT_TEXT_THRESHOLD: int = DEFAULT_STREAM_SHORT_TEXT_THRESHOLD
|
STREAM_SHORT_TEXT_THRESHOLD: int = DEFAULT_STREAM_SHORT_TEXT_THRESHOLD
|
||||||
|
|||||||
@@ -167,9 +167,8 @@ class GeminiChatService:
|
|||||||
json.loads(line), model, stream=True
|
json.loads(line), model, stream=True
|
||||||
)
|
)
|
||||||
text = self._extract_text_from_response(response_data)
|
text = self._extract_text_from_response(response_data)
|
||||||
|
# 如果有文本内容,且开启了流式输出优化器,则使用流式输出优化器处理
|
||||||
# 如果有文本内容,使用流式输出优化器处理
|
if text and settings.STREAM_OPTIMIZER_ENABLED:
|
||||||
if text:
|
|
||||||
# 使用流式输出优化器处理文本输出
|
# 使用流式输出优化器处理文本输出
|
||||||
async for (
|
async for (
|
||||||
optimized_chunk
|
optimized_chunk
|
||||||
|
|||||||
@@ -215,7 +215,7 @@ class OpenAIChatService:
|
|||||||
if openai_chunk:
|
if openai_chunk:
|
||||||
# 提取文本内容
|
# 提取文本内容
|
||||||
text = self._extract_text_from_openai_chunk(openai_chunk)
|
text = self._extract_text_from_openai_chunk(openai_chunk)
|
||||||
if text:
|
if text and settings.STREAM_OPTIMIZER_ENABLED:
|
||||||
# 使用流式输出优化器处理文本输出
|
# 使用流式输出优化器处理文本输出
|
||||||
async for (
|
async for (
|
||||||
optimized_chunk
|
optimized_chunk
|
||||||
|
|||||||
Reference in New Issue
Block a user