Spaces:
Sleeping
Sleeping
Initial commit
Browse files- manager/dialogue_manager.py +5 -24
- pipeline/postprocess.py +1 -1
manager/dialogue_manager.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
from fastapi import Request
|
| 2 |
from pipeline.preprocess import preprocess_input
|
| 3 |
from pipeline.generator import generate_response
|
| 4 |
-
from pipeline.postprocess import
|
| 5 |
from models.fallback_model import generate_fallback_response
|
| 6 |
from prompt_builder import build_main_prompt, build_fallback_prompt # 수정된 prompt 빌더 사용
|
| 7 |
|
|
@@ -29,27 +29,9 @@ async def handle_dialogue(
|
|
| 29 |
# fallback model 호출
|
| 30 |
fb_raw = await generate_fallback_response(request, fb_prompt)
|
| 31 |
|
| 32 |
-
|
| 33 |
-
fb_checked = await fallback_final_check(
|
| 34 |
-
request=request,
|
| 35 |
-
fb_response=fb_raw,
|
| 36 |
-
player_utt=pre["player_utterance"],
|
| 37 |
-
npc_config=pre["tags"],
|
| 38 |
-
action_delta=pre.get("trigger_meta", {})
|
| 39 |
-
)
|
| 40 |
|
| 41 |
-
|
| 42 |
-
return {
|
| 43 |
-
"session_id" : session_id,
|
| 44 |
-
"npc_output_text": fb_checked,
|
| 45 |
-
"flags": {}, # fallback은 flag/delta 이미 pre에서 확정
|
| 46 |
-
"deltas": pre.get("trigger_meta", {}).get("delta", {}),
|
| 47 |
-
"meta": {
|
| 48 |
-
"npc_id": pre["npc_id"],
|
| 49 |
-
"quest_stage": pre["game_state"].get("quest_stage", "default"),
|
| 50 |
-
"location": pre["game_state"].get("location", context.get("location", "unknown"))
|
| 51 |
-
}
|
| 52 |
-
}
|
| 53 |
|
| 54 |
# 3. Main 경로
|
| 55 |
main_prompt = build_main_prompt(pre, session_id, npc_id)
|
|
@@ -58,11 +40,10 @@ async def handle_dialogue(
|
|
| 58 |
result = await generate_response(session_id, npc_id, main_prompt, max_tokens=200)
|
| 59 |
|
| 60 |
# postprocess_pipeline에서 최종 payload 생성
|
| 61 |
-
|
| 62 |
request=request,
|
| 63 |
pre_data=pre, # preprocess 결과 전체 전달
|
| 64 |
model_payload=result, # main model 출력
|
| 65 |
-
context=context
|
| 66 |
)
|
| 67 |
|
| 68 |
-
return
|
|
|
|
| 1 |
from fastapi import Request
|
| 2 |
from pipeline.preprocess import preprocess_input
|
| 3 |
from pipeline.generator import generate_response
|
| 4 |
+
from pipeline.postprocess import postprocess_fallback, postprocess_main
|
| 5 |
from models.fallback_model import generate_fallback_response
|
| 6 |
from prompt_builder import build_main_prompt, build_fallback_prompt # 수정된 prompt 빌더 사용
|
| 7 |
|
|
|
|
| 29 |
# fallback model 호출
|
| 30 |
fb_raw = await generate_fallback_response(request, fb_prompt)
|
| 31 |
|
| 32 |
+
return_payload_fb = postprocess_fallback(request, pre, fb_raw)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
|
| 34 |
+
return return_payload_fb
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
|
| 36 |
# 3. Main 경로
|
| 37 |
main_prompt = build_main_prompt(pre, session_id, npc_id)
|
|
|
|
| 40 |
result = await generate_response(session_id, npc_id, main_prompt, max_tokens=200)
|
| 41 |
|
| 42 |
# postprocess_pipeline에서 최종 payload 생성
|
| 43 |
+
return_payload_main = await postprocess_main(
|
| 44 |
request=request,
|
| 45 |
pre_data=pre, # preprocess 결과 전체 전달
|
| 46 |
model_payload=result, # main model 출력
|
|
|
|
| 47 |
)
|
| 48 |
|
| 49 |
+
return return_payload_main
|
pipeline/postprocess.py
CHANGED
|
@@ -148,7 +148,7 @@ def _adjust_delta_with_rag_and_embedding(
|
|
| 148 |
return {"trust": trust, "relationship": rel}
|
| 149 |
|
| 150 |
# ----------------------------
|
| 151 |
-
# Flag 보정 로직
|
| 152 |
# ----------------------------
|
| 153 |
|
| 154 |
def adjust_flags_with_rag_and_embedding(
|
|
|
|
| 148 |
return {"trust": trust, "relationship": rel}
|
| 149 |
|
| 150 |
# ----------------------------
|
| 151 |
+
# Flag 보정 로직
|
| 152 |
# ----------------------------
|
| 153 |
|
| 154 |
def adjust_flags_with_rag_and_embedding(
|