- Rename ZHIPU_AI bot type from glm-4 to zhipu to avoid confusion with model names
- Add bot_type persistence in web config to fix provider dropdown resetting on refresh
- Change OpenAI provider key to chatGPT to match bot_factory routing
- Add DEEPSEEK constant and route it to ChatGPTBot (OpenAI-compatible API)
- Keep backward compatibility for legacy bot_type glm-4 in bot_factory
- Fix re.sub bad escape error on Windows paths by using lambda replacement
- Remove unused pydantic import in minimax_bot.py
Made-with: Cursor
Replace all direct openai.error.* usages with the openai_compat
compatibility layer to support openai>=1.0.
Affected files:
- models/chatgpt/chat_gpt_bot.py: fix isinstance checks (RateLimitError, Timeout, APIError, APIConnectionError)
- models/openai/open_ai_bot.py: replace import + fix isinstance checks
- models/ali/ali_qwen_bot.py: replace import + fix isinstance checks
- models/modelscope/modelscope_bot.py: remove unused openai.error import
The openai_compat layer (models/openai/openai_compat.py) already
handles both openai<1.0 and openai>=1.0 gracefully. This completes
the migration started in the existing PR #2688.
The code was directly importing openai.error which fails with openai>=1.0.
The project already has an openai_compat.py compatibility layer that handles
both old (<1.0) and new (>=1.0) OpenAI SDK versions.
This commit updates chat_gpt_bot.py to use the compatibility layer.
Related: #2687
- Use LLM to summarize discarded context into concise daily memory entries
- Batch trim to half when exceeding max_turns/max_tokens, reducing flush frequency
- Run summarization asynchronously in background thread, no blocking on replies
- Add daily scheduled flush (23:55) as fallback for low-activity days
- Sync trimmed messages back to agent to keep context state consistent