ciyidogan commited on
Commit
6d2594f
·
verified ·
1 Parent(s): a38473c

Update controllers/admin_controller.py

Browse files
Files changed (1) hide show
  1. controllers/admin_controller.py +24 -23
controllers/admin_controller.py CHANGED
@@ -1,23 +1,24 @@
1
- from fastapi import APIRouter
2
- from core import service_config, llm_models
3
- from llm_model import LLMModel
4
- from fastapi.responses import JSONResponse
5
- from log import log
6
-
7
- router = APIRouter()
8
-
9
- @router.post("/reload_config")
10
- def reload_config():
11
- try:
12
- service_config.load(is_reload=True)
13
- log("🔁 Config reload sonrası tüm projeler için modeller yeniden yükleniyor...")
14
- for project_name in service_config.projects:
15
- llm_config = service_config.get_project_llm_config(project_name)
16
- model_instance = LLMModel()
17
- model_instance.setup(service_config, llm_config)
18
- llm_models[project_name] = model_instance
19
- log(f" '{project_name}' için model yüklendi.")
20
- return {"status": "ok", "message": "Konfigürasyon ve modeller yeniden yüklendi."}
21
- except Exception as e:
22
- return JSONResponse(content={"error": str(e)}, status_code=500)
23
-
 
 
1
+ from fastapi import APIRouter
2
+ from transformers import AutoTokenizer, AutoModelForSequenceClassification
3
+ from core import INTENT_MODELS
4
+ import json, os
5
+
6
+ router = APIRouter()
7
+
8
+ @router.post("/load_intent_model")
9
+ def load_intent_model(project_name: str, model_path: str):
10
+ try:
11
+ tokenizer = AutoTokenizer.from_pretrained(model_path)
12
+ model = AutoModelForSequenceClassification.from_pretrained(model_path)
13
+ with open(os.path.join(model_path, "label2id.json")) as f:
14
+ label2id = json.load(f)
15
+
16
+ INTENT_MODELS[project_name] = {
17
+ "model": model,
18
+ "tokenizer": tokenizer,
19
+ "label2id": label2id
20
+ }
21
+
22
+ return {"status": "ok", "message": f"'{project_name}' intent modeli yüklendi."}
23
+ except Exception as e:
24
+ return {"error": str(e)}