Spaces:
Paused
Paused
| """E2E ํ ์คํธ ์ค์ ๋ฐ ์์.""" | |
| from __future__ import annotations | |
| import os | |
| import time | |
| from dataclasses import dataclass, field | |
| from typing import Dict | |
| BASE_URL = os.environ.get("GOVON_RUNTIME_URL", "http://localhost:7860").rstrip("/") | |
| API_KEY = os.environ.get("API_KEY") | |
| TIMEOUT = int(os.environ.get("E2E_TIMEOUT", "300")) | |
| BASE_MODEL = os.environ.get("BASE_MODEL", "LGAI-EXAONE/EXAONE-4.0-32B-AWQ") | |
| TIMESTAMP = time.strftime("%Y%m%d_%H%M%S") | |
| RESULTS_PATH = os.environ.get("E2E_RESULTS_PATH", f"e2e_results_{TIMESTAMP}.json") | |
| LOG_PATH = os.environ.get("E2E_LOG_PATH", f"e2e_log_{TIMESTAMP}.jsonl") | |
| VALID_TOOLS = frozenset( | |
| { | |
| "api_lookup", | |
| "draft_response", | |
| "issue_detector", | |
| "stats_lookup", | |
| "keyword_analyzer", | |
| "demographics_lookup", | |
| } | |
| ) | |
| # ReAct 5-node ๊ทธ๋ํ ํ์ค ํ๋ฆ (์น์ธ ๊ฒฝ๋ก) | |
| EXPECTED_APPROVED_FLOW = [ | |
| "session_load", | |
| "agent", | |
| "approval_wait", | |
| "tools", | |
| "agent", | |
| "persist", | |
| ] | |
| # ๊ฑฐ์ ๊ฒฝ๋ก | |
| EXPECTED_REJECTED_FLOW = [ | |
| "session_load", | |
| "agent", | |
| "approval_wait", | |
| "persist", | |
| ] | |
| class NodeSLA: | |
| """๋ ธ๋๋ณ SLA ์๊ณ๊ฐ (์ด).""" | |
| name: str | |
| max_p95_sec: float | |
| NODE_SLA_THRESHOLDS: list[NodeSLA] = [ | |
| NodeSLA("agent", 60.0), | |
| NodeSLA("tools", 60.0), | |
| NodeSLA("session_load", 5.0), | |
| NodeSLA("persist", 5.0), | |
| ] | |
| LEGAL_PATTERNS = [ | |
| r"์ \s*\d+\s*์กฐ", | |
| r"์ \s*\d+\s*ํญ", | |
| r"๋ฒ๋ฅ ", | |
| r"์ํ๋ น", | |
| r"์กฐ๋ก", | |
| r"ํ๋ก", | |
| r"๋๋ฒ์", | |
| r"๋ฒ", | |
| r"๋ น", | |
| r"๊ท์ ", | |
| ] | |
| CIVIL_LAW_PATTERNS = [r"๋ฏผ๋ฒ", r"์ \s*\d+\s*์กฐ", r"์๋์ฐจ", r"๊ณ์ฝ", r"์ํด๋ฐฐ์", r"์ฑ๊ถ", r"์ฑ๋ฌด"] | |
| CRIMINAL_LAW_PATTERNS = [r"ํ๋ฒ", r"ํ์ฌ", r"์ฒ๋ฒ", r"๋ฒ๊ธ", r"์ง์ญ", r"๋ณดํธ๋ฒ", r"์ \s*\d+\s*์กฐ"] | |
| IP_PATTERNS = [r"์ํ๋ฒ", r"ํนํ๋ฒ", r"์ ์๊ถ", r"์ง์์ฌ์ฐ", r"์ \s*\d+\s*์กฐ", r"์นจํด"] | |
| PRECEDENT_PATTERNS = [r"๋๋ฒ์", r"ํ๋ก", r"ํ๊ฒฐ", r"์ ๊ณ ", r"\d{4}\s*[๋ค๋]\s*\d+"] | |