realtimex-deeptutor 0.5.0.post9__py3-none-any.whl → 0.5.0.post11__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: realtimex-deeptutor
3
- Version: 0.5.0.post9
3
+ Version: 0.5.0.post11
4
4
  Summary: RealTimeX DeepTutor - Intelligent learning companion with multi-agent collaboration and LightRAG
5
5
  License: Apache-2.0
6
6
  Requires-Python: >=3.10
@@ -1,5 +1,5 @@
1
1
  realtimex_deeptutor/__init__.py,sha256=sSfuCLjJa6BnayszcU4azNl_sr1OzuKgLP10BAtdoh8,1567
2
- realtimex_deeptutor-0.5.0.post9.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
2
+ realtimex_deeptutor-0.5.0.post11.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
3
3
  scripts/__init__.py,sha256=mxMsCbci-Qon3qWU1JIi93-tYlHAy0NIUbDRmAPVcg0,54
4
4
  scripts/audit_prompts.py,sha256=Ltuk7tvsjpKhiobVbYq1volgVFKiVLgSTaE_Is4MGaM,5651
5
5
  scripts/check_install.py,sha256=GbApEcDLJ6r0QmYrCVHAFCOK4wolpSLwL3eBRmmD3og,13929
@@ -127,7 +127,7 @@ src/agents/solve/utils/performance_monitor.py,sha256=v9-bQqlVoTBhKncrXzGspoolq7e
127
127
  src/agents/solve/utils/token_tracker.py,sha256=xYuv4NrBfDA5Aom4xr_q2u1RU1Izgr3CYzoKM01y_zU,19600
128
128
  src/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
129
129
  src/api/main.py,sha256=OQUxvucW-baBBiLlOlzcR0wQhMSmgaULdU7Qi8_fUqI,8614
130
- src/api/run_server.py,sha256=qXLISU4u15tpw06MEGEHq4rrX9YJ3Gumx0kXhb52hvs,2062
130
+ src/api/run_server.py,sha256=fB9-J1Yh-txGbtWUidAQxVzsd8v8IgaKNqnFoSGZs68,2094
131
131
  src/api/routers/__init__.py,sha256=eH0nWjt-2ODjP6MLdmMl_lgcoD1nCep0eHqUJOTj01k,24
132
132
  src/api/routers/agent_config.py,sha256=kr-UsMiIrZfy-qFSy35nzNvh2wen1MXGRnPrPbsEP-w,1590
133
133
  src/api/routers/chat.py,sha256=bHp6t-C027g02ArTikUbbcZBf18LTiBzXMvZuCZ9WM8,10805
@@ -169,7 +169,7 @@ src/knowledge/manager.py,sha256=i_mR8dXqykWcNy24sdPJV8PRocdgmKG8WPzSI7Y7_cE,3421
169
169
  src/knowledge/progress_tracker.py,sha256=7BGzUDH5ok52L3aLZfkBY5NW-xrOc0tIqZPcYIB_oUY,8214
170
170
  src/knowledge/start_kb.py,sha256=Ye5Ua_jsK5NOW4XoCYY0gTNWDW01bzMB01qEirpk2ig,19108
171
171
  src/logging/__init__.py,sha256=IXaC3j2mtxlY4ousuS4LIRw3VxOlUgJ0V1TZcHopwNE,2286
172
- src/logging/config.py,sha256=BYH5AfOOD1WKPbJda0FbsQFXE6ktHYdZazo8UyyssRA,2469
172
+ src/logging/config.py,sha256=UlyndCCBTQGFafPIi2A6cFopdmPzS9vs_UMPFPWnk50,2658
173
173
  src/logging/logger.py,sha256=IaLX6lOR51IX17EubkM0e6aMMcsNazCUOL3MNkrVsi0,25091
174
174
  src/logging/adapters/__init__.py,sha256=O4tiJX3whFi8jh-IERC-inWmjbcS6GuIQ9BzJUEpNUk,473
175
175
  src/logging/adapters/lightrag.py,sha256=LdOc5ctexBAipWVeUkIHw6fQARLan6jTf81OoVN1KxA,6313
@@ -287,10 +287,10 @@ src/utils/document_validator.py,sha256=ogNk0KvMZPQKi9zHoeQzhUxCVsYFpkP9-pjO8kC71
287
287
  src/utils/error_rate_tracker.py,sha256=MIhaNaStdrhinVFIKHNOgQMPdbrddjKJy2ok_jK8WX4,3942
288
288
  src/utils/error_utils.py,sha256=ME_9q-DlmxFl-Xvv3ETPZE_iP705x6MXiuAREgWYsjM,2262
289
289
  src/utils/json_parser.py,sha256=M_KfrsrNvQPSiFvpKHQV79Aj85_MEcLVc6hnKzvTV58,3243
290
- src/utils/realtimex.py,sha256=vs7fAEnJJ4zpAyyBn-7vUmGWiiQvpTWQCRgax1MLTDw,9769
290
+ src/utils/realtimex.py,sha256=mnMoyWz34wvSPaxScF0LW7kvFUqWoctjYZLVSsv_Tcg,9755
291
291
  src/utils/network/circuit_breaker.py,sha256=BtjogK5R3tG8fuJniS5-PJKZMtwD5P2SkP2JFiQ9sRA,2722
292
- realtimex_deeptutor-0.5.0.post9.dist-info/METADATA,sha256=H48RMbu9fdvqmkRVyDTK5ODo3vmyyDeIow4MpIoSExg,58304
293
- realtimex_deeptutor-0.5.0.post9.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
294
- realtimex_deeptutor-0.5.0.post9.dist-info/entry_points.txt,sha256=slNAzwRLUpqiMtDRZBQIkXbU2vGMHL_om6-o19gYdh8,134
295
- realtimex_deeptutor-0.5.0.post9.dist-info/top_level.txt,sha256=zUAd6V7jDYhdL7bvg2S38YCM-gVhvd36WqkjxrT-02I,32
296
- realtimex_deeptutor-0.5.0.post9.dist-info/RECORD,,
292
+ realtimex_deeptutor-0.5.0.post11.dist-info/METADATA,sha256=QEFrGVSTdIgYEtMkVvGHGJFxEwjcsl9sTlGoHnpiFOs,58305
293
+ realtimex_deeptutor-0.5.0.post11.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
294
+ realtimex_deeptutor-0.5.0.post11.dist-info/entry_points.txt,sha256=slNAzwRLUpqiMtDRZBQIkXbU2vGMHL_om6-o19gYdh8,134
295
+ realtimex_deeptutor-0.5.0.post11.dist-info/top_level.txt,sha256=zUAd6V7jDYhdL7bvg2S38YCM-gVhvd36WqkjxrT-02I,32
296
+ realtimex_deeptutor-0.5.0.post11.dist-info/RECORD,,
src/api/run_server.py CHANGED
@@ -57,5 +57,5 @@ if __name__ == "__main__":
57
57
  port=backend_port,
58
58
  reload=True,
59
59
  reload_excludes=reload_excludes,
60
- log_level="info",
60
+ log_level=os.getenv("LOG_LEVEL", "info").lower(),
61
61
  )
src/logging/config.py CHANGED
@@ -42,9 +42,17 @@ def get_default_log_dir() -> Path:
42
42
 
43
43
  def get_global_log_level() -> str:
44
44
  """
45
- Get the global log level from config/main.yaml -> logging.level
45
+ Get the global log level from Environment (LOG_LEVEL) or config/main.yaml
46
46
  Default: DEBUG
47
47
  """
48
+ import os
49
+
50
+ # Priority 1: Environment variable
51
+ env_level = os.getenv("LOG_LEVEL")
52
+ if env_level:
53
+ return env_level.upper()
54
+
55
+ # Priority 2: Config file
48
56
  try:
49
57
  from src.services.config import load_config_with_main
50
58
 
src/utils/realtimex.py CHANGED
@@ -7,10 +7,11 @@ Utilities for RealTimeX SDK integration.
7
7
  Provides unified SDK instance management and environment detection.
8
8
  """
9
9
 
10
- import logging
11
10
  from typing import TYPE_CHECKING, Optional
12
11
 
13
- logger = logging.getLogger(__name__)
12
+ from src.logging import get_logger
13
+
14
+ logger = get_logger(__name__)
14
15
 
15
16
  if TYPE_CHECKING:
16
17
  from realtimex_sdk import RealtimeXSDK
@@ -174,7 +175,7 @@ async def get_cached_providers() -> dict:
174
175
  if "provider" not in p and "id" in p:
175
176
  p["provider"] = p["id"]
176
177
  return p
177
-
178
+
178
179
  data = {
179
180
  "provider": p.provider,
180
181
  "models": [{"id": m.id, "name": m.name} for m in p.models],
@@ -182,7 +183,7 @@ async def get_cached_providers() -> dict:
182
183
  # Add config metadata if available (for TTS advanced options)
183
184
  if hasattr(p, "config"):
184
185
  data["config"] = p.config
185
-
186
+
186
187
  return data
187
188
 
188
189
  _providers_cache = {