Spaces:
Building
Building
Update chat_handler.py
Browse files- chat_handler.py +46 -38
chat_handler.py
CHANGED
@@ -80,59 +80,67 @@ def setup_llm_provider():
|
|
80 |
log("β SPARK_TOKEN not found")
|
81 |
raise ValueError("SPARK_TOKEN not configured")
|
82 |
|
83 |
-
spark_endpoint = str(cfg.global_config.spark_endpoint)
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
raise ValueError("SPARK_TOKEN not configured")
|
95 |
|
96 |
-
|
97 |
-
llm_provider = SparkLLM(spark_endpoint, spark_token)
|
98 |
return
|
99 |
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
# Get API key from environment
|
104 |
-
api_key = os.getenv("OPENAI_API_KEY")
|
105 |
if not api_key:
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
|
116 |
-
|
117 |
-
|
|
|
|
|
|
|
|
|
|
|
118 |
else:
|
119 |
-
|
120 |
spark_token = _get_spark_token()
|
121 |
if not spark_token:
|
122 |
raise ValueError("SPARK_TOKEN not configured")
|
123 |
|
124 |
-
spark_endpoint = str(cfg.global_config.spark_endpoint)
|
125 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
126 |
|
127 |
def _get_spark_token() -> Optional[str]:
|
128 |
-
"""Get Spark token based on
|
129 |
cfg = ConfigProvider.get()
|
130 |
|
131 |
if cfg.global_config.is_cloud_mode():
|
132 |
-
# Cloud mode - use HuggingFace
|
133 |
-
token = os.
|
134 |
-
if
|
135 |
-
log("
|
136 |
return token
|
137 |
else:
|
138 |
# On-premise mode - use .env file
|
|
|
80 |
log("β SPARK_TOKEN not found")
|
81 |
raise ValueError("SPARK_TOKEN not configured")
|
82 |
|
83 |
+
spark_endpoint = str(cfg.global_config.spark_endpoint).rstrip("/")
|
84 |
+
work_mode = cfg.global_config.work_mode
|
85 |
+
|
86 |
+
log(f"π Initializing SparkLLM: {spark_endpoint}")
|
87 |
+
log(f"π§ Work mode: {work_mode}")
|
88 |
+
|
89 |
+
llm_provider = SparkLLM(
|
90 |
+
spark_endpoint=spark_endpoint,
|
91 |
+
spark_token=spark_token,
|
92 |
+
work_mode=work_mode
|
93 |
+
)
|
|
|
94 |
|
95 |
+
log("β
SparkLLM initialized")
|
|
|
96 |
return
|
97 |
|
98 |
+
# Check if it's a GPT-4o config
|
99 |
+
if internal_prompt.get("provider") == "gpt-4o":
|
100 |
+
api_key = internal_prompt.get("api_key")
|
|
|
|
|
101 |
if not api_key:
|
102 |
+
if cfg.global_config.is_cloud_mode():
|
103 |
+
api_key = os.environ.get("OPENAI_API_KEY")
|
104 |
+
else:
|
105 |
+
from dotenv import load_dotenv
|
106 |
+
load_dotenv()
|
107 |
+
api_key = os.getenv("OPENAI_API_KEY")
|
108 |
+
|
109 |
+
if not api_key:
|
110 |
+
raise ValueError("OpenAI API key not configured")
|
111 |
|
112 |
+
llm_provider = GPT4oLLM(
|
113 |
+
api_key=api_key,
|
114 |
+
model=internal_prompt.get("model", "gpt-4o"),
|
115 |
+
max_tokens=internal_prompt.get("max_tokens", 4096),
|
116 |
+
temperature=internal_prompt.get("temperature", 0.7)
|
117 |
+
)
|
118 |
+
log("β
GPT-4o LLM initialized")
|
119 |
else:
|
120 |
+
# Default to Spark
|
121 |
spark_token = _get_spark_token()
|
122 |
if not spark_token:
|
123 |
raise ValueError("SPARK_TOKEN not configured")
|
124 |
|
125 |
+
spark_endpoint = str(cfg.global_config.spark_endpoint).rstrip("/")
|
126 |
+
work_mode = cfg.global_config.work_mode
|
127 |
+
|
128 |
+
llm_provider = SparkLLM(
|
129 |
+
spark_endpoint=spark_endpoint,
|
130 |
+
spark_token=spark_token,
|
131 |
+
work_mode=work_mode
|
132 |
+
)
|
133 |
+
log("β
SparkLLM initialized (via internal_prompt)")
|
134 |
|
135 |
def _get_spark_token() -> Optional[str]:
|
136 |
+
"""Get Spark token based on work mode"""
|
137 |
cfg = ConfigProvider.get()
|
138 |
|
139 |
if cfg.global_config.is_cloud_mode():
|
140 |
+
# Cloud mode - use HuggingFace secrets
|
141 |
+
token = os.environ.get("SPARK_TOKEN")
|
142 |
+
if token:
|
143 |
+
log("π Using SPARK_TOKEN from environment")
|
144 |
return token
|
145 |
else:
|
146 |
# On-premise mode - use .env file
|