sycommon-python-lib 0.1.56b13__tar.gz → 0.1.56b14__tar.gz

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.
Files changed (91) hide show
  1. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/PKG-INFO +2 -1
  2. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/pyproject.toml +2 -1
  3. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/Config.py +7 -0
  4. sycommon_python_lib-0.1.56b14/src/sycommon/config/LangfuseConfig.py +15 -0
  5. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/llm/get_llm.py +19 -1
  6. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon_python_lib.egg-info/PKG-INFO +2 -1
  7. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon_python_lib.egg-info/SOURCES.txt +1 -0
  8. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon_python_lib.egg-info/requires.txt +1 -0
  9. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/README.md +0 -0
  10. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/setup.cfg +0 -0
  11. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/command/cli.py +0 -0
  12. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/__init__.py +0 -0
  13. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/DatabaseConfig.py +0 -0
  14. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/EmbeddingConfig.py +0 -0
  15. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/LLMConfig.py +0 -0
  16. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/MQConfig.py +0 -0
  17. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/RerankerConfig.py +0 -0
  18. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/SentryConfig.py +0 -0
  19. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/config/__init__.py +0 -0
  20. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/database/async_base_db_service.py +0 -0
  21. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/database/async_database_service.py +0 -0
  22. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/database/base_db_service.py +0 -0
  23. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/database/database_service.py +0 -0
  24. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/health/__init__.py +0 -0
  25. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/health/health_check.py +0 -0
  26. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/health/metrics.py +0 -0
  27. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/health/ping.py +0 -0
  28. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/llm/__init__.py +0 -0
  29. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/llm/embedding.py +0 -0
  30. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/llm/llm_logger.py +0 -0
  31. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/llm/llm_tokens.py +0 -0
  32. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/logging/__init__.py +0 -0
  33. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/logging/async_sql_logger.py +0 -0
  34. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/logging/kafka_log.py +0 -0
  35. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/logging/logger_levels.py +0 -0
  36. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/logging/logger_wrapper.py +0 -0
  37. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/logging/sql_logger.py +0 -0
  38. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/__init__.py +0 -0
  39. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/context.py +0 -0
  40. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/cors.py +0 -0
  41. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/docs.py +0 -0
  42. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/exception.py +0 -0
  43. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/middleware.py +0 -0
  44. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/monitor_memory.py +0 -0
  45. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/mq.py +0 -0
  46. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/timeout.py +0 -0
  47. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/middleware/traceid.py +0 -0
  48. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/__init__.py +0 -0
  49. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/base_http.py +0 -0
  50. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/log.py +0 -0
  51. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/mqlistener_config.py +0 -0
  52. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/mqmsg_model.py +0 -0
  53. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/mqsend_config.py +0 -0
  54. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/models/sso_user.py +0 -0
  55. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/notice/__init__.py +0 -0
  56. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/notice/uvicorn_monitor.py +0 -0
  57. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
  58. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
  59. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
  60. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
  61. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
  62. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
  63. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
  64. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
  65. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/sentry/__init__.py +0 -0
  66. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/sentry/sy_sentry.py +0 -0
  67. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/services.py +0 -0
  68. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/sse/__init__.py +0 -0
  69. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/sse/event.py +0 -0
  70. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/sse/sse.py +0 -0
  71. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/__init__.py +0 -0
  72. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/example.py +0 -0
  73. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/example2.py +0 -0
  74. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/feign.py +0 -0
  75. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/feign_client.py +0 -0
  76. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/nacos_client_base.py +0 -0
  77. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/nacos_config_manager.py +0 -0
  78. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
  79. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/nacos_service.py +0 -0
  80. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
  81. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/nacos_service_registration.py +0 -0
  82. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/synacos/param.py +0 -0
  83. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/tools/__init__.py +0 -0
  84. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/tools/docs.py +0 -0
  85. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/tools/env.py +0 -0
  86. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/tools/merge_headers.py +0 -0
  87. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/tools/snowflake.py +0 -0
  88. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon/tools/timing.py +0 -0
  89. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
  90. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
  91. {sycommon_python_lib-0.1.56b13 → sycommon_python_lib-0.1.56b14}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sycommon-python-lib
3
- Version: 0.1.56b13
3
+ Version: 0.1.56b14
4
4
  Summary: Add your description here
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -13,6 +13,7 @@ Requires-Dist: kafka-python>=2.3.0
13
13
  Requires-Dist: langchain>=1.2.0
14
14
  Requires-Dist: langchain-core>=1.2.6
15
15
  Requires-Dist: langchain-openai>=1.1.6
16
+ Requires-Dist: langfuse>=3.11.2
16
17
  Requires-Dist: langgraph>=1.0.5
17
18
  Requires-Dist: loguru>=0.7.3
18
19
  Requires-Dist: mysql-connector-python>=9.5.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sycommon-python-lib"
3
- version = "0.1.56-beta13"
3
+ version = "0.1.56-beta14"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -14,6 +14,7 @@ dependencies = [
14
14
  "langchain>=1.2.0",
15
15
  "langchain-core>=1.2.6",
16
16
  "langchain-openai>=1.1.6",
17
+ "langfuse>=3.11.2",
17
18
  "langgraph>=1.0.5",
18
19
  "loguru>=0.7.3",
19
20
  "mysql-connector-python>=9.5.0",
@@ -21,6 +21,7 @@ class Config(metaclass=SingletonMeta):
21
21
  self.embedding_configs = []
22
22
  self.reranker_configs = []
23
23
  self.sentry_configs = []
24
+ self.langfuse_configs = []
24
25
  self._process_config()
25
26
 
26
27
  def get_llm_config(self, model_name):
@@ -47,6 +48,12 @@ class Config(metaclass=SingletonMeta):
47
48
  return sentry
48
49
  raise ValueError(f"No configuration found for server: {name}")
49
50
 
51
+ def get_langfuse_config(self, name):
52
+ for langfuse in self.langfuse_configs:
53
+ if langfuse.get('name') == name:
54
+ return langfuse
55
+ raise ValueError(f"No configuration found for server: {name}")
56
+
50
57
  def _process_config(self):
51
58
  llm_config_list = self.config.get('LLMConfig', [])
52
59
  for llm_config in llm_config_list:
@@ -0,0 +1,15 @@
1
+ from pydantic import BaseModel
2
+
3
+
4
+ class LangfuseConfig(BaseModel):
5
+ name: str
6
+ secretKey: str
7
+ publicKey: str
8
+ baseUrl: str
9
+ enable: bool
10
+
11
+ @classmethod
12
+ def from_config(cls, server_name: str):
13
+ from sycommon.config.Config import Config
14
+ langfuse_config = Config().get_langfuse_config(server_name)
15
+ return cls(**langfuse_config)
@@ -1,4 +1,6 @@
1
+ import os
1
2
  from typing import Dict, Type, List, Optional, Callable, Any
3
+ from sycommon.config.Config import Config
2
4
  from sycommon.llm.llm_logger import LLMLogger
3
5
  from langchain_core.language_models import BaseChatModel
4
6
  from langchain_core.runnables import Runnable, RunnableLambda, RunnableConfig
@@ -10,6 +12,7 @@ from pydantic import BaseModel, ValidationError, Field
10
12
  from sycommon.config.LLMConfig import LLMConfig
11
13
  from sycommon.llm.llm_tokens import TokensCallbackHandler
12
14
  from sycommon.logging.kafka_log import SYLogger
15
+ from langfuse.langchain import CallbackHandler
13
16
 
14
17
 
15
18
  class StructuredRunnableWithToken(Runnable):
@@ -230,6 +233,21 @@ def get_llm(
230
233
  if not llmConfig:
231
234
  raise Exception(f"无效的模型配置:{model}")
232
235
 
236
+ callbacks = [LLMLogger()]
237
+
238
+ config = Config().config
239
+ server_name = config.get('Name', '')
240
+ langfuse_configs = config.get('LangfuseConfig', [])
241
+ target_config = next(
242
+ (item for item in langfuse_configs if item.get('name') == server_name), None)
243
+ if target_config and target_config.get('enable', False):
244
+ os.environ["LANGFUSE_SECRET_KEY"] = target_config.get('secretKey', '')
245
+ os.environ["LANGFUSE_PUBLIC_KEY"] = target_config.get('publicKey', '')
246
+ os.environ["LANGFUSE_BASE_URL"] = target_config.get('baseUrl', '')
247
+
248
+ langfuse_handler = CallbackHandler()
249
+ callbacks += [langfuse_handler]
250
+
233
251
  llm = init_chat_model(
234
252
  model_provider=llmConfig.provider,
235
253
  model=llmConfig.model,
@@ -237,7 +255,7 @@ def get_llm(
237
255
  api_key="-",
238
256
  temperature=0.1,
239
257
  streaming=streaming,
240
- callbacks=[LLMLogger()]
258
+ callbacks=callbacks
241
259
  )
242
260
 
243
261
  if llm is None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sycommon-python-lib
3
- Version: 0.1.56b13
3
+ Version: 0.1.56b14
4
4
  Summary: Add your description here
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -13,6 +13,7 @@ Requires-Dist: kafka-python>=2.3.0
13
13
  Requires-Dist: langchain>=1.2.0
14
14
  Requires-Dist: langchain-core>=1.2.6
15
15
  Requires-Dist: langchain-openai>=1.1.6
16
+ Requires-Dist: langfuse>=3.11.2
16
17
  Requires-Dist: langgraph>=1.0.5
17
18
  Requires-Dist: loguru>=0.7.3
18
19
  Requires-Dist: mysql-connector-python>=9.5.0
@@ -7,6 +7,7 @@ src/sycommon/config/Config.py
7
7
  src/sycommon/config/DatabaseConfig.py
8
8
  src/sycommon/config/EmbeddingConfig.py
9
9
  src/sycommon/config/LLMConfig.py
10
+ src/sycommon/config/LangfuseConfig.py
10
11
  src/sycommon/config/MQConfig.py
11
12
  src/sycommon/config/RerankerConfig.py
12
13
  src/sycommon/config/SentryConfig.py
@@ -7,6 +7,7 @@ kafka-python>=2.3.0
7
7
  langchain>=1.2.0
8
8
  langchain-core>=1.2.6
9
9
  langchain-openai>=1.1.6
10
+ langfuse>=3.11.2
10
11
  langgraph>=1.0.5
11
12
  loguru>=0.7.3
12
13
  mysql-connector-python>=9.5.0